@import url("https://fonts.googleapis.com/css2?family=Archivo:ital,wdth,wght@0,100..125,400..700;1,100..125,400..700&family=Inter:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap");
:root{
--orange-300:#FF9A5C;
--charcoal-50:#F7F5F2;--charcoal-100:#EDEAE4;--charcoal-300:#C8C3BA;--charcoal-500:#8A857C;--charcoal-600:#5C5850;--charcoal-700:#3A3733;--charcoal-900:#191817;
--color-bg:#F7F5F2;--color-bg-elevated:#FFFFFF;--color-bg-sunken:#EDEAE4;
--color-fg:#191817;--color-fg-muted:#5C5850;--color-fg-subtle:#8A857C;
--color-border:#DDD9D1;--color-border-strong:#C8C3BA;
--color-primary:#E8580C;--color-primary-hover:#C94A08;--color-primary-active:#A33C06;--color-primary-fg:#FFFFFF;--color-primary-subtle:#FFF3EB;
--color-focus-ring:#E8580C;
--font-display:"Archivo",system-ui,sans-serif;
--font-sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
--font-mono:"IBM Plex Mono",ui-monospace,"SF Mono",monospace;
--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;
--measure-prose:65ch;
--text-display-2xl:clamp(56px,8vw,96px);--text-display-xl:clamp(44px,6vw,64px);
--text-heading-1:40px;--text-heading-2:clamp(26px,3.2vw,32px);--text-heading-3:24px;--text-heading-4:20px;
--text-body-lg:18px;--text-body-md:16px;--text-body-sm:14px;--text-caption:12px;--text-eyebrow:12px;
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-24:96px;--space-32:128px;--space-40:160px;
--radius-sm:4px;--radius-md:6px;--radius-lg:10px;
--z-sticky:1100;--z-overlay:1300;
--container-default:1200px;
--shadow-elevated:0 1px 2px rgb(25 24 23/.06),0 8px 24px rgb(25 24 23/.08);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--color-bg);color:var(--color-fg);font:var(--font-weight-regular) 16px/1.55 var(--font-sans);-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%;height:auto}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:inherit}
:focus:not(:focus-visible){outline:none}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.container{width:100%;max-width:var(--container-default);margin-inline:auto;padding-inline:var(--space-4)}
@media (min-width:1024px){.container{padding-inline:var(--space-8)}.section{padding:var(--space-32) 0}}
.text-display-2xl{font-family:var(--font-display);font-size:var(--text-display-2xl);font-weight:var(--font-weight-bold);line-height:1.02;letter-spacing:-0.03em;font-stretch:115%}
.text-display-xl{font-family:var(--font-display);font-size:var(--text-display-xl);font-weight:var(--font-weight-bold);line-height:1.05;letter-spacing:-0.025em;font-stretch:115%}
.text-heading-1{font-family:var(--font-display);font-size:var(--text-heading-1);font-weight:var(--font-weight-bold);line-height:1.15;letter-spacing:-0.02em;font-stretch:110%}
.text-heading-2{font-family:var(--font-display);font-size:var(--text-heading-2);font-weight:var(--font-weight-bold);line-height:1.2;letter-spacing:-0.015em;font-stretch:110%}
.text-heading-3{font-family:var(--font-sans);font-size:var(--text-heading-3);font-weight:var(--font-weight-semibold);line-height:1.25;letter-spacing:-0.01em}
.text-heading-4{font-family:var(--font-sans);font-size:var(--text-heading-4);font-weight:var(--font-weight-semibold);line-height:1.3;letter-spacing:-0.005em}
.text-body-lg{font-family:var(--font-sans);font-size:var(--text-body-lg);line-height:1.6}
.text-body-md{font-family:var(--font-sans);font-size:var(--text-body-md);line-height:1.55}
.text-body-sm{font-family:var(--font-sans);font-size:var(--text-body-sm);line-height:1.5}
.text-caption{font-family:var(--font-sans);font-size:var(--text-caption);font-weight:var(--font-weight-medium);line-height:1.4;letter-spacing:0.01em}
.text-eyebrow{font-family:var(--font-mono);font-size:var(--text-eyebrow);font-weight:500;line-height:1.2;letter-spacing:0.14em;text-transform:uppercase;color:var(--color-fg-muted)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:0.35;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96'%3E%3Cpath d='M96 0H0v96' fill='none' stroke='%23C8C3BA' stroke-width='1'/%3E%3Cpath d='M0 0l24 24' fill='none' stroke='%23C8C3BA' stroke-width='1'/%3E%3C/svg%3E")}
main,.site-header,.site-footer{position:relative;z-index:1}
.hover-grid{position:fixed;inset:0;pointer-events:none;z-index:0}
.hover-cell{position:absolute;width:96px;height:96px;background:rgba(232,88,12,0.14);opacity:0;transition:opacity 500ms ease}
a{color:var(--color-fg);text-decoration:none}
a:hover{color:var(--color-primary)}
h1,h2,h3,p{margin:0}
.rule{border:0;border-top:1px solid var(--color-border);margin:0 0 var(--space-4)}
.wordmark{font-family:var(--font-display);font-weight:var(--font-weight-bold);font-stretch:115%;letter-spacing:-0.02em;font-size:22px;text-decoration:none}
.wordmark:hover{color:var(--color-fg)}
.wordmark-dot{color:var(--color-primary)}
.site-header{border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-bg);z-index:var(--z-sticky)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:64px}
.header-link{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;padding-inline:var(--space-2)}
.hero{padding:var(--space-24) 0 var(--space-24)}
.hero-eyebrow{margin-bottom:var(--space-6)}
.hero h1{max-width:14ch;overflow-wrap:break-word}
.hero-copy{margin-top:var(--space-10);max-width:58ch;display:flex;flex-direction:column;gap:var(--space-5);color:var(--color-fg-muted)}
.hero-copy .btn{align-self:flex-start;margin-top:var(--space-4)}
.btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-weight:var(--font-weight-medium);font-size:var(--text-body-md);padding:14px 24px;border-radius:var(--radius-sm);text-decoration:none;border:0;cursor:pointer;transition:background-color 160ms ease,transform 160ms ease,color 160ms ease,border-color 160ms ease}
.btn:active{transform:scale(0.985)}
.btn-primary{background:var(--color-primary);color:var(--color-primary-fg)}
.btn-primary:hover{background:var(--color-primary-hover);color:var(--color-primary-fg);transform:translateY(-1px)}
.btn-outline{border:1px solid var(--charcoal-500);color:var(--charcoal-50);background:transparent}
.btn-outline:hover{border-color:var(--orange-300);color:var(--orange-300);transform:translateY(-1px)}
.section{padding:var(--space-24) 0}
.lead{color:var(--color-fg)}
.split{display:flex;flex-direction:column;gap:var(--space-8)}
.split-body{display:flex;flex-direction:column;gap:var(--space-5);color:var(--color-fg-muted);max-width:var(--measure-prose)}
.split-body .lead,.reasons{color:var(--color-fg)}
.section-dark{background:var(--charcoal-900);color:var(--charcoal-50);position:relative}
.section-dark .rule{border-color:var(--charcoal-700)}
.advise-head{margin-bottom:var(--space-12)}
.advise-grid{display:grid;grid-template-columns:1fr;gap:1px;background:var(--charcoal-700);border:1px solid var(--charcoal-700)}
.advise-card{background:var(--charcoal-900);padding:var(--space-6) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);transition:background-color 200ms ease}
.advise-card:hover{background:#201e1d}
.advise-card h3{color:var(--charcoal-50)}
.advise-card p{color:var(--charcoal-300)}
.access-title{max-width:16ch}
.access{display:flex;flex-direction:column;gap:var(--space-10)}
.access-image{width:100%;object-fit:cover;border-radius:var(--radius-lg)}
.access-body{margin-top:var(--space-10);max-width:var(--measure-prose);display:flex;flex-direction:column;gap:var(--space-5);color:var(--color-fg-muted)}
.section-sunken{background:var(--color-bg-sunken)}
.section-sunken .rule{border-color:var(--color-border-strong)}
.reasons{list-style:none;margin:0;padding:0;counter-reset:reason}
.reasons li{counter-increment:reason;display:flex;gap:var(--space-6);align-items:baseline;padding:var(--space-5) 0;border-bottom:1px solid var(--color-border-strong)}
.reasons li:first-child{border-top:1px solid var(--color-border-strong)}
.reasons li::before{content:"0" counter(reason);font-family:var(--font-mono);font-size:var(--text-eyebrow);letter-spacing:0.14em;color:var(--color-primary);flex-shrink:0}
.quieter{max-width:820px;margin-inline:auto;text-align:center}
.quieter-lead{margin:var(--space-8) 0 var(--space-5);font-weight:var(--font-weight-medium)}
.quieter .text-body-md{color:var(--color-fg-muted);max-width:var(--measure-prose);margin-inline:auto}
.page-section{min-height:55vh}
.page-section .text-eyebrow{margin-bottom:var(--space-6)}
.notfound-title{max-width:14ch}
.page-body{margin-top:var(--space-8);max-width:var(--measure-prose);display:flex;flex-direction:column;gap:var(--space-5);color:var(--color-fg-muted)}
.page-body .btn{align-self:flex-start;margin-top:var(--space-4)}
.page-body h2{margin-top:var(--space-8);color:var(--color-fg)}
.page-body h3{margin-top:var(--space-2);color:var(--color-fg)}
.policy-list{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}
.site-footer{background:var(--charcoal-900);color:var(--charcoal-50);padding:var(--space-24) 0 var(--space-8)}
.footer-main{display:flex;flex-direction:column;gap:var(--space-8);align-items:flex-start;margin-bottom:var(--space-16)}
.footer-title{color:var(--charcoal-50);max-width:16ch}
.rule-dark{border-color:var(--charcoal-700);margin-bottom:var(--space-6)}
.footer-base{display:flex;flex-direction:column;gap:var(--space-3)}
.footer-base .wordmark-footer{color:var(--charcoal-50)}
.copyright{color:var(--charcoal-500)}
.footer-links{display:flex;flex-direction:column;gap:var(--space-2)}
.footer-link{color:var(--charcoal-300)}
.footer-link:hover{color:var(--orange-300)}
.cookie-banner{position:fixed;left:var(--space-4);right:var(--space-4);bottom:var(--space-4);z-index:var(--z-overlay);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-elevated);padding:var(--space-5);max-width:520px;max-height:80vh;overflow-y:auto;opacity:0;transform:translateY(12px);transition:opacity 400ms ease,transform 400ms ease}
.cookie-banner.is-visible{opacity:1;transform:none}
.cookie-banner h2{font-size:var(--text-heading-4);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3)}
.cookie-banner .cookie-intro{color:var(--color-fg-muted);font-size:var(--text-body-sm);margin-bottom:var(--space-5)}
.cookie-intro a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}
.cookie-actions .btn{padding:12px 18px;font-size:var(--text-body-sm);min-height:44px}
.btn-ghost{background:transparent;border:1px solid var(--color-border-strong);color:var(--color-fg)}
.btn-ghost:hover{border-color:var(--color-primary);color:var(--color-primary)}
.cookie-manage-link{background:none;border:0;padding:0;font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg-muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.cookie-manage-link:hover{color:var(--color-primary)}
.cookie-prefs{display:none;margin:var(--space-5) 0 0;padding-top:var(--space-5);border-top:1px solid var(--color-border);flex-direction:column;gap:var(--space-4)}
.cookie-banner.is-managing .cookie-prefs{display:flex}
.cookie-pref{display:flex;gap:var(--space-4);align-items:flex-start;justify-content:space-between}
.cookie-pref-text strong{display:block;font-size:var(--text-body-sm);font-weight:var(--font-weight-semibold)}
.cookie-pref-text span{display:block;font-size:var(--text-caption);color:var(--color-fg-muted);margin-top:2px;max-width:44ch}
.switch{position:relative;flex-shrink:0;width:40px;height:22px}
.switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.switch-track{position:absolute;inset:0;background:var(--color-border-strong);border-radius:9999px;transition:background-color 200ms ease;pointer-events:none}
.switch-track::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform 200ms ease}
.switch input:checked+.switch-track{background:var(--color-primary)}
.switch input:checked+.switch-track::after{transform:translateX(18px)}
.switch input:disabled{cursor:not-allowed}
.switch input:disabled+.switch-track{background:var(--charcoal-600)}
@media (min-width:768px){
.advise-card{padding:var(--space-8) var(--space-6)}
.split{flex-direction:row;gap:var(--space-16)}
.split-head{flex:0 0 320px}
.split-body,.reasons{flex:1}
.advise-grid{grid-template-columns:repeat(2,1fr)}
.advise-card:last-child{grid-column:span 2}
.footer-main{flex-direction:row;justify-content:space-between;align-items:flex-end}
.footer-base{flex-direction:row;justify-content:space-between;align-items:baseline}
.footer-links{flex-direction:row;gap:var(--space-6);align-items:baseline}
.access{flex-direction:row;align-items:center;gap:var(--space-16)}
.access-text{flex:1}
.access-image{flex:1;min-width:0;align-self:stretch;max-height:520px}
.cookie-banner{left:var(--space-6);bottom:var(--space-6);right:auto}
}
@media (min-width:1100px){
.hero{padding-top:var(--space-40)}
.advise-grid{grid-template-columns:repeat(3,1fr)}
.advise-card:last-child{grid-column:span 2}
}
@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}
}
