
:root{--ink:#19252b;--muted:#526269;--paper:#f7f7f3;--cream:#fffdf7;--line:#dfe5df;--teal:#125d57;--deep:#092e32;--mint:#d9eee2;--gold:#eec96e;--gold2:#ffedbb;--white:#fff;--shadow:0 18px 50px rgba(13,47,44,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:#12645f;text-underline-offset:3px}a:hover{color:#0a413e}img{max-width:100%}h1,h2,h3{font-family:ui-sans-serif,system-ui,sans-serif;letter-spacing:-.045em;line-height:1.13;margin:0}h1{font-size:clamp(2.6rem,6.5vw,5.6rem);font-weight:800}h2{font-size:clamp(1.55rem,3.2vw,2.3rem);margin:0 0 16px}h3{font-size:1.25rem;margin-bottom:6px}p{margin:0 0 1.15em}ul,ol{padding-left:1.3rem;margin:0 0 1.2em}li{padding-left:.3rem;margin:.45em 0}strong{font-weight:740}code{font-size:.86em;background:#e7eee9;padding:2px 5px;border-radius:4px}small{font-size:.8rem}
.container{width:min(1150px,calc(100% - 40px));margin:auto}.skip{position:absolute;top:-120px;left:12px;background:#fff;padding:9px;z-index:100}.skip:focus{top:10px}
header{background:var(--cream);border-bottom:1px solid var(--line);position:relative;z-index:2}.nav{display:flex;align-items:center;justify-content:space-between;min-height:79px;gap:22px}.brand{color:var(--deep);font-weight:850;font-size:1.05rem;letter-spacing:-.035em;display:flex;align-items:center;gap:10px;text-decoration:none;line-height:1.2}.brand-mark{display:grid;place-items:center;background:var(--deep);width:38px;height:38px;color:var(--gold);border-radius:12px;font-size:1.25rem}.brand em{display:block;font-size:.61rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-style:normal;font-weight:700;margin-top:4px}.navlinks{display:flex;align-items:center;gap:26px}.navlinks a{font-size:.87rem;font-weight:700;color:var(--ink);text-decoration:none}.navlinks a:hover{text-decoration:underline}.nav-cta{background:var(--deep)!important;color:white!important;border-radius:99px;padding:12px 18px}.mobile-nav{display:none}.mobile-nav summary{cursor:pointer;font-weight:800}.mobile-nav .mobile-panel{position:absolute;left:0;right:0;top:78px;display:grid;gap:0;background:var(--cream);padding:12px 20px 25px;box-shadow:var(--shadow)}.mobile-panel a{padding:12px;border-bottom:1px solid var(--line);font-weight:700;text-decoration:none}
.kicker{display:inline-block;font-size:.73rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase;color:#21665d;margin-bottom:17px}.hero{background:var(--deep);color:#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:540px;align-items:center;gap:40px;padding:74px 0 83px}.hero .kicker{color:var(--gold)}.hero h1{max-width:740px}.hero h1 span{color:var(--gold)}.hero p{color:#d0e1dc;max-width:570px;font-size:1.1rem;margin:24px 0}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;text-decoration:none;background:var(--gold);color:var(--deep);padding:14px 21px;border:0;border-radius:9px;font-size:.94rem;font-weight:800;line-height:1.3;transition:transform .16s,background .16s}.btn:hover{transform:translateY(-2px);color:var(--deep);background:var(--gold2)}.btn.light{background:#fff;color:var(--deep)}.btn.outline{background:transparent;border:1px solid #9fc5ba;color:#e1f2ec}.btn.outline:hover{background:#1a4c4a}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:23px 0 12px}.micro{font-size:.8rem!important;color:#a8cbc2!important;margin-top:14px!important}.hero-art{position:relative;min-height:375px;display:flex;align-items:center;justify-content:center}.art-orbit{position:absolute;inset:0;border:1px solid #315a56;border-radius:50%;transform:scale(.92)}.art-orbit:before,.art-orbit:after{content:"";position:absolute;inset:27px;border:1px dashed #53766d;border-radius:50%}.art-orbit:after{inset:65px;border:1px solid #275454}.art-card{position:absolute;background:#f9f9f1;color:var(--deep);border-radius:17px;padding:18px;box-shadow:0 23px 64px #031c205a;min-width:225px}.art-card.one{width:290px;z-index:1;transform:rotate(-7deg) translate(-20px,-45px)}.art-card.two{width:240px;transform:rotate(8deg) translate(65px,100px);background:var(--mint)}.art-label{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;font-weight:800;opacity:.65}.art-card b{font-size:1.3rem;display:block;letter-spacing:-.03em;line-height:1.3;margin:8px 0}.art-bar{height:9px;border-radius:20px;background:#dbe7df;margin:9px 0}.art-bar i{display:block;height:100%;border-radius:20px;background:var(--teal);width:65%}.art-dot{width:17px;height:17px;border-radius:50%;background:var(--gold);position:absolute;top:32px;right:32px}
.ribbon{background:#e6f0e9;border-bottom:1px solid #cfdfd3}.ribbon .container{display:flex;gap:35px;justify-content:center;flex-wrap:wrap;padding:17px 0;font-size:.84rem;font-weight:750;color:#24534c}.ribbon span:before{content:"✓";color:#1d7464;margin-right:9px}
.section{padding:78px 0}.section.alt{background:var(--cream)}.section-intro{max-width:720px;margin-bottom:33px}.section-intro p{color:var(--muted);font-size:1.05rem}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tile{background:var(--white);border:1px solid var(--line);padding:28px;border-radius:16px;box-shadow:0 6px 23px #112c2508}.tile .num{color:var(--teal);font-size:.8rem;letter-spacing:.08em;font-weight:850}.tile h3{margin:14px 0}.tile p{font-size:.92rem;color:var(--muted);margin-bottom:15px}.tile a{font-weight:800;text-decoration:none}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;align-items:center}.panel{background:var(--deep);color:white;border-radius:22px;padding:35px}.panel p{color:#d4e5de}.panel li{color:#e4ece8}.panel a{color:var(--gold)}.eyebrow{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:850;color:var(--gold)}
.page-head{background:var(--deep);color:white;padding:65px 0 70px}.page-head .container{max-width:950px}.page-head h1{font-size:clamp(2.4rem,5vw,4.35rem);max-width:900px}.page-head .lede{font-size:1.1rem;color:#d5e9e2;max-width:790px;margin:24px 0 0}.bread{display:flex;gap:8px;flex-wrap:wrap;color:#bcd4ca;font-size:.8rem;margin-bottom:24px}.bread a{color:#d8e9e2}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:55px;align-items:start;padding:45px 0 90px}.article{min-width:0;max-width:780px}.article .standfirst{font-size:1.17rem;color:#35534d;font-weight:540;padding-bottom:25px;border-bottom:1px solid var(--line)}.article section{margin:35px 0 42px}.article section h2{scroll-margin-top:30px}.article li{margin-bottom:.6rem}.article .note{border-left:4px solid #3d8a73;background:#edf5ee;border-radius:0 12px 12px 0;padding:18px 21px;margin:23px 0}.note p{margin:6px 0 0}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:11px;margin:24px 0}table{width:100%;border-collapse:collapse;min-width:480px;font-size:.9rem}th{text-align:left;background:#e4f0e9}td,th{padding:13px 15px;border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border-bottom:0}
.side{position:sticky;top:20px}.side-box{background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:22px;margin-bottom:14px}.side-box h3{font-size:1.03rem;margin-bottom:12px}.side-box ul{list-style:none;margin:0;padding:0}.side-box li{padding:0;margin:0}.side-box li a{display:block;padding:9px 0;border-top:1px solid var(--line);font-size:.86rem;text-decoration:none;font-weight:650}.side-box p{font-size:.87rem;color:var(--muted)}
.cta-box{background:var(--deep);color:white;padding:29px;border-radius:15px;margin:35px 0;box-shadow:var(--shadow)}.cta-box h2{font-size:1.65rem}.cta-box p{color:#dbece4}.cta-box .affiliate-fine{font-size:.78rem;margin:12px 0 0;color:#b3d2c8}.cta-box .btn{margin:4px 0}.disclosure-strip{font-size:.83rem;background:#fff7e5;border:1px solid #ebdbac;padding:11px 15px;border-radius:8px;margin:0 0 25px}.disclosure-strip a{color:#5c4912}
.more{margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}.more ul{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0;list-style:none}.more li{margin:0;padding:0}.more a{display:block;background:white;border:1px solid var(--line);border-radius:9px;padding:14px;text-decoration:none;font-weight:750;font-size:.9rem}.faq{border-top:1px solid var(--line);padding-top:24px}.faq details{border-bottom:1px solid var(--line);padding:15px 0}.faq summary{cursor:pointer;font-weight:800}.faq details p{margin:10px 0;color:var(--muted)}.sources{font-size:.8rem;background:#eef1e9;border-radius:10px;padding:17px;margin-top:35px;color:#526269}.sources p{margin:0}
.footer{background:#0a282a;color:#deece6;padding:55px 0 26px}.footer a{color:#cde2d9}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:28px}.footer .brand{color:white}.footer p{font-size:.85rem;max-width:410px;color:#b9d0c9}.footer h3{font-size:1rem;color:#fff}.footer ul{list-style:none;padding:0}.footer li{margin:8px 0;padding:0;font-size:.86rem}.footer-bottom{border-top:1px solid #2f5250;padding-top:22px;margin-top:30px;font-size:.78rem;color:#b5d0c5}
@media(max-width:900px){.navlinks{gap:13px}.hero-grid{grid-template-columns:1fr;gap:10px}.hero-art{min-height:290px}.content-layout{grid-template-columns:1fr;gap:20px}.side{position:static;display:grid;grid-template-columns:1fr 1fr;gap:15px}.side-box{margin:0}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}}
@media(max-width:640px){.container{width:min(100% - 30px,1150px)}.nav{min-height:70px}.navlinks{display:none}.mobile-nav{display:block}.mobile-nav .mobile-panel{top:70px}.hero-grid{padding:58px 0 48px;min-height:0}.hero-art{min-height:250px;transform:scale(.85)}.hero h1{font-size:clamp(2.65rem,13vw,4rem)}.hero p{font-size:1rem}.page-head{padding:48px 0 53px}.section{padding:56px 0}.grid,.side,.footer-grid{grid-template-columns:1fr}.more ul{grid-template-columns:1fr}.footer-grid{gap:10px}.split{gap:15px}.actions .btn{width:100%}.ribbon .container{gap:7px 22px;justify-content:flex-start}.content-layout{padding-top:32px}.article .standfirst{font-size:1.06rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}


/* Publication layout: persistent header, stationary contextual sidebar. */
.site-header{position:sticky;top:0;z-index:50;background:var(--cream);box-shadow:0 3px 14px rgba(4,37,34,.06)}
.site-header .nav{min-height:71px}
.site-header .navlinks{gap:17px}
.site-header .navlinks a{white-space:nowrap;font-size:.83rem}
.header-action{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;background:var(--deep);color:#fff;text-decoration:none;border-radius:99px;padding:11px 16px;font-weight:800;font-size:.83rem;line-height:1.3}
.header-action:hover,.header-action:focus-visible{color:var(--deep);background:var(--gold)}
.header-disclosure{font-size:.71rem;color:#52665f;text-align:right;padding:0 0 8px;line-height:1.25}
.header-disclosure a{font-weight:750}
.side{position:static;top:auto;align-self:start}
.side-offer{background:#113d3e;color:#fff;border:1px solid #36645a;border-radius:15px;padding:22px;margin-bottom:16px}
.side-offer h2{font-size:1.25rem;margin:12px 0}
.side-offer p{color:#d9e8e2;font-size:.88rem}
.side-offer .btn{width:100%;font-size:.84rem;padding:12px 9px;text-align:center}
.side-offer .affiliate-fine{font-size:.76rem;line-height:1.5;margin:14px 0 10px;color:#c6dacf}
.side-offer .offer-explainer{display:inline-block;color:#ffe8a4;font-size:.86rem;font-weight:750}
.cta-box .offer-explainer{display:block;color:#ffe8a4;font-size:.88rem;margin-top:12px;font-weight:750}
.cta-box .affiliate-fine{margin:12px 0 5px}
.article section h2,.hub-grid,.side-box,.article h2{scroll-margin-top:125px}
.bread{scroll-margin-top:125px}
.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:23px 0}
.hub-grid .tile{box-shadow:none;padding:23px}
.hub-grid .tile h3 a,.category-grid .tile h3 a{color:var(--ink);text-decoration:none}
.hub-grid .tile h3 a:hover,.category-grid .tile h3 a:hover{text-decoration:underline}
.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.feature-with-aside{grid-template-columns:minmax(0,1fr) minmax(0,.85fr) minmax(240px,.72fr);align-items:start;gap:24px}
.feature-with-aside .panel{padding:28px}
.home-aside{align-self:start}
.collection-link{padding:13px 17px;background:#edf5ee;border-left:4px solid #2e7764;border-radius:0 9px 9px 0}
.collection-link a{font-weight:800}
a:focus-visible,summary:focus-visible{outline:3px solid #e7b652;outline-offset:4px}
@media(max-width:1120px){
.site-header .navlinks{display:none}
.site-header .mobile-nav{display:block;margin-left:0}
.site-header .nav{gap:14px}
.site-header .mobile-nav .mobile-panel{top:71px}
.feature-with-aside{grid-template-columns:1fr 1fr}
.feature-with-aside .home-aside{grid-column:1/-1;max-width:460px}
}
@media(max-width:680px){
.site-header .nav{min-height:64px;gap:8px}
.site-header .brand{font-size:.85rem;gap:7px}
.site-header .brand em{font-size:.49rem}
.site-header .brand-mark{width:30px;height:30px;border-radius:9px}
.site-header .header-action{margin-left:auto;padding:9px 10px;font-size:.72rem;max-width:132px;white-space:normal;text-align:center}
.site-header .mobile-nav summary{font-size:.78rem}
.site-header .mobile-nav .mobile-panel{top:64px}
.header-disclosure{text-align:center;font-size:.64rem;padding-bottom:7px}
.feature-with-aside,.hub-grid,.category-grid{grid-template-columns:1fr}
.feature-with-aside .home-aside{grid-column:auto}
}
@media(max-width:365px){
.site-header .brand em{display:none}
.site-header .brand{font-size:.77rem}
.site-header .header-action{font-size:.68rem;max-width:113px}
}


/* Buttons inside dark panels must retain readable text in all states.
   .panel a is gold by default for text links, but not for filled buttons. */
.panel a.btn,
.panel a.btn:visited,
.panel a.btn:hover,
.panel a.btn:focus-visible {
  color:var(--deep);
}
