@font-face{font-family:Newsreader;src:url('/assets/fonts/newsreader-latin-normal.woff2') format('woff2');font-weight:400 600;font-style:normal;font-display:swap}@font-face{font-family:Newsreader;src:url('/assets/fonts/newsreader-latin-italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:'Public Sans';src:url('/assets/fonts/public-sans-latin-normal.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
:root{--bg:#111315;--surface:#25282b;--surface-soft:#1b1e20;--ink:#efeae0;--muted:#a5a7a6;--accent:#c0a47b;--accent-light:#deceb7;--line:#353a3c;--input-border:#68716c;--danger:#e6afa5;--success:#b8cbbb;--font-display:Newsreader,Georgia,serif;--font-body:'Public Sans',Arial,sans-serif;--gutter:clamp(24px,5.6vw,88px);--page:1280px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:40px;--space-5:64px;--space-6:96px;--space-7:144px;--radius:2px;color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background-color:var(--bg);background-image:radial-gradient(ellipse 950px 660px at 0% 0%,rgba(198,161,91,.21),transparent 72%),radial-gradient(ellipse 850px 900px at 100% 320px,rgba(198,161,91,.10),transparent 72%);background-size:100% 1000px,100% 1400px;background-repeat:no-repeat;color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--bg)}img{display:block;max-width:100%;height:auto}svg{flex-shrink:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}:where([hidden]){display:none!important}h1,h2,h3,p,ul,ol,figure{margin-top:0}h1,h2{font-family:var(--font-display);font-weight:400;line-height:1.05;letter-spacing:-.035em;font-optical-sizing:auto}h1{font-size:clamp(48px,5.5vw,80px)}h2{font-size:clamp(36px,4.2vw,58px)}h3{font-size:18px;font-weight:500;line-height:1.4}p{margin-bottom:1.25em}a:not(.button):hover{color:var(--accent-light)}:where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--accent-light);outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-light);outline-offset:2px}.container{width:min(calc(100% - var(--gutter)*2),var(--page));margin-inline:auto}.section{padding-block:var(--space-6)}.eyebrow{display:block;font:500 13px/1.6 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:24px}.muted,.fine{color:var(--muted)}.fine,small{font-size:14px;line-height:1.7}.display em,h1 em,h2 em{font-weight:400;color:var(--accent)}.button,button.primary{display:inline-flex;justify-content:center;align-items:center;gap:24px;min-height:52px;padding:14px 24px;border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--bg);font:500 15px/1.5 var(--font-body);text-decoration:none;transition:background .2s,border-color .2s,color .2s}.button:hover,button.primary:hover{background:var(--accent-light);border-color:var(--accent-light);color:var(--bg)}.button.secondary{background:transparent;color:var(--ink);border-color:var(--input-border)}.button.secondary:hover{background:var(--surface);border-color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:15px;border-bottom:1px solid var(--accent);padding-block:8px}.arrow-icon{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.3}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;top:10px;left:20px;z-index:150;padding:12px 20px;background:var(--ink);color:var(--bg);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:relative;z-index:40;border-bottom:1px solid var(--line);background:transparent}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:28px}.site-brand{display:flex;align-items:center;gap:14px;flex-shrink:0}.site-brand img{width:32px;height:32px;object-fit:contain}.brand-name{display:block;font:400 23px/1.1 var(--font-display);letter-spacing:.035em;white-space:nowrap}.brand-descriptor{display:block;font:400 10px/1.4 var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-top:6px}.site-nav{display:flex;align-items:center;gap:22px}.site-nav>a{font-size:13px;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}.site-nav>a[aria-current=page]{color:var(--accent)}.site-nav .nav-cta{min-height:44px;padding:11px 20px;font-size:13px}.menu-toggle{display:none;align-items:center;gap:12px;min-height:44px;padding:10px 0 10px 12px;border:0;background:none;color:var(--ink);font-size:14px}.menu-toggle span{width:20px;height:12px;display:block;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.site-footer{border-top:1px solid var(--line);padding-block:72px 24px}.footer-top{display:grid;grid-template-columns:1.3fr 1fr .8fr .9fr;gap:48px;padding-bottom:64px}.footer-brand .brand-name{font-size:30px;white-space:normal}.footer-brand p{color:var(--muted);font-size:15px;max-width:26ch;margin:22px 0}.footer-heading{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:500;margin:0 0 16px}.footer-column a,.footer-column button{display:block;font-size:14px;line-height:1.6;padding:10px 0;min-height:40px}.footer-column a{overflow-wrap:anywhere}.footer-column button,.cookie-settings-link{border:0;background:none;text-align:left;color:var(--ink);font-family:var(--font-body)}.footer-bottom{display:flex;gap:24px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:12px}.footer-bottom>div{display:flex;gap:20px;align-items:center}.cookie-settings-link{font-size:13px;padding:12px 0;min-height:44px}.site-footer.compact{padding-block:28px}.site-footer.compact .footer-top{display:none}
.field{display:grid;gap:9px;font-size:14px}.field>label,.field>span,form label:not(.choice):not(.check){font-weight:500}input:not([type=radio]):not([type=checkbox]),select,textarea{width:100%;min-height:52px;border:1px solid var(--input-border);border-radius:var(--radius);background:var(--surface-soft);color:var(--ink);padding:13px 15px;font-size:16px;line-height:1.5}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}textarea{resize:vertical;min-height:128px}input[type=date],input[type=time]{min-width:0}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:18px;height:18px;flex-shrink:0}input[readonly]{color:var(--muted)}.field small{font-weight:400;color:var(--muted)}input.invalid,select.invalid,textarea.invalid,[aria-invalid=true]{border-color:var(--danger)!important}.form-error,.status.error{color:var(--danger);font-size:15px;line-height:1.6}.status{padding:16px 0;color:var(--muted)}.status:empty,.form-error:empty{display:none}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.panel{padding:32px;background:var(--surface-soft);border:1px solid var(--line)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.section-heading h2{margin-bottom:0}.section-heading .eyebrow{margin-bottom:14px}
details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:22px 0;font-weight:500}summary::-webkit-details-marker{display:none}summary::after{content:'+';font:400 24px/1 var(--font-body);color:var(--accent);flex-shrink:0}details[open]>summary::after{content:'−'}details>p{padding-right:40px;color:var(--muted);font-size:16px;max-width:75ch}details a{text-decoration:underline;text-underline-offset:4px}.reveal.is-visible{animation:arrive .65s both}@keyframes arrive{from{opacity:.15;transform:translateY(16px)}to{opacity:1;transform:none}}
.cookie-banner{position:fixed;right:24px;bottom:24px;z-index:80;width:min(480px,calc(100% - 48px));background:var(--surface);border:1px solid var(--input-border);padding:26px;box-shadow:0 10px 40px #0005}.cookie-banner h2{font-size:26px;letter-spacing:-.02em;margin:0 0 10px}.cookie-banner p{font-size:14px;color:var(--muted);margin-bottom:18px}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-actions button{min-height:44px;padding:10px 14px;font-size:13px}.cookie-actions .cookie-customise{border:0;background:none;color:var(--ink);padding-inline:0;text-decoration:underline;text-underline-offset:4px}.cookie-dialog{color:var(--ink);background:var(--surface);border:1px solid var(--input-border);border-radius:2px;width:min(560px,calc(100% - 40px));max-height:calc(100dvh - 48px);padding:32px;overflow:auto}.cookie-dialog::backdrop{background:#0009}.cookie-dialog h2{font-size:36px;margin-right:25px}.cookie-dialog p{color:var(--muted);font-size:15px}.cookie-choice{display:flex;gap:16px;border-block:1px solid var(--line);padding-block:20px;margin-bottom:24px}.cookie-choice input{margin-top:4px}.cookie-choice strong{display:block;font-size:16px}.cookie-choice small{display:block;color:var(--muted);margin-top:8px}.cookie-dialog .dialog-close{position:absolute;right:20px;top:16px;width:44px;height:44px;border:0;background:none;color:var(--ink);font-size:24px}
@media(min-width:1600px){.header-inner{min-height:108px}.section{padding-block:120px}}@media(max-width:1100px){.site-nav{gap:18px}.site-nav>a{font-size:12px}.site-nav .nav-cta{padding-inline:16px}.site-brand{gap:10px}.brand-name{font-size:21px}.brand-descriptor{font-size:9px}.site-brand img{width:28px;height:28px}.footer-top{grid-template-columns:1.1fr 1fr;row-gap:40px}}@media(max-width:1100px){.header-inner{min-height:80px;flex-wrap:wrap}.menu-toggle{display:flex}.site-nav{width:100%;display:flex;flex-direction:column;gap:0;align-items:stretch;padding-bottom:24px}.site-nav>a{padding:12px 0;font-size:16px;min-height:48px;border-bottom:1px solid var(--line)}.site-nav .nav-cta{font-size:16px;justify-content:center;margin-top:14px;border:1px solid var(--accent)}.js .site-nav{display:none}.js .site-header.is-open .site-nav{display:flex}.section{padding-block:80px}.site-footer{padding-top:56px}.section-heading{align-items:start;flex-direction:column}.footer-bottom{align-items:flex-start;flex-direction:column;gap:10px}}@media(max-width:600px){:root{--gutter:24px;--space-6:64px}.brand-name{font-size:20px}.brand-descriptor{font-size:9px}.site-brand img{width:26px;height:26px}.site-brand{gap:10px}.header-inner{min-height:76px}.section{padding-block:64px}.button{gap:16px;min-height:52px}.footer-top{grid-template-columns:1fr 1fr;gap:32px 20px;padding-bottom:32px}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:40ch}.footer-column a{font-size:13px}.footer-bottom{font-size:12px;line-height:1.6}.footer-bottom>div{gap:16px}.cookie-banner{right:16px;bottom:16px;width:calc(100% - 32px);padding:22px}.cookie-banner h2{font-size:25px}.cookie-actions .button{flex:1;min-width:120px}.cookie-dialog{padding:28px 22px}.panel{padding:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.site-header,.site-footer,.cookie-banner,.cookie-dialog,.skip-link{display:none!important}body{background:#fff;color:#111;color-scheme:light}}

.menu-toggle span{width:auto;height:auto;border:0;display:inline}.footer-bottom a:hover,.cookie-settings-link:hover{color:var(--accent-light)}

.cookie-customise{border:0;background:none;color:var(--ink);min-height:44px;padding:12px 0;font-size:13px;text-decoration:underline;text-underline-offset:4px}.cookie-dialog-close{position:absolute;right:16px;top:12px;width:44px;height:44px;border:0;background:none;color:var(--ink);font-size:24px}.cookie-choice .muted{display:block;font-size:14px;line-height:1.8;margin-top:8px}.cookie-choice input{flex:0 0 18px}.site-footer.compact-footer{padding-block:28px}.site-footer.compact-footer .footer-top{display:none}.site-footer.compact-footer .footer-bottom{border:0;padding:0}@media(max-width:900px){.footer-bottom>div{flex-wrap:wrap;gap:8px 20px}}

@media print{.local-demo-notice{display:none!important}}
