/* 2026 mobile-first editorial redesign */
:root{--v3-ink:#171317;--v3-pink:#f04f78;--v3-pale:#fff3f6;--v3-lilac:#efeafd;--v3-yellow:#f5d66d;--v3-line:#e8e2e5}
.portal-body{font-family:"Zen Kaku Gothic New",sans-serif;background:#fff;color:var(--v3-ink)}
.portal-logo strong,.section-head h2,.commercial-heading h2,.market-heading h2,.pick-copy h3,.market-card h3,.index-intro h2,.editorial-note blockquote,.footer-brand strong{font-family:"Outfit","Zen Kaku Gothic New",sans-serif;font-style:normal}
.portal-logo strong{font-weight:600;letter-spacing:.08em}.portal-logo span{font-family:"Outfit",sans-serif}
.cover h1>span{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;letter-spacing:-.065em}
.section-head h2,.commercial-heading h2,.market-heading h2{font-weight:600;letter-spacing:-.04em}
.sponsor-market-first{border-top:0;background:#fff8fa}
.sponsor-market-first .market-rail{border-top:0}

@media(min-width:901px){
  .cover{height:min(690px,calc(100vh - 118px));min-height:600px}
  .sponsor-market-first{padding-top:72px;padding-bottom:76px}
  .sponsor-market-first .market-rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;border:0;padding-bottom:12px}
  .sponsor-market-first .market-card{flex:0 0 300px;scroll-snap-align:start;border:1px solid var(--v3-line)!important;background:#fff;border-radius:18px;overflow:hidden}
  .sponsor-market-first .market-card-featured{box-shadow:0 16px 45px rgba(151,56,83,.11)}
}

@media(max-width:600px){
  body.portal-body{overflow-x:hidden;background:#fff}
  .ad-disclosure{font-size:10px;line-height:1.45;padding:7px 12px;text-align:center;background:#191419}
  .portal-header{position:sticky;top:0;z-index:100;height:58px;padding:0 14px;grid-template-columns:32px 1fr 32px;background:rgba(255,255,255,.96);box-shadow:0 1px 0 rgba(20,16,19,.08);backdrop-filter:blur(12px)}
  .portal-header .menu-button{padding:7px 4px}.portal-header .menu-button span{width:20px;height:1.5px}
  .portal-logo{line-height:.86}.portal-logo span{font-size:7px;letter-spacing:.2em}.portal-logo strong{font-size:19px;letter-spacing:.07em}
  .header-index{display:flex;align-items:center;justify-content:center}.header-index span{font-size:15px;color:var(--v3-pink)}

  .cover{display:grid;grid-template-rows:238px auto;height:auto;background:#fff;border:0}
  .cover-visual{grid-row:1;position:relative;inset:auto;width:100%;height:238px;aspect-ratio:auto;background:#f7e9ec}
  .cover-visual img{width:100%;height:100%;object-fit:cover;object-position:61% 39%;filter:saturate(.86) contrast(1.02)}
  .cover-visual:after{background:linear-gradient(180deg,transparent 55%,rgba(21,14,18,.2))}
  .cover-copy{grid-row:2;position:relative;inset:auto;padding:21px 18px 24px;background:#fff}
  .cover-label{margin:0 0 9px;font-family:"Outfit",sans-serif;font-size:9px;letter-spacing:.17em;color:var(--v3-pink)}
  .cover-label:before{display:none}
  .cover h1{margin:0;font-size:34px;line-height:1.22;letter-spacing:-.06em}
  .cover h1>span{display:inline;white-space:normal;color:var(--v3-ink)}
  .cover h1>span:first-child:after{content:" "}.cover h1>span:last-child{color:var(--v3-pink)}
  .cover-lead{margin:11px 0 0;font-size:13px;line-height:1.72;color:#5e555a}
  .cover-actions{display:flex;margin-top:17px;gap:8px}
  .hero-primary,.hero-secondary{min-width:0;border:0;border-radius:999px;padding:12px 17px;font-size:11px;line-height:1.2;text-align:center;white-space:nowrap}
  .hero-primary{background:var(--v3-ink);flex:1}.hero-secondary{background:var(--v3-pale);color:var(--v3-pink);font-weight:700}.hero-secondary span{display:none}
  .cover-topics,.cover-note,.headline-strip,.quick-categories{display:none}

  .sponsor-market-first{padding:27px 0 24px 16px;background:linear-gradient(180deg,#fff4f7 0%,#fff 100%);border:0}
  .sponsor-market-first .market-heading{display:block;margin:0 0 15px;padding-right:16px}
  .sponsor-market-first .market-heading>div>p{margin:0 0 5px;font-family:"Outfit",sans-serif;font-size:9px;letter-spacing:.17em;color:var(--v3-pink)}
  .sponsor-market-first .market-heading h2{font-size:22px;line-height:1.35;letter-spacing:-.045em}
  .sponsor-market-first .market-heading>p{margin-top:7px;font-size:11px;line-height:1.6;color:#756b70}
  .sponsor-market-first .market-rail{display:flex;gap:11px;padding:0 16px 10px 0;overflow-x:auto;scroll-padding-left:16px;scroll-snap-type:x mandatory;border:0;-webkit-overflow-scrolling:touch}
  .sponsor-market-first .market-card{flex:0 0 232px;scroll-snap-align:start;padding:12px 12px 15px;background:#fff;border:1px solid var(--v3-line)!important;border-radius:16px;text-align:left;box-shadow:0 9px 28px rgba(82,35,50,.07)}
  .sponsor-market-first .market-card>p{margin:0 0 9px;font-family:"Outfit",sans-serif;font-size:8px;letter-spacing:.15em;color:var(--v3-pink)}
  .sponsor-market-first .market-card [data-official-ad]{min-height:194px;height:194px;overflow:hidden;border-radius:11px;background:#f7f5f6;display:flex;align-items:center;justify-content:center}
  .sponsor-market-first .market-card [data-official-ad] img:not([width="1"]){max-width:100%;max-height:194px;width:auto;height:auto}
  .sponsor-market-first .market-card h3{margin:11px 0 1px;font-size:17px;line-height:1.2;font-weight:600}
  .sponsor-market-first .market-card small{font-size:10px;color:#82787d}
  .sponsor-market-first .market-footer{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;padding:4px 16px 0 0}
  .sponsor-market-first .market-footer p{max-width:235px;font-size:8px;line-height:1.5}.sponsor-market-first .market-footer a{font-size:9px}

  .editorial-section{padding:38px 16px 50px}.editorial-section-first{padding-top:34px}
  .section-head{padding:0 0 15px;border-bottom:0}.section-head h2{font-size:25px;line-height:1.2}.section-head>a{font-size:10px;color:#766c71}
  .section-head h2:after{content:"";display:inline-block;width:23px;height:5px;margin-left:9px;background:var(--v3-yellow);border-radius:9px;vertical-align:middle}
  .feature-story{display:block;border:0}
  .feature-art{display:block;aspect-ratio:16/10;border-radius:18px;overflow:hidden;box-shadow:none}
  .feature-number{top:12px;left:12px;border-radius:999px;padding:6px 10px}
  .feature-copy{padding:15px 1px 25px}
  .story-category{margin:0 0 7px;font-family:"Outfit",sans-serif;font-size:9px!important;letter-spacing:.12em;color:var(--v3-pink)!important}
  .feature-copy h3{margin:0 0 9px;font-size:20px;line-height:1.52;letter-spacing:-.035em}
  .feature-copy>p:not(.story-category){margin:0;font-size:12px;line-height:1.7;color:#6f656a}
  .feature-copy footer{margin:12px 0 0}.read-story{display:none}
  .visual-story-lineup{display:grid;grid-template-columns:1fr 1fr;gap:18px 11px;border:0}
  .visual-story-lineup article,.visual-story-lineup article+article,.visual-story-lineup article:last-child{display:block;padding:0;border:0}
  .visual-story-lineup .story-thumb,.visual-story-lineup article:last-child .story-thumb{aspect-ratio:4/3;margin:0 0 9px;border-radius:13px;overflow:hidden}
  .visual-story-lineup h3{margin:0;font-size:12px;line-height:1.55;letter-spacing:-.025em}
  .visual-story-lineup .story-category{font-size:7px!important;margin-bottom:4px}.visual-story-lineup time{font-size:7px;margin-top:5px}.visual-story-lineup article p:not(.story-category){display:none}
  .visual-story-lineup article:last-child{grid-column:auto}

  .commercial-section{padding:42px 16px;background:#f7f4f5}
  .commercial-heading{margin-bottom:17px}.commercial-heading h2{font-size:25px}.commercial-heading>p{font-size:11px;line-height:1.65}
  .commercial-grid{display:block;border:0;background:transparent;box-shadow:none}
  .device-pick,.device-pick-lead{margin-bottom:12px;padding:18px;background:#fff;border:0;border-radius:16px;box-shadow:0 8px 28px rgba(30,18,23,.06)}
  .pick-copy h3{font-size:24px}.pick-copy>p:not(.pick-en){font-size:11px}.pick-ad{margin-top:15px;min-height:70px}
  .choice-guide{padding:22px;border-radius:16px;background:var(--v3-ink)}
  .choice-guide h3{font-family:"Zen Kaku Gothic New",sans-serif;font-size:20px;font-weight:500}

  .index-section{padding:46px 16px;background:#171317}.index-intro{padding:0 0 26px}.index-intro h2{font-family:"Zen Kaku Gothic New",sans-serif;font-size:25px;line-height:1.55;font-weight:500}.index-list a{padding:18px 4px}
  .editorial-note{padding:47px 16px}.editorial-note blockquote{font-family:"Zen Kaku Gothic New",sans-serif;font-size:22px;line-height:1.65;font-weight:500}
  .portal-footer{padding:42px 16px 22px}.footer-brand strong{font-size:25px}
}

@media(max-width:370px){
  .cover{grid-template-rows:210px auto}.cover-visual{height:210px}.cover h1{font-size:30px}.cover-lead{font-size:12px}.hero-primary,.hero-secondary{padding-inline:12px;font-size:10px}.sponsor-market-first .market-card{flex-basis:218px}
}
