
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--radius:1rem;--background:#faf8f2;--foreground:#394640;--card:#fdfcf8;--muted:#e9e6dd;--muted-foreground:#77817b;--accent:#a33f2f;--accent-foreground:#fffaf5;--border:#e2dfd5;--ivory:#faf8f2;--sand:#eeeae0;--pine:#46564f;--pine-soft:#7b857f;--shadow-soft:0 24px 60px -30px rgba(35,49,44,.35);--shadow-neu:10px 10px 24px rgba(35,49,44,.09),-10px -10px 24px rgba(255,255,255,.95);--shadow-neu-inset:inset 6px 6px 14px rgba(35,49,44,.08),inset -6px -6px 14px rgba(255,255,255,.9)}
*{box-sizing:border-box;border-color:var(--border)}html{scroll-behavior:smooth}body{margin:0;background:var(--background);color:var(--foreground);font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,ul,figure{margin:0}h1,h2,h3,h4{font-family:"Playfair Display",Georgia,serif;font-weight:400;letter-spacing:-.01em}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%}.container{width:100%;max-width:80rem;margin:auto;padding:0 1.25rem}.section{padding-block:clamp(4rem,8vw,7.5rem)}.section.sand{background:rgba(238,234,224,.7)}.section.soft{background:linear-gradient(to bottom,var(--background),rgba(238,234,224,.5),var(--background))}
.display-title{font-family:"Playfair Display",Georgia,serif;font-weight:400;line-height:1.05;letter-spacing:-.015em}.text-soft{color:var(--pine-soft)}.muted{color:var(--muted-foreground)}.glass{background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,255,255,.38));backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow-soft)}.glass-liquid{position:relative;background:linear-gradient(140deg,rgba(255,255,255,.85) 0%,rgba(255,255,255,.45) 40%,rgba(240,236,228,.6) 100%);backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);border:1px solid rgba(255,255,255,.8);box-shadow:0 30px 70px -40px rgba(35,49,44,.5),inset 0 1px 0 rgba(255,255,255,.9),inset 0 -18px 34px -22px rgba(255,255,255,.8)}.neu{background:var(--ivory);box-shadow:var(--shadow-neu);border:1px solid rgba(255,255,255,.8)}.neu-inset{background:var(--ivory);box-shadow:var(--shadow-neu-inset)}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.875rem 1.75rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;transition:transform .25s ease,color .25s ease}.btn:hover{transform:translateY(-2px)}.btn-accent{background:var(--accent);color:var(--accent-foreground);box-shadow:var(--shadow-soft)}.btn-glass{background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,255,255,.38));backdrop-filter:blur(22px);border:1px solid rgba(255,255,255,.7)}.btn-neu{background:var(--ivory);box-shadow:var(--shadow-neu);border:1px solid rgba(255,255,255,.8)}
.icon{width:1.1rem;height:1.1rem;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-lg{width:1.5rem;height:1.5rem}
.site-header{position:fixed;inset:0 0 auto;z-index:50;pointer-events:none}.header-bar{pointer-events:auto;transition:margin .65s cubic-bezier(.22,1,.36,1),border-radius .65s cubic-bezier(.22,1,.36,1),background .65s ease,box-shadow .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1),border-color .65s ease}.header-bar.scrolled{margin:5px 8px 0;border-radius:1.25rem;background:linear-gradient(140deg,rgba(255,255,255,.9),rgba(255,255,255,.58));backdrop-filter:blur(28px) saturate(165%);-webkit-backdrop-filter:blur(28px) saturate(165%);border:1px solid rgba(255,255,255,.82);box-shadow:0 18px 50px -28px rgba(35,49,44,.5),0 1px 0 rgba(255,255,255,.8) inset;transform:translateY(0)}.header-inner{height:5rem;transition:height .65s cubic-bezier(.22,1,.36,1);display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{display:flex;align-items:center;gap:.75rem}.brand img{width:2.75rem;height:2.75rem;border-radius:.75rem;object-fit:cover;box-shadow:var(--shadow-soft)}.brand-main{font-family:"Playfair Display",Georgia,serif;font-size:1.15rem;letter-spacing:.04em}.brand-sub{display:block;font-size:.6rem;text-transform:uppercase;letter-spacing:.34em;color:var(--muted-foreground)}.desktop-nav{display:flex;align-items:center;gap:.9rem}.desktop-nav a{position:relative;font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--pine-soft);transition:color .25s}.desktop-nav a:hover,.desktop-nav a.active{color:var(--accent)}.desktop-nav a:after{content:"";position:absolute;left:0;bottom:-.4rem;height:1px;width:0;background:var(--accent);transition:width .3s}.desktop-nav a.active:after{width:100%}.menu-btn{display:grid;place-items:center;width:3rem;height:3rem;border:0;border-radius:1rem;cursor:pointer;flex:none}.hamb{position:relative;width:20px;height:14px;display:block}.hamb span{position:absolute;left:0;width:20px;height:1px;background:var(--foreground);transition:.3s}.hamb span:nth-child(1){top:0}.hamb span:nth-child(2){top:6px;width:14px}.hamb span:nth-child(3){top:13px}.menu-btn.open .hamb span:nth-child(1){top:6px;transform:rotate(45deg)}.menu-btn.open .hamb span:nth-child(2){width:0;opacity:0}.menu-btn.open .hamb span:nth-child(3){top:6px;transform:rotate(-45deg)}
.mobile-overlay{position:fixed;inset:0;z-index:49;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .22s ease;will-change:opacity}.mobile-overlay.open{visibility:visible;opacity:1;pointer-events:auto}.mobile-backdrop{position:absolute;inset:0;background:rgba(250,248,242,.82)}.mobile-nav{position:absolute;left:.75rem;right:.75rem;top:5.75rem;max-height:76vh;overflow:auto;padding:1.5rem;border-radius:1.5rem;transform:translateY(-.75rem) scale(.985);opacity:.98;transition:transform .25s cubic-bezier(.22,1,.36,1),opacity .2s ease;will-change:transform,opacity}.mobile-overlay.open .mobile-nav{transform:none}.mobile-nav ul{list-style:none;padding:0;display:grid;gap:.25rem}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;border-radius:1rem;padding:.75rem 1rem;font-family:"Playfair Display",Georgia,serif;font-size:1.5rem}.mobile-nav a.active{background:rgba(255,255,255,.6);color:var(--accent)}.mobile-nav .num{font:500 .6rem Inter,sans-serif;letter-spacing:.3em;color:var(--muted-foreground)}
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--sand);padding:8rem 0 4rem}.hero-layer{position:absolute;inset:0;transition:transform .05s linear}.hero-far{transform:translate3d(0,0,0) scale(1.1)}.hero-far img{width:100%;height:100%;object-fit:cover;opacity:1}.hero-wash{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(8,18,29,.18),rgba(8,18,29,.08),rgba(8,18,29,.02))}.hero-near{position:absolute;inset:30% 0 0}.hero-near img{width:100%;height:100%;object-fit:cover;mask-image:linear-gradient(to bottom,transparent,black 28%);-webkit-mask-image:linear-gradient(to bottom,transparent,black 28%)}.hero-gradient{position:absolute;inset:0;background:linear-gradient(to top,var(--background),transparent)}.hero-content{position:relative;z-index:2}.hero h1{font-size:clamp(3rem,10vw,7.5rem);text-shadow:0 8px 36px rgba(0,0,0,.2)}.hero-copy{margin-top:1.5rem;max-width:36rem;font-size:1rem;line-height:1.7;color:rgba(255,255,255,.86);text-shadow:0 2px 18px rgba(0,0,0,.25);letter-spacing:.01em}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2.25rem}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;max-width:48rem;margin-top:3.5rem;padding:1.5rem;border-radius:1.5rem}.hero-stats .k{font-size:.6rem;text-transform:uppercase;letter-spacing:.26em;color:var(--muted-foreground)}.hero-stats .v{margin-top:.4rem;font-family:"Playfair Display",Georgia,serif;font-size:1.15rem;line-height:1.2}
.page-hero{position:relative;overflow:hidden;padding:9rem 0 4rem}.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(250,248,242,.8),rgba(250,248,242,.7),var(--background))}.page-hero .container{position:relative;z-index:1}.page-hero h1{max-width:48rem;font-size:clamp(2.6rem,7vw,5rem)}.page-hero p{margin-top:1.25rem;max-width:36rem;font-size:.9rem;line-height:1.65;color:var(--pine-soft)}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}.items-center{align-items:center}.max-2{max-width:40rem}.section-head{max-width:40rem}.section-head.center{margin:auto;text-align:center}.section-head h2{font-size:clamp(2rem,4.5vw,3.4rem)}.section-head p{margin-top:1rem;font-size:.9rem;line-height:1.7;color:#87918c;letter-spacing:.012em}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-10{padding:2.5rem}.rounded-2{border-radius:1rem}.rounded-3{border-radius:1.5rem}.rounded-4{border-radius:2rem}.rounded-5{border-radius:2.5rem}.rounded-6{border-radius:3rem}.shadow{box-shadow:var(--shadow-soft)}
.card{border-radius:1.5rem;padding:1.5rem}.card h3{font-size:1.5rem}.card p{margin-top:.35rem;font-size:.9rem;line-height:1.7;color:var(--pine-soft);letter-spacing:.01em}
.carousel-scene{perspective:1600px}.carousel-wrap{position:relative;height:32rem;max-width:64rem;margin:auto}.slide{position:absolute;left:50%;top:50%;width:19rem;height:27rem;overflow:hidden;border:0;border-radius:2rem;transform-origin:center;cursor:pointer;transition:all .7s cubic-bezier(.22,1,.36,1);background:transparent;padding:0}.slide img{width:100%;height:100%;object-fit:cover}.slide .shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(70,86,79,.8),rgba(70,86,79,.1),transparent)}.slide .caption{position:absolute;left:.75rem;right:.75rem;bottom:.75rem;padding:1rem;border-radius:1rem;text-align:left}.slide .caption h3{font-size:1.3rem;line-height:1.1}.slide .caption p{margin-top:.25rem;font-size:.75rem;line-height:1.5;color:rgba(255,255,255,.78)}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:2rem}.round{width:3rem;height:3rem;border:0;border-radius:50%;cursor:pointer;display:grid;place-items:center}.dots{display:flex;gap:.375rem;align-items:center}.dot{height:.375rem;width:.375rem;border:0;border-radius:999px;background:var(--border);cursor:pointer;transition:.3s}.dot.active{width:1.75rem;background:var(--accent)}
.marquee-area{overflow:hidden;mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent)}.marquee-row{display:flex;width:max-content;gap:2.25rem;animation:marqueeReverse 45s linear infinite}.marquee-row.forward{animation-name:marquee;animation-duration:58s}.marquee-row:hover{animation-play-state:running}.marquee-item{position:relative;width:14rem;height:18rem;flex:none;overflow:hidden;border-radius:1.5rem}.marquee-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.marquee-item:hover img{transform:scale(1.05)}.marquee-item:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(70,86,79,.6),transparent);opacity:0;transition:.5s}.marquee-item:hover:after{opacity:1}.marquee-caption{color:rgba(255,255,255,.9);position:absolute;left:.5rem;right:.5rem;bottom:.5rem;padding:.5rem .75rem;border-radius:.75rem;font-size:.7rem;opacity:0;transform:translateY(.75rem);transition:.5s;z-index:1}.marquee-item:hover .marquee-caption{opacity:1;transform:none}
.video-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.video-btn{border:0;background:none;text-align:left;cursor:pointer;transition:transform .5s}.video-btn:hover{transform:translateY(-.5rem)}.video-poster{position:relative;aspect-ratio:9/16;overflow:hidden;border-radius:1.75rem;box-shadow:var(--shadow-soft)}.video-poster img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.video-btn:hover img{transform:scale(1.05)}.video-poster:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(70,86,79,.7),transparent)}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;width:3.5rem;height:3.5rem;border-radius:50%;display:grid;place-items:center}.video-title{margin-top:.75rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.2em;color:var(--pine-soft)}.modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:rgba(70,86,79,.4);backdrop-filter:blur(18px);padding:1.25rem}.modal-card{position:relative;width:100%;max-width:24rem;padding:.75rem;border-radius:2rem}.modal-card img{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:1.5rem}.modal-close{position:absolute;right:1.25rem;top:1.25rem;width:2.5rem;height:2.5rem;border:0;border-radius:50%;display:grid;place-items:center;z-index:2;cursor:pointer}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:15rem;gap:1.25rem}.gallery-grid figure{position:relative;overflow:hidden;border-radius:2rem;box-shadow:var(--shadow-soft)}.gallery-grid figure.span2{grid-column:span 2;grid-row:span 2}.gallery-grid figure.row2{grid-row:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.gallery-grid figure:hover img{transform:scale(1.05)}.gallery-grid figcaption{position:absolute;left:.75rem;right:.75rem;bottom:.75rem;padding:.6rem 1rem;border-radius:1rem;font-size:.85rem;opacity:0;transform:translateY(.75rem);transition:.5s}.gallery-grid figure:hover figcaption{opacity:1;transform:none}
.footer{margin-top:2.5rem;border-top:1px solid var(--border);background:rgba(233,230,221,.6)}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:3rem;padding:4rem 0}.footer-logo{display:flex;align-items:center;gap:.75rem}.footer-logo img{width:3rem;height:3rem;border-radius:.75rem;object-fit:cover}.footer h4{font-family:Inter,sans-serif;font-size:.62rem;text-transform:uppercase;letter-spacing:.3em;color:var(--muted-foreground)}.socials{display:flex;gap:.75rem;margin-top:1.5rem}.socials a{width:2.75rem;height:2.75rem;border-radius:1rem;display:grid;place-items:center;color:var(--pine-soft);transition:.25s}.socials a:hover{color:var(--accent)}.footer-links{list-style:none;padding:0;margin:1.25rem 0 0;display:grid;grid-template-columns:repeat(2,1fr);gap:.625rem 1.5rem}.footer-links a,.visit li{font-size:.85rem;color:var(--pine-soft)}.visit{list-style:none;padding:0;margin:1.25rem 0 0;display:grid;gap:.9rem}.visit li{display:flex;gap:.75rem}.visit .icon{color:var(--accent);flex:none;margin-top:.1rem}.footer-bottom{border-top:1px solid var(--border)}.footer-bottom .container{display:flex;justify-content:space-between;gap:.5rem;padding-block:1.5rem;font-size:.75rem;color:var(--muted-foreground)}
.floating{position:fixed;right:1.25rem;bottom:1.5rem;z-index:40;display:flex;flex-direction:column;align-items:flex-end;gap:1rem}.float-social{position:relative;width:3.5rem;height:3.5rem}.petal{position:absolute;inset:0;display:grid;place-items:center;border-radius:50%;opacity:0;pointer-events:none;transition:.5s}.float-social.open .petal{opacity:1;pointer-events:auto}.float-social.open .petal:nth-child(1){transform:translate(-78px,-18px)}.float-social.open .petal:nth-child(2){transform:translate(-62px,-62px)}.float-social.open .petal:nth-child(3){transform:translate(-18px,-80px)}.float-social.open .petal:nth-child(4){transform:translate(30px,-72px)}.float-main{position:absolute;inset:0;border:0;border-radius:50%;display:grid;place-items:center;cursor:pointer}.whatsapp{width:3.5rem;height:3.5rem;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-foreground);box-shadow:var(--shadow-soft)}
@keyframes marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-33.333333%,0,0)}}
@keyframes marqueeReverse{from{transform:translate3d(-33.333333%,0,0)}to{transform:translate3d(0,0,0)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.animate-rise{animation:rise .9s cubic-bezier(.22,1,.36,1) both}.animate-float{animation:float 7s ease-in-out infinite}
.list{list-style:none;padding:0}.list li{display:flex;gap:.75rem;align-items:center;font-size:.9rem;color:var(--pine-soft);margin-top:.75rem}.accent{color:var(--accent)}.big-image{width:100%;object-fit:cover;border-radius:2.5rem;box-shadow:var(--shadow-soft)}.feature-card{position:relative;overflow:hidden;border-radius:2.5rem}.feature-card img{width:100%;height:28rem;object-fit:cover;transition:transform .7s}.feature-card:hover img{transform:scale(1.05)}.feature-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(70,86,79,.85),rgba(70,86,79,.2),transparent)}.feature-caption{position:absolute;left:1.25rem;right:1.25rem;bottom:1.25rem;padding:1.5rem;border-radius:1.5rem;z-index:1}.feature-caption h3{font-size:1.9rem}.feature-caption p{margin-top:.5rem;font-size:.9rem;line-height:1.6;color:rgba(255,255,255,.78);text-shadow:0 1px 12px rgba(0,0,0,.2)}
.menu-group{padding:2rem;border-radius:2.5rem}.menu-group h2{font-size:1.9rem}.menu-items{list-style:none;padding:0;margin:1.75rem 0 0;display:grid;gap:1.25rem}.menu-item{display:flex;align-items:baseline;gap:1rem}.menu-item .desc{flex:1}.menu-item .name{font-weight:500}.menu-item .description{margin-top:.125rem;font-size:.85rem;color:var(--pine-soft)}.menu-item .price{font-size:.85rem;font-weight:500;color:var(--accent)}.set-card{padding:2rem;border-radius:2rem}.set-card h3{font-size:1.9rem}.set-card .price{margin-top:.25rem;font-size:.85rem;color:var(--accent)}.set-card p{margin-top:1rem;font-size:.85rem;line-height:1.6;color:var(--pine-soft)}
.testimonials{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.testimonial{position:relative;padding:2rem;border-radius:2rem;overflow:hidden}.testimonial.offset{margin-top:1.5rem}.testimonial blockquote{position:relative;margin-top:1.25rem;font-family:"Playfair Display",Georgia,serif;font-size:1.5rem;line-height:1.25}.testimonial figcaption{position:relative;margin-top:1.5rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.24em;color:var(--muted-foreground)}
.location-map{height:24rem;width:100%;border:0}.video-hidden{display:none}
@media(max-width:1199px){.desktop-nav{display:none}.menu-btn{display:grid;place-items:center}.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.grid-2,.grid-3{grid-template-columns:1fr}.video-grid{grid-template-columns:repeat(3,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:1fr 1fr}.hero-stats{grid-template-columns:repeat(2,1fr)}.carousel-wrap{height:28rem}.slide{width:15rem;height:22rem}}@media(max-width:640px){.container{padding:0 1rem}.header-inner{height:4.5rem}.hero{padding-top:7rem}.hero-copy{font-size:.9rem}.hero-stats{gap:1rem;padding:1.25rem}.page-hero{padding-top:8rem}.grid-4{grid-template-columns:1fr}.video-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:18rem}.gallery-grid figure.span2,.gallery-grid figure.row2{grid-column:auto;grid-row:auto}.footer-main{grid-template-columns:1fr}.footer-bottom .container{flex-direction:column}.marquee-item{width:10rem;height:14rem}.carousel-wrap{height:25rem}.slide{width:13rem;height:20rem}.menu-group{padding:1.5rem}.testimonial.offset{margin-top:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}}

/* Luxury typography and motion refinements */
body{letter-spacing:.002em} p{font-kerning:normal;text-wrap:pretty} h1,h2,h3,h4,.display-title,.brand-main,.footer-logo div{font-family:"Playfair Display",Georgia,serif} .header-bar.scrolled .header-inner{height:4.5rem}.header-bar.scrolled .brand img{transform:scale(.94);transition:transform .65s cubic-bezier(.22,1,.36,1)} .menu-btn{transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}.menu-btn:hover{transform:translateY(-2px) rotate(.5deg);box-shadow:0 18px 36px -22px rgba(35,49,44,.45)} .mobile-nav{box-shadow:0 35px 80px -35px rgba(35,49,44,.55);border:1px solid rgba(255,255,255,.82)} .mobile-nav li{animation:menuRise .55s cubic-bezier(.22,1,.36,1) both}.mobile-nav li:nth-child(2){animation-delay:.03s}.mobile-nav li:nth-child(3){animation-delay:.06s}.mobile-nav li:nth-child(4){animation-delay:.09s}.mobile-nav li:nth-child(5){animation-delay:.12s}.mobile-nav li:nth-child(n+6){animation-delay:.15s}@keyframes menuRise{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.marquee-area + .marquee-area{margin-top:5px}.marquee-item{width:15rem;height:18.5rem}.marquee-row{will-change:transform}.marquee-row{animation-timing-function:linear}.marquee-row{animation-iteration-count:infinite}
@media(max-width:640px){.header-bar.scrolled{margin-left:5px;margin-right:5px}.marquee-item{width:11rem;height:14rem}.sky-section{min-height:62vh}.sky-section-content{padding:6rem 1rem}.sky-section h2{font-size:clamp(2.6rem,13vw,4.4rem)}}

.hero h1,.hero .hero-copy,.hero .hero-stats{color:#fff}.hero .hero-copy{text-shadow:0 2px 18px rgba(0,0,0,.42)}

@media(min-width:1200px){.desktop-nav{display:flex}.menu-btn{display:grid}}
@media(max-width:1199px){.desktop-nav{display:none}.menu-btn{display:grid}}
@media(max-width:640px){.header-inner{gap:.5rem}.header-inner .btn.btn-accent{padding:.55rem .9rem!important;font-size:.66rem}.menu-btn{width:3rem;height:3rem;border-radius:1rem}.mobile-nav{top:5.25rem;left:.5rem;right:.5rem;max-height:calc(100svh - 6rem);padding:1rem}.mobile-nav a{font-size:1.25rem;padding:.65rem .8rem}.mobile-nav li{animation:none!important}.marquee-row{gap:1.5rem}.hero{min-height:100svh}}

.carousel-wrap{overflow:visible}.carousel-controls{margin-top:2.5rem}

/* Media running + lightbox refinements */
.marquee-row{animation-play-state:running}
.marquee-row:hover,.marquee-row.is-paused{animation-play-state:paused}
.marquee-item{border:0;padding:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}
.signature-marquee{overflow:hidden;mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent)}
.signature-row{gap:4rem!important}
.signature-card{position:relative;width:20rem;height:27rem;flex:none;border:0;padding:0;overflow:hidden;border-radius:2rem;background:var(--card);cursor:pointer;box-shadow:var(--shadow-soft);font:inherit;color:inherit;text-align:left}
.signature-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}
.signature-card:hover img{transform:scale(1.045)}
.signature-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(30,40,36,.78),rgba(30,40,36,.12) 55%,transparent)}
.signature-caption{position:absolute;left:1rem;right:1rem;bottom:1rem;padding:1rem 1.1rem;border-radius:1.2rem;z-index:1}
.signature-caption strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.45rem;font-weight:400}
.signature-caption small{display:block;margin-top:.3rem;font-family:Inter,system-ui,sans-serif;font-size:.76rem;line-height:1.5;color:rgba(255,255,255,.78)}
.media-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.media-lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:1.5rem;background:rgba(25,34,31,.78);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}
.media-lightbox.open{opacity:1;visibility:visible;pointer-events:auto}
body.lightbox-open{overflow:hidden}
.lightbox-stage{width:min(86vw,56rem);max-height:90vh;display:grid;place-items:center}
.lightbox-card{position:relative;width:min(100%,34rem);max-height:90vh;margin:0;overflow:hidden;border-radius:1.75rem;background:var(--card);box-shadow:0 40px 100px -40px rgba(0,0,0,.65);animation:lightboxIn .3s cubic-bezier(.22,1,.36,1)}
.lightbox-card img{display:block;width:100%;max-height:72vh;object-fit:contain;background:#202824}
.lightbox-card figcaption{position:relative;padding:1rem 1.25rem 1.15rem;background:rgba(253,252,248,.97)}
.lightbox-card h3{font-size:1.45rem}
.lightbox-card p{margin-top:.3rem;font-size:.8rem;line-height:1.55;color:var(--pine-soft)}
.lightbox-page{display:block;margin-top:.65rem;font:500 .65rem Inter,system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-foreground)}
.lightbox-close,.lightbox-arrow{position:fixed;z-index:3;display:grid;place-items:center;border:1px solid rgba(255,255,255,.45);background:rgba(250,248,242,.9);color:var(--foreground);box-shadow:0 16px 40px -24px rgba(0,0,0,.7);cursor:pointer}
.lightbox-close{top:1.25rem;right:1.25rem;width:3rem;height:3rem;border-radius:50%}
.lightbox-arrow{top:50%;width:3.5rem;height:3.5rem;border-radius:50%;transform:translateY(-50%);transition:transform .25s ease,background .25s ease}
.lightbox-prev{left:1.25rem}.lightbox-next{right:1.25rem}.lightbox-arrow:hover{background:#fff;transform:translateY(-50%) scale(1.06)}
@keyframes lightboxIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:900px){.signature-row{gap:2.5rem!important}.signature-card{width:17rem;height:24rem}.lightbox-stage{width:78vw}.lightbox-arrow{width:3rem;height:3rem}.lightbox-prev{left:.65rem}.lightbox-next{right:.65rem}}
@media(max-width:640px){.signature-row{gap:2rem!important}.signature-card{width:14rem;height:20rem}.lightbox-stage{width:calc(100vw - 4.5rem)}.lightbox-card{border-radius:1.25rem}.lightbox-card img{max-height:68vh}.lightbox-close{top:.65rem;right:.65rem;width:2.75rem;height:2.75rem}.lightbox-arrow{width:2.65rem;height:2.65rem}.lightbox-prev{left:.35rem}.lightbox-next{right:.35rem}}

