:root{color-scheme:light;--ink:#271b37;--muted:#5d5068;--plum:#2c1941;--lav:#ebdef5;--paper:#fbf6ef;--line:#d9cbdc;--coral:#ff9b83;--mobile-menu-bg:#fbf6ef;--mobile-menu-text:#271b37}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.6 system-ui,sans-serif}a{color:var(--plum);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible{outline:3px solid #8b3596;outline-offset:4px}img{display:block;max-width:100%}p{margin:0 0 1rem}.wrap{width:min(1180px,calc(100% - 3rem));margin-inline:auto}.skip{position:absolute;left:.6rem;top:.6rem;padding:.7rem;background:white;z-index:10;transform:translateY(-150%)}.skip:focus{transform:none}
.top,.footer{display:flex;justify-content:space-between;align-items:center;gap:1.2rem;padding-block:1.1rem}.top{border-bottom:1px solid var(--line)}.top nav,.footer nav{display:flex;gap:1.25rem;flex-wrap:wrap}.top nav a,.footer nav a{font-weight:650}.brand{display:inline-flex;gap:.7rem;align-items:center;text-decoration:none;font-weight:760;line-height:1.12}.brand small{display:block;letter-spacing:.2em;margin-top:.2rem;font-size:.65rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.68rem 1.15rem;background:var(--plum);color:white;border:1px solid var(--plum);border-radius:8px;text-decoration:none;font:inherit;font-weight:750;cursor:pointer}.button:hover{background:#4a2b67}.hero{display:grid;grid-template-columns:4fr 6fr;align-items:center;gap:clamp(1.7rem,5vw,4.5rem);padding-block:clamp(2rem,6vw,5.5rem)}.hero figure{margin:0;padding:.65rem;border:1px solid var(--line);border-radius:22px;background:#f5eaf9}.hero figure img{width:100%;height:auto;border-radius:15px}.hero figcaption{margin:.4rem .25rem 0;color:var(--muted);font-size:.78rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:750;font-size:.76rem;color:#67496f}.eyebrow span{display:inline-block;width:.55rem;height:.55rem;background:#bf5240;border-radius:50%;margin-right:.45rem}.hero-links{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.6rem}
h1,h2,h3{font-family:Georgia,serif;font-weight:500;line-height:1.04;margin:.35em 0}.hero h1{font-size:clamp(3.5rem,8vw,7rem);letter-spacing:-.085em;max-width:7ch}h1{font-size:clamp(2.4rem,6vw,4.8rem);letter-spacing:-.045em}h2{font-size:clamp(1.9rem,4vw,3.2rem);letter-spacing:-.035em}h3{font-size:1.55rem}h4{margin:0 0 .3rem;font-size:1.09rem}.lead{font-size:clamp(1.2rem,3vw,1.5rem);color:var(--muted)}.compare,.guides{padding-block:2.5rem;border-top:1px solid var(--line)}.jump{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 2rem}.jump a{padding:.5rem .85rem;border-radius:999px;border:1px solid #bea9ca;background:var(--lav);font-weight:670;text-decoration:none}.jump a:hover{background:#dec8eb}.lineup{display:grid;grid-template-columns:1fr 3fr;gap:1.25rem;padding:1.2rem 0;border-top:1px solid var(--line);scroll-margin-top:1rem}.lineup-title{padding:1rem;background:#f0e3f6;border-radius:12px;align-self:start}.lineup-title p,.row p{margin-bottom:0}.index{color:#7f4f80;font-weight:750;letter-spacing:.1em}.row{display:grid;grid-template-columns:80px minmax(0,1fr) minmax(9rem,28%);align-items:center;gap:1rem;padding:.8rem 0}.row+.row{border-top:1px solid var(--line)}.thumb,.detail-photo{overflow:hidden;border-radius:12px;background:white;border:1px solid var(--line)}.thumb img{width:100%;aspect-ratio:1;object-fit:contain}.quick{font-size:.87rem;font-weight:700}.quick small{color:var(--muted);font-size:.82rem;font-weight:500}.guide-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.guide-list article{padding:1rem;border-top:3px solid #cb9ade;background:#f4eaf6;border-radius:0 0 12px 12px}
.article{padding-block:1.75rem 4rem;min-height:65vh}.crumb{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;font-size:.92rem}.detail{display:grid;grid-template-columns:1fr 1.1fr;align-items:start;gap:clamp(1.25rem,4vw,4rem)}.detail-photo img{width:100%;max-height:540px;aspect-ratio:1.1;object-fit:contain}.detail dl{display:grid;grid-template-columns:minmax(7rem,1fr) minmax(0,2fr);margin:1.1rem 0;gap:.25rem .65rem;font-size:.94rem}.detail dt{font-weight:750}.detail dd{margin:0;overflow-wrap:anywhere}.prose{max-width:740px;margin-top:2rem}.prose .guide-list{grid-template-columns:repeat(2,minmax(0,1fr))}.prose section{margin:1.5rem 0;padding-top:1rem;border-top:1px solid var(--line)}.prose section h2{font-size:clamp(1.5rem,3vw,2rem)}.policy-date{color:var(--muted)}.footer{border-top:1px solid var(--line);align-items:flex-start}.footer p{font-size:.9rem;color:var(--muted);margin:.65rem 0 0}
@media(max-width:760px){.wrap{width:calc(100% - 2rem)}.hero,.detail,.lineup{grid-template-columns:1fr}.hero{gap:1.4rem}.hero h1{max-width:none}.guide-list{grid-template-columns:repeat(2,minmax(0,1fr))}.footer{flex-direction:column}}
@media(max-width:475px){.row{grid-template-columns:68px minmax(0,1fr);gap:.45rem .75rem}.quick{grid-column:2}.quick br{display:none}.quick small::before{content:' · '}.thumb{grid-row:span 2}.row p{font-size:.87rem}.guide-list,.prose .guide-list{grid-template-columns:1fr}.top{gap:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
