@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap');
:root{--plum:#352149;--plum-2:#23152f;--cream:#f7f1e9;--paper:#fffaf4;--peach:#ffb47d;--lilac:#eee3f3;--ink:#291c31;--muted:#6f6473;--line:rgba(53,33,73,.19);--shell:min(90vw,1220px);--reading:min(90vw,1120px);--serif:"Fraunces",Georgia,serif;--sans:"DM Sans",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px var(--sans);overflow-x:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit}p,li{line-height:1.75}::selection{color:var(--plum);background:var(--peach)}.shell{width:var(--shell);margin-inline:auto}.skip-link{position:fixed;z-index:1000;left:1rem;top:-5rem;padding:.8rem 1rem;color:#fff;background:var(--plum)}.skip-link:focus{top:1rem}.section-kicker,.eyebrow{font-size:.62rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.guide-header{position:sticky;z-index:80;top:0;color:var(--cream);background:rgba(53,33,73,.96);border-bottom:1px solid #ffffff20;backdrop-filter:blur(16px)}.guide-header .shell{min-height:4.6rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.7rem;color:#fff;font-weight:700;text-decoration:none}.brand img{width:2.55rem;height:2.55rem;object-fit:cover;border-radius:.75rem}.guide-header nav{display:flex;align-items:center;gap:1.45rem}.guide-header nav a{font-size:.68rem;font-weight:700;letter-spacing:.07em;text-decoration:none;text-transform:uppercase}.portfolio-return{color:var(--peach)}.nav-cta{padding:.72rem 1rem;border:1px solid #ffffff9c;border-radius:999px}.breadcrumb{padding:1.2rem 0}.breadcrumb ol{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;margin:0;padding:0;list-style:none;color:var(--muted);font-size:.65rem}.breadcrumb a{text-underline-offset:.25rem}
h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.045em}.button{display:inline-flex;align-items:center;justify-content:center;padding:.95rem 1.15rem;border-radius:999px;font-size:.72rem;font-weight:700;text-decoration:none}.button-peach{color:var(--plum);background:var(--peach)}.button-dark{color:#fff;background:var(--plum)}
.hub-hero{padding:clamp(5rem,9vw,9rem) 0 clamp(6rem,10vw,10rem);color:var(--cream);background:var(--plum)}.hub-hero .shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.34fr);gap:clamp(3rem,8vw,8rem);align-items:end}.hub-hero h1{max-width:59rem;margin:0;font-size:clamp(4rem,8.5vw,8.7rem);line-height:.88}.hub-hero h1 em,.hub-intro h2 em{color:var(--peach);font-weight:500}.hub-hero p:not(.eyebrow){max-width:42rem;margin:2rem 0 0;color:#d6cadc;font-size:clamp(1rem,1.45vw,1.2rem)}.hub-ticket{padding:1.7rem;color:var(--plum);background:var(--peach);transform:rotate(3deg);box-shadow:1.1rem 1.1rem 0 #251632}.hub-ticket span,.hub-ticket small{display:block;font-size:.58rem;letter-spacing:.15em}.hub-ticket strong{display:block;margin:3rem 0 1.1rem;font:500 clamp(3.5rem,6vw,6rem)/.9 var(--serif)}.hub-ticket i{display:block;height:1px;margin-bottom:1rem;background:#35214966}
.hub-intro{padding:clamp(5rem,8vw,8rem) 0 3.5rem;display:grid;grid-template-columns:.25fr 1fr .65fr;gap:clamp(2rem,5vw,5rem);align-items:end}.hub-intro h2{margin:0;font-size:clamp(3rem,5.8vw,6.2rem);line-height:.9}.hub-intro>p:last-child{margin:0;color:var(--muted)}.hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding-bottom:clamp(6rem,10vw,10rem)}.hub-card{position:relative;min-height:25rem;padding:clamp(1.7rem,4vw,3.4rem);display:flex;flex-direction:column;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:1.7rem;text-decoration:none;overflow:hidden;transition:.25s ease}.hub-card:nth-child(4n+2),.hub-card:nth-child(4n+3){background:var(--lilac)}.hub-card:after{content:"";position:absolute;right:-4rem;top:-4rem;width:12rem;aspect-ratio:1;border:1px solid var(--line);border-radius:50%}.hub-card:hover{color:var(--cream);background:var(--plum);transform:translateY(-4px)}.hub-card>span{font-size:.58rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.hub-card h2{max-width:32rem;margin:auto 0 1rem;font-size:clamp(2.25rem,4.4vw,4.2rem);line-height:.93}.hub-card p{max-width:34rem;margin:0;color:var(--muted)}.hub-card:hover p{color:#d8ccdf}.hub-card strong{margin-top:2rem;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase}.hub-final{position:relative;overflow:hidden;min-height:36rem;padding:6rem max(5vw,calc((100vw - 1220px)/2));display:flex;align-items:center;color:var(--cream);background:var(--plum-2)}.hub-final img{position:absolute;right:4%;bottom:-5rem;width:min(29vw,22rem);opacity:.8}.hub-final>div{position:relative;z-index:2;max-width:57rem}.hub-final h2{margin:1rem 0 2rem;font-size:clamp(3.2rem,6.3vw,6.7rem);line-height:.92}
.article-hero{padding:clamp(4rem,7vw,7.5rem) 0 clamp(5rem,8vw,8rem)}.article-hero>.shell{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(17rem,.52fr);gap:clamp(3rem,8vw,8rem);align-items:end}.article-hero h1{max-width:56rem;margin:.7rem 0 0;font-size:clamp(3.6rem,7.8vw,7.7rem);line-height:.89}.eyebrow{margin:0;color:#7a5590}.dek{max-width:47rem;margin:2rem 0;color:var(--muted);font-size:clamp(1rem,1.45vw,1.2rem)}.recipe-card{padding:1.7rem;color:var(--cream);background:var(--plum);transform:rotate(2.5deg);box-shadow:1.2rem 1.2rem 0 var(--peach)}.recipe-card span,.recipe-card small{display:block;font-size:.57rem;letter-spacing:.15em}.recipe-card strong{display:block;margin:3rem 0 1.5rem;font:500 clamp(1.35rem,2.4vw,2.15rem)/1.12 var(--serif)}.recipe-card i{display:block;height:1px;margin-bottom:1rem;background:#ffffff4d}.answer-strip{padding:2.4rem 0;color:var(--cream);background:var(--plum)}.answer-strip .shell{display:grid;grid-template-columns:.25fr 1fr;gap:3rem}.answer-strip p{margin:0}.answer-strip p:last-child{max-width:58rem;color:#ddd2e2;font-size:1.05rem}
.article-layout{display:grid;grid-template-columns:14rem minmax(0,47rem);justify-content:space-between;gap:clamp(3rem,8vw,8rem);padding-top:5rem;padding-bottom:8rem}.toc{position:sticky;top:7rem;align-self:start;padding:1.3rem 0;border-block:1px solid var(--line)}.toc p{margin:0 0 1rem;font-size:.59rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.toc a{display:block;margin:.85rem 0;color:var(--muted);font-size:.72rem;text-decoration:none}.toc a:hover{color:var(--plum)}.prose{min-width:0}.prose>section{scroll-margin-top:6.5rem}.prose>section+section{margin-top:5.5rem}.prose h2{margin:.5rem 0 1.3rem;font-size:clamp(2.7rem,5vw,4.9rem);line-height:.92}.prose h3{font-size:1.7rem}.prose>section>p{color:var(--muted)}.check-list{margin:2rem 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}.check-list li{position:relative;padding:1rem 0 1rem 2.4rem;border-bottom:1px solid var(--line)}.check-list li:before{content:"✓";position:absolute;left:.2rem;color:#8a5c9f;font-weight:700}.note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:2rem;background:var(--line)}.note-grid article{min-height:13rem;padding:1.5rem;background:var(--paper)}.note-grid span{color:#8a5c9f;font-size:.58rem;letter-spacing:.14em}.note-grid h3{margin:1.8rem 0 .7rem}.note-grid p{margin:0;color:var(--muted);font-size:.9rem}.fovri-callout{position:relative;overflow:hidden;margin:6rem 0;padding:clamp(1.8rem,5vw,3.6rem);display:grid;grid-template-columns:5.5rem 1fr;gap:2rem;background:var(--peach);border-radius:1.7rem}.fovri-callout:after{content:"";position:absolute;right:-5rem;top:-6rem;width:15rem;aspect-ratio:1;border:1px solid #35214933;border-radius:50%}.fovri-callout img{width:5.5rem;border-radius:1.4rem}.fovri-callout h2{position:relative;z-index:2;margin:.5rem 0 1rem;font-size:clamp(2.4rem,4.5vw,4.3rem)}.fovri-callout p{position:relative;z-index:2}.fovri-callout .button{position:relative;z-index:2;margin-top:.5rem}.source-list{margin:1rem 0;padding:0;list-style:none;border-top:1px solid var(--line)}.source-list li{padding:1rem 0;border-bottom:1px solid var(--line)}.source-list a{text-underline-offset:.3rem}.source-note{color:var(--muted);font-size:.8rem}.related>div{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.related a{min-height:12rem;padding:1.4rem;display:flex;flex-direction:column;justify-content:space-between;background:var(--paper);text-decoration:none}.related span,.related i{font-size:.58rem;letter-spacing:.12em;text-transform:uppercase}.related strong{font:500 1.5rem/1.05 var(--serif)}.related i{font-style:normal}
.guide-footer{color:#d8ccdf;background:#180f20}.guide-footer>.shell{padding:3rem 0 2rem;display:grid;grid-template-columns:1fr auto;gap:2rem 4rem}.footer-brand{display:flex;gap:1rem}.footer-brand img{width:3rem;height:3rem;border-radius:.85rem}.footer-brand strong{color:#fff}.footer-brand p{margin:.3rem 0 0;font-size:.76rem}.guide-footer nav{display:grid;gap:.65rem}.guide-footer nav a,.guide-footer nav button{padding:0;color:inherit;background:none;border:0;text-align:left;text-decoration:none;font:600 .66rem var(--sans);cursor:pointer}.copyright{grid-column:1/-1;margin:0;padding-top:1.5rem;border-top:1px solid #ffffff1f;color:#8c808f;font-size:.68rem}.consent-banner{position:fixed;z-index:100;left:1rem;right:1rem;bottom:1rem;max-width:58rem;margin:auto;padding:1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;color:var(--cream);background:#23162f;border-radius:1rem;box-shadow:0 1.5rem 5rem #0004}.consent-banner[hidden]{display:none}.consent-banner h2{margin:.15rem 0;font-size:1.5rem}.consent-banner p{margin:.2rem 0;color:#cfc3d5;font-size:.8rem}.consent-label{color:var(--peach)!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.consent-actions{display:flex;gap:.6rem}.consent-actions button{padding:.75rem .9rem;border:1px solid #ffffff59;border-radius:999px;font-weight:700}.consent-secondary{color:#fff;background:transparent}.consent-primary{color:var(--plum);background:var(--peach)}
@media(max-width:900px){.guide-header nav>a:not(.portfolio-return):not(.nav-cta){display:none}.hub-hero .shell,.article-hero>.shell,.article-layout,.hub-intro{grid-template-columns:1fr}.hub-ticket,.recipe-card{max-width:32rem}.article-layout{gap:3rem}.toc{position:static}.toc a{display:inline-block;margin:.4rem 1.2rem .4rem 0}.answer-strip .shell{grid-template-columns:1fr;gap:.5rem}}
@media(max-width:660px){:root{--shell:min(89vw,38rem)}.guide-header .shell{min-height:4.25rem}.brand span{display:none}.guide-header nav{gap:.75rem}.portfolio-return{font-size:.58rem!important}.nav-cta{padding:.64rem .75rem}.hub-hero h1,.article-hero h1{font-size:clamp(3.2rem,15.5vw,5.3rem)}.hub-grid{grid-template-columns:1fr}.hub-card{min-height:21rem}.note-grid,.related>div{grid-template-columns:1fr}.fovri-callout{grid-template-columns:1fr}.fovri-callout img{width:4.5rem}.hub-final img{width:48vw;opacity:.35}.guide-footer>.shell{grid-template-columns:1fr}.consent-banner{align-items:flex-start;flex-direction:column}.consent-actions{width:100%}.consent-actions button{flex:1}.breadcrumb li:last-child{max-width:55vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hub-card:hover{transform:none}}
