@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Inter:wght@400;500;600&display=swap");
:root{--night:#101820;--paper:#f5f4ef;--forest:#234234;--water:#2b5d7e;--fire:#b96a32;--air:#c2aa75;--earth:#4f5e40;--muted:#a9b0b2;--line:rgba(255,255,255,.16);--max:1380px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--night);font:16px/1.7 Inter,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.eyebrow{font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600}.site-header{position:fixed;z-index:50;inset:0 0 auto;color:white;border-bottom:1px solid var(--line);background:rgba(16,24,32,.2);backdrop-filter:blur(10px)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:"Cormorant Garamond";font-size:1.45rem;font-weight:600}.nav-links{display:flex;align-items:center;gap:26px;font-size:.82rem}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid currentColor;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:600}.btn-light{background:var(--paper);color:var(--night);border-color:var(--paper)}.btn-ghost{color:white}.menu-button{display:none;background:none;color:white;border:0;font-size:1.4rem}.hero{min-height:100vh;color:white;display:grid;align-items:end;position:relative;background:radial-gradient(circle at 70% 25%,rgba(43,93,126,.55),transparent 32%),linear-gradient(125deg,#101820 15%,#234234 52%,#2b5d7e)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,14,18,.8),transparent 65%)}.hero-inner{position:relative;z-index:1;padding:150px 0 90px;max-width:850px}.hero h1,.page-hero h1{font:600 clamp(3.4rem,8vw,7.8rem)/.88 "Cormorant Garamond";margin:22px 0}.hero .tagline{font:500 clamp(1.5rem,3vw,2.7rem)/1.1 "Cormorant Garamond"}.hero p{max-width:700px;color:#e1e6e4;font-size:1.08rem}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.powered{margin-top:24px;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:#cbd1cf}.section{padding:120px 0}.section-dark{background:var(--night);color:white}.section-head{max-width:830px;margin-bottom:50px}.section h2{font:600 clamp(2.5rem,5vw,5rem)/.96 "Cormorant Garamond";margin:15px 0}.section p.lead{font-size:1.13rem;color:#5e6768}.section-dark p.lead{color:#bcc4c3}.manifesto{font:500 clamp(2rem,4vw,4rem)/1.13 "Cormorant Garamond";max-width:1100px}.grid{display:grid;gap:22px}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.card{min-height:330px;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;color:white;position:relative;overflow:hidden;background:linear-gradient(150deg,#263842,#101820)}.card.water{background:linear-gradient(150deg,#427fa0,#17364d)}.card.fire{background:linear-gradient(150deg,#c67a40,#51291c)}.card.earth{background:linear-gradient(150deg,#75805f,#263424)}.card.air{background:linear-gradient(150deg,#ceb982,#66583c)}.card h3{font:600 2.3rem/1 "Cormorant Garamond";margin:8px 0}.card p{color:#e2e4df}.map-shell{display:grid;grid-template-columns:330px 1fr;min-height:76vh;background:#172128}.map-panel{padding:30px;color:white;overflow:auto}.filters{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.filter{border:1px solid rgba(255,255,255,.25);background:transparent;color:white;padding:8px 12px;font-size:.7rem;letter-spacing:.12em}.filter.active{background:white;color:var(--night)}#map{min-height:600px}.location-list{display:grid;gap:8px}.loc-button{width:100%;text-align:left;padding:14px;border:1px solid rgba(255,255,255,.12);background:transparent;color:white}.loc-button small{display:block;color:#aeb8b7}.maplibregl-popup-content{padding:0!important;border-radius:0!important;overflow:hidden;min-width:250px}.popup-card{padding:20px;color:#101820}.popup-card .eyebrow{color:#2b5d7e}.popup-card h3{font:600 1.7rem "Cormorant Garamond";margin:5px 0}.journey{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:#d7d8d2}.journey div{background:var(--paper);padding:30px 18px}.journey strong{display:block;font-family:"Cormorant Garamond";font-size:1.35rem}.consierge{border:1px solid rgba(255,255,255,.16);padding:45px}.page-hero{min-height:66vh;color:white;display:flex;align-items:end;background:linear-gradient(125deg,#101820,#2b5d7e)}.page-hero .container{padding:160px 0 80px}.content-wrap{max-width:900px}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ccd0ca}.fact{background:white;padding:24px}.fact small{display:block;text-transform:uppercase;letter-spacing:.14em;color:#6a7374}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}input,select,textarea{width:100%;padding:15px;border:1px solid #c5c9c5;background:white;font:inherit}textarea{min-height:150px}.footer{background:#0b1117;color:white;padding:70px 0 30px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer a{display:block;color:#c0c7c5;margin:8px 0}.footer-bottom{border-top:1px solid var(--line);margin-top:50px;padding-top:24px;color:#9ea7a5;font-size:.8rem}.notice{padding:18px;border-left:3px solid var(--air);background:#ece8dc}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:10px;top:10px;z-index:99;background:white;padding:10px}
@media(max-width:900px){.nav-links{display:none}.menu-button{display:block}.nav.open .nav-links{display:flex;position:fixed;inset:78px 0 0;background:var(--night);flex-direction:column;padding:50px;align-items:flex-start}.grid-4,.grid-3{grid-template-columns:1fr 1fr}.map-shell{grid-template-columns:1fr}.map-panel{order:2}.journey{grid-template-columns:1fr 1fr 1fr}.facts{grid-template-columns:1fr 1fr}}@media(max-width:600px){.container{width:min(calc(100% - 28px),var(--max))}.section{padding:78px 0}.grid-4,.grid-3{grid-template-columns:1fr}.hero-inner{padding-bottom:65px}.map-shell{margin-inline:-14px}.journey{grid-template-columns:1fr 1fr}.form-grid,.footer-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.facts{grid-template-columns:1fr}.brand{font-size:1.1rem}}
