:root{color-scheme:light;--cream:#f9f6f0;--sand:#f1e7d9;--forest:#1a2421;--ink:#201b13;--muted:#4f4535;--gold:#785600;--light:#f7bd48;--line:#d3c4af;--error:#922d21;--gradient:linear-gradient(135deg,#d4af37 0%,#f7e7ce 50%,#b8860b 100%)}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--ink);font:400 1.125rem/1.6 'Hanken Grotesk',Arial,sans-serif}
html{scrollbar-color:var(--gold) var(--cream)}
::selection{background:var(--forest);color:var(--cream)}
[hidden]{display:none!important}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.2;color:var(--forest);text-wrap:balance}
h1{font-size:clamp(2rem,3.4vw,3rem);line-height:1.18;letter-spacing:-.01em;font-weight:600}
h2{font-size:2rem;line-height:1.25}
h3{font-size:2rem;line-height:1.25}
a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.wrap{width:min(1168px,calc(100% - 80px));margin-inline:auto}
.site-header{border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:104px}
.brand{display:block;flex-shrink:0}
.brand img{display:block;width:300px;max-width:100%;height:auto}
nav{display:flex;gap:32px;flex-wrap:wrap}
nav a{min-height:44px;display:flex;align-items:center;font:400 .875rem/1.5 'Hanken Grotesk',Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--muted)}
nav a:hover{text-decoration:underline}
.intro{padding-block:64px 48px}
.intro p{font-size:inherit;color:var(--muted);margin-top:20px;max-width:700px}
.reading-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:72px;align-items:start;padding-bottom:80px}
.disclaimer h2{margin-bottom:24px}
.disclaimer p{font-size:inherit;line-height:1.6}
.disclaimer p+p{margin-top:28px}
.print-link{display:inline-flex;align-items:center;min-height:44px;margin-top:28px;color:var(--gold);font-size:1rem;font-weight:600}
.acknowledgment{background:var(--sand);padding:32px;border-radius:12px}
.acknowledgment h2{font-size:2rem}
.preview-note{margin-block:18px 24px;color:var(--muted);font-size:1rem}
.field{margin-bottom:24px}
label{display:block;font-weight:600;margin-bottom:8px}
label span{font:400 16px/1.5 'Hanken Grotesk',Arial,sans-serif;color:var(--muted)}
input{display:block;width:100%;min-height:54px;border:1px solid var(--gold);border-radius:6px;padding:12px 14px;background:var(--cream);color:var(--ink);font:inherit;caret-color:var(--gold)}
input[aria-invalid=true]{border-color:var(--error)}
.field-error{color:var(--error);font-size:1rem;line-height:1.5;margin-top:8px}
.consent{margin-bottom:24px;font-size:inherit}
.button{width:100%;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 24px;border:1px solid transparent;border-radius:999px;background:var(--gradient);color:var(--forest);font:700 .75rem/1.5 Manrope,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:filter 180ms ease-out,background-color 180ms ease-out}
.button:hover:not(:disabled){filter:brightness(1.05)}
.button:active:not(:disabled){filter:brightness(.95)}
.button:disabled{opacity:.6;cursor:not-allowed}
.booking-note{margin-top:20px;color:var(--muted);font-size:1rem}
#result-reference{overflow-wrap:anywhere}
.preview-result h3{margin-bottom:16px}
.preview-result dl{margin:24px 0}
.preview-result dt{font-weight:700;margin-top:16px}
.preview-result dd{margin:4px 0 0;overflow-wrap:anywhere}
.secondary{background:var(--forest);color:var(--cream)}
.site-footer{background:var(--forest);color:var(--cream)}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:40px}
.site-footer h2{color:var(--cream);font-size:1.75rem;margin-bottom:12px}
.site-footer a{display:inline-flex;align-items:center;min-height:44px;font-size:1rem}
.site-footer a:focus-visible{outline-color:var(--light)}
.skip{position:fixed;top:10px;left:10px;z-index:10;background:var(--cream);width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip:focus{width:auto;height:auto;padding:12px;clip-path:none;overflow:visible}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1000px){.reading-layout{gap:36px;grid-template-columns:1.2fr 1fr}.acknowledgment{padding:24px}nav{gap:20px}}
@media(max-width:780px){.wrap{width:calc(100% - 40px)}.header-inner{padding-block:12px;gap:4px;flex-direction:column;align-items:flex-start}.brand img{width:245px}nav{width:100%;justify-content:space-between;gap:8px}.intro{padding-block:40px 36px}.reading-layout{grid-template-columns:1fr;gap:36px;padding-bottom:48px}.acknowledgment{padding:28px 24px}.footer-inner{align-items:flex-start;flex-direction:column;gap:16px}}
@media(max-width:640px){body{font-size:1.0625rem}h1{font-size:2rem}h2,h3,.acknowledgment h2,.site-footer h2{font-size:1.5rem}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}nav{column-gap:12px;justify-content:flex-start}.acknowledgment{padding:24px 20px}.button{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{body{background:white;color:black}.site-header,.intro p,.acknowledgment,.site-footer,.skip,.print-link{display:none!important}.wrap{width:100%}.intro{padding:0 0 24px}h1{font-size:30px}.reading-layout{display:block;padding:0}.disclaimer p{font-size:12pt;line-height:1.6}.disclaimer h2{font-size:20pt}a{color:inherit}}