/* Final header + signature experience refinements */
.header-bar:not(.scrolled) .brand-main,
.header-bar:not(.scrolled) .desktop-nav a{color:rgba(255,255,255,.96)}
.header-bar:not(.scrolled) .desktop-nav a:hover,
.header-bar:not(.scrolled) .desktop-nav a.active{color:#fff}
.header-bar:not(.scrolled) .desktop-nav a:after{background:#fff}
.header-bar:not(.scrolled) .menu-btn .hamb span{background:#fff}
.header-bar.scrolled .brand-main{color:var(--foreground)}
.header-bar.scrolled .desktop-nav a{color:var(--pine-soft)}
.hero-stats .k,.hero-stats .v{color:#17211e}
.hero-stats .k{font-weight:600}
.hero-stats .v{font-weight:500}

.hero-reservation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:.7rem;align-items:end;margin-top:1rem;max-width:78rem;padding:.8rem;border-radius:1.5rem}
.reservation-field{min-width:0}
.reservation-field label{display:block;margin:0 0 .35rem .55rem;font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(20,29,26,.72)}
.reservation-field input,.reservation-field select{width:100%;height:2.85rem;border:1px solid rgba(255,255,255,.62);border-radius:.9rem;background:rgba(255,255,255,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 8px 22px -18px rgba(0,0,0,.5);padding:0 .85rem;color:#17211e;outline:none;font:500 .78rem Inter,system-ui,sans-serif;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.reservation-field input::placeholder{color:rgba(23,33,30,.52)}
.reservation-field input:focus,.reservation-field select:focus{border-color:rgba(255,255,255,.95);background:rgba(255,255,255,.42);box-shadow:0 0 0 3px rgba(255,255,255,.18)}
.reservation-submit{height:2.85rem;padding:.7rem 1rem;white-space:nowrap}

.signature-marquee{overflow:hidden;perspective:1400px;mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent)}
.signature-row{gap:3rem!important;align-items:center;transform-style:preserve-3d}
.signature-card{width:17rem;height:24rem;transform:translateY(var(--sig-y,0)) rotateY(var(--sig-rotate,0deg)) scale(var(--sig-scale,1));transform-origin:center center;z-index:var(--sig-z,10);transition:transform .18s linear,box-shadow .35s ease}
.signature-card:hover{box-shadow:0 28px 65px -28px rgba(35,49,44,.52)}
.signature-track{will-change:transform}

@media(max-width:1100px){.hero-reservation{grid-template-columns:repeat(2,minmax(0,1fr));}.reservation-submit{width:100%}}
@media(max-width:640px){.hero-reservation{grid-template-columns:1fr;padding:.75rem;margin-top:.9rem;border-radius:1.25rem}.reservation-submit{width:100%}.signature-row{gap:2.25rem!important}.signature-card{width:14rem;height:20rem}}

/* Signature experiences: 3-second 3D spinner */
.signature-spinner{position:relative;height:31rem;width:100%;overflow:hidden;perspective:1400px;isolation:isolate;mask-image:linear-gradient(to right,transparent,black 7%,black 93%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 7%,black 93%,transparent);}
.signature-spinner-track{position:relative;width:100%;height:100%;transform-style:preserve-3d;}
.signature-spinner .signature-card{position:absolute;left:50%;top:50%;width:17rem;height:24rem;margin:-12rem 0 0 -8.5rem;transform:translate3d(var(--sig-x),0,0) rotateY(var(--sig-rotate)) scale(var(--sig-scale));transform-origin:center center;opacity:var(--sig-opacity);z-index:var(--sig-z);transition:transform .9s cubic-bezier(.22,1,.36,1),opacity .9s ease,box-shadow .5s ease;will-change:transform,opacity;backface-visibility:hidden;}
.signature-spinner .signature-card:hover{box-shadow:0 28px 65px -28px rgba(35,49,44,.52);}
.signature-spinner .signature-card:focus-visible{outline:2px solid var(--accent);outline-offset:5px;}
.signature-spinner .signature-card[aria-hidden="true"]{pointer-events:none;}
@media(max-width:900px){.signature-spinner{height:28rem}.signature-spinner .signature-card{width:15.5rem;height:22rem;margin:-11rem 0 0 -7.75rem}}
@media(max-width:640px){.signature-spinner{height:25rem;mask-image:none;-webkit-mask-image:none}.signature-spinner .signature-card{width:13rem;height:19rem;margin:-9.5rem 0 0 -6.5rem}.signature-spinner .signature-caption{left:.7rem;right:.7rem;bottom:.7rem;padding:.75rem .8rem}.signature-spinner .signature-caption strong{font-size:1.15rem}}

/* Current visual direction: true 3D signature spinner, lighter hero, clean media rows */
.header-bar:not(.scrolled) .menu-btn .hamb span{background:var(--foreground)}

.hero-wash{background:linear-gradient(to bottom,rgba(8,18,29,.09),rgba(8,18,29,.035),rgba(8,18,29,0))}
.hero-gradient{background:linear-gradient(to top,rgba(250,248,242,.24),rgba(250,248,242,0) 38%)}
.hero-main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(19rem,26rem);align-items:end;gap:3rem}
.hero-copy-block{min-width:0}
.hero-reservation{width:100%;max-width:none;margin:0;padding:1rem;border-radius:1.25rem;background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,.12));border:1px solid rgba(255,255,255,.5);box-shadow:0 24px 70px -36px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.48)}
.hero-reservation .reservation-field{margin-bottom:.7rem}
.hero-reservation .reservation-submit{width:100%;margin-top:.15rem}
.hero-stats{margin-top:2.5rem}

