:root{color:#1d2420;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f7f5ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}.page-shell{gap:28px;width:min(100% - 32px,760px);margin:0 auto;padding:48px 0 28px;display:grid}.intro{gap:12px;display:grid}.eyebrow{color:#47604e;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:700}h1{color:#17211b;letter-spacing:0;margin:0;font-size:clamp(2rem,6vw,4.4rem);font-weight:650;line-height:.96}.lede{color:#445149;max-width:620px;margin:0;font-size:1.05rem;line-height:1.6}.request-form{background:#fffdf7;border:1px solid #ded8c9;border-radius:8px;gap:22px;padding:28px;display:grid;box-shadow:0 18px 40px #1d242014}.field-grid{gap:18px;display:grid}.field{gap:8px;display:grid}.field>span:not(.field-error),.tour-fieldset legend,.party-fieldset legend{color:#28332d;font-size:.95rem;font-weight:700}small{color:#6f7a72;font-size:.82em;font-weight:500}.field-help{margin-top:-2px;line-height:1.45}input,textarea{color:#17211b;background:#fff;border:1px solid #bfc8bb;border-radius:6px;outline:none;width:100%;transition:border-color .14s,box-shadow .14s}input{min-height:46px;padding:10px 12px}textarea{resize:vertical;min-height:128px;padding:12px;line-height:1.5}input:focus,textarea:focus{border-color:#315b40;box-shadow:0 0 0 3px #315b402e}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:#a43828}.tour-fieldset,.party-fieldset{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.tour-options{gap:10px;display:grid}.tour-option{color:#29352d;cursor:pointer;background:#f4f1e8;border:1px solid #cfc8b8;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:82px;padding:12px;display:flex;position:relative}.tour-option input{clip:rect(0 0 0 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tour-option span{text-align:center;font-weight:800;line-height:1.15}.tour-details-link{color:#315b40;text-underline-offset:3px;font-size:.82rem;font-weight:750;line-height:1.2}.tour-details-link:focus-visible{outline-offset:3px;border-radius:3px;outline:3px solid #315b4047}.tour-option:has(input:focus-visible){border-color:#315b40;box-shadow:0 0 0 3px #315b402e}.tour-option:has(input:checked){color:#fff;background:#315b40;border-color:#315b40}.tour-option:has(input:checked) .tour-details-link{color:#fff}.party-size-list{gap:10px;display:grid}.party-size-field{background:#f8f6ee;border:1px solid #d8d2c4;border-radius:6px;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:12px;padding:12px;display:grid}.party-size-field span{color:#29352d;font-size:.92rem;font-weight:700;line-height:1.3}.party-size-field input{text-align:center;min-height:42px}.field-error{color:#a43828;font-size:.88rem;line-height:1.4}.form-actions{gap:12px;display:grid;position:relative}.turnstile-container{width:1px;height:1px;position:absolute;overflow:hidden}button{color:#fff;cursor:pointer;white-space:nowrap;background:#1f4d35;border:1px solid #1f4d35;border-radius:6px;width:100%;min-height:48px;padding:12px 18px;font-weight:750}button:focus-visible{outline-offset:3px;outline:3px solid #315b4047}button:disabled{cursor:wait;opacity:.72}.privacy-note,.site-footer{color:#68746b;margin:0;font-size:.9rem;line-height:1.5}.status-message{border-radius:6px;margin:0;padding:12px 14px;line-height:1.45}.status-message.success{color:#173c28;background:#e5f0e6;border:1px solid #b8d3bc}.status-message.error{color:#7e281a;background:#f7e5df;border:1px solid #e7b8ac}.site-footer{padding:4px 0 0}@media (min-width:680px){.page-shell{padding-top:72px}.request-form{gap:24px;padding:34px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tour-options{grid-template-columns:repeat(3,minmax(0,1fr))}.party-size-list{grid-template-columns:repeat(2,minmax(0,1fr))}.party-size-field{grid-template-columns:minmax(0,1fr) 80px}.form-actions{grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:24px}button{grid-area:1/2;justify-self:end;width:auto}.privacy-note{grid-area:1/1;align-self:center}}
