:root{--parchment:#f3d7a3;--parchment-deep:#d9aa72;--paper:#f5f1ea;--sepia:#241409;--brown:#5a371b;--ochre:#a46f32;--sea:#1f4e70;--turquoise:#4fa7a0;--coral:#c86b7a;--shadow:#24140929}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--sepia);background:radial-gradient(circle at 15% 10%,#c86b7a29,#0000 28rem),radial-gradient(circle at 88% 4%,#4fa7a02e,#0000 26rem),linear-gradient(#f5f1ea 0%,#f3d7a3 46%,#f5f1ea 100%);min-height:100vh;margin:0;font-family:Inter,Segoe UI,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--turquoise)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-shell{min-height:100vh}.topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f5f1eadb;border-bottom:1px solid #5a371b29;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem clamp(1rem,4vw,4rem);display:flex;position:sticky;top:0}.brand-link{align-items:center;gap:.75rem;min-width:0;display:inline-flex}.brand-link img{object-fit:contain;width:auto;height:30px}.nav-actions{align-items:center;gap:.9rem;display:flex}.language-switcher{letter-spacing:.08em;text-transform:uppercase;border:1px solid #5a371b38;align-items:center;padding:.35rem .5rem;font-size:.85rem;display:inline-flex}.language-switcher a{border-radius:4px;padding:.25rem .45rem}.language-switcher .active{background:var(--sea);color:var(--paper)}.small-cta{background:var(--sea);color:var(--paper);border:0;padding:.7rem 1rem;font-weight:700;display:inline-flex}.hero{grid-template-columns:minmax(0,.96fr) minmax(18rem,1.04fr);gap:clamp(2rem,5vw,5rem);min-height:calc(100vh - 68px);padding:clamp(3rem,7vw,6rem) clamp(1rem,5vw,5rem) 3rem;display:grid;position:relative}.hero:before{content:"";opacity:.07;z-index:-1;background-image:url(/brand/star-and-islands.jpeg);background-position:50%;background-size:cover;position:absolute;inset:0}.hero-copy{align-self:center;max-width:42rem}.eyebrow{color:var(--brown);letter-spacing:.13em;text-transform:uppercase;margin:0 0 1rem;font-size:.85rem;font-weight:800}h1,h2,h3{margin:0;font-family:Georgia,Times New Roman,serif;font-weight:700;line-height:1}h1{max-width:13ch;font-size:clamp(2.65rem,6.2vw,5.25rem)}h2{max-width:13ch;font-size:clamp(2rem,4.4vw,3.8rem)}h3{font-size:clamp(1.35rem,2.2vw,1.85rem);line-height:1.08}p{line-height:1.7}.lead{max-width:42rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.15rem,2vw,1.45rem)}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem;display:flex}.primary-button,.secondary-button,.submit-button{cursor:pointer;border:0;justify-content:center;min-height:3.1rem;padding:.9rem 1.2rem;font-weight:800;display:inline-flex}.primary-button,.submit-button{background:var(--sea);color:var(--paper)}.secondary-button{color:var(--sepia);background:#4fa7a038}.map-panel{box-shadow:0 24px 70px var(--shadow);background:#f5f1ea85;border:1px solid #5a371b33;align-self:center;min-height:28rem;position:relative;overflow:hidden}.map-panel img{object-fit:cover;opacity:.82}.map-caption{background:#f5f1eae0;padding:1rem;position:absolute;bottom:1rem;left:1rem;right:1rem}.map-caption strong{margin-bottom:.35rem;display:block}.route-line{border-top:2px dashed var(--ochre);position:absolute;bottom:35%;left:18%;right:16%;transform:rotate(-12deg)}.content-section{padding:clamp(3.5rem,8vw,7rem) clamp(1rem,5vw,5rem)}.section-inner{max-width:72rem;margin:0 auto}.two-column{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:start;gap:clamp(2rem,5vw,4rem);display:grid}.copy-block{font-family:Georgia,Times New Roman,serif;font-size:1.08rem}.feature-grid,.island-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem;display:grid}.feature-card,.island-card,.form-shell,.login-panel{background:#f5f1eac7;border:1px solid #5a371b2e;padding:1.25rem;box-shadow:0 16px 50px #24140914}.feature-card,.island-card{grid-template-rows:auto 1fr;gap:.75rem;display:grid}.feature-card p,.island-card p{margin-bottom:0}.island-card{border-top:5px solid var(--island-color,var(--sea))}.band-blue{color:var(--paper);background:linear-gradient(90deg,#1f4e70f0,#1f4e70d1),url(/brand/star-and-islands.jpeg) 50%/cover}.band-blue .eyebrow{color:#f3d7a3}.band-blue .feature-card{background:#f5f1ea14;border-color:#f5f1ea2e}.form-section{background:linear-gradient(#f5f1eabd,#f3d7a3c2)}.request-form{gap:1rem;margin-top:1rem;display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.field{border:0;gap:.4rem;margin:0;padding:0;display:grid}.field label,.field legend,.admin-label{color:var(--brown);letter-spacing:.04em;font-size:.85rem;font-weight:800}.field input,.field select,.field textarea,.admin-input,.admin-select,.admin-textarea{color:var(--sepia);background:#ffffffa3;border:1px solid #5a371b47;width:100%;min-height:3rem;padding:.8rem}.field textarea,.admin-textarea{resize:vertical;min-height:8rem}.radio-row,.checkbox-field{flex-wrap:wrap;gap:.75rem;display:flex}.radio-pill,.checkbox-field{background:#ffffff73;border:1px solid #5a371b2e;align-items:center;gap:.45rem;padding:.75rem;display:inline-flex}.hint,.error,.success{margin:0;font-size:.92rem}.hint{color:#241409b3}.error{color:#8a1d25}.success{color:#285d43;font-weight:800}.honeypot{display:none}.admin-page,.login-page{padding:clamp(2rem,6vw,5rem)}.admin-header{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2rem;display:flex}.admin-filter{align-items:end;gap:.75rem;display:flex}.table-wrap{overflow-x:auto}.requests-table{border-collapse:collapse;width:100%;min-width:58rem}.requests-table th,.requests-table td{text-align:left;vertical-align:top;border-bottom:1px solid #5a371b29;padding:.85rem}.requests-table th{color:var(--brown);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.status-badge{background:#4fa7a033;padding:.35rem .55rem;font-size:.8rem;font-weight:800;display:inline-flex}.login-panel{max-width:32rem;margin:0 auto}@media (max-width:900px){.hero,.two-column,.field-grid{grid-template-columns:1fr}.hero{min-height:0}.map-panel{min-height:20rem}.feature-grid,.island-grid{grid-template-columns:1fr}}@media (max-width:620px){.topbar{flex-direction:column;align-items:flex-start}.nav-actions{width:100%}.small-cta{flex:1}.hero-actions,.primary-button,.secondary-button,.submit-button{width:100%}}