/* Remove image badges/captions while keeping the media clickable. */
.marquee-caption{display:none!important}
.image-copy{padding-top:1.25rem;max-width:34rem}
.image-copy h3,.feature-copy h3{font-size:1.55rem}
.image-copy p,.feature-copy p{margin-top:.45rem;color:var(--pine-soft);font-size:.86rem;line-height:1.65}
.feature-copy{padding:1.25rem 1rem 0}
.feature-card{overflow:hidden}

/* Real 3D carousel inspired by the supplied reference layout (content/colors remain Pristine's). */
.signature-spinner{height:34rem;overflow:hidden;perspective:1400px;perspective-origin:center center;mask-image:linear-gradient(to right,transparent,black 6%,black 94%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 6%,black 94%,transparent)}
.signature-spinner-track{position:absolute;left:50%;top:50%;width:17rem;height:24rem;margin:-12rem 0 0 -8.5rem;transform-style:preserve-3d;transition:transform .95s cubic-bezier(.22,1,.36,1);will-change:transform}
.signature-spinner.is-dragging .signature-spinner-track{transition:none;cursor:grabbing}
.signature-spinner .signature-card{position:absolute;inset:0;width:17rem;height:24rem;margin:0;border:0;padding:0;overflow:hidden;border-radius:1.75rem;background:var(--card);box-shadow:0 22px 55px -28px rgba(35,49,44,.48);cursor:pointer;transform-style:preserve-3d;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:box-shadow .35s ease;will-change:transform}
.signature-spinner .signature-card:hover{box-shadow:0 30px 70px -30px rgba(35,49,44,.58)}
.signature-spinner .signature-card img{width:100%;height:100%;object-fit:cover}
.signature-spinner .signature-card .signature-caption{background:linear-gradient(to top,rgba(20,28,25,.72),rgba(20,28,25,0) 100%);border-radius:0;padding:3rem 1.15rem 1.1rem;left:0;right:0;bottom:0}
.signature-spinner .signature-card .signature-caption strong{font-size:1.35rem}
.signature-spinner .signature-card .signature-caption small{font-size:.74rem}
.signature-spinner.is-dragging{cursor:grabbing}
@media(max-width:1100px)
{.hero-main-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,23rem);gap:2rem}}

