:root{--bg-primary:#fdfaf5;--bg-secondary:#f8f4ee;--bg-card:#fff;--bg-glass:#fdfaf5cc;--accent-gold:#c9a44e;--accent-gold-light:#e8c87a;--accent-warm:#d4754a;--accent-green:#4a7c59;--accent-cream:#f5edd6;--text-primary:#2d2a26;--text-secondary:#6b6560;--text-muted:#7a7266;--border-subtle:#e8e2d8;--border-hover:#c9a44e73;--gradient-hero:radial-gradient(ellipse 80% 60% at 50% 0%, #c9a44e1a 0%, transparent 70%);--gradient-card:linear-gradient(135deg, #c9a44e0a 0%, transparent 100%);--gradient-emergency:linear-gradient(135deg, #d4754a 0%, #c9a44e 100%);--font-display:"Playfair Display", Georgia, serif;--font-body:"DM Sans", sans-serif;--text-hero:clamp(3.5rem, 8vw, 7rem);--text-h1:clamp(2.5rem, 5vw, 4.5rem);--text-h2:clamp(1.8rem, 3vw, 2.8rem);--text-h3:clamp(1.2rem, 2vw, 1.5rem);--text-body:clamp(1rem, 1.5vw, 1.1rem);--text-small:clamp(.8rem, 1.2vw, .9rem);--text-micro:clamp(.7rem, 1vw, .78rem);--tracking-hero:-.03em;--tracking-display:-.02em;--tracking-label:.15em;--space-xs:clamp(.375rem, 1vw, .5rem);--space-sm:clamp(.75rem, 1.5vw, 1rem);--space-md:clamp(1.25rem, 2.5vw, 2rem);--space-lg:clamp(2rem, 5vw, 4rem);--space-xl:clamp(3rem, 7vw, 6rem);--space-2xl:clamp(4rem, 10vw, 10rem);--container-max:1280px;--container-tight:900px;--container-padding:clamp(1.5rem, 5vw, 4rem);--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--section-padding:clamp(4rem, 10vw, 10rem) 0;--ease-smooth:cubic-bezier(.25, .46, .45, .94);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-sharp:cubic-bezier(.16, 1, .3, 1);--ease-elastic:cubic-bezier(.68, -.55, .265, 1.55);--duration-fast:.2s;--duration-base:.4s;--duration-slow:.7s;--duration-crawl:1.2s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--bg-primary);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}body{font-family:var(--font-body);color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;word-break:break-word;overflow-wrap:break-word;max-width:100%;line-height:1.6;overflow-x:hidden}section,.section,.hero{max-width:100%;overflow-x:hidden}a{color:inherit;text-decoration:none}img,video,iframe,embed{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:var(--tracking-display);font-weight:700;line-height:1.15}.section-label{font-family:var(--font-body);font-size:var(--text-small);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--accent-gold);margin-bottom:var(--space-sm);font-weight:600;display:inline-block}.container{max-width:var(--container-max);padding:0 var(--container-padding);margin:0 auto}.btn{font-family:var(--font-body);font-weight:600;font-size:var(--text-body);border-radius:var(--radius-full);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 2.25rem;text-decoration:none;transition:all .5s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;transform:translateZ(0)}.btn:active{transform:scale(.96)translateY(0)}.btn svg{transition:transform .4s cubic-bezier(.16,1,.3,1)}@media (hover:hover){.btn:hover svg{transform:translate(4px)}}.btn--primary{background:var(--gradient-emergency);color:#fff;text-shadow:0 1px 2px #00000026;border:1px solid #d4754acc;overflow:hidden;box-shadow:0 8px 24px -4px #d4754a99,inset 0 1px 2px #fff6,inset 0 -2px 4px #0000001a}@media (hover:hover){.btn--primary:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 16px 32px #d4754a66,0 4px 10px #d4754a33,inset 0 1px 2px #fff9}}.btn--primary:before{content:"";background:linear-gradient(90deg,#fff0 0%,#fff6 50%,#fff0 100%);width:50%;height:100%;animation:4s cubic-bezier(.16,1,.3,1) infinite premiumShine;position:absolute;top:0;left:-100%;transform:skew(-25deg)}@keyframes premiumShine{0%{left:-100%}20%{left:200%}to{left:200%}}.btn--ghost{color:var(--text-primary);-webkit-backdrop-filter:blur(4px);background:#c9a44e08;border:1px solid #c9a44e4d;transition:all .5s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #c9a44e0d}@media (hover:hover){.btn--ghost:hover{border-color:var(--accent-gold);color:var(--accent-gold);background:#fdfaf5cc;transform:translateY(-3px)scale(1.02);box-shadow:0 12px 28px #c9a44e26,inset 0 0 0 1px #c9a44e66}}.reveal-ready{opacity:0;filter:blur(8px);transition:opacity var(--duration-slow) var(--ease-smooth), transform var(--duration-slow) var(--ease-smooth), filter var(--duration-slow) var(--ease-smooth);transform:translateY(32px)}.reveal-ready.is-visible{opacity:1;filter:blur();transform:translateY(0)}:focus{outline:none}:focus-visible{outline:2px solid var(--accent-gold);outline-offset:3px;border-radius:3px}@media (pointer:coarse){a,button,[role=button],select{min-width:44px;min-height:44px}}.btn{white-space:nowrap;min-height:44px;padding:clamp(.75rem,2vw,.875rem) clamp(1.25rem,3vw,2.25rem);font-size:clamp(.85rem,1.5vw,1rem)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal-ready,[data-reveal]{opacity:1!important;filter:none!important;transform:none!important}}:root{--curve-fast-out:cubic-bezier(.16, 1, .3, 1);--curve-smooth-out:cubic-bezier(.25, .46, .45, .94);--curve-bounce:cubic-bezier(.34, 1.56, .64, 1)}.hero{min-height:100svh;padding-top:var(--space-2xl);perspective:1000px;background:#f5f0e6;align-items:center;display:flex;position:relative;overflow:hidden}.h-layer{pointer-events:none;position:absolute;inset:0}.h-layer--ambient{z-index:1;background:radial-gradient(circle at 80% 20%,#b8912a1a 0%,#0000 60%),radial-gradient(circle at 20% 80%,#1b433212 0%,#0000 60%);animation:8s ease-in-out infinite alternate ambientBreathe}@keyframes ambientBreathe{0%{opacity:.8;transform:scale(.98)}to{opacity:1.1;transform:scale(1.02)}}.h-layer--grain{opacity:.028;z-index:2;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}.h-layer--rule{opacity:0;height:1px;animation:fadeUpRule 1s var(--curve-smooth-out) 1.8s forwards;z-index:3;background:linear-gradient(90deg,#0000,#b8912a33,#0000);top:50%}@keyframes fadeUpRule{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.h-layer--canvas{z-index:4}.hero-parallax-layer{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-parallax-layer>*{pointer-events:auto}.hero__container{max-width:var(--container-max);padding:0 var(--container-padding);z-index:10;grid-template-columns:1fr 1.1fr;align-items:center;gap:8rem;width:100%;margin:0 auto;display:grid;position:relative}.hero__copy{z-index:2;margin-right:6vw;position:relative}.hero-status-badge{letter-spacing:.05em;color:#8c6e1c;text-align:center;opacity:0;max-width:100%;animation:simpleFadeUp .5s var(--curve-smooth-out) .25s forwards;background:#b8912a1a;border:1px solid #b8912a33;border-radius:100px;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin-bottom:clamp(1.25rem,3vw,2rem);padding:.4rem clamp(.75rem,2vw,1.25rem);font-size:clamp(.7rem,1.2vw,.8rem);font-weight:500;display:inline-flex;transform:translateY(16px)}.hero-status-badge__dot{background:#25d366;border-radius:50%;width:6px;height:6px;animation:2.2s ease-out infinite dotPulse;box-shadow:0 0 #25d36680}@keyframes dotPulse{0%{box-shadow:0 0 #25d36680}70%{box-shadow:0 0 0 10px #25d36600}to{box-shadow:0 0 #25d36600}}.hero-headline{color:#1a1c20;text-wrap:balance;margin-bottom:clamp(1.25rem,3vw,2rem);margin-left:-4px;font-family:Playfair Display,serif;font-size:clamp(2.4rem,6vw,5.8rem);font-weight:700;line-height:1.05}.hero-headline__line{display:block}.hero-headline--gold-italic{color:var(--accent-gold);font-style:italic;font-family:var(--font-display)}.hero-cursor{background-color:var(--accent-gold);vertical-align:middle;border-radius:4px;width:3px;height:.85em;margin-left:4px;animation:1.2s ease-in-out infinite cursorBreath;display:inline-block}@keyframes cursorBreath{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.2;transform:scaleY(.8)}}.hero-subhead{color:#3a3020;opacity:0;max-width:480px;animation:simpleFadeUp .6s var(--curve-smooth-out) .95s forwards;margin-bottom:clamp(1.5rem,3vw,2.5rem);font-family:DM Sans,sans-serif;font-size:clamp(1rem,1.6vw,1.15rem);font-weight:400;line-height:1.7;transform:translateY(20px)}@keyframes simpleFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-stats-bar{-webkit-backdrop-filter:blur(12px);opacity:0;max-width:100%;animation:simpleFadeUp .6s var(--curve-smooth-out) 1.1s forwards;background:#ffffff73;border:1px solid #b8912a33;border-radius:16px;align-items:center;gap:clamp(.75rem,2.5vw,2.5rem);margin-bottom:clamp(1.5rem,4vw,3rem);padding:clamp(.75rem,2vw,1.25rem) clamp(1rem,3vw,2.5rem);display:inline-flex;transform:translateY(20px)}.hero-stat{cursor:default;border-radius:8px;flex-direction:column;align-items:center;padding:.75rem 1rem;transition:background .3s;display:flex}@media (hover:hover){.hero-stat:hover{background:#b8912a0d}}.hero-stat__number{color:#b8912a;letter-spacing:-.02em;font-family:Playfair Display,serif;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:600;line-height:1}.hero-stat__label{text-transform:uppercase;letter-spacing:.13em;color:#3a302099;white-space:nowrap;margin-top:.25rem;font-size:clamp(.58rem,1vw,.75rem)}.hero-stats-bar__divider{background:#b8912a33;width:1px;height:40px}.hero-ctas{opacity:0;animation:simpleFadeUp .6s var(--curve-smooth-out) 1.3s forwards;gap:1rem;display:flex;transform:translateY(20px)}.hero-btn{letter-spacing:.02em;transition:all .4s var(--curve-bounce);isolation:isolate;white-space:nowrap;border-radius:100px;justify-content:center;align-items:center;min-height:44px;padding:clamp(.75rem,2vw,1rem) clamp(1.25rem,3vw,2rem);font-size:clamp(.85rem,1.5vw,1rem);font-weight:500;text-decoration:none;display:inline-flex;position:relative}.hero-btn--primary{color:#fff;background:#c0522a;box-shadow:0 6px 24px #c0522a40}@media (hover:hover){.hero-btn--primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px #c0522a59}}.hero-btn--primary:active{transform:scale(.97);box-shadow:0 2px 12px #c0522a33}.hero-btn__ring{pointer-events:none;border:1.5px solid #c0522a73;border-radius:100px;animation:2.4s cubic-bezier(.215,.61,.355,1) infinite heroPulsePrimary;position:absolute;inset:-6px}@keyframes heroPulsePrimary{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.hero-btn--secondary{color:#1a1c20;background:0 0;border:1.5px solid #1a140940}@media (hover:hover){.hero-btn--secondary:hover{background:#1a140908;border-color:#1a1c20;transform:translateY(-2px)}}.hero-btn--secondary:active{transform:scale(.97)}.hero__fullscreen-visuals{z-index:5;pointer-events:none;width:50vw;position:absolute;top:0;bottom:0;right:0}.hero__fullscreen-visuals>*{pointer-events:auto}.hero__visual-spacer{pointer-events:none;width:100%;height:100%;min-height:75vh}.hero-visual-stack{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;inset:0}.hero-image-wrap{transform-origin:100% 100%;opacity:0;will-change:transform, opacity;width:125%;max-width:none;height:95%;animation:imageEntrance 1s var(--curve-fast-out) .55s forwards;position:absolute;bottom:0;left:9.5%}.hero-image-float{width:100%;height:100%;animation:6s ease-in-out infinite forwards imageFloat}@keyframes imageEntrance{0%{opacity:0;transform:scale(.93)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes imageFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.hero-image{object-fit:contain;object-position:bottom right;filter:drop-shadow(0 20px 60px #0000001a);width:100%;height:100%}.hero-ring{opacity:0;border:1px solid #b8912a;border-radius:50%;animation:5s ease-in-out infinite ringBreathe;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-ring--1{--ring-max-op:.22;width:340px;height:340px;animation-delay:0s}.hero-ring--2{--ring-max-op:.12;width:480px;height:480px;animation-delay:1.4s}.hero-ring--3{--ring-max-op:.06;width:620px;height:620px;animation-delay:2.8s}@keyframes ringBreathe{0%{opacity:0;transform:translate(-50%,-50%)scale(.82)}50%{opacity:var(--ring-max-op);transform:translate(-50%,-50%)scale(.94)}to{opacity:0;transform:translate(-50%,-50%)scale(1.06)}}.hero-badge-wrap{z-index:6;opacity:0;will-change:transform, opacity;position:absolute}.hero-badge-wrap--rating{animation:badgeIn .8s var(--curve-fast-out) 1.5s forwards;bottom:15%;left:-5%;transform:translate(-12px)scale(.92)}.hero-badge-wrap--available{animation:badgeIn .8s var(--curve-fast-out) 1.7s forwards;top:15%;right:-5%;transform:translate(12px)}.hero-badge{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #fff6;border-radius:12px;align-items:center;gap:.75rem;padding:.75rem 1.25rem;display:flex;box-shadow:0 12px 32px #0000000f}.hero-badge-float--1{animation:6s ease-in-out 1.5s infinite forwards imageFloat}.hero-badge-float--2{animation:6s ease-in-out 3s infinite forwards imageFloat}.hero-badge__star{color:#b8912a;font-size:1.5rem;line-height:1}.hero-badge__col{flex-direction:column;display:flex}.hero-badge__val{color:#1a1c20;font-family:Playfair Display,serif;font-size:1.1rem;font-weight:700}.hero-badge__label{text-transform:uppercase;letter-spacing:.05em;color:#1a1c2099;font-size:.65rem}.hero-badge--available{background:#3b6b42;border-color:#ffffff1a}.hero-badge--available .hero-badge__val{color:#fff;font-family:inherit;font-size:.85rem;font-weight:500}.hero-badge--available .hero-badge__dot{background:#fff;border-radius:50%;width:8px;height:8px;animation:2.2s infinite dotPulseWhite}@keyframes dotPulseWhite{0%{box-shadow:0 0 #fff6}70%{box-shadow:0 0 0 8px #fff0}to{box-shadow:0 0 #fff0}}@keyframes badgeIn{0%{opacity:0}to{opacity:1;transform:translate(0)scale(1)}}.hero-scroll{z-index:10;opacity:0;animation:simpleFadeUp .8s var(--curve-smooth-out) 2.2s forwards;flex-direction:column;align-items:center;gap:.75rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.hero-scroll__text{letter-spacing:.2em;text-transform:uppercase;color:#3a302080;writing-mode:vertical-rl;font-size:.6rem;transform:rotate(180deg)}.hero-scroll__track{background:#b8912a33;border-radius:2px;width:1.5px;height:42px;position:relative;overflow:hidden}.hero-scroll__thumb{background:#b8912a;width:100%;height:40%;animation:2s cubic-bezier(.77,0,.175,1) infinite scrollThumbDrop;position:absolute;top:0;left:0}@keyframes scrollThumbDrop{0%{opacity:0;transform:translateY(-100%)}30%{opacity:1}70%{opacity:1}to{opacity:0;transform:translateY(250%)}}@media (width<=1024px){.hero{flex-direction:column;align-items:stretch}.hero__container{order:1;grid-template-columns:1fr;gap:clamp(1.5rem,4vw,2.5rem)}.hero__copy{text-align:center;flex-direction:column;align-items:center;margin-right:0;display:flex}.hero__visual-spacer{display:none}.hero__fullscreen-visuals{order:0;width:100%;min-height:clamp(300px,50vw,450px);margin-bottom:0;position:relative;right:0}.hero-image-wrap{width:100%;max-width:none;height:100%;left:auto;right:0}.hero-subhead{text-align:center;max-width:580px}.hero-ctas{flex-wrap:wrap;justify-content:center}.hero-ring--3{display:none}.hero-badge-wrap--rating{bottom:8%;left:2%}.hero-badge-wrap--available{top:8%;right:2%}}@media (width<=768px){.hero{padding-top:5rem}.hero-ring--2{display:none}.hero-stats-bar{-webkit-backdrop-filter:none;background:#ffffffeb}}@media (width<=600px){.hero{min-height:auto;padding-top:5rem;padding-bottom:var(--space-lg)}.hero__fullscreen-visuals{min-height:280px;max-height:380px}.hero-visual-stack{height:320px;position:relative}.hero-image-wrap{width:100%;max-width:100%;bottom:0;left:0;right:0}.hero-headline{margin-left:0;font-size:clamp(2.2rem,9vw,3rem)}.hero-stats-bar{flex-wrap:nowrap;justify-content:space-around;gap:.5rem;width:100%;padding:clamp(.6rem,2vw,1rem)}.hero-stat{flex:1;min-width:0;padding:.5rem .4rem}.hero-stats-bar__divider{height:28px}.hero-ctas{flex-direction:column;width:100%;max-width:320px}.hero-ctas .hero-btn{justify-content:center;width:100%}.hero-scroll,.hero-ring{display:none}.hero-badge-wrap{animation-name:badgeIn!important;transform:scale(.8)!important}.hero-badge-wrap--rating{bottom:5%;left:0}.hero-badge-wrap--available{top:5%;right:0}}@media (width<=380px){.hero-headline{font-size:clamp(1.8rem,9vw,2.4rem)}.hero__fullscreen-visuals{min-height:240px}.hero-badge-wrap{display:none}}@media (height<=700px){.hero-scroll{display:none}}@media (hover:none){.hero-image-wrap,.hero-ring,.hero-badge-wrap{transition:none!important}}.gallery-section{padding:var(--section-padding);background:var(--bg-secondary);position:relative;overflow:hidden}.gallery-header{text-align:center;margin-bottom:var(--space-xl);max-width:800px;margin-inline:auto}.gallery-header h2{font-size:var(--text-h2);color:var(--text-primary);margin-bottom:var(--space-sm)}.gallery-header p{color:var(--text-secondary);font-size:var(--text-body);line-height:1.8}.gallery-masonry{column-count:1;padding-bottom:var(--space-md);transition:all var(--duration-slow) var(--ease-smooth);column-gap:1.5rem}@media (width>=640px){.gallery-masonry{column-count:2}}@media (width>=1024px){.gallery-masonry{column-count:3}}.gallery-item{break-inside:avoid;border-radius:var(--radius-md);cursor:pointer;transition:transform var(--duration-base) var(--ease-smooth), box-shadow var(--duration-base) var(--ease-smooth);margin-bottom:1.5rem;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:0 10px 30px #2d2a2614}@media (hover:hover){.gallery-item:hover{z-index:10;transform:translateY(-4px)scale(1.01);box-shadow:0 12px 30px #c9a44e26}}.gallery-image{aspect-ratio:4/5;object-fit:cover;filter:saturate(1.1)sepia(.15)brightness(1.03);width:100%;transition:transform var(--duration-slow) var(--ease-smooth), filter var(--duration-base) var(--ease-smooth);display:block}@media (hover:hover){.gallery-item:hover .gallery-image{transform:scale(1.04)}}.gallery-overlay{opacity:0;transition:opacity var(--duration-base) var(--ease-smooth);background:linear-gradient(#2d2a2600 50%,#2d2a26b3 100%);align-items:flex-end;padding:1.5rem;display:flex;position:absolute;inset:0}@media (hover:hover){.gallery-item:hover .gallery-overlay{opacity:1}}.gallery-caption{color:#fff;font-family:var(--font-display);font-size:var(--text-small);letter-spacing:.5px;opacity:0;transition:transform var(--duration-base) var(--ease-smooth), opacity var(--duration-base) var(--ease-smooth);transition-delay:50ms;transform:translateY(10px)}@media (hover:hover){.gallery-item:hover .gallery-caption{opacity:1;transform:translateY(0)}}.gallery-actions{text-align:center;margin-top:var(--space-lg)}.lightbox-overlay{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:opacity var(--duration-base) var(--ease-smooth), visibility var(--duration-base) var(--ease-smooth);background:#141210f2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-overlay.is-open{opacity:1;visibility:visible}.lightbox-content{max-width:90vw;max-height:90vh;transition:transform var(--duration-slow) var(--ease-bounce);justify-content:center;align-items:center;margin:auto;display:flex;position:relative;transform:scale(.95)translateY(10px)}.lightbox-overlay.is-open .lightbox-content{transform:scale(1)translateY(0)}.lightbox-image{object-fit:contain;border-radius:var(--radius-sm);-webkit-user-select:none;user-select:none;max-width:100%;max-height:90vh;box-shadow:0 20px 60px #00000080}.lightbox-close{color:#fff;cursor:pointer;width:44px;height:44px;transition:all var(--duration-fast) var(--ease-smooth);z-index:10000;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:2rem;right:2rem}@media (hover:hover){.lightbox-close:hover{background:#fff3;transform:rotate(90deg)}}.lightbox-close svg{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.lightbox-nav{color:#fff;cursor:pointer;width:50px;height:50px;transition:all var(--duration-fast) var(--ease-smooth);z-index:10000;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}@media (hover:hover){.lightbox-nav:hover{background:#fff3;transform:translateY(-50%)scale(1.1)}}.lightbox-nav.prev{left:2rem}.lightbox-nav.next{right:2rem}.lightbox-nav svg{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;fill:none;width:24px;height:24px}@media (width<=768px){.lightbox-close{top:1rem;right:1rem}.lightbox-nav{width:40px;height:40px}.lightbox-nav.prev{left:1rem}.lightbox-nav.next{right:1rem}}.nav{z-index:1000;width:100%;padding:1rem var(--container-padding);justify-content:space-between;align-items:center;gap:var(--space-sm);opacity:0;max-width:100vw;transition:padding .3s,background .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s,border-bottom .3s;animation:.6s cubic-bezier(.16,1,.3,1) .1s forwards navSlideIn;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-20px)}@keyframes navSlideIn{to{opacity:1;transform:translateY(0)}}.nav--scrolled{-webkit-backdrop-filter:blur(18px);padding:.75rem var(--container-padding);background:#f5f0e6e0;border-bottom:1px solid #b8912a33}@media (width<=768px){.nav--scrolled{-webkit-backdrop-filter:none;background:#f5f0e6f7}}.nav__logo{flex-shrink:0;align-items:center;gap:.5rem;text-decoration:none;display:flex}.nav__logo-img{object-fit:contain;width:36px;height:36px;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}@media (hover:hover){.nav__logo:hover .nav__logo-img{transform:rotate(-8deg)scale(1.1)}}.nav__brand{flex-direction:column;line-height:1.1;display:flex}.nav__name{font-family:var(--font-display);color:var(--text-primary);font-size:1.1rem;font-weight:700}.nav__sub{font-size:var(--text-micro);color:var(--text-secondary);letter-spacing:var(--tracking-label);text-transform:uppercase}.nav__links{gap:var(--space-md);list-style:none;display:flex}.nav__links a{font-size:var(--text-small);color:var(--text-secondary);transition:color var(--duration-fast);padding-bottom:2px;font-weight:500;position:relative}.nav__links a:after{content:"";background:#b8912a;width:0;height:1.5px;transition:width .3s;position:absolute;bottom:-2px;left:0}@media (hover:hover){.nav__links a:hover{color:var(--text-primary)}.nav__links a:hover:after{width:100%}}.nav__emergency-pulse{color:#fff;isolation:isolate;background:#c0522a;border-radius:100px;justify-content:center;align-items:center;padding:.6rem 1.4rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .4s cubic-bezier(.34,1.56,.64,1);display:inline-flex;position:relative;box-shadow:0 4px 16px #c0522a40}@media (hover:hover){.nav__emergency-pulse:hover{transform:translateY(-2px);box-shadow:0 8px 24px #c0522a59}}.nav__emergency-pulse-ring{pointer-events:none;border:1.5px solid #c0522a73;border-radius:100px;animation:2.4s cubic-bezier(.215,.61,.355,1) infinite heroPulsePrimary;position:absolute;inset:-5px}.nav__hamburger{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:0;display:none}.nav__hamburger span{background:var(--text-primary);width:22px;height:1.5px;transition:transform var(--duration-base) var(--ease-sharp), opacity var(--duration-base);border-radius:2px;display:block}.nav__hamburger--open span:first-child{transform:translateY(6.5px)rotate(45deg)}.nav__hamburger--open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav__hamburger--open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-overlay{z-index:999;-webkit-backdrop-filter:blur(20px);justify-content:center;align-items:center;gap:var(--space-lg);opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-smooth), transform var(--duration-base) var(--ease-smooth);background:#fdfaf5f7;flex-direction:column;display:flex;position:fixed;inset:0;transform:translateY(-8px)}.mobile-overlay.active{opacity:1;pointer-events:all;transform:translateY(0)}.mobile-overlay a.mobile-link{font-family:var(--font-display);color:var(--text-primary);transition:color var(--duration-fast);text-align:center;padding:.5rem 2rem;font-size:clamp(1.5rem,6vw,2.2rem);font-weight:600}.mobile-overlay a.mobile-link:active{color:var(--accent-gold)}.mobile-overlay__emergency{bottom:clamp(1.5rem,5vw,2.5rem);left:var(--container-padding);right:var(--container-padding);background:var(--accent-warm);color:#fff;font-family:var(--font-body);border-radius:var(--radius-full);justify-content:center;align-items:center;gap:.5rem;min-height:56px;padding:1rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;display:flex;position:absolute}.mobile-overlay__emergency:active{background:#b5603d;transform:scale(.97)}@media (width<=768px){.nav__links{display:none}.nav__hamburger{display:flex}.nav__cta,.nav__emergency-pulse{display:none}}@media (width>=480px) and (width<=768px){.nav__emergency-pulse{display:inline-flex}}@media (width>=769px){.mobile-overlay{display:none!important}}.trust-bar{background:var(--bg-secondary);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);padding:var(--space-md) var(--container-padding)}.trust-bar__container{max-width:var(--container-max);justify-content:center;align-items:center;gap:var(--space-md);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;margin:0 auto;display:flex;overflow-x:auto}.trust-bar__container::-webkit-scrollbar{display:none}.trust-bar__item{align-items:center;gap:var(--space-xs);text-align:left;border-radius:var(--radius-md);transition:background var(--duration-fast), transform var(--duration-fast);scroll-snap-align:start;flex-shrink:0;min-width:140px;padding:.5rem .75rem;display:flex}.trust-bar__item--link{cursor:pointer;text-decoration:none}@media (hover:hover){.trust-bar__item--link:hover{background:#c9a44e14;transform:translateY(-2px)}.trust-bar__item:hover .trust-bar__icon{transform:scale(1.1)}}.trust-bar__icon{border-radius:var(--radius-sm);width:44px;height:44px;transition:transform var(--duration-fast) var(--ease-bounce);flex-shrink:0;justify-content:center;align-items:center;display:flex}.trust-bar__icon--gold{color:var(--accent-gold);background:#c9a44e1a}.trust-bar__icon--green{color:var(--accent-green);background:#4a7c591a}.trust-bar__icon--warm{color:var(--accent-warm);background:#d4754a1a}.trust-bar__icon--google{background:#4285f414}.trust-bar__value{font-family:var(--font-display);font-weight:700;font-size:var(--text-h3);color:var(--text-primary);white-space:nowrap;line-height:1.2;display:block}.trust-bar__label{font-size:var(--text-micro);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-label);line-height:1.4;display:block}.trust-bar__sep{background:var(--border-subtle);flex-shrink:0;width:1px;height:40px}@media (width>=768px){.trust-bar__container{flex-wrap:wrap;overflow-x:visible}.trust-bar__item{flex-shrink:1;min-width:0}}@media (width<=600px){.trust-bar__container{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;gap:var(--space-sm);flex-direction:row;padding-bottom:.5rem;overflow-x:auto}.trust-bar__item{scroll-snap-align:start;flex-shrink:0;min-width:140px}.trust-bar__sep{flex-shrink:0;width:1px;height:40px}}.services{padding:var(--section-padding);padding-left:var(--container-padding);padding-right:var(--container-padding)}.services__header{text-align:center;max-width:var(--container-tight);margin:0 auto var(--space-xl)}.services__title{font-size:var(--text-h1);margin-bottom:var(--space-sm)}.services__subtitle{color:var(--text-secondary);font-size:var(--text-body)}.services__grid{max-width:var(--container-max);grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:0 auto;display:grid}.service-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:transform var(--duration-base) var(--ease-smooth), border-color var(--duration-base) var(--ease-smooth), box-shadow var(--duration-base);color:inherit;flex-direction:column;padding:clamp(1.25rem,3vw,2rem);text-decoration:none;display:flex;position:relative;overflow:hidden}@media (hover:hover){.service-card:hover{border-color:var(--border-hover);transform:translateY(-8px);box-shadow:0 20px 60px #00000014}}@media (hover:none){.service-card:active{background:#c9a44e08;transform:scale(.99)}}.service-card__glow{background:var(--gradient-card);opacity:0;transition:opacity var(--duration-base);pointer-events:none;border-radius:var(--radius-lg);position:absolute;inset:-1px}@media (hover:hover){.service-card:hover .service-card__glow{opacity:1}}.service-card__icon-wrap{border-radius:var(--radius-md);width:56px;height:56px;margin-bottom:var(--space-sm);color:var(--accent-gold);transition:transform var(--duration-base) var(--ease-bounce);background:#c9a44e14;justify-content:center;align-items:center;display:flex}@media (hover:hover){.service-card:hover .service-card__icon-wrap{animation:iconBounce .5s var(--ease-bounce)}}@keyframes iconBounce{0%{transform:scale(1)}40%{transform:scale(1.3)rotate(-10deg)}to{transform:scale(1)}}.service-card__tag{font-size:var(--text-micro);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--accent-gold);margin-bottom:var(--space-xs);font-weight:600}.service-card__title{font-family:var(--font-display);font-size:var(--text-h3);margin-bottom:var(--space-xs);color:var(--text-primary)}.service-card__desc{font-size:var(--text-small);color:var(--text-secondary);margin-bottom:var(--space-sm);line-height:1.6}.service-card__price{font-size:var(--text-small);color:var(--accent-green);margin-bottom:var(--space-sm);font-weight:600}.service-card__price strong{font-family:var(--font-display);font-size:var(--text-body)}.service-card__cta{font-size:var(--text-small);color:var(--accent-gold);opacity:0;transition:opacity var(--duration-base), transform var(--duration-base);align-items:center;gap:.4rem;margin-top:auto;font-weight:600;display:inline-flex;transform:translateY(4px)}@media (hover:hover){.service-card:hover .service-card__cta{opacity:1;transform:translateY(0)}}@media (hover:none){.service-card__cta{opacity:1;transform:translateY(0)}}.service-card__arrow{transition:transform var(--duration-fast);font-size:1rem}@media (hover:hover){.service-card:hover .service-card__arrow{transform:translate(4px)}}.service-card[data-accent=warm]{border-color:#d4754a4d}.service-card[data-accent=warm] .service-card__tag{color:var(--accent-warm)}.service-card[data-accent=warm] .service-card__icon-wrap{color:var(--accent-warm);background:#d4754a1a}@media (width<=900px){.services__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.services__grid{grid-template-columns:1fr}}.about{padding:var(--section-padding);padding-left:var(--container-padding);padding-right:var(--container-padding)}.about__container{max-width:var(--container-max);gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:center;margin:0 auto;display:grid}.about__headline{font-size:var(--text-h1);margin-bottom:var(--space-md)}.about__headline em{color:var(--accent-gold);font-style:italic}.about__body{color:var(--text-secondary);font-size:var(--text-body);margin-bottom:var(--space-md);line-height:1.8}.about__pillars{gap:var(--space-md);flex-direction:column;display:flex}.about__pillar{gap:var(--space-sm);align-items:flex-start;display:flex}.about__pillar-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;margin-top:2px;display:flex}.about__pillar-icon--warm{color:var(--accent-warm);background:#d4754a1a}.about__pillar-icon--gold{color:var(--accent-gold);background:#c9a44e1a}.about__pillar-icon--green{color:var(--accent-green);background:#4a7c591a}.about__pillar strong{font-size:var(--text-body);color:var(--text-primary);margin-bottom:2px;display:block}.about__pillar p{font-size:var(--text-small);color:var(--text-secondary);margin:0}.about__visual{border-radius:var(--radius-lg);align-items:center;gap:var(--space-sm);flex-direction:column;display:flex;position:relative;overflow:visible}.about__img-wrap{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-card);width:90%;max-width:500px;font-size:0;position:relative;overflow:hidden;box-shadow:0 20px 60px #2d2a2614}.about__img{aspect-ratio:4/5;object-fit:cover;width:100%;height:auto;transition:transform var(--duration-slow) var(--ease-smooth)}@media (hover:hover){.about__visual:hover .about__img{transform:scale(1.03)}}.about__img-overlay{pointer-events:none;background:linear-gradient(#0000 60%,#2d2a2626 100%);position:absolute;inset:0}.about__badge-float{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-full);font-size:var(--text-small);color:var(--text-primary);align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;animation:3s ease-in-out infinite floatBadge;display:flex;position:absolute;bottom:60px;right:-10px;box-shadow:0 10px 40px #2d2a261f}.about__badge-icon{font-size:1.1rem}@keyframes floatBadge{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.about__map-cta{font-size:var(--text-small);color:var(--accent-gold);border:1px solid var(--border-hover);border-radius:var(--radius-full);transition:all var(--duration-fast);align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover){.about__map-cta:hover{background:#c9a44e1a;transform:translateY(-2px)}}@media (width<=1024px){.about__container{text-align:center;gap:var(--space-lg);grid-template-columns:1fr}.about__visual{margin-top:var(--space-md);order:-1}.about__pillars{align-items:center}.about__badge-float{bottom:40px;right:auto}.about__pillar{text-align:left}}@media (width<=600px){.about__img-wrap{width:100%}.about__badge-float{margin-top:var(--space-sm);justify-content:center;position:relative;bottom:auto;right:auto}}.team{padding:var(--section-padding);padding-left:var(--container-padding);padding-right:var(--container-padding)}.team__header{text-align:center;max-width:var(--container-tight);margin:0 auto var(--space-xl)}.team__title{font-size:var(--text-h1);margin-bottom:var(--space-sm)}.team__subtitle{color:var(--text-secondary);font-size:var(--text-body)}.team__grid{max-width:var(--container-max);grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:0 auto;display:grid}.team-card{perspective:1000px;height:380px}.team-card__inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s var(--ease-smooth);position:relative}@media (hover:hover){.team-card:hover .team-card__inner{transform:rotateY(180deg)}}.team-card__front,.team-card__back{backface-visibility:hidden;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-card);text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:clamp(1.25rem,3vw,2rem);display:flex;position:absolute}.team-card__back{background:linear-gradient(135deg, var(--bg-card) 0%, #c9a44e0d 100%);transform:rotateY(180deg)}.team-card__visual{margin-bottom:var(--space-sm);justify-content:center;align-items:center;display:flex}.team-card__image-container{background:var(--bg-secondary);border:4px solid #b8912a26;border-radius:50%;width:120px;height:120px;overflow:hidden;box-shadow:0 8px 24px #0000001a}.team-card__image{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-smooth)}@media (hover:hover){.team-card:hover .team-card__image{transform:scale(1.1)}}.team-card__emoji{font-size:4rem}.team-card__name{font-family:var(--font-display);font-size:var(--text-h3);margin-bottom:4px}.team-card__role{font-size:var(--text-small);color:var(--accent-gold);margin-bottom:var(--space-xs)}.team-card__years{font-size:var(--text-micro);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-label)}.team-card__speciality{font-size:var(--text-small);color:var(--accent-gold);margin-bottom:var(--space-md)}.team-card__quote{font-family:var(--font-display);font-style:italic;font-size:var(--text-body);color:var(--text-secondary);max-width:260px;line-height:1.6}.team-card__hint{font-size:var(--text-micro);color:var(--text-muted);letter-spacing:var(--tracking-label);text-transform:uppercase;margin-top:auto}@media (width<=900px){.team__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.team__grid{grid-template-columns:1fr}.team-card{height:340px}}@media (hover:none){.team-card{perspective:none;height:auto}.team-card__inner{transform-style:flat;flex-direction:column;gap:0;display:flex}.team-card__front{backface-visibility:visible;border-radius:var(--radius-lg) var(--radius-lg) 0 0;height:auto;padding-bottom:var(--space-sm);position:static}.team-card__back{backface-visibility:visible;border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px dashed var(--border-hover);height:auto;padding-top:var(--space-sm);position:static;transform:none}}.testimonials{padding:var(--section-padding);padding-left:var(--container-padding);padding-right:var(--container-padding);background:var(--bg-secondary);overflow:hidden}.testimonials__header{text-align:center;max-width:var(--container-tight);margin:0 auto var(--space-xl)}.testimonials__title{font-size:var(--text-h1);margin-bottom:var(--space-sm)}.marquee-wrap{margin:0 calc(-1 * var(--container-padding));padding:1.5rem 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%)}.marquee{gap:1.5rem;width:max-content;animation:40s linear infinite marqueeScroll;display:flex}@media (hover:hover){.marquee:hover{animation-play-state:paused}}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.review-chip{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-full);font-size:var(--text-small);color:var(--text-secondary);white-space:nowrap;transition:border-color var(--duration-base), color var(--duration-base);flex-shrink:0;padding:.75rem 1.5rem}@media (hover:hover){.review-chip:hover{border-color:var(--border-hover);color:var(--text-primary)}}.testimonials__featured{max-width:var(--container-tight);margin:var(--space-xl) auto 0;text-align:center}.testimonials__quote-mark{font-family:var(--font-display);color:var(--accent-gold);margin-bottom:var(--space-sm);opacity:.4;font-size:6rem;line-height:.5}.testimonials__quote{font-family:var(--font-display);font-size:var(--text-h2);color:var(--text-primary);margin-bottom:var(--space-md);font-style:italic;line-height:1.5}.testimonials__stars{color:var(--accent-gold);margin-bottom:var(--space-xs);justify-content:center;gap:.25rem;display:flex}.testimonials__source{font-size:var(--text-small);color:var(--text-muted)}.testimonials__review-ctas{text-align:center;max-width:var(--container-tight);margin:var(--space-xl) auto 0}.testimonials__cta-label{font-size:var(--text-body);color:var(--text-secondary);margin-bottom:var(--space-md)}.testimonials__cta-row{justify-content:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.testimonials__cta-btn{align-items:center;gap:.5rem;display:inline-flex}.emergency{background:var(--gradient-emergency);text-align:center;padding:clamp(3.5rem, 10vw, 6rem) var(--container-padding);position:relative;overflow:hidden}.emergency__bg-pulse{pointer-events:none;background:#ffffff0d;border-radius:50%;width:600px;height:600px;animation:3s ease-in-out infinite emergencyBg;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes emergencyBg{0%,to{transform:translate(-50%,-50%)scale(1)}50%{transform:translate(-50%,-50%)scale(1.15)}}.emergency__content{z-index:1;max-width:640px;margin:0 auto;position:relative}.emergency__icon{color:#fff;margin-bottom:var(--space-sm);justify-content:center;display:flex}.emergency__headline{font-size:var(--text-h1);color:#fff;margin-bottom:var(--space-sm)}.emergency__sub{font-size:var(--text-body);color:#ffffffd9;margin-bottom:var(--space-lg);line-height:1.7}.emergency__ctas{justify-content:center;gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.emergency__cta{color:#0d0d0d;border-radius:var(--radius-full);white-space:nowrap;background:#fff;justify-content:center;align-items:center;gap:.6rem;min-height:52px;padding:clamp(.75rem,2vw,1rem) clamp(1.25rem,3vw,2rem);font-size:clamp(.95rem,2vw,1.1rem);font-weight:700;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;overflow:hidden}@media (hover:hover){.emergency__cta:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 12px 30px #00000040}}.emergency__cta:active{transform:translateY(0)scale(.97)}.emergency__cta-ring{border-radius:var(--radius-full);pointer-events:none;border:2px solid #ffffff80;animation:2s ease-out infinite ctaRing;position:absolute;inset:-6px}@keyframes ctaRing{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.12)}}.emergency__cta--wa{color:#fff;background:#25d366}@media (hover:hover){.emergency__cta--wa:hover{box-shadow:0 8px 30px #25d36666}}.emergency__address{font-size:var(--text-small);color:#ffffffb3;margin-bottom:var(--space-md)}.emergency__faq-toggle{border-radius:var(--radius-full);color:#fff;font-size:var(--text-small);cursor:pointer;transition:background var(--duration-fast);font-weight:600;font-family:var(--font-body);background:#ffffff1f;border:1px solid #ffffff40;align-items:center;gap:.4rem;padding:.6rem 1.4rem;display:inline-flex}@media (hover:hover){.emergency__faq-toggle:hover{background:#fff3}}.emergency__faq-chevron{transition:transform var(--duration-fast);display:inline-flex}.emergency__faq-chevron--open{transform:rotate(180deg)}.emergency__faq-list{margin-top:var(--space-md);text-align:left;grid-template-columns:1fr 1fr;gap:.6rem 2rem;max-width:580px;margin-left:auto;margin-right:auto;padding:0;list-style:none;animation:.3s fadeIn;display:grid}.emergency__faq-item{font-size:var(--text-small);color:#ffffffe6;padding-left:1.2rem;line-height:1.5;position:relative}.emergency__faq-item:before{content:"";background:#ffffff80;border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (width<=600px){.emergency__ctas{flex-direction:column;align-items:center}.emergency__faq-list{grid-template-columns:1fr}}.contact{padding:var(--section-padding);padding-left:var(--container-padding);padding-right:var(--container-padding)}.contact__grid{max-width:var(--container-max);gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:start;margin:0 auto;display:grid}.contact__heading{font-size:var(--text-h1);margin-bottom:var(--space-lg)}.contact__details{margin-bottom:var(--space-md)}.contact__detail{gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.contact__detail-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.contact__detail-icon--gold{color:var(--accent-gold);background:#c9a44e1a}.contact__detail-icon--green{color:var(--accent-green);background:#4a7c591a}.contact__detail-icon--warm{color:var(--accent-warm);background:#d4754a1a}.contact__detail-icon--wagreen{color:#25d366;background:#25d3661a}.contact__detail strong{font-size:var(--text-body);color:var(--text-primary);margin-bottom:2px;display:block}.contact__detail p,.contact__detail a{font-size:var(--text-small);color:var(--text-secondary);margin:0;line-height:1.6;text-decoration:none}@media (hover:hover){.contact__detail a:hover{color:var(--accent-gold)}}.contact__actions{gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.contact__directions,.contact__save{align-items:center;gap:.4rem;display:inline-flex}.contact__form-wrap{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:1.5rem}.contact__form-title{font-family:var(--font-display);font-size:var(--text-h3);margin-bottom:var(--space-sm)}.contact__form{flex-direction:column;gap:.75rem;display:flex}.contact__form input,.contact__form textarea{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-primary);width:100%;font-family:var(--font-body);font-size:max(16px, var(--text-small));color:var(--text-primary);transition:border-color var(--duration-fast);box-sizing:border-box;outline:none;padding:.75rem 1rem}.contact__form input:focus,.contact__form textarea:focus{border-color:var(--accent-gold)}.contact__form textarea{resize:vertical;min-height:56px}.contact__submit{width:100%;font-size:var(--text-body);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.85rem;font-weight:600;display:inline-flex}.contact__map iframe{border-radius:var(--radius-lg);border:0;width:100%;height:100%;min-height:clamp(280px,50vw,500px)}@media (width<=1024px){.contact__grid{grid-template-columns:1fr}.contact__map{margin-top:var(--space-md)}}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-subtle);padding:var(--space-xl) var(--container-padding) var(--space-md)}.footer__inner{max-width:var(--container-max);gap:var(--space-lg);flex-direction:column;margin:0 auto;display:flex}.footer__top{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);flex-wrap:wrap;display:flex}.footer__brand{align-items:center;gap:var(--space-sm);display:flex}.footer__logo{object-fit:contain;width:36px;height:36px}.footer__brand-name{font-family:var(--font-display);font-size:var(--text-h3);color:var(--text-primary);display:block}.footer__brand p{font-size:var(--text-small);color:var(--text-secondary);font-family:var(--font-body);margin-top:2px}.footer__newsletter{max-width:320px}.footer__newsletter-label{font-size:var(--text-small);color:var(--text-primary);margin-bottom:.4rem;font-weight:600}.footer__newsletter-form{border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--bg-primary);display:flex;overflow:hidden}.footer__newsletter-form input{font-size:max(16px, var(--text-small));font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:.6rem 1rem}.footer__newsletter-form button{background:var(--accent-gold);color:#fff;cursor:pointer;transition:background var(--duration-fast);border:none;justify-content:center;align-items:center;padding:.6rem 1rem;display:flex}@media (hover:hover){.footer__newsletter-form button:hover{background:#b8922e}}.footer__middle{justify-content:space-between;align-items:center;gap:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-subtle);flex-wrap:wrap;display:flex}.footer__links{gap:var(--space-md);flex-wrap:wrap;display:flex}.footer__links a{font-size:var(--text-small);color:var(--text-muted);transition:color var(--duration-fast);text-decoration:none}@media (hover:hover){.footer__links a:hover{color:var(--accent-gold)}}.footer__social{gap:.75rem;display:flex}.footer__social a{border:1px solid var(--border-subtle);width:40px;height:40px;color:var(--text-muted);transition:all var(--duration-fast);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex}@media (hover:hover){.footer__social a:hover{color:var(--accent-gold);border-color:var(--accent-gold);transform:translateY(-2px)}}.footer__bottom{justify-content:space-between;align-items:center;gap:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-subtle);flex-wrap:wrap;display:flex}.footer__bottom p{font-size:var(--text-micro);color:var(--text-muted);margin:0}.footer__legal-links{align-items:center;gap:.5rem;display:flex}.footer__legal-links a,.footer__legal-btn{font-size:var(--text-micro);color:var(--text-muted);transition:color var(--duration-fast);cursor:pointer;background:0 0;border:none;outline:none;padding:0;font-family:inherit;text-decoration:none}@media (hover:hover){.footer__legal-links a:hover,.footer__legal-btn:hover{color:var(--accent-gold)}}.footer__legal-links span{color:var(--text-muted);font-size:var(--text-micro)}@media (width<=600px){.footer__top{flex-direction:column}.footer__newsletter{max-width:100%}.footer__middle{flex-direction:column;align-items:flex-start}.footer__bottom{text-align:center;flex-direction:column;align-items:center}}.btn--book{color:#fff;text-shadow:0 1px 2px #0003;background:linear-gradient(135deg,#1b4332 0%,#2d6a4f 100%);border:1px solid #2d6a4fcc;font-weight:600;transition:all .5s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;box-shadow:0 8px 24px -4px #1b433266,inset 0 1px 2px #fff3,inset 0 -2px 4px #0003}@media (hover:hover){.btn--book:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 16px 32px #1b43324d,0 4px 10px #1b433233}}.btn--book:active{transform:translateY(0)scale(.97)}.btn--book:before{content:"";background:linear-gradient(90deg,#fff0 0%,#fff6 50%,#fff0 100%);width:50%;height:100%;animation:4s cubic-bezier(.16,1,.3,1) 1s infinite premiumShine;position:absolute;top:0;left:-100%;transform:skew(-25deg)}.whatsapp-fab{z-index:9999;color:#fff;background:linear-gradient(135deg,#25d366 0%,#128c7e 100%);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:all .4s cubic-bezier(.16,1,.3,1);animation:.6s cubic-bezier(.34,1.56,.64,1) 2s both waBounceIn;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 6px 24px #25d36666}@media (hover:hover){.whatsapp-fab:hover{transform:scale(1.05);box-shadow:0 12px 40px #25d36699}}.whatsapp-fab:active{transform:scale(.95)}.whatsapp-fab:before{content:"";pointer-events:none;border:2px solid #25d36680;border-radius:50%;animation:2.5s ease-out infinite waPulse;position:absolute;inset:-5px}.whatsapp-fab__icon{width:30px;height:30px}.whatsapp-fab__tooltip{background:var(--text-primary);color:#fff;font-size:var(--text-small);border-radius:var(--radius-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--duration-fast);padding:.5rem 1rem;font-weight:500;position:absolute;top:50%;right:calc(100% + 12px);transform:translateY(-50%)}@media (hover:hover){.whatsapp-fab:hover .whatsapp-fab__tooltip{opacity:1}}@keyframes waBounceIn{0%{opacity:0;transform:scale(0)translateY(40px)}60%{opacity:1;transform:scale(1.15)translateY(-5px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes waPulse{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.3)}}@media (width<=768px){.whatsapp-fab{width:52px;height:52px;bottom:1.5rem;right:1.5rem}.whatsapp-fab__icon{width:26px;height:26px}.whatsapp-fab__tooltip{display:none}}.legal-modal__overlay{z-index:99999;-webkit-backdrop-filter:blur(8px);padding:var(--space-md);background:#2d2a2666;justify-content:center;align-items:center;animation:.3s cubic-bezier(.16,1,.3,1) forwards modalFadeIn;display:flex;position:fixed;inset:0}.legal-modal__content{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:720px;max-height:85vh;animation:.5s cubic-bezier(.16,1,.3,1) forwards modalSlideUp;display:flex;position:relative;box-shadow:0 40px 100px #00000026}.legal-modal__close{background:var(--bg-secondary);border:1px solid var(--border-subtle);width:36px;height:36px;color:var(--text-primary);cursor:pointer;transition:all var(--duration-fast);z-index:10;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex;position:absolute;top:1.5rem;right:1.5rem}@media (hover:hover){.legal-modal__close:hover{background:var(--accent-gold);color:#fff;border-color:var(--accent-gold);transform:rotate(90deg)}}.legal-modal__header{border-bottom:1px solid var(--border-subtle);padding:2rem 2.5rem}.legal-modal__header h2{font-size:var(--text-h2);margin-bottom:.25rem}.legal-modal__header p{font-size:var(--text-micro);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-label)}.legal-modal__body{-webkit-overflow-scrolling:touch;padding:2rem 2.5rem;overflow-y:auto}.legal-modal__section{margin-bottom:2rem}.legal-modal__section:last-child{margin-bottom:0}.legal-modal__section h3{font-size:var(--text-h3);color:var(--text-primary);margin-bottom:.75rem}.legal-modal__section p{font-size:var(--text-small);color:var(--text-secondary);line-height:1.7}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=600px){.legal-modal__header,.legal-modal__body{padding:1.25rem}.legal-modal__content{border-radius:var(--radius-md);max-height:90vh}.legal-modal__overlay{padding:var(--space-sm)}}
