:root { --paper:#fbf8f4; --cream:#f1e9de; --ink:#191817; --muted:#6c665f; --line:#d9d1c7; --rose:#ef6a5d; --plum:#3e1728; --olive:#4b5b46; --soft:#f7f1ea; --serif: Georgia, 'Times New Roman', serif; --sans: Arial, Helvetica, sans-serif; }
  * { box-sizing:border-box; }
  html { scroll-behavior:smooth; }
  body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); font-size:16px; line-height:1.45; }
  a { color:inherit; text-decoration:none; }
  img { display:block; width:100%; height:100%; object-fit:cover; }
  .felice-utility-bar { min-height:36px; border-bottom:1px solid var(--line); display:flex; gap:22px; align-items:center; justify-content:center; padding:8px 24px; font-size:10px; letter-spacing:.14em; text-transform:uppercase; }
  .felice-utility-bar a { text-decoration:underline; text-underline-offset:3px; }
  .felice-masthead { min-height:98px; display:grid; grid-template-columns:1fr auto 1fr; gap:24px; align-items:center; padding:20px clamp(24px,5vw,80px); border-bottom:1px solid var(--ink); position:relative; z-index:3; background:var(--paper); }
  .felice-logo { display:inline-flex; align-items:center; gap:10px; width:max-content; letter-spacing:.08em; }
  .logo-mark { width:39px; height:39px; display:grid; place-items:center; background:var(--ink); color:var(--rose); font-weight:900; font-size:24px; line-height:1; border-radius:50%; font-family:var(--serif); }
  .logo-copy { display:grid; line-height:1; gap:4px; }
  .logo-copy strong { font-size:17px; letter-spacing:.05em; }
  .logo-copy small { font-size:9px; letter-spacing:.29em; color:var(--muted); }
  .site-nav { display:flex; align-items:center; justify-content:center; gap:22px; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
  .site-nav a { border-bottom:2px solid transparent; padding:8px 0; }
  .site-nav a:hover, .site-nav a.is-active { border-bottom-color:var(--rose); }
  .masthead-action { justify-self:end; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; border-bottom:1px solid var(--ink); padding-bottom:4px; }
  .mobile-menu { display:none; background:none; border:1px solid var(--ink); font:inherit; font-size:11px; letter-spacing:.1em; text-transform:uppercase; padding:8px 11px; }
  .trend-strip { border-bottom:1px solid var(--line); min-height:48px; display:flex; align-items:center; gap:32px; padding:0 clamp(24px,5vw,80px); font-size:12px; white-space:nowrap; overflow:auto; }
  .trend-strip span { font-weight:800; color:var(--rose); letter-spacing:.1em; text-transform:uppercase; }
  .trend-strip a { text-decoration:underline; text-underline-offset:4px; }
  .cover-story { position:relative; min-height:min(69vw,780px); overflow:hidden; border-bottom:1px solid var(--ink); }
  .cover-story > img { position:absolute; inset:0; object-fit:cover; }
  .cover-shade { position:absolute; inset:0; background:rgba(14,12,10,.40); }
  .cover-copy { position:absolute; left:clamp(24px,9vw,148px); right:clamp(24px,33vw,500px); bottom:clamp(34px,7vw,110px); color:#fff; }
  .story-meta { display:flex; flex-wrap:wrap; gap:11px; align-items:center; color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
  .cover-copy .story-meta { color:#fff; }
  .story-meta span:first-child { color:var(--rose); }
  .cover-copy .story-meta span:first-child { color:#ffc0b8; }
  .cover-copy h1 { margin:16px 0 18px; font-family:var(--serif); font-size:clamp(46px,7.2vw,114px); font-weight:500; line-height:.88; letter-spacing:0; }
  .cover-copy p { max-width:610px; margin:0 0 25px; font-size:17px; line-height:1.55; }
  .story-link, .cover-link { display:inline-flex; align-items:center; gap:17px; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; border-bottom:1px solid var(--ink); padding:7px 0; }
  .cover-link { border-color:#fff; }
  .story-link b, .cover-link b { font-size:18px; line-height:.6; }
  .now-rail, .skin-desk, .makeup-assembly, .shopping-list, .hair-fragrance, .related-stories { max-width:1400px; margin:0 auto; padding:clamp(48px,7vw,100px) clamp(24px,5vw,72px); }
  .section-heading { display:flex; justify-content:space-between; align-items:baseline; gap:24px; border-top:1px solid var(--ink); padding-top:13px; margin-bottom:32px; }
  .section-heading h2 { font-family:var(--serif); font-size:clamp(32px,4vw,55px); font-weight:500; margin:0; line-height:.95; }
  .section-heading p { margin:0; font-size:11px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
  .section-heading a, .hair-intro a { font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; border-bottom:1px solid var(--ink); padding-bottom:5px; }
  .now-grid { display:grid; grid-template-columns:1.15fr 1fr 1fr; gap:26px; }
  .mini-story { display:grid; grid-template-columns:132px 1fr; gap:16px; border-top:1px solid var(--line); padding-top:15px; }
  .mini-image { height:100px; overflow:hidden; }
  .mini-story h3 { margin:7px 0 0; font-family:var(--serif); font-size:20px; font-weight:500; line-height:1.02; }
  .mini-story:hover img, .editorial-card:hover img, .makeup-feature:hover img, .skin-lead:hover img, .shopping-feature:hover img, .felice-edit:hover img { transform:scale(1.025); }
  img { transition:transform .45s ease; }
  .skin-desk { padding-top:15px; }
  .skin-composition { display:grid; grid-template-columns:1.36fr .64fr; gap:42px; }
  .skin-lead { border-bottom:1px solid var(--ink); padding-bottom:19px; }
  .skin-lead > a { height:clamp(300px,43vw,590px); overflow:hidden; display:block; margin-bottom:18px; }
  .skin-lead h3 { margin:11px 0; font-family:var(--serif); font-weight:500; font-size:clamp(32px,4vw,64px); line-height:.93; }
  .skin-lead p { max-width:640px; margin:0; color:var(--muted); }
  .skin-notes { display:grid; align-content:start; gap:23px; }
  .xingtu-safe-append { border:1px dashed #b9aea2; background:var(--soft); padding:23px; min-height:118px; }
  .append-label, .eyebrow { margin:0 0 9px; color:var(--rose); font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
  .append-copy { margin:0; color:var(--muted); font-size:14px; }
  .makeup-assembly { display:grid; grid-template-columns:.72fr 1.28fr; gap:48px; border-top:1px solid var(--ink); }
  .makeup-title { padding-top:8px; }
  .makeup-title p, .hair-intro p, .felice-edit p, .newsletter > p { color:var(--rose); font-size:11px; letter-spacing:.13em; font-weight:800; text-transform:uppercase; }
  .makeup-title h2 { max-width:400px; margin:12px 0 32px; font-family:var(--serif); font-size:clamp(47px,5vw,83px); font-weight:500; line-height:.83; }
  .makeup-title a { font-size:11px; font-weight:800; text-transform:uppercase; border-bottom:1px solid var(--ink); padding-bottom:4px; }
  .makeup-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:18px; }
  .makeup-feature { grid-row:span 2; }
  .makeup-feature > a { display:block; height:470px; overflow:hidden; }
  .makeup-feature h3 { font-size:39px; font-family:var(--serif); font-weight:500; line-height:.93; margin:12px 0; }
  .makeup-small { display:grid; grid-template-columns:155px 1fr; gap:16px; border-top:1px solid var(--line); padding-top:13px; }
  .makeup-small .card-image { height:136px; grid-row:span 4; overflow:hidden; }
  .makeup-small h3 { font:500 24px/1 var(--serif); margin:7px 0; }
  .makeup-small p, .makeup-small .story-link { display:none; }
  .felice-radar { background:var(--rose); color:var(--ink); padding:clamp(44px,6vw,88px) clamp(24px,10vw,150px); display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; }
  .felice-radar p { font-size:11px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; margin:0 0 10px; }
  .felice-radar h2 { font:500 clamp(42px,5vw,80px)/.87 var(--serif); margin:0; max-width:500px; }
  .felice-radar ol { list-style:none; margin:0; padding:0; border-top:1px solid var(--ink); }
  .felice-radar li a { padding:20px 0; border-bottom:1px solid var(--ink); display:grid; grid-template-columns:50px 1fr auto; gap:12px; align-items:start; font:500 clamp(25px,2.3vw,38px)/.98 var(--serif); }
  .felice-radar li span { font:800 11px var(--sans); letter-spacing:.1em; }
  .felice-radar li b { font:400 25px var(--sans); }
  .shopping-layout { display:grid; grid-template-columns:1.4fr .6fr; gap:0; border:1px solid var(--ink); }
  .shopping-feature { display:grid; grid-template-columns:1.05fr .95fr; }
  .shopping-feature > a { min-height:490px; overflow:hidden; }
  .shopping-feature > div { padding:clamp(26px,4vw,56px); align-self:center; }
  .shopping-feature h3 { font:500 clamp(34px,4.5vw,67px)/.9 var(--serif); margin:12px 0; }
  .shopping-feature p { color:var(--muted); }
  .shopping-aside { background:var(--plum); color:#fff; padding:clamp(29px,4vw,58px); display:flex; flex-direction:column; justify-content:flex-end; }
  .shopping-aside .eyebrow { color:#ffc0b8; }
  .shopping-aside h3 { font:500 34px/.95 var(--serif); margin:0 0 18px; }
  .shopping-aside p { color:#f0dfe5; }
  .shopping-aside a { font-size:11px; font-weight:800; text-transform:uppercase; border-bottom:1px solid #fff; padding-bottom:5px; width:max-content; }
  .hair-fragrance { display:grid; grid-template-columns:.55fr 1.45fr; gap:48px; }
  .hair-intro { border-top:1px solid var(--ink); padding-top:14px; }
  .hair-intro h2 { font:500 clamp(42px,5vw,79px)/.84 var(--serif); margin:12px 0 30px; }
  .hair-stories { display:grid; grid-template-columns:1fr 1fr; gap:25px; }
  .hair-card:first-child { padding-top:0; }
  .hair-card .card-image { display:block; height:420px; overflow:hidden; }
  .hair-card h3 { font:500 37px/.93 var(--serif); margin:10px 0; }
  .hair-card p { color:var(--muted); }
  .felice-edit { display:grid; grid-template-columns:1fr .8fr; background:var(--cream); }
  .edit-image { min-height:560px; overflow:hidden; }
  .edit-copy { padding:clamp(36px,7vw,110px); align-self:center; }
  .edit-copy h2 { font:500 clamp(44px,5vw,76px)/.87 var(--serif); margin:12px 0 20px; }
  .edit-copy > p:not(:first-child) { color:var(--muted); }
  .newsletter { min-height:360px; padding:clamp(52px,8vw,120px) max(24px,calc((100vw - 1200px)/2)); background:var(--ink); color:#fff; display:grid; grid-template-columns:1.15fr .85fr; gap:40px; }
  .newsletter > p { grid-column:1/-1; margin:0; color:#ffb9b0; }
  .newsletter h2 { margin:0; font:500 clamp(46px,6vw,94px)/.85 var(--serif); max-width:700px; }
  .newsletter div { align-self:end; max-width:410px; }
  .newsletter div p { color:#d9d3ce; font-size:17px; }
  .newsletter a { display:inline-block; margin-top:10px; font-size:11px; font-weight:800; text-transform:uppercase; border-bottom:1px solid #fff; padding-bottom:4px; }
  .felice-footer { border-top:1px solid var(--ink); padding:50px clamp(24px,5vw,80px) 27px; display:grid; grid-template-columns:1.1fr 1fr; gap:38px; }
  .footer-logo { margin-bottom:14px; }
  .felice-footer p { max-width:400px; color:var(--muted); margin:0; }
  .footer-links { display:flex; flex-wrap:wrap; align-content:start; gap:10px 23px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
  .footer-links a { border-bottom:1px solid transparent; }
  .footer-links a:hover { border-bottom-color:var(--ink); }
  .footer-note { grid-column:1/-1; border-top:1px solid var(--line); padding-top:20px; font-size:12px; }
  .footer-note a { text-decoration:underline; }
  .category-intro, .archive-hero, .fixed-hero, .deals-hero { padding:clamp(65px,9vw,140px) clamp(24px,14vw,220px) clamp(45px,7vw,90px); border-bottom:1px solid var(--ink); display:grid; grid-template-columns:.55fr 1.45fr; gap:40px; align-items:end; }
  .category-intro > p, .archive-hero > p, .fixed-hero > p, .deals-hero > p { margin:0 0 15px; grid-column:1/-1; color:var(--rose); font-size:11px; letter-spacing:.13em; text-transform:uppercase; font-weight:800; }
  .category-intro h1, .archive-hero h1, .fixed-hero h1, .deals-hero h1 { grid-column:1; margin:0; font:500 clamp(52px,8vw,130px)/.78 var(--serif); }
  .category-intro > div, .archive-hero > div, .fixed-hero > div, .deals-hero > div { max-width:530px; font-size:20px; color:var(--muted); }
  .category-body { max-width:1420px; margin:0 auto; padding:clamp(37px,6vw,90px) clamp(24px,5vw,74px); }
  .category-feature { border-bottom:1px solid var(--ink); }
  .category-feature h1 { margin:12px 0; font:500 clamp(43px,5vw,82px)/.86 var(--serif); }
  .category-feature p { color:var(--muted); font-size:17px; }
  .category-feature.category-skin { display:grid; grid-template-columns:1.08fr .92fr; gap:clamp(28px,6vw,90px); padding-bottom:28px; align-items:end; }
  .category-feature.category-skin img { min-height:510px; }
  .category-support { margin:37px 0 52px; }
  .support-list { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
  .category-feature.category-makeup { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:54px; padding-bottom:40px; }
  .category-feature.category-makeup img { min-height:550px; }
  .support-tiles { display:grid; grid-template-columns:repeat(2, 1fr); gap:28px; }
  .category-tile { display:grid; grid-template-columns:180px 1fr; gap:20px; border-top:1px solid var(--ink); padding-top:13px; }
  .category-tile .card-image { height:160px; overflow:hidden; grid-row:span 4; }
  .category-tile h3 { font:500 29px/.92 var(--serif); margin:8px 0; }
  .category-tile p, .category-tile .story-link { display:none; }
  .category-feature.category-hair { display:grid; grid-template-columns:1.25fr .75fr; gap:0; align-items:stretch; background:var(--plum); color:#fff; }
  .category-feature.category-hair img { min-height:590px; }
  .hair-feature-copy { padding:clamp(32px,5vw,75px); align-self:end; }
  .category-feature.category-hair .story-meta { color:#f0dfe5; }
  .category-feature.category-hair .story-meta span:first-child { color:#ffbdb4; }
  .category-feature.category-hair p { color:#f0dfe5; }
  .support-two { display:grid; grid-template-columns:1fr 1fr; gap:26px; }
  .category-wide .card-image { display:block; height:350px; overflow:hidden; }
  .category-wide h3 { font:500 39px/.92 var(--serif); margin:12px 0; }
  .category-wide p { color:var(--muted); }
  .category-feature.category-shopping { display:grid; grid-template-columns:.2fr 1fr .75fr; gap:0; align-items:stretch; background:var(--ink); color:#fff; }
  .category-feature.category-shopping .shopping-label { font-size:12px; letter-spacing:.1em; text-transform:uppercase; writing-mode:vertical-rl; transform:rotate(180deg); padding:25px 14px; color:#ffb9b0; }
  .category-feature.category-shopping img { min-height:570px; }
  .category-feature.category-shopping > div:last-child { padding:clamp(31px,5vw,72px) clamp(26px,4vw,52px); align-self:end; }
  .category-feature.category-shopping .story-meta { color:#d4ceca; }
  .category-feature.category-shopping p { color:#d4ceca; }
  .category-feature.category-edit { display:grid; grid-template-columns:.82fr 1.18fr; gap:46px; background:var(--cream); padding:50px; align-items:center; }
  .category-feature.category-edit img { min-height:510px; }
  .category-append { margin-top:34px; }
  .article-main { overflow:hidden; }
  .article-shell { padding-bottom:70px; }
  .article-header { max-width:1040px; margin:0 auto; padding:clamp(65px,10vw,150px) 24px 48px; text-align:center; }
  .article-category { color:var(--rose); font-size:11px; letter-spacing:.13em; text-transform:uppercase; font-weight:800; }
  .article-header h1 { margin:18px auto; max-width:960px; font:500 clamp(51px,7.3vw,112px)/.82 var(--serif); }
  .article-header > p { max-width:700px; margin:0 auto 27px; font-size:20px; color:var(--muted); }
  .article-byline { display:flex; justify-content:center; gap:14px; flex-wrap:wrap; font-size:10px; letter-spacing:.09em; text-transform:uppercase; font-weight:800; }
  .article-hero { max-width:1420px; margin:0 auto; height:min(64vw,850px); padding:0 24px; }
  .article-hero img { object-fit:cover; }
  .article-grid { max-width:1110px; padding:clamp(45px,7vw,90px) 24px 0; margin:0 auto; display:grid; grid-template-columns:.35fr .65fr; gap:70px; }
  .article-note { border-top:1px solid var(--ink); padding-top:13px; font-size:13px; position:sticky; top:18px; align-self:start; }
  .article-note p:first-child { color:var(--rose); font-size:10px; letter-spacing:.12em; font-weight:800; }
  .article-copy { max-width:660px; font-size:18px; }
  .article-standfirst { font:500 31px/1.05 var(--serif); margin-top:0; }
  .article-copy section { margin-top:42px; }
  .article-copy h2 { font:500 39px/.96 var(--serif); margin:0 0 12px; }
  .article-copy p { color:#3e3933; }
  .article-disclosure { margin-top:45px; padding:22px; background:var(--cream); font-size:14px; }
  .article-disclosure p { margin-bottom:0; }
  .article-disclosure a { text-decoration:underline; text-underline-offset:3px; }
  .related-grid { display:grid; grid-template-columns:1fr 1fr; gap:27px; }
  .related-card .card-image { display:block; height:390px; overflow:hidden; }
  .related-card h3 { font:500 38px/.92 var(--serif); margin:11px 0; }
  .related-card p { color:var(--muted); }
  .fixed-content { max-width:930px; margin:0 auto; padding:clamp(45px,7vw,100px) 24px; }
  .fixed-content section { display:grid; grid-template-columns:.35fr .65fr; gap:30px; padding:29px 0; border-top:1px solid var(--line); }
  .fixed-content h2 { margin:0; font:500 31px/.95 var(--serif); }
  .fixed-content p { margin:0; font-size:17px; color:var(--muted); }
  .fixed-content p a { color:var(--ink); text-decoration:underline; text-underline-offset:3px; }
  .fixed-content aside { margin-top:30px; padding:35px; background:var(--plum); color:#fff; display:flex; justify-content:space-between; align-items:center; gap:20px; }
  .fixed-content aside p { color:#ffb9b0; margin:0; font-size:10px; letter-spacing:.12em; font-weight:800; }
  .fixed-content aside a { font-family:var(--serif); font-size:27px; }
  .archive-list { max-width:1400px; margin:0 auto; padding:40px clamp(24px,5vw,76px) 85px; }
  .archive-list > section { display:grid; grid-template-columns:.35fr .65fr; gap:48px; padding:40px 0; border-top:1px solid var(--ink); }
  .archive-category p { color:var(--rose); font-size:10px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
  .archive-category h2 { font:500 42px/.9 var(--serif); margin:0; }
  .archive-list > section > div:last-child { display:grid; gap:19px; }
  .deals-hero { background:var(--cream); }
  .deals-hero > a { grid-column:2; width:max-content; font-size:11px; text-transform:uppercase; font-weight:800; border-bottom:1px solid var(--ink); padding-bottom:4px; }
  .deals-grid { max-width:1380px; margin:0 auto; padding:60px clamp(24px,5vw,72px) 100px; display:grid; grid-template-columns:1.15fr .85fr .85fr; gap:25px; }
  .deal-card { border-top:1px solid var(--ink); padding-top:13px; }
  .deal-card .card-image { display:block; height:430px; overflow:hidden; }
  .deal-card h3 { margin:10px 0; font:500 38px/.91 var(--serif); }
  .deal-card p { color:var(--muted); }
  .lp-hero { min-height:680px; display:grid; grid-template-columns:1fr 1fr; background:var(--ink); color:#fff; }
  .lp-hero > div { align-self:center; padding:clamp(35px,7vw,110px); }
  .lp-hero p:first-child { color:#ffb9b0; font-size:11px; letter-spacing:.13em; font-weight:800; text-transform:uppercase; }
  .lp-hero h1 { font:500 clamp(49px,6vw,95px)/.84 var(--serif); margin:16px 0; }
  .lp-hero div > p:not(:first-child) { color:#e4dbd5; font-size:18px; max-width:560px; }
  .lp-hero a { display:inline-block; margin-top:15px; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; border-bottom:1px solid #fff; padding-bottom:5px; }
  .lp-hero > img { height:100%; }
  .lp-steps { max-width:1380px; margin:0 auto; padding:70px clamp(24px,5vw,72px); display:grid; grid-template-columns:repeat(3, 1fr); gap:30px; }
  .lp-steps article { border-top:1px solid var(--ink); padding-top:13px; }
  .lp-steps span { color:var(--rose); font-size:11px; font-weight:800; letter-spacing:.1em; }
  .lp-steps h2 { font:500 42px/.9 var(--serif); margin:15px 0; }
  .lp-steps p { color:var(--muted); }
  .lp-disclosure { background:var(--cream); padding:45px max(24px,calc((100vw - 880px)/2)); display:flex; justify-content:space-between; gap:30px; align-items:center; }
  .lp-disclosure p { max-width:560px; margin:0; }
  .lp-disclosure a { font-size:11px; font-weight:800; text-transform:uppercase; border-bottom:1px solid var(--ink); padding-bottom:4px; white-space:nowrap; }
  @media (max-width: 1100px) { .site-nav { gap:13px; font-size:10px; } .masthead-action { display:none; } .makeup-assembly, .hair-fragrance { grid-template-columns:1fr; } .makeup-title { display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:end; } .makeup-title p { grid-column:1/-1; } .makeup-title h2 { margin:0; } .hair-intro { display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:end; } .hair-intro p { grid-column:1/-1; } .hair-intro h2 { margin:0; } }
  @media (max-width: 760px) { body { font-size:15px; } .felice-utility-bar { justify-content:space-between; font-size:8px; padding:8px 15px; } .felice-utility-bar span { display:none; } .felice-masthead { min-height:73px; padding:13px 18px; grid-template-columns:auto 1fr auto; } .logo-mark { width:34px; height:34px; font-size:21px; } .logo-copy strong { font-size:14px; } .logo-copy small { font-size:7px; } .mobile-menu { display:block; justify-self:end; } .site-nav { display:none; position:absolute; top:100%; left:0; right:0; background:var(--paper); padding:18px; border-bottom:1px solid var(--ink); flex-direction:column; align-items:flex-start; gap:5px; } .site-nav.is-open { display:flex; } .trend-strip { padding:0 18px; gap:24px; font-size:11px; } .cover-story { min-height:560px; } .cover-copy { left:21px; right:20px; bottom:33px; } .cover-copy h1 { font-size:52px; } .cover-copy p { font-size:15px; } .now-rail, .skin-desk, .makeup-assembly, .shopping-list, .hair-fragrance, .related-stories { padding:44px 20px; } .section-heading { display:block; } .section-heading a { display:inline-block; margin-top:12px; } .now-grid, .skin-composition, .makeup-grid, .hair-stories, .shopping-layout, .felice-edit, .newsletter, .category-intro, .archive-hero, .fixed-hero, .deals-hero, .category-skin, .category-makeup, .category-hair, .category-shopping, .category-edit, .article-grid, .fixed-content section, .archive-list > section, .deals-grid, .lp-hero, .lp-steps { grid-template-columns:1fr; } .mini-story { grid-template-columns:105px 1fr; } .mini-image { height:82px; } .makeup-title, .hair-intro { display:block; } .makeup-title h2, .hair-intro h2 { margin:10px 0 25px; } .makeup-feature > a { height:340px; } .makeup-small { grid-template-columns:115px 1fr; } .makeup-small .card-image { height:105px; } .felice-radar { grid-template-columns:1fr; gap:35px; padding:43px 20px; } .felice-radar li a { grid-template-columns:35px 1fr auto; font-size:27px; } .shopping-feature { grid-template-columns:1fr; } .shopping-feature > a { min-height:360px; } .shopping-aside { min-height:280px; } .hair-card .card-image, .related-card .card-image, .deal-card .card-image { height:310px; } .felice-edit .edit-image { min-height:400px; } .newsletter { min-height:0; } .felice-footer { grid-template-columns:1fr; padding:42px 20px 23px; } .category-intro, .archive-hero, .fixed-hero, .deals-hero { padding:55px 20px 40px; gap:20px; } .category-intro h1, .archive-hero h1, .fixed-hero h1, .deals-hero h1 { font-size:58px; } .category-skin img, .category-makeup img, .category-hair img, .category-shopping img, .category-edit img { min-height:350px; } .category-shopping .shopping-label { writing-mode:initial; transform:none; padding:18px 20px 0; } .category-edit { padding:25px; gap:25px; } .support-list, .support-tiles, .support-two, .related-grid { grid-template-columns:1fr; } .category-tile { grid-template-columns:120px 1fr; } .category-tile .card-image { height:105px; } .article-header { padding-top:60px; } .article-header h1 { font-size:55px; } .article-header > p { font-size:17px; } .article-hero { height:410px; padding:0; } .article-grid { gap:35px; padding:45px 20px 0; } .article-note { position:static; } .article-copy { font-size:17px; } .article-standfirst { font-size:27px; } .article-copy h2 { font-size:34px; } .fixed-content aside { display:block; } .fixed-content aside a { display:block; margin-top:14px; font-size:21px; } .deals-hero > a { grid-column:1; } .lp-hero > div { padding:55px 22px; } .lp-hero > img { min-height:400px; } .lp-disclosure { display:block; padding:36px 20px; } .lp-disclosure a { display:inline-block; margin-top:18px; } }
  @media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } *, *::before, *::after { transition:none !important; animation:none !important; } }


  /* The reference-led layer replaces the rejected generic magazine homepage. */
  :root { --paper:#f2f3f1; --cream:#e7e2d7; --ink:#101010; --muted:#625d56; --line:#cbc9c2; --rose:#b64f3e; --plum:#201a1b; }
  body { background:var(--paper); }
  .felice-mini-header { min-height:68px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(22px,4vw,74px); border-bottom:1px solid var(--ink); background:var(--paper); }
  .mini-brand { display:inline-flex; align-items:center; gap:10px; font-size:13px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
  .mini-brand b { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--ink); color:var(--paper); font:600 14px/1 var(--serif); letter-spacing:0; }
  .mini-menu-button, .reference-issue button, .menu-panel-top button { border:0; background:transparent; color:var(--ink); padding:6px 0; font:500 18px/1 var(--sans); cursor:pointer; }
  .felice-menu-panel { position:fixed; z-index:20; inset:0; display:grid; grid-template-rows:auto 1fr auto; min-height:100vh; padding:clamp(24px,4vw,72px); background:var(--ink); color:var(--paper); opacity:0; pointer-events:none; transform:translateY(-12px); transition:opacity .22s ease, transform .22s ease; overflow:auto; }
  .felice-menu-panel.is-open { opacity:1; pointer-events:auto; transform:translateY(0); }
  .menu-panel-top, .menu-panel-footer { display:flex; justify-content:space-between; gap:18px; align-items:center; }
  .menu-panel-top .mini-brand b { background:var(--paper); color:var(--ink); }
  .menu-panel-top button { color:var(--paper); }
  .menu-panel-kicker { margin:clamp(72px,11vh,150px) 0 16px; color:#e3b1a7; font-size:10px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
  .felice-menu-links { display:grid; align-content:start; border-top:1px solid #625d58; }
  .felice-menu-links a { padding:14px 0; border-bottom:1px solid #625d58; font:500 clamp(36px,6vw,88px)/.9 var(--serif); }
  .felice-menu-links a:hover { color:#e3b1a7; }
  .menu-panel-footer { margin-top:40px; flex-wrap:wrap; color:#ded8d0; font-size:12px; text-transform:uppercase; letter-spacing:.09em; }
  .home-page .felice-mini-header { display:none; }
  .home-page main { overflow:hidden; }
  .felice-reference-masthead { min-height:clamp(335px,44vw,565px); display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.52fr); padding:clamp(30px,6vw,112px) clamp(28px,9vw,190px) clamp(28px,4vw,70px); border-bottom:1px solid var(--line); }
  .reference-monogram { display:flex; align-items:flex-start; gap:.02em; color:var(--ink); font:500 clamp(170px,23vw,430px)/.61 var(--serif); letter-spacing:-.14em; overflow:visible; }
  .reference-monogram span:last-child { margin-left:.06em; }
  .reference-issue { align-self:start; display:grid; justify-items:center; gap:clamp(13px,2vw,31px); padding-top:6px; text-align:center; }
  .reference-issue p { margin:0; font:500 clamp(38px,4.5vw,80px)/.92 var(--sans); letter-spacing:-.04em; }
  .reference-issue time { font:400 clamp(30px,3.3vw,63px)/1 var(--sans); letter-spacing:.02em; }
  .felice-front-board { width:min(100% - clamp(38px,8vw,250px),1320px); margin:clamp(38px,6vw,95px) auto clamp(76px,10vw,155px); display:grid; grid-template-columns:minmax(0,1.52fr) minmax(260px,.72fr); align-items:start; gap:clamp(28px,7vw,150px); }
  .board-image { display:block; overflow:hidden; background:#d7d4cc; }
  .board-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
  .board-image:hover img { transform:scale(1.025); }
  .front-lead .board-image { aspect-ratio:1.04/1.25; }
  .front-side { padding-top:clamp(0px,8vw,115px); }
  .front-side .board-image { aspect-ratio:.74/1.12; }
  .board-label { margin:14px 0 7px; color:var(--rose); font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
  .board-label span { color:var(--muted); font-weight:500; letter-spacing:.04em; }
  .board-story h2 { max-width:740px; margin:0; font:500 clamp(31px,3.7vw,63px)/.9 var(--serif); letter-spacing:-.03em; }
  .front-side h2 { font-size:clamp(28px,3vw,48px); }
  .board-deck { max-width:630px; margin:12px 0 0; color:var(--muted); font-size:15px; line-height:1.42; }
  .felice-image-ledger { border-top:1px solid var(--ink); padding:clamp(46px,7vw,105px) max(28px,calc((100vw - 1320px)/2)); }
  .ledger-heading { display:grid; grid-template-columns:.65fr 1.35fr auto; gap:30px; align-items:end; margin-bottom:clamp(36px,6vw,88px); }
  .ledger-heading p, .felice-notebook > div > p, .article-ledger-intro > p:first-child, .felice-collage-board header > p { margin:0; color:var(--rose); font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
  .ledger-heading h2 { max-width:650px; margin:0; font:500 clamp(38px,5.3vw,78px)/.9 var(--serif); letter-spacing:-.035em; }
  .ledger-heading a, .felice-collage-board header > a { align-self:end; padding-bottom:4px; border-bottom:1px solid var(--ink); font-size:12px; font-weight:700; }
  .ledger-grid { display:grid; grid-template-columns:.78fr 1.18fr .85fr; gap:clamp(20px,3vw,54px); align-items:start; }
  .ledger-1 { padding-top:75px; } .ledger-2 { padding-top:0; } .ledger-3 { padding-top:155px; }
  .ledger-1 .board-image { aspect-ratio:.8/.92; } .ledger-2 .board-image { aspect-ratio:1/.96; } .ledger-3 .board-image { aspect-ratio:.82/1.08; }
  .ledger-grid .board-story h2 { font-size:clamp(27px,2.7vw,43px); }
  .felice-notebook { display:grid; grid-template-columns:.75fr 1.25fr; gap:clamp(50px,10vw,175px); padding:clamp(66px,9vw,150px) max(28px,calc((100vw - 1120px)/2)); background:#1b1918; color:#f3f2ef; }
  .felice-notebook h2 { max-width:460px; margin:12px 0 0; font:500 clamp(43px,5.6vw,85px)/.86 var(--serif); letter-spacing:-.035em; }
  .felice-notebook ol { margin:0; padding:0; list-style:none; border-top:1px solid #706b64; }
  .felice-notebook li { display:grid; grid-template-columns:42px 1fr; column-gap:17px; padding:20px 0; border-bottom:1px solid #706b64; }
  .felice-notebook li > span { grid-row:span 2; color:#e3b1a7; font-size:11px; font-weight:800; letter-spacing:.1em; }
  .felice-notebook li a { font:500 clamp(25px,3vw,43px)/.95 var(--serif); }
  .felice-notebook li p { margin:9px 0 0; color:#ccc6bf; font-size:14px; line-height:1.42; }
  .felice-article-ledger { width:min(100% - 56px,1120px); margin:clamp(70px,10vw,160px) auto; display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(45px,9vw,150px); align-items:start; }
  .article-ledger-intro h2 { margin:12px 0 16px; font:500 clamp(40px,5vw,72px)/.88 var(--serif); letter-spacing:-.04em; }
  .article-ledger-intro > p:last-child { max-width:370px; color:var(--muted); line-height:1.48; }
  .xingtu-safe-append[hidden], .xingtu-safe-append:empty { display:none !important; }
  .home-page .xingtu-safe-append:not(:empty) { width:min(100% - 56px,1120px); min-height:230px; display:grid; align-content:end; margin:clamp(70px,10vw,160px) auto; padding:27px; border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); background:transparent; }
  .home-page .append-label { color:var(--rose); font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
  .home-page .append-copy { max-width:430px; margin:0; font:500 clamp(24px,2.7vw,41px)/.96 var(--serif); }
  .felice-collage-board { border-top:1px solid var(--ink); padding:clamp(55px,8vw,120px) max(28px,calc((100vw - 1320px)/2)); }
  .felice-collage-board header { display:grid; grid-template-columns:.5fr 1.3fr auto; gap:30px; align-items:end; margin-bottom:clamp(45px,7vw,95px); }
  .felice-collage-board header h2 { max-width:710px; margin:0; font:500 clamp(38px,5vw,75px)/.9 var(--serif); letter-spacing:-.04em; }
  .collage-grid { display:grid; grid-template-columns:1.2fr .74fr .85fr; gap:clamp(20px,3vw,50px); align-items:start; }
  .collage-1 .board-image { aspect-ratio:1.03/.86; } .collage-2 { padding-top:86px; } .collage-2 .board-image { aspect-ratio:.78/1.12; } .collage-3 { padding-top:36px; } .collage-3 .board-image { aspect-ratio:1/.95; }
  .collage-grid .board-story h2 { font-size:clamp(27px,2.7vw,44px); }
  .home-page .felice-footer { margin-top:0; }
  @media (max-width: 760px) { .felice-mini-header { min-height:56px; padding:0 18px; } .felice-reference-masthead { min-height:288px; grid-template-columns:1.35fr .65fr; padding:36px 20px 25px; } .reference-monogram { font-size:clamp(116px,34vw,190px); } .reference-issue { gap:13px; } .reference-issue button { font-size:15px; } .reference-issue p { font-size:26px; } .reference-issue time { font-size:21px; } .felice-front-board, .felice-image-ledger, .felice-collage-board { width:auto; margin-left:20px; margin-right:20px; } .felice-front-board { display:block; margin-top:35px; margin-bottom:76px; } .front-side { margin:38px 18% 0 18%; padding-top:0; } .ledger-heading, .felice-collage-board header, .felice-notebook { grid-template-columns:1fr; } .ledger-heading, .felice-collage-board header { gap:17px; } .ledger-heading a, .felice-collage-board header > a { align-self:start; width:max-content; } .ledger-grid, .collage-grid { grid-template-columns:1fr; gap:42px; } .ledger-1, .ledger-2, .ledger-3, .collage-2, .collage-3 { padding-top:0; } .ledger-1, .ledger-3 { margin-left:9%; } .felice-notebook { gap:40px; padding:67px 20px; } .felice-notebook li { grid-template-columns:32px 1fr; } .home-page .xingtu-safe-append:not(:empty) { width:auto; min-height:190px; margin:73px 20px; } .felice-menu-panel { padding:23px 20px; } .felice-menu-links a { font-size:44px; } }
  @media (prefers-reduced-motion: reduce) { .felice-menu-panel, .board-image img { transition:none; } }