@media(max-width:900px)
{.signature-spinner{height:30rem}.signature-spinner-track{width:15.5rem;height:22rem;margin:-11rem 0 0 -7.75rem}.signature-spinner .signature-card{width:15.5rem;height:22rem}.hero-main-grid{grid-template-columns:1fr;gap:2rem}.hero-reservation{max-width:30rem}.hero-stats{margin-top:2rem}}
@media(max-width:640px){.hero-main-grid{gap:1.5rem}.hero-reservation{padding:.85rem;border-radius:1.15rem}.hero-stats{margin-top:1.5rem}.signature-spinner{height:28rem;mask-image:linear-gradient(to right,transparent,black 2%,black 98%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 2%,black 98%,transparent)}.signature-spinner-track{width:10.75rem;height:16rem;margin:-10rem 0 0 -6.875rem}.signature-spinner .signature-card{width:13.75rem;height:20rem;border-radius:1.4rem}.signature-spinner .signature-card .signature-caption{padding:2.5rem .85rem .85rem}.signature-spinner .signature-card .signature-caption strong{font-size:1.12rem}.signature-spinner .signature-card .signature-caption small{font-size:.67rem}.hero-copy{font-size:.9rem}.hero-stats{grid-template-columns:repeat(2,1fr)}}

/* Final media + testimonial sliders */
.signature-spinner .signature-caption strong{color:rgba(255,255,255,.96)}
.signature-spinner .signature-caption small{color:rgba(255,255,255,.78)}

