:root{color-scheme:dark;--ink:#f4efe6;--muted:#cec7b9;--line:rgba(244,239,230,.3);--deep:#151819;--accent:#e6d4ab}
*{box-sizing:border-box}
html{min-width:320px;background:var(--deep)}
body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit}
a{color:inherit}
:focus-visible{outline:3px solid #fff0bf;outline-offset:4px}
.scene{position:relative;display:flex;flex-direction:column;min-height:100svh;overflow:hidden;isolation:isolate;background:#292c2c}
.portrait,.wash,.grain{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.portrait{object-fit:cover;object-position:60% 35%;z-index:-3}
.wash{z-index:-2;background:linear-gradient(90deg,rgba(12,15,16,.94) 0%,rgba(12,15,16,.71) 38%,rgba(12,15,16,.05) 78%),linear-gradient(0deg,rgba(12,15,16,.72),transparent 32%,rgba(12,15,16,.2) 100%)}
.grain{z-index:-1;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.24'/%3E%3C/svg%3E")}
.masthead,.footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-inline:clamp(1.4rem,5.5vw,6.25rem)}
.masthead{padding-top:clamp(1.3rem,3vw,2.25rem)}
.wordmark{display:inline-flex;align-items:center;gap:1.1rem;text-decoration:none}
.mark{display:inline-flex;align-items:center;justify-content:center;width:3.15rem;height:3.15rem;border:1px solid rgba(255,255,255,.8);border-radius:50%;font:1.05rem Georgia,'Times New Roman',serif;letter-spacing:-.09em;padding-right:.08em}
.mark-dot{color:var(--accent)}
.mark-label{font:500 .78rem Arial,Helvetica,sans-serif;letter-spacing:.22em;text-transform:uppercase}
.identity,.eyebrow,.panel-eyebrow{font-size:.67rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.identity{display:flex;align-items:center;gap:.55rem;padding:.72rem 1rem;border:1px solid var(--line);border-radius:10rem;backdrop-filter:blur(10px)}
.identity-dot{width:.38rem;height:.38rem;border-radius:50%;background:#c3d49c}
.hero-copy{width:min(45rem,100%);margin:auto 0;padding:4rem clamp(1.4rem,10vw,10rem) 4.5rem clamp(1.4rem,9vw,9rem)}
.eyebrow{margin:0 0 1.4rem;color:var(--accent)}
.eyebrow span{padding-inline:.55rem;color:#cabfa8}
h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em}
h1{margin:0;font-size:clamp(4.9rem,10.5vw,10rem);line-height:.91;white-space:nowrap}
h1 em,h2 em{font-weight:400;color:var(--accent)}
.intro{max-width:25rem;margin:1.75rem 0 2.15rem;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.65;color:#eee7dc}
.discover{display:inline-flex;align-items:center;justify-content:space-between;gap:3.5rem;min-width:15.5rem;padding:.93rem 1.05rem .93rem 1.4rem;border:1px solid #ede8df;border-radius:4rem;background:#f3eee5;color:#191d1b;text-decoration:none;font-size:.86rem;font-weight:700;letter-spacing:.025em;transition:transform .2s,background .2s;cursor:pointer}
.discover:hover{transform:translateY(-2px);background:#fff}
.arrow{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:#1b2220;color:#fff;font-size:1.2rem;font-weight:400}
.footer{padding-bottom:1.75rem;color:#d1cabf;font-size:.68rem;letter-spacing:.08em}
.footer a{text-underline-offset:.25em}
dialog{position:fixed;inset:0;width:min(29rem,calc(100% - 2rem));max-height:calc(100svh - 2rem);padding:0;border:1px solid rgba(237,230,215,.3);border-radius:1.3rem;background:#202523;color:var(--ink);box-shadow:0 22px 80px rgba(0,0,0,.5)}
dialog::backdrop{background:rgba(8,13,13,.75);backdrop-filter:blur(9px)}
.dialog-inner{position:relative;padding:clamp(2rem,5vw,3rem);overflow:auto}
.close{position:absolute;right:1.2rem;top:1.1rem;display:grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--line);border-radius:50%;background:transparent;color:#fff;font-size:1.5rem;cursor:pointer}
.panel-eyebrow{margin:0 0 1rem;color:var(--accent)}
h2{max-width:18rem;margin:0;font-size:clamp(2.7rem,7vw,3.7rem);line-height:1.03}
.panel-copy{margin:1.35rem 0 1.8rem;color:#e4ded4;line-height:1.6;font-size:.98rem}
.panel-primary,.panel-secondary,.destination{width:100%;border:0;border-radius:.7rem;cursor:pointer}
.panel-primary{display:flex;justify-content:space-between;gap:1rem;padding:1.15rem 1.3rem;background:#e7d5ad;color:#151a18;text-align:left;font-weight:700}
.panel-primary:hover{background:#f6e8ca}
.panel-secondary{margin-top:.75rem;padding:1rem;background:transparent;color:#e4ded4;text-align:center;text-decoration:underline;text-underline-offset:.25em}
.panel-secondary:hover{color:#fff}
.panel-fine{margin:1.5rem 0 0;color:#aca99f;font-size:.73rem;line-height:1.55}
.destination{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.75rem 0;padding:1rem 1.1rem;border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:border-color .2s,background .2s}
.destination:hover{border-color:var(--accent);background:#303631}
.destination strong,.destination small{display:block}
.destination strong{font:400 1.23rem Georgia,'Times New Roman',serif}
.destination small{margin-top:.4rem;color:#ccc7bd;font-size:.74rem;line-height:1.35}
.destination>span:last-child{font-size:1.25rem}
.back{margin-top:1rem}
[hidden]{display:none!important}
@media(max-width:700px){.scene{min-height:100svh}.portrait{object-position:54% 22%}.wash{background:linear-gradient(0deg,rgba(10,14,14,.94) 0%,rgba(10,14,14,.67) 31%,rgba(10,14,14,.04) 61%,rgba(10,14,14,.28) 100%)}.masthead{padding-top:1.2rem}.mark{width:2.55rem;height:2.55rem;font-size:.9rem}.mark-label{font-size:.67rem}.identity{padding:.65rem .78rem;font-size:.57rem;letter-spacing:.11em}.hero-copy{align-self:center;width:100%;margin:auto 0 0;padding:2rem 1.45rem 3.3rem;text-align:center}.eyebrow{margin-bottom:1rem;font-size:.62rem}h1{font-size:clamp(4.2rem,16vw,7rem);white-space:normal}.intro{margin:1.15rem auto 1.6rem;max-width:21rem;font-size:.99rem;line-height:1.5}.discover{width:min(100%,21rem)}.footer{align-items:flex-end;padding-bottom:1.2rem;font-size:.61rem}.footer span{max-width:11rem;line-height:1.4}}
@media(max-height:620px){.hero-copy{padding-top:1rem;padding-bottom:1.1rem}.eyebrow{margin-bottom:.7rem}.intro{margin-block:.65rem 1rem}.masthead{padding-top:.7rem}.footer{padding-bottom:.7rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
