@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Outfit:wght@300;400;500;600;700;800&family=Sora:wght@300;400;500;600;700&display=swap";:root{--font-primary: "Outfit", system-ui, -apple-system, sans-serif;--font-display: "Cormorant Garamond", serif;--color-bg-base: #fdfcf9;--color-bg-surface: #f6f3ed;--color-bg-card: #ffffff;--color-bg-card-hover: #f9f6f0;--color-bg-dark: #050505;--color-primary: #d5b35c;--color-primary-rgb: 213, 179, 92;--color-primary-dark: #b5923b;--color-primary-light: #f4db9a;--color-primary-glow: #fbf5e6;--color-text-bright: #1a1a1a;--color-text-main: #3d3d3d;--color-text-muted: #6b6b6b;--color-border: rgba(0, 0, 0, .06);--color-border-hover: rgba(184, 148, 61, .45);--transition-smooth: all .6s cubic-bezier(.16, 1, .3, 1);--transition-quick: all .3s cubic-bezier(.25, .8, .25, 1);--shadow-premium: 0 10px 30px rgba(0, 0, 0, .07);--shadow-card: 0 4px 15px rgba(0, 0, 0, .04);--shadow-gold: 0 8px 25px rgba(184, 148, 61, .2)}body[data-theme=dark]{--color-bg-base: #0a0907;--color-bg-surface: #111009;--color-bg-card: #161410;--color-bg-card-hover: #1e1b14;--color-text-bright: #f5f0e8;--color-text-main: #c4b99a;--color-text-muted: #7d7260;--color-border: rgba(213, 179, 92, .1);--color-border-hover: rgba(213, 179, 92, .4);--shadow-premium: 0 10px 30px rgba(0, 0, 0, .4);--shadow-card: 0 4px 15px rgba(0, 0, 0, .3)}body[data-theme=dark] .about-section,body[data-theme=dark] .services-section,body[data-theme=dark] .contact-section,body[data-theme=dark] .projects-section,body[data-theme=dark] .presupuesto-section,body[data-theme=dark] .hotspot-section{background-color:var(--color-bg-base)}body[data-theme=dark] .service-card{background:var(--color-bg-card);border-color:#d5b35c1f}body[data-theme=dark] .why-card,body[data-theme=dark] .contact-info-card,body[data-theme=dark] .contact-form-card{background:var(--color-bg-card)}body[data-theme=dark] .form-control{background:var(--color-bg-surface);color:var(--color-text-bright);border-color:var(--color-border)}body[data-theme=dark] .form-control:focus{background:var(--color-bg-card);border-color:var(--color-primary)}body[data-theme=dark] .about-image-wrapper:before{border-color:var(--color-primary-dark)}body[data-theme=dark] .stat-item{background:var(--color-bg-card)}body[data-theme=dark] .footer-bottom{border-color:#ffffff0d}body{transition:background-color .5s ease,color .5s ease}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px;background-color:var(--color-bg-base)}body{font-family:var(--font-primary);background-color:var(--color-bg-base);color:var(--color-text-main);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-bg-surface)}::-webkit-scrollbar-thumb{background:var(--color-primary-light);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.container{max-width:1240px;margin:0 auto;padding:0 2rem;position:relative;z-index:2}.section{padding:8rem 0;position:relative;z-index:1}.section-label{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-primary);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--color-primary-dark);margin-bottom:1rem}.section-title{font-family:var(--font-display);font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:400;line-height:1.2;color:var(--color-text-bright);margin-bottom:1.5rem;letter-spacing:-.5px}.section-subtitle{font-size:1.15rem;color:var(--color-text-main);max-width:600px;margin-bottom:2rem}.section-header-center{text-align:center;max-width:700px;margin:0 auto 5rem;display:flex;flex-direction:column;align-items:center}.divider{width:60px;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));border-radius:2px;margin:1.5rem 0}.btn-primary,.btn-outline{padding:1.1rem 2.5rem;font-family:var(--font-primary);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;text-decoration:none;border-radius:4px;transition:var(--transition-smooth);cursor:pointer;z-index:2;display:inline-flex;align-items:center;gap:.75rem}.btn-primary{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}.btn-primary:hover{transform:translateY(-2px);background:var(--color-primary-light);border-color:var(--color-primary-light);box-shadow:0 10px 25px #b8943d26}.btn-primary:active{transform:translateY(0)}.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.25)}.btn-outline:hover{background:#fff;color:var(--color-bg-dark);border-color:#fff;transform:translateY(-2px)}.btn-outline:hover svg{transform:translate(4px)}.btn-outline svg{transition:var(--transition-quick)}.navbar{position:fixed;top:0;left:0;width:100%;padding:1.25rem 0;background:#050505;border-bottom:1px solid rgba(213,179,92,.12);z-index:1000;transition:var(--transition-smooth)}.navbar.scrolled{padding:1rem 0;background:#050505fa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.05);box-shadow:0 4px 20px #00000080}.navbar.scrolled .nav-logo .logo-text,.navbar.scrolled .nav-links a{color:#fff}.navbar.scrolled .nav-toggle span{background-color:#fff}.nav-container{display:flex;justify-content:space-between;align-items:center;max-width:1240px;margin:0 auto;padding:0 2rem}.nav-logo{display:flex;align-items:center;gap:.75rem;text-decoration:none}.nav-logo .logo-img{height:38px;width:auto;object-fit:contain}.nav-logo .logo-text{font-family:var(--font-display);font-size:1.6rem;font-weight:800;letter-spacing:1px;color:#fff;text-transform:uppercase;transition:var(--transition-smooth)}.nav-logo .logo-text span{color:var(--color-primary)}.nav-links{display:flex;list-style:none;gap:1.25rem;align-items:center}.nav-links a{font-family:var(--font-primary);font-size:.9rem;font-weight:600;color:#fff;text-decoration:none;letter-spacing:.5px;transition:var(--transition-quick);position:relative;padding:.5rem 0}.nav-links a:hover{color:var(--color-primary-light)}.navbar.scrolled .nav-links a:hover{color:var(--color-primary)}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--color-primary);transform:scaleX(0);transform-origin:right;transition:transform .4s cubic-bezier(.16,1,.3,1)}.nav-links a:hover:after{transform:scaleX(1);transform-origin:left}.dropdown{position:relative}.dropdown-menu{position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-50%) translateY(10px);background:#050505;min-width:200px;box-shadow:0 10px 40px #00000080;border-radius:12px;border:1px solid rgba(255,255,255,.1);opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.16,1,.3,1);padding:.5rem 0;list-style:none;z-index:100;display:flex;flex-direction:column;gap:0}.dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.dropdown-menu li{width:100%}.dropdown-menu a{display:block;padding:.75rem 1.5rem!important;color:#f1f5f9!important;font-size:.9rem!important;font-weight:500!important;transition:background .2s ease,color .2s ease!important}.dropdown-menu a:after{display:none!important}.dropdown-menu a:hover{background:#111;color:var(--color-primary-light)!important}.nav-toggle{display:none;cursor:pointer;flex-direction:column;justify-content:space-between;width:24px;height:18px;z-index:1001}.nav-toggle span{display:block;width:100%;height:2px;background-color:#fff;border-radius:4px;transition:var(--transition-quick)}.hero{position:relative;height:100vh;min-height:600px;display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;overflow:hidden;z-index:1;background:#0a0a0a}.hero.spa-section.active-page{display:flex!important}.hero-bg-slideshow{position:absolute;inset:0;z-index:0;overflow:hidden}.hero-bg-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 2.2s cubic-bezier(.4,0,.2,1);transform:scale(1.08);animation:kenBurnsZoom 18s ease-in-out infinite;will-change:transform,opacity}.hero-bg-slide.active{opacity:1;z-index:1}@keyframes kenBurnsZoom{0%{transform:scale(1.08) translate(0)}33%{transform:scale(1.04) translate(-.5%,.5%)}66%{transform:scale(1.06) translate(.5%,-.3%)}to{transform:scale(1.08) translate(0)}}.hero-overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(to right,#000000d1,#000000a6 45%,#00000059)}.hero-decor-corner-tl{position:absolute;top:100px;left:6%;width:120px;height:120px;border-top:1px solid rgba(213,179,92,.35);border-left:1px solid rgba(213,179,92,.35);z-index:5;opacity:0;animation:fadeIn 1.8s ease 1.2s forwards;pointer-events:none}.hero-decor-corner-br{position:absolute;bottom:200px;right:6%;width:90px;height:90px;border-bottom:1px solid rgba(213,179,92,.25);border-right:1px solid rgba(213,179,92,.25);z-index:5;opacity:0;animation:fadeIn 1.8s ease 1.5s forwards;pointer-events:none}.hero-content-full{position:relative;z-index:5;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:1200px;width:100%;height:100%;padding:80px 6% 0;margin:0 auto}.hero-eyebrow{display:flex;align-items:center;gap:1.25rem;margin-bottom:2rem;opacity:0;animation:fadeSlideUp 1.2s cubic-bezier(.16,1,.3,1) .3s forwards}.hero-eyebrow-line{width:38px;height:1px;background:var(--color-primary-light);flex-shrink:0}.hero-eyebrow-text{font-family:var(--font-primary);font-size:.7rem;font-weight:600;letter-spacing:5px;text-transform:uppercase;color:var(--color-primary-light)}.hero h1{font-family:var(--font-display)!important;font-size:clamp(2.8rem,5.5vw,5rem)!important;font-weight:500!important;line-height:1.15!important;letter-spacing:.3px!important;color:#fff!important;margin-bottom:1.5rem;max-width:700px;opacity:0;animation:fadeSlideUp 1.2s cubic-bezier(.16,1,.3,1) .4s forwards}.hero h1 .highlight{font-family:var(--font-display)!important;font-style:italic!important;font-weight:500!important;background:linear-gradient(135deg,#f4db9a,#d5b35c,#c4a050)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important;text-shadow:none!important;letter-spacing:.5px!important;display:inline-block}.hero-description{font-family:var(--font-primary);font-size:1rem;font-weight:300;letter-spacing:.3px;color:#ffffffc7;max-width:480px;margin-bottom:2.5rem;line-height:1.85;opacity:0;animation:fadeSlideUp 1.2s cubic-bezier(.16,1,.3,1) .6s forwards}.hero-actions{display:flex;gap:1.5rem;flex-wrap:wrap;opacity:0;animation:fadeSlideUp 1.2s cubic-bezier(.16,1,.3,1) .9s forwards}.btn-outline-hero{display:inline-flex;align-items:center;gap:.75rem;padding:1.1rem 2.5rem;font-family:var(--font-primary);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;text-decoration:none;border-radius:4px;transition:var(--transition-smooth);cursor:pointer;background:transparent;color:#ffffffe6;border:1px solid rgba(255,255,255,.35)}.btn-outline-hero:hover{background:#ffffff1a;color:#fff;border-color:#d5b35cb3;transform:translateY(-2px);box-shadow:0 8px 24px #d5b35c33}.btn-outline-hero svg{transition:var(--transition-quick)}.btn-outline-hero:hover svg{transform:translateY(4px)}.hero-stats-row{display:flex;flex-wrap:wrap;gap:2rem;margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(213,179,92,.22);width:100%;max-width:500px;opacity:0;animation:fadeSlideUp 1.2s cubic-bezier(.16,1,.3,1) 1.1s forwards}.hero-stat-compact{display:flex;flex-direction:column;position:relative}.hero-stat-compact:not(:last-child):after{content:"";position:absolute;right:-1.5rem;top:15%;height:70%;width:1px;background:#d5b35c40}.hero-stat-compact .num{font-family:var(--font-display);font-size:2.4rem;font-weight:400;color:var(--color-primary-light);line-height:1}.hero-stat-compact .lbl{font-family:var(--font-primary);font-size:.68rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:#ffffff73;margin-top:.45rem}.hero-scroll-indicator{position:absolute;bottom:205px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;transition:var(--transition-quick);z-index:6;opacity:0;animation:fadeIn 1.2s ease 2s forwards}.hero-scroll-indicator:hover{opacity:.85}.scroll-mouse{width:20px;height:32px;border:1.5px solid rgba(255,255,255,.3);border-radius:20px;position:relative}.scroll-dot{width:3px;height:7px;background:var(--color-primary-light);border-radius:2px;position:absolute;top:5px;left:50%;transform:translate(-50%);animation:scrollMouse 2s infinite ease-in-out}@keyframes scrollMouse{0%{transform:translate(-50%);opacity:0}40%{opacity:1}to{transform:translate(-50%,8px);opacity:0}}.hero-features-container{position:relative;z-index:5;display:grid;grid-template-columns:repeat(3,1fr);gap:0;max-width:100%;width:100%;flex-shrink:0;border-top:1px solid rgba(213,179,92,.18);opacity:0;animation:fadeIn 1.5s ease 1.4s forwards}.hero-feature-card{background:#060504c7;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-right:1px solid rgba(213,179,92,.14);padding:2rem 2.75rem;transition:var(--transition-smooth)}.hero-feature-card:last-child{border-right:none}.hero-feature-card:hover{background:#0f0c08d9;border-color:#d5b35c61}.hero-feature-card .feat-icon{font-size:1.3rem;color:var(--color-primary);margin-bottom:1rem}.hero-feature-card h3{font-family:var(--font-display);font-size:1.2rem;font-weight:500;color:#fff;margin-bottom:.65rem;letter-spacing:.3px}.hero-feature-card p{font-family:var(--font-primary);font-size:.86rem;color:#ffffff8c;line-height:1.7}@keyframes fadeSlideUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeSlideRight{0%{transform:translate(-24px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:991px){.hero-content-full{padding-top:90px}}@media(max-width:600px){.hero h1{font-size:clamp(2.2rem,8vw,3rem)!important}.hero-description{font-size:.92rem;max-width:100%}.hero-content-full{padding:80px 1.5rem 2rem;height:100%;justify-content:center}.hero-decor-corner-tl,.hero-decor-corner-br{display:none}}@media(max-width:900px){.hero-features-container{grid-template-columns:1fr;border-top:none}.hero-feature-card{border-right:none;border-bottom:1px solid rgba(213,179,92,.14)}.hero-feature-card:last-child{border-bottom:none}.hero-scroll-indicator{display:none}}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:center}.about-text{display:flex;flex-direction:column;align-items:flex-start}.about-text p{font-size:1.05rem;color:var(--color-text-main);margin-bottom:1.5rem}.about-features{margin-top:2rem}.feature-list{list-style:none;padding:0;margin:0}.feature-list li{color:var(--color-text-main);font-size:1.1rem;margin-bottom:1rem;display:flex;align-items:center;gap:12px}.feature-list .checkmark{color:var(--color-primary);font-weight:700;font-size:1.2rem;background:#d5b35c1a;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%}.about-image-wrapper{position:relative;width:100%;display:flex;justify-content:center}.about-image-wrapper:before{content:"";position:absolute;width:calc(100% - 20px);height:calc(100% - 20px);border:2px solid var(--color-primary);border-radius:24px;top:30px;right:-10px;z-index:1;pointer-events:none;transition:var(--transition-smooth)}.about-image-wrapper:hover:before{transform:translate(-10px,-10px)}.about-main-img{width:100%;border-radius:24px;overflow:hidden;position:relative;z-index:2;box-shadow:var(--shadow-premium);background:var(--color-bg-surface)}.about-main-img img{width:100%;height:auto;min-height:480px;object-fit:cover;display:block}.services-section{background-color:var(--color-bg-surface)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.service-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:24px;overflow:hidden;transition:var(--transition-smooth);display:flex;flex-direction:column;box-shadow:var(--shadow-card);border-top:3px solid transparent}.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-premium);border-color:var(--color-border-hover);border-top-color:var(--color-primary)}.service-card-img{width:100%;height:260px;overflow:hidden;position:relative;border-bottom:1px solid var(--color-border)}.service-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}.service-card:hover .service-card-img img{transform:scale(1.06)}.service-card-body{padding:2.5rem;position:relative;flex-grow:1}.service-icon{position:absolute;top:-30px;right:40px;width:60px;height:60px;background:var(--color-bg-dark);border:2px solid var(--color-primary);border-radius:18px;display:flex;align-items:center;justify-content:center;color:var(--color-primary-light);box-shadow:0 8px 24px #d5b35c40;z-index:10;transition:var(--transition-smooth)}.service-icon svg{transition:var(--transition-quick)}.service-card:hover .service-icon{transform:translateY(-5px) rotate(368deg);border-color:var(--color-primary-light);background:var(--color-primary);color:#fff;box-shadow:0 10px 28px #d5b35c73}.service-card-body h3{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:var(--color-text-bright);margin-bottom:.75rem;transition:var(--transition-quick)}.service-card:hover .service-card-body h3{color:var(--color-primary-dark)}.service-card-body p{color:var(--color-text-main);font-size:.95rem;line-height:1.6}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem;align-items:stretch}.contact-info-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:28px;padding:3rem;display:flex;flex-direction:column;justify-content:space-between}.contact-info-card h3{font-family:var(--font-display);font-size:2rem;font-weight:800;color:var(--color-text-bright);margin-bottom:1rem}.contact-info-card>p{color:var(--color-text-main);font-size:1rem;margin-bottom:3rem}.info-item{display:flex;gap:1.25rem;margin-bottom:2.25rem;align-items:flex-start}.info-icon{width:50px;height:50px;background:var(--color-bg-dark);border:1px solid rgba(213,179,92,.25);border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--color-primary-light);flex-shrink:0;box-shadow:var(--shadow-card);transition:var(--transition-quick)}.info-icon svg{transition:var(--transition-quick)}.info-item:hover .info-icon{transform:scale(1.08) rotate(8deg);background:var(--color-primary);color:#fff;border-color:var(--color-primary-light);box-shadow:0 6px 20px #d5b35c59}.info-details h4{font-family:var(--font-primary);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-muted);margin-bottom:.25rem}.info-details p{font-size:1.05rem;color:var(--color-text-bright);font-weight:600}.contact-form-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:28px;padding:3.5rem;box-shadow:var(--shadow-premium)}.form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.form-group{margin-bottom:1.75rem;display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.85rem;font-weight:700;color:var(--color-text-bright);letter-spacing:.5px}.form-control{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:12px;padding:1rem 1.25rem;color:var(--color-text-bright);font-family:var(--font-primary);font-size:.95rem;transition:var(--transition-quick);width:100%}.form-control::placeholder{color:var(--color-text-muted)}.form-control:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #c5a0591a}textarea.form-control{min-height:140px;resize:vertical}.footer{background-color:var(--color-bg-dark);color:#f1f5f9;position:relative;z-index:10;padding:6rem 0 2.5rem}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr .8fr .9fr;gap:4rem;margin-bottom:5rem}.footer-brand{display:flex;flex-direction:column;align-items:flex-start}.footer-brand .logo-text{color:#fff}.footer-brand p{color:#94a3b8;font-size:.95rem;margin-bottom:2rem;line-height:1.6}.footer-social{display:flex;gap:1rem}.footer-social a{width:44px;height:44px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#f1f5f9;text-decoration:none;font-size:.85rem;font-weight:700;transition:var(--transition-quick)}.footer-social a:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:translateY(-3px)}.footer-col h4{font-family:var(--font-display);font-size:1.1rem;font-weight:800;color:#fff;margin-bottom:1.75rem;letter-spacing:.5px}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:1rem}.footer-col ul a{color:#94a3b8;text-decoration:none;font-size:.9rem;transition:var(--transition-quick);display:inline-block}.footer-col ul a:hover{color:var(--color-primary-light);transform:translate(3px)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:2rem}.footer-bottom-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;color:#64748b;font-size:.85rem}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.reveal.active{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}@media(max-width:1024px){.about-grid{gap:3rem}.services-grid{gap:2rem}.footer-grid{gap:2.5rem}.hero-stats{display:none}}@media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:4rem}.about-image-wrapper{order:-1;max-width:550px;margin:0 auto}.about-main-img img{min-height:380px}.services-grid{grid-template-columns:1fr;max-width:600px;margin:0 auto}.contact-grid{grid-template-columns:1fr;gap:3rem;max-width:700px;margin:0 auto}.footer-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.section{padding:5rem 0}.hero-content{padding-top:8rem}.hero-description{font-size:1rem}.section-title{font-size:2.25rem}.hero-stats{display:none}.nav-toggle{display:flex}.navbar.scrolled .nav-toggle span{background-color:#fff}.nav-links{position:fixed;top:0;right:-100%;width:280px;height:100vh;background:var(--color-bg-base);box-shadow:-10px 0 30px #00000080;flex-direction:column;justify-content:center;gap:3rem;padding:3rem;transition:var(--transition-smooth);z-index:1000}.nav-links.open{right:0}.nav-links a,.navbar.scrolled .nav-links a{color:var(--color-text-bright)}.nav-toggle.active span:nth-child(1){transform:translateY(8px) rotate(45deg);background-color:var(--color-text-bright)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg);background-color:var(--color-text-bright)}.contact-form-card{padding:2.5rem 1.75rem}.form-row{grid-template-columns:1fr;gap:0}}@media(max-width:480px){.hero h1{font-size:2.25rem}.footer-grid{grid-template-columns:1fr;gap:2.5rem}.footer-bottom-content{flex-direction:column;text-align:center}}.projects-section{background-color:var(--color-bg-base)}.portfolio-filters{display:flex;justify-content:center;gap:.75rem;margin-bottom:3.5rem;flex-wrap:wrap}.filter-btn{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-main);padding:.75rem 1.75rem;border-radius:30px;font-family:var(--font-primary);font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition-quick);box-shadow:var(--shadow-card)}.filter-btn:hover{border-color:var(--color-primary-light);color:var(--color-primary-dark);transform:translateY(-2px)}.filter-btn.active{background:var(--color-bg-dark);border-color:var(--color-primary);color:var(--color-primary-light);box-shadow:0 4px 15px #d5b35c33}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}.portfolio-item{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/3;box-shadow:var(--shadow-card);background:#000;cursor:pointer}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1);opacity:.85}.portfolio-item:hover img{transform:scale(1.08);opacity:.5}.portfolio-item-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;background:linear-gradient(0deg,rgba(5,5,5,.9) 0%,transparent 60%);opacity:0;transition:var(--transition-smooth)}.portfolio-item:hover .portfolio-item-overlay{opacity:1}.portfolio-item h3{color:#fff;font-family:var(--font-display);font-size:1.4rem;font-weight:700;margin-bottom:.25rem;transform:translateY(15px);transition:var(--transition-smooth)}.portfolio-item p{color:var(--color-primary);font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;transform:translateY(15px);transition:var(--transition-smooth);transition-delay:.05s}.portfolio-item:hover h3,.portfolio-item:hover p{transform:translateY(0)}@media(max-width:900px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.portfolio-grid{grid-template-columns:1fr}}.spa-section{display:none!important;opacity:0;transform:translateY(20px)}.spa-section.active-page{display:block!important;animation:pageFadeIn .8s cubic-bezier(.16,1,.3,1) forwards}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.lightbox{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;overflow:hidden;background-color:#050505fa;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);justify-content:center;align-items:center;opacity:0;transition:opacity .4s ease}.lightbox.active{display:flex!important;opacity:1}.lightbox-content-wrapper{position:relative;max-width:85%;max-height:80%;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.lightbox-content{width:auto;height:auto;max-width:100%;max-height:70vh;border-radius:12px;border:1px solid rgba(213,179,92,.25);box-shadow:0 30px 80px #000c;object-fit:contain;transform:scale(.95);transition:transform .4s cubic-bezier(.16,1,.3,1)}.lightbox.active .lightbox-content{transform:scale(1)}.lightbox-caption{font-family:var(--font-display);color:#fff;font-size:1.5rem;letter-spacing:1px;text-align:center}.lightbox-close{position:absolute;top:40px;right:40px;color:#fff9;font-size:40px;font-weight:300;cursor:pointer;transition:var(--transition-quick);line-height:1}.lightbox-close:hover{color:var(--color-primary-light);transform:scale(1.1)}@media(max-width:768px){.lightbox-close{top:20px;right:20px;font-size:30px}}.about-testimonials{width:100%}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:4rem}.testimonial-card{background:var(--color-bg-card);border:1px solid var(--color-border);padding:2.5rem;border-radius:20px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;justify-content:space-between;transition:var(--transition-smooth)}.testimonial-card:hover{transform:translateY(-5px);border-color:var(--color-border-hover);box-shadow:var(--shadow-premium)}.testimonial-rating{color:var(--color-primary);font-size:1.1rem;letter-spacing:2px;margin-bottom:1.25rem}.testimonial-text{font-size:.95rem;line-height:1.7;color:var(--color-text-main);margin-bottom:2rem;font-style:italic}.testimonial-header{display:flex;align-items:center;gap:1.15rem;margin-bottom:1.5rem;position:relative;width:100%}.testimonial-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;border:1px solid rgba(213,179,92,.35);box-shadow:0 4px 12px #0000000d}.testimonial-meta{display:flex;flex-direction:column}.testimonial-meta .author-name{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--color-text-bright)}.testimonial-meta .author-platform{font-size:.7rem;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-muted);margin-top:.2rem}.testimonial-google-logo{position:absolute;top:50%;right:0;transform:translateY(-50%);font-family:var(--font-primary);font-size:.85rem;font-weight:700;color:var(--color-primary-dark);opacity:.35}@media(max-width:991px){.testimonials-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.testimonials-grid{grid-template-columns:1fr;gap:1.5rem}}.highlight{background:linear-gradient(135deg,#f4db9a,#d5b35c,#b5923b)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;display:inline-block;font-weight:700}.about-section,.services-section,.projects-section,.contact-section{position:relative;overflow:hidden}.about-section:after{content:"";position:absolute;top:-15%;right:-10%;width:450px;height:450px;background:radial-gradient(circle,rgba(213,179,92,.08) 0%,transparent 70%);filter:blur(90px);z-index:0;pointer-events:none}.services-section:after{content:"";position:absolute;bottom:-20%;left:-15%;width:550px;height:550px;background:radial-gradient(circle,rgba(213,179,92,.09) 0%,transparent 70%);filter:blur(100px);z-index:0;pointer-events:none}.projects-section:after{content:"";position:absolute;top:10%;left:50%;transform:translate(-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(213,179,92,.05) 0%,transparent 70%);filter:blur(120px);z-index:0;pointer-events:none}.btn-primary,.btn-outline{border-radius:50px!important;padding:1.1rem 2.85rem!important;font-size:.82rem!important;font-weight:700!important;box-shadow:0 4px 15px #d5b35c26!important;transition:all .5s cubic-bezier(.16,1,.3,1)!important}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%)!important;border:1px solid var(--color-primary)!important}.btn-primary:hover{transform:translateY(-3px)!important;box-shadow:0 12px 30px #d5b35c73!important;background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-primary) 100%)!important}.btn-outline{border:1.5px solid rgba(213,179,92,.4)!important;color:var(--color-primary)!important;background:transparent!important}.btn-outline:hover{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%)!important;color:#fff!important;border-color:var(--color-primary)!important;transform:translateY(-3px)!important;box-shadow:0 10px 30px #d5b35c59!important}.hero .btn-outline{border-color:#c5a05980!important;color:var(--color-primary-dark)!important}.hero .btn-outline:hover{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%)!important;color:#fff!important;border-color:var(--color-primary)!important}.service-card{border:1px solid rgba(197,160,89,.12)!important;border-top:3px solid rgba(197,160,89,.25)!important;transition:var(--transition-smooth)!important}.service-card:hover{transform:translateY(-8px)!important;box-shadow:0 20px 45px #b8943d24!important;border-color:#b8943d66!important;border-top-color:var(--color-primary)!important}.portfolio-item{border:1px solid rgba(197,160,89,.1)!important;transition:var(--transition-smooth)!important}.portfolio-item:hover{transform:translateY(-6px)!important;border-color:#c5a05973!important;box-shadow:0 15px 35px #b8943d29!important}.ti-widget{font-family:var(--font-primary)!important}.ti-widget .ti-inner{background-color:var(--color-bg-card)!important;border:1px solid rgba(197,160,89,.15)!important;border-radius:20px!important;box-shadow:var(--shadow-card)!important;transition:var(--transition-smooth)!important;padding:2.25rem!important}.ti-widget .ti-inner:hover{border-color:#b8943d73!important;box-shadow:0 15px 35px #b8943d24!important;transform:translateY(-4px)!important}.ti-widget .ti-name{font-family:var(--font-display)!important;color:var(--color-text-bright)!important;font-weight:700!important;letter-spacing:.5px!important}.ti-widget .ti-stars .ti-star{filter:sepia(1) saturate(1.8) hue-rotate(5deg) brightness(.95)!important}.ti-widget .ti-verified-review{color:var(--color-primary-dark)!important}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#080808}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--color-primary),var(--color-primary-dark));border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light)}.why-choose-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:3.5rem}.why-card{background:var(--color-bg-card);border:1px solid rgba(197,160,89,.12);border-radius:20px;padding:2.25rem;text-align:center;transition:var(--transition-smooth);box-shadow:var(--shadow-card)}.why-card:hover{transform:translateY(-6px);border-color:#b8943d73;box-shadow:0 15px 35px #b8943d1f}.why-icon{width:50px;height:50px;background:var(--color-bg-dark);border:1px solid rgba(213,179,92,.25);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--color-primary-light);margin-bottom:1.5rem;transition:var(--transition-smooth)}.why-icon svg{transition:var(--transition-quick)}.why-card:hover .why-icon{background:var(--color-primary);color:#fff;border-color:var(--color-primary-light);transform:scale(1.1) rotate(360deg);box-shadow:0 0 15px #d5b35c4d}.why-card h3{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--color-text-bright);margin-bottom:.75rem}.why-card p{font-size:.9rem;line-height:1.6;color:var(--color-text-main)}@media(max-width:991px){.why-choose-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:550px){.why-choose-grid{grid-template-columns:1fr;gap:1.5rem}}.theme-toggle{background:none;border:none;color:var(--color-text-main);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--transition-quick);margin-left:1rem}.theme-toggle:hover{background:var(--color-bg-surface);color:var(--color-primary)}.theme-toggle svg{width:20px;height:20px;transition:var(--transition-quick)}body[data-theme=dark] .theme-toggle{color:var(--color-primary)}body[data-theme=dark] .theme-toggle:hover{background:#d5b35c1a}.parallax{will-change:transform}.hotspot-wrapper{position:relative;width:100%;max-width:1000px;margin:0 auto;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-premium)}.hotspot-image{display:block;width:100%;height:auto}.hotspot-point{position:absolute;width:24px;height:24px;background-color:var(--color-primary);border-radius:50%;transform:translate(-50%,-50%);cursor:pointer;z-index:10;box-shadow:0 0 #d5b35cb3;animation:pulse-gold 2s infinite;transition:background-color .3s}.hotspot-point:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;background-color:#fff;border-radius:50%;transform:translate(-50%,-50%)}.hotspot-point:hover{background-color:var(--color-primary-light);animation:none}@keyframes pulse-gold{0%{box-shadow:0 0 #d5b35cb3}70%{box-shadow:0 0 0 20px #d5b35c00}to{box-shadow:0 0 #d5b35c00}}.hotspot-tooltip{position:absolute;top:-10px;left:50%;transform:translate(-50%,-100%) translateY(10px);background:#050505;color:#fff;padding:12px 20px;border-radius:8px;border:1px solid var(--color-primary);font-size:.9rem;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 10px 30px #0000004d;pointer-events:none}.hotspot-tooltip:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background:#050505;border-right:1px solid var(--color-primary);border-bottom:1px solid var(--color-primary)}.hotspot-point:hover .hotspot-tooltip{opacity:1;visibility:visible;transform:translate(-50%,-100%) translateY(0)}@media(max-width:768px){.hotspot-tooltip{white-space:normal;width:max-content;max-width:200px;text-align:center}}.legal-link{color:var(--color-primary);text-decoration:none;transition:var(--transition-quick)}.legal-link:hover{color:#fff;text-decoration:underline}.legal-modal{display:none;position:fixed;z-index:10000;left:0;top:0;width:100%;height:100%;background-color:#050505e6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);overflow:auto}.legal-modal-content{background-color:var(--color-bg-surface);margin:10% auto;padding:3rem;border:1px solid rgba(255,255,255,.1);width:90%;max-width:800px;border-radius:12px;position:relative;box-shadow:0 10px 40px #00000080;animation:modalFadeIn .3s ease-out forwards}.legal-close{color:#aaa;position:absolute;top:20px;right:25px;font-size:28px;font-weight:700;cursor:pointer;transition:color .2s}.legal-close:hover,.legal-close:focus{color:var(--color-primary);text-decoration:none}.legal-modal-content h2{color:var(--color-primary);margin-bottom:2rem;font-size:2rem}.legal-text h3{color:var(--color-text-main);margin-top:1.5rem;margin-bottom:.5rem;font-size:1.2rem}.legal-text p{color:var(--color-text-muted);line-height:1.6;margin-bottom:1rem}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}