.video-carousel,.testimonial-carousel{position:relative}
.video-viewport,.testimonial-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;overscroll-behavior-x:contain}
.video-viewport::-webkit-scrollbar,.testimonial-viewport::-webkit-scrollbar{display:none}
.video-track,.testimonial-track{display:flex;gap:1rem;width:max-content}
.video-btn{flex:0 0 calc((min(80rem,100vw - 2.5rem) - 4rem)/5);min-width:0;border:0;background:none;text-align:left;cursor:pointer;transition:transform .35s ease;scroll-snap-align:start}
.video-viewport,.testimonial-viewport{scroll-snap-type:x mandatory}
.video-btn:hover{transform:translateY(-.35rem)}
.video-title{color:var(--pine-soft);transition:color .25s ease}
.video-btn:hover .video-title{color:var(--foreground)}
.media-slider-controls{display:flex;justify-content:center;gap:.7rem;margin-top:1.4rem}
.media-slider-arrow{width:2.9rem;height:2.9rem;border:1px solid rgba(255,255,255,.82);background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(255,255,255,.5));box-shadow:8px 8px 18px rgba(35,49,44,.08),-6px -6px 14px rgba(255,255,255,.92);transition:transform .25s ease,opacity .25s ease,box-shadow .25s ease}
.media-slider-arrow:hover:not(:disabled){transform:translateY(-2px);box-shadow:10px 12px 22px rgba(35,49,44,.1),-7px -7px 15px rgba(255,255,255,.96)}
.media-slider-arrow:disabled{opacity:.35;cursor:default;transform:none}

