:root{--bg: #070b14;--bg-elevated: #0f1628;--bg-card: #121a2e;--bg-soft: #182038;--text: #f4f1ea;--text-muted: #a8b0c4;--text-dim: #7a849c;--aurora-teal: #5eead4;--aurora-violet: #a78bfa;--aurora-gold: #fbbf24;--accent: #fac600;--accent-dark: #c99600;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .14);--shadow: 0 24px 60px rgba(0, 0, 0, .45);--radius: 1rem;--radius-sm: .65rem;--font: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;--font-display: "Segoe UI", Georgia, "Times New Roman", serif;--max: 1120px;--nav-h: 4.25rem;--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh;overflow-x:hidden}img{max-width:100%;display:block}a{color:var(--aurora-teal);text-decoration-thickness:1px;text-underline-offset:.2em}a:hover{color:#99f6e4}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.2;font-weight:650;letter-spacing:-.02em;margin:0 0 .75rem}h1{font-size:clamp(2rem,5vw,3.25rem)}h2{font-size:clamp(1.5rem,3.5vw,2.15rem)}h3{font-size:1.2rem}p{margin:0 0 1rem;color:var(--text-muted)}.container{width:min(100% - 2rem,var(--max));margin-inline:auto}.skip-link{position:absolute;left:1rem;top:-100px;background:var(--accent);color:#1a1a1a;padding:.5rem 1rem;border-radius:.4rem;z-index:1000;font-weight:600}.skip-link:focus{top:1rem}.aurora-bg{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse 80% 50% at 10% -10%,rgba(94,234,212,.18),transparent 55%),radial-gradient(ellipse 70% 45% at 90% 0%,rgba(167,139,250,.16),transparent 50%),radial-gradient(ellipse 60% 40% at 50% 100%,rgba(251,191,36,.06),transparent 50%),var(--bg)}.site-header{position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#070b14c7;border-bottom:1px solid var(--border)}.nav{display:flex;align-items:center;justify-content:space-between;height:var(--nav-h);gap:1rem}.logo{display:flex;align-items:center;gap:.65rem;color:var(--text);text-decoration:none;font-weight:700;letter-spacing:-.01em}.logo:hover{color:var(--text)}.logo-mark{width:2rem;height:2rem;flex-shrink:0}.logo-text{font-size:.95rem;line-height:1.15}.logo-text small{display:block;font-size:.68rem;font-weight:500;color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase}.nav-links{display:none;list-style:none;margin:0;padding:0;gap:.15rem;align-items:center}.nav-links a{color:var(--text-muted);text-decoration:none;padding:.45rem .7rem;border-radius:999px;font-size:.9rem;font-weight:500;transition:color .2s var(--ease),background .2s var(--ease)}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--text);background:#ffffff0f}.nav-cta{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.75rem 1.35rem;border-radius:999px;font-weight:650;font-size:.95rem;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .2s var(--ease),background .2s var(--ease),box-shadow .2s var(--ease);font-family:inherit}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,#f59e0b 100%);color:#1a1400!important;box-shadow:0 8px 28px #fac60047}.btn-primary:hover{box-shadow:0 12px 36px #fac60061;color:#1a1400!important}.btn-ghost{background:transparent;color:var(--text)!important;border-color:var(--border-strong)}.btn-ghost:hover{background:#ffffff0d;color:var(--text)!important}.btn-lg{padding:.9rem 1.6rem;font-size:1rem}.nav-toggle{display:flex;flex-direction:column;gap:5px;background:transparent;border:1px solid var(--border-strong);border-radius:.5rem;padding:.55rem .6rem;cursor:pointer}.nav-toggle span{display:block;width:1.25rem;height:2px;background:var(--text);border-radius:2px}@media(min-width:880px){.nav-links{display:flex}.nav-cta{display:inline-flex}.nav-toggle{display:none}.logo-text{font-size:1rem}}.mobile-nav{display:none;border-top:1px solid var(--border);padding:1rem 0 1.25rem;background:#070b14f5}.mobile-nav.open{display:block}.mobile-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:.25rem}.mobile-nav a{display:block;padding:.75rem .5rem;color:var(--text);text-decoration:none;font-weight:500;border-radius:var(--radius-sm)}.mobile-nav a:hover,.mobile-nav a[aria-current=page]{background:#ffffff0d}.mobile-nav .btn{width:100%;margin-top:.75rem}.hero{padding:3.5rem 0 3rem;position:relative}.hero-grid{display:grid;gap:2.5rem;align-items:center}@media(min-width:900px){.hero-grid{grid-template-columns:1.1fr .9fr;gap:3rem;padding:2rem 0 1rem}}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--aurora-teal);margin-bottom:1rem}.eyebrow:before{content:"";width:1.5rem;height:2px;background:linear-gradient(90deg,var(--aurora-teal),var(--aurora-violet));border-radius:2px}.hero h1{margin-bottom:1rem;max-width:16ch}.hero .lead{font-size:1.1rem;max-width:38ch;margin-bottom:1.75rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.75rem}.trust-row{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;font-size:.85rem;color:var(--text-dim)}.trust-row span{display:inline-flex;align-items:center;gap:.35rem}.trust-row strong{color:var(--text-muted);font-weight:600}.hero-visual{position:relative}.visual-stack{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:.75rem;min-height:320px}.visual-card{border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;position:relative;min-height:140px;box-shadow:var(--shadow)}.visual-card.tall{grid-row:1 / -1;min-height:280px}.visual-card .label{position:absolute;left:.85rem;bottom:.85rem;font-size:.75rem;font-weight:600;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.5);z-index:2}.panel-aurora{background:linear-gradient(180deg,transparent 40%,rgba(7,11,20,.55) 100%),radial-gradient(ellipse 80% 60% at 50% 80%,rgba(94,234,212,.35),transparent 60%),radial-gradient(ellipse 70% 50% at 70% 40%,rgba(167,139,250,.4),transparent 55%),radial-gradient(ellipse 50% 40% at 20% 30%,rgba(56,189,248,.25),transparent 50%),linear-gradient(165deg,#0a1628,#1a0a2e 45%,#061018)}.panel-lounge{background:linear-gradient(180deg,transparent 50%,rgba(7,11,20,.6) 100%),linear-gradient(135deg,#1e293b,#334155 40%,#1e293b)}.panel-lounge:after{content:"";position:absolute;top:20%;right:15%;bottom:25%;left:15%;background:linear-gradient(180deg,#475569,#1e293b);border-radius:.4rem;opacity:.5;box-shadow:inset 0 0 40px #5eead426}.panel-bedroom{background:linear-gradient(180deg,transparent 45%,rgba(7,11,20,.65) 100%),linear-gradient(160deg,#1a1525,#2d2438,#12101a)}.panel-bedroom:after{content:"";position:absolute;bottom:25%;left:12%;right:12%;height:35%;background:linear-gradient(90deg,#3f3a4a,#5a5568);border-radius:.35rem .35rem 0 0;opacity:.55}section{padding:3.5rem 0}.section-head{max-width:40rem;margin-bottom:2rem}.section-head p{font-size:1.05rem}.grid-3{display:grid;gap:1.25rem}@media(min-width:720px){.grid-3{grid-template-columns:repeat(3,1fr)}}.grid-2{display:grid;gap:1.25rem}@media(min-width:720px){.grid-2{grid-template-columns:repeat(2,1fr)}}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:border-color .2s var(--ease),transform .2s var(--ease)}.card:hover{border-color:#5eead440}.card-icon{width:2.5rem;height:2.5rem;border-radius:.75rem;display:grid;place-items:center;margin-bottom:1rem;background:linear-gradient(135deg,#5eead426,#a78bfa26);font-size:1.2rem}.card h3{margin-bottom:.5rem}.card p{margin-bottom:0;font-size:.95rem}.amenity-grid{display:grid;gap:.75rem;grid-template-columns:1fr 1fr}@media(min-width:720px){.amenity-grid{grid-template-columns:repeat(4,1fr)}}.amenity{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem;text-align:center;font-size:.9rem;font-weight:550;color:var(--text)}.amenity small{display:block;margin-top:.25rem;font-weight:400;color:var(--text-dim);font-size:.78rem}.photo-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}@media(min-width:720px){.photo-strip{grid-template-columns:repeat(4,1fr)}}.photo-strip .visual-card{aspect-ratio:4/3;min-height:auto}.cta-band{margin:1rem 0 3rem;padding:2.5rem 1.75rem;border-radius:calc(var(--radius) + .25rem);border:1px solid var(--border);background:radial-gradient(ellipse 80% 80% at 0% 50%,rgba(94,234,212,.12),transparent 55%),radial-gradient(ellipse 70% 70% at 100% 50%,rgba(167,139,250,.12),transparent 50%),var(--bg-elevated);text-align:center}.cta-band h2{margin-bottom:.5rem}.cta-band p{max-width:36rem;margin:0 auto 1.5rem}.cta-band .hero-actions{justify-content:center;margin-bottom:0}.page-hero{padding:3rem 0 1.5rem}.page-hero h1{max-width:18ch}.page-hero .lead{max-width:48ch;font-size:1.08rem}.booking-wrap{background:#fff;border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow);margin:2rem 0;min-height:120px}.booking-fallback{margin-top:1.5rem;padding:1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);text-align:center}.booking-fallback p{margin-bottom:1rem;font-size:.95rem}.facts{display:grid;gap:0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg-card)}.fact-row{display:grid;grid-template-columns:1fr 1.4fr;gap:.5rem;padding:.9rem 1.15rem;border-bottom:1px solid var(--border);font-size:.95rem}.fact-row:last-child{border-bottom:none}.fact-row dt{color:var(--text-dim);font-weight:500}.fact-row dd{margin:0;color:var(--text);font-weight:550}.faq-list{display:grid;gap:.75rem;max-width:44rem}details.faq{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0}details.faq summary{cursor:pointer;padding:1rem 1.15rem;font-weight:600;color:var(--text);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem}details.faq summary::-webkit-details-marker{display:none}details.faq summary:after{content:"+";font-size:1.25rem;color:var(--aurora-teal);font-weight:400}details.faq[open] summary:after{content:"−"}details.faq .faq-body{padding:0 1.15rem 1.15rem;color:var(--text-muted);font-size:.95rem}.contact-card{max-width:32rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem}.contact-card a.email{display:inline-block;font-size:1.15rem;font-weight:650;color:var(--aurora-gold);text-decoration:none;margin:.5rem 0 1.25rem;word-break:break-all}.contact-card a.email:hover{color:#fde68a}.note{font-size:.88rem;color:var(--text-dim);border-left:3px solid var(--aurora-violet);padding-left:.85rem;margin-top:1.25rem}.site-footer{border-top:1px solid var(--border);padding:2.5rem 0 2rem;margin-top:2rem;background:#00000040}.footer-grid{display:grid;gap:2rem}@media(min-width:720px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr}}.site-footer h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:.85rem;font-family:var(--font);font-weight:600}.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}.site-footer a{color:var(--text-muted);text-decoration:none;font-size:.92rem}.site-footer a:hover{color:var(--text)}.footer-brand{color:var(--text);font-weight:700;margin-bottom:.5rem}.footer-meta{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--border);font-size:.8rem;color:var(--text-dim);display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;justify-content:space-between}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.muted{color:var(--text-muted)}.dim{color:var(--text-dim)}.text-center{text-align:center}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.badge{display:inline-block;padding:.25rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#5eead41f;color:var(--aurora-teal);border:1px solid rgba(94,234,212,.25)}.two-col{display:grid;gap:2rem;align-items:start}@media(min-width:800px){.two-col{grid-template-columns:1.1fr .9fr}}.prose li{color:var(--text-muted);margin-bottom:.4rem}.prose ul{padding-left:1.2rem;margin:0 0 1rem}.reviews-section{padding-top:2.5rem}.trust-strip{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin-bottom:1.75rem;font-size:.92rem;color:var(--text-muted)}.trust-strip .trust-score{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;border-radius:999px;background:#5eead41a;border:1px solid rgba(94,234,212,.28);color:var(--aurora-teal);font-weight:650;font-size:.88rem}.trust-strip .trust-score.secondary{background:#a78bfa1a;border-color:#a78bfa47;color:#c4b5fd}.trust-strip .trust-score.airbnb{background:#ff385c1f;border-color:#ff385c4d;color:#ff8a9b}.trust-strip a{font-weight:600;text-decoration:none;border-bottom:1px solid rgba(94,234,212,.4)}.trust-strip a:hover{border-bottom-color:var(--aurora-teal)}.review-carousel{position:relative;max-width:40rem}.review-stage{position:relative;min-height:14.5rem;perspective:1200px}.review-card{position:absolute;top:0;left:0;right:0;height:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.6rem 1.5rem 1.4rem;box-shadow:var(--shadow);opacity:0;transform:rotateY(18deg) translate(12px);pointer-events:none;transition:opacity .55s var(--ease),transform .55s var(--ease);display:flex;flex-direction:column;gap:1rem}.review-card.is-active{opacity:1;transform:rotateY(0) translate(0);pointer-events:auto;z-index:1}.review-card.is-leaving{opacity:0;transform:rotateY(-14deg) translate(-10px);z-index:0}.review-quote{margin:0;font-size:1.05rem;line-height:1.55;color:var(--text);font-style:italic;flex:1}.review-quote:before{content:"“";color:var(--aurora-teal);font-style:normal;font-weight:700;margin-right:.1em}.review-quote:after{content:"”";color:var(--aurora-teal);font-style:normal;font-weight:700;margin-left:.05em}.review-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .85rem;font-size:.88rem;color:var(--text-dim)}.review-meta .guest-name{color:var(--text);font-weight:650;font-style:normal}.review-channel{display:inline-flex;align-items:center;padding:.18rem .55rem;border-radius:999px;font-size:.72rem;font-weight:650;letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--border-strong)}.review-channel.booking{background:#38bdf81f;color:#7dd3fc;border-color:#38bdf84d}.review-channel.vrbo{background:#5eead41f;color:var(--aurora-teal);border-color:#5eead44d}.review-channel.airbnb{background:#ff385c1f;color:#ff8a9b;border-color:#ff385c4d}.review-score{font-weight:650;color:var(--aurora-gold)}.review-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}.review-dots{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}.review-dots button{width:.55rem;height:.55rem;border-radius:999px;border:none;padding:0;background:#ffffff38;cursor:pointer;transition:transform .2s var(--ease),background .2s var(--ease),width .2s var(--ease)}.review-dots button[aria-current=true]{background:var(--aurora-teal);width:1.35rem}.review-dots button:hover,.review-dots button:focus-visible{background:#5eead4b3;outline:2px solid rgba(94,234,212,.45);outline-offset:2px}.review-nav-btns{display:flex;gap:.4rem}.review-nav-btns button{width:2.25rem;height:2.25rem;border-radius:999px;border:1px solid var(--border-strong);background:#ffffff0a;color:var(--text);cursor:pointer;font-size:1.1rem;line-height:1;transition:background .2s var(--ease),border-color .2s var(--ease)}.review-nav-btns button:hover,.review-nav-btns button:focus-visible{background:#5eead41f;border-color:#5eead466;outline:none}@media(prefers-reduced-motion:reduce){.review-card{transition:opacity .2s ease;transform:none!important}}.nearby-grid{display:grid;gap:.85rem;grid-template-columns:1fr}@media(min-width:560px){.nearby-grid{grid-template-columns:1fr 1fr}}@media(min-width:900px){.nearby-grid{grid-template-columns:repeat(3,1fr)}}.nearby-item{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1.1rem 1.15rem}.nearby-item h3{font-size:1rem;margin-bottom:.3rem;font-family:var(--font)}.nearby-item p{margin:0;font-size:.9rem}.nearby-item .nearby-role{display:block;font-size:.75rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--aurora-violet);margin-bottom:.35rem}.explore-grid{display:grid;gap:1rem}@media(min-width:720px){.explore-grid{grid-template-columns:1fr 1fr}}.explore-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.35rem 1.4rem}.explore-card h3{margin-bottom:.45rem;font-size:1.05rem}.explore-card .season-tag{display:inline-block;margin-bottom:.65rem;font-size:.72rem;font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:var(--aurora-gold)}.explore-card p{margin:0;font-size:.93rem}