.testimonial-viewport{margin-inline:auto}
.testimonial-track{gap:1.15rem;width:max-content}
.testimonial{position:relative;flex:0 0 calc((min(80rem,100vw - 2.5rem) - 1.15rem)/2);min-height:20rem;padding:2rem;border-radius:1.65rem;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.36));border:1px solid rgba(255,255,255,.82);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);box-shadow:0 22px 48px -32px rgba(35,49,44,.32),inset 0 1px 0 rgba(255,255,255,.9),inset 0 -12px 26px -20px rgba(255,255,255,.72);scroll-snap-align:start}
.testimonial::after{content:"";position:absolute;inset:auto 0 0;height:36%;background:linear-gradient(180deg,transparent,rgba(255,255,255,.16));pointer-events:none}
.testimonial .icon-lg{position:relative;z-index:1;color:var(--pine-soft);opacity:.85}
.testimonial blockquote{position:relative;z-index:1;margin-top:1.15rem;color:var(--foreground);font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.2rem,1.8vw,1.55rem);line-height:1.35}
.testimonial figcaption{position:relative;z-index:1;margin-top:auto;padding-top:1.5rem;color:var(--pine-soft);font-size:.66rem;text-transform:uppercase;letter-spacing:.22em}
.testimonial-glow{position:absolute;inset:-25% auto auto -8%;width:45%;height:50%;background:radial-gradient(circle,rgba(255,255,255,.52),transparent 68%);filter:blur(12px);pointer-events:none}
.testimonial-controls{margin-top:1.35rem}

@media(max-width:900px){
  .video-btn{flex-basis:calc((min(100vw - 2rem,60rem) - 2rem)/3)}
  .testimonial{flex-basis:calc((100vw - 2rem - 1.15rem)/2)}
}
@media(max-width:640px){
  .video-track{gap:.8rem}
  .video-btn{flex-basis:calc((100vw - 2rem - .8rem)/2)}
  .video-poster{border-radius:1.35rem}
  .video-title{font-size:.62rem;letter-spacing:.16em}
  .media-slider-controls{margin-top:1.1rem}
  .media-slider-arrow{width:2.65rem;height:2.65rem}
  .testimonial-track{gap:1rem}
  .testimonial{flex-basis:calc(100vw - 2rem);min-height:18rem;padding:1.45rem;border-radius:1.35rem}
  .testimonial blockquote{font-size:1.28rem}
  .testimonial-carousel{margin-top:2.5rem}
  .testimonial-controls .media-slider-arrow{width:2.75rem;height:2.75rem}
}


/* Restore the previous reservation form layout only. */
.hero-reservation{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:.72rem !important;
  align-items:end !important;
  padding:1rem !important;
  border-radius:1.5rem !important;
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.48),transparent 35%),
    radial-gradient(circle at 85% 88%,rgba(214,228,222,.26),transparent 44%),
    linear-gradient(145deg,rgba(255,255,255,.38),rgba(235,242,239,.18) 54%,rgba(205,219,213,.13)) !important;
  backdrop-filter:blur(26px) saturate(150%) !important;
  -webkit-backdrop-filter:blur(26px) saturate(150%) !important;
  border:1px solid rgba(255,255,255,.76) !important;
  box-shadow:0 18px 34px -28px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.86),inset 0 -10px 20px -18px rgba(255,255,255,.52) !important;
}
.hero-reservation .reservation-field{margin:0 !important}
.hero-reservation .reservation-submit{grid-column:1 / -1 !important;width:100% !important;margin-top:.1rem !important}
.reservation-field input,.reservation-field select{
  height:2.9rem !important;
  border:1px solid rgba(255,255,255,.72) !important;
  border-radius:.9rem !important;
  background:linear-gradient(145deg,rgba(249,250,249,.5),rgba(225,233,229,.26)) !important;
  box-shadow:inset 2px 2px 6px rgba(35,49,44,.055),inset -2px -2px 6px rgba(255,255,255,.78),0 3px 8px -7px rgba(35,49,44,.2) !important;
  color:#17211e !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}
.reservation-field input::placeholder{color:rgba(70,86,79,.55) !important}
.reservation-field input:focus,.reservation-field select:focus{
  border-color:rgba(255,255,255,.96) !important;
  background:linear-gradient(145deg,rgba(255,255,255,.6),rgba(233,239,236,.34)) !important;
  box-shadow:inset 2px 2px 6px rgba(35,49,44,.04),inset -2px -2px 6px rgba(255,255,255,.86),0 4px 10px -8px rgba(35,49,44,.18) !important;
}
@media(max-width:900px){
  .hero-reservation{grid-template-columns:repeat(2,minmax(0,1fr)) !important;max-width:none !important}
}
@media(max-width:640px){
  .hero-reservation{grid-template-columns:1fr !important;padding:.8rem !important;border-radius:1.25rem !important}
  .hero-reservation .reservation-submit{grid-column:1 !important}
}
