:root{--c-primary: #6B7280;--c-secondary: #78716C;--c-accent: #0891B2;--c-accent-deep: #0E7490;--c-bg: #F5F5F0;--c-bg-warm: #EDEAE0;--c-text: #0F172A;--c-text-soft: #475569;--c-line: rgba(15, 23, 42, .08);--font-heading: "Lora", Georgia, "Times New Roman", serif;--font-body: "Raleway", system-ui, -apple-system, "Segoe UI", sans-serif;--container: 1180px;--radius-sm: 6px;--radius: 14px;--radius-lg: 22px;--shadow-sm: 0 2px 10px rgba(15, 23, 42, .06);--shadow-md: 0 12px 40px rgba(15, 23, 42, .08);--shadow-lg: 0 30px 80px rgba(15, 23, 42, .18)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-weight:400;font-size:16px;line-height:1.65;color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0;margin:0}button{font-family:inherit;cursor:pointer;border:0;background:none}blockquote{margin:0}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;opacity:.5;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.06  0 0 0 0 0.09  0 0 0 0 0.16  0 0 0 0.05 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:600;letter-spacing:-.01em;line-height:1.15;color:var(--c-text);margin:0}h1{font-size:clamp(2.4rem,5.4vw,4.4rem);letter-spacing:-.02em}h2{font-size:clamp(1.9rem,3.4vw,2.6rem)}h3{font-size:1.25rem;font-weight:600}p{margin:0 0 1em;color:var(--c-text-soft)}.eyebrow,.section-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--c-accent-deep);margin-bottom:1rem}.section-eyebrow:before{content:"";width:28px;height:1px;background:currentColor;display:inline-block}.section-title{max-width:22ch}.section-lede{max-width:60ch;font-size:1.05rem;color:var(--c-text-soft)}.section-head{margin-bottom:3rem;max-width:760px}.container{width:min(var(--container),100% - 2.5rem);margin-inline:auto;position:relative;z-index:1}.section{padding:6rem 0;position:relative;z-index:1}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;padding:.85rem 0;transition:background .3s ease,box-shadow .3s ease,padding .3s ease;background:transparent}.site-header.is-scrolled{background:#f5f5f0eb;backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);box-shadow:var(--shadow-sm);padding:.55rem 0}.header-inner{display:flex;align-items:center;gap:1.5rem;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:.8rem;color:var(--c-text)}.brand-mark{color:var(--c-accent);display:inline-flex}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-name{font-family:var(--font-heading);font-weight:600;font-size:1.15rem;letter-spacing:.06em}.brand-sub{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--c-text-soft);margin-top:.15rem}.primary-nav ul{display:flex;gap:1.8rem}.primary-nav a{font-size:.92rem;font-weight:500;color:var(--c-text);position:relative;padding:.3rem 0}.primary-nav a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--c-accent);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.primary-nav a:hover:after,.primary-nav a:focus-visible:after{transform:scaleX(1)}.header-cta{display:inline-flex;align-items:center;gap:.5rem;background:var(--c-accent);color:#fff;padding:.7rem 1.1rem;border-radius:999px;font-weight:600;font-size:.9rem;letter-spacing:.02em;transition:background .2s ease,transform .2s ease}.header-cta:hover{background:var(--c-accent-deep);transform:translateY(-1px)}.nav-toggle{display:none;width:42px;height:42px;border-radius:50%;align-items:center;justify-content:center;flex-direction:column;gap:4px;background:#0f172a0f}.nav-toggle span{display:block;width:18px;height:1.6px;background:var(--c-text);border-radius:2px;transition:transform .25s ease,opacity .25s ease}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(5.6px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-5.6px) rotate(-45deg)}.mobile-nav{position:fixed;top:68px;left:0;right:0;background:var(--c-bg);padding:1.4rem 1.5rem 2rem;border-top:1px solid var(--c-line);box-shadow:var(--shadow-md);transform:translateY(-110%);transition:transform .35s ease;z-index:49}.mobile-nav[data-open=true]{transform:translateY(0)}.mobile-nav ul{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.2rem}.mobile-nav a{display:block;padding:.75rem 0;font-family:var(--font-heading);font-size:1.2rem;border-bottom:1px solid var(--c-line)}.mobile-nav-actions{display:flex;flex-direction:column;gap:.6rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.85rem 1.4rem;border-radius:999px;font-family:var(--font-body);font-weight:600;font-size:.95rem;letter-spacing:.01em;transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease,border-color .2s ease;border:1px solid transparent;text-align:center;line-height:1.2}.btn-lg{padding:1rem 1.6rem;font-size:1rem}.btn-primary{background:var(--c-accent);color:#fff;box-shadow:0 8px 24px #0891b247}.btn-primary:hover{background:var(--c-accent-deep);transform:translateY(-2px);box-shadow:0 12px 30px #0891b259}.btn-ghost{background:#f5f5f01a;color:#fff;border-color:#f5f5f073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.btn-ghost:hover{background:#f5f5f033;border-color:#f5f5f0cc}.btn-whatsapp{background:#25d366;color:#fff;box-shadow:0 8px 24px #25d36647}.btn-whatsapp:hover{background:#1ebe5d;transform:translateY(-2px);box-shadow:0 12px 30px #25d36659}.hero{position:relative;min-height:100vh;padding:9rem 0 5rem;display:flex;align-items:center;overflow:hidden;isolation:isolate}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background-image:url(/photo-1.jpg);background-size:cover;background-position:center;transform:scale(1.04);animation:heroZoom 22s ease-out forwards}@keyframes heroZoom{to{transform:scale(1)}}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(circle at 75% 30%,rgba(8,145,178,.18),transparent 60%),linear-gradient(180deg,#0f172a8c,#0f172ab3 60%,#0f172acc)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:4rem;align-items:center}.hero-copy{color:#f5f5f0}.hero-copy h1{color:#fff}.hero-copy h1 em{font-style:italic;font-weight:400;color:#ffffffb8;font-size:.78em}.hero-copy .eyebrow{color:#7dd3fc}.hero-sub{max-width:52ch;font-size:1.08rem;color:#f5f5f0d9;margin-bottom:2rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-bottom:2.5rem}.hero-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;padding-top:1.5rem;border-top:1px solid rgba(245,245,240,.18);max-width:540px}.hero-trust li{display:flex;flex-direction:column}.hero-trust strong{font-family:var(--font-heading);font-size:1.4rem;color:#fff;font-weight:600}.hero-trust span{font-size:.82rem;color:#f5f5f0b8}.hero-card{align-self:stretch;display:flex;align-items:stretch}.hero-card-inner{background:#f5f5f0f5;color:var(--c-text);border-radius:var(--radius-lg);padding:1.8rem;width:100%;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:1rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:relative}.hero-card-inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;border:1px solid rgba(15,23,42,.05)}.hero-card-inner header{display:flex;align-items:center;gap:.6rem}.dot{width:9px;height:9px;border-radius:50%;background:var(--c-accent);box-shadow:0 0 0 4px #0891b226}.hero-card-eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--c-secondary);font-weight:600}.hours-list{display:flex;flex-direction:column;gap:.6rem}.hours-list li{display:flex;justify-content:space-between;font-size:.92rem;color:var(--c-text);border-bottom:1px dashed var(--c-line);padding-bottom:.5rem}.hours-list li:last-child{border-bottom:0;padding-bottom:0}.hours-list li span:first-child{color:var(--c-secondary);font-weight:500}.hours-list li span:last-child{font-weight:600}.hero-card-inner hr{border:0;border-top:1px solid var(--c-line);margin:.2rem 0}.hero-card-quote{font-family:var(--font-heading);font-style:italic;color:var(--c-text);font-size:.98rem;line-height:1.5;margin:0}.hero-card-cta{margin-top:auto;color:var(--c-accent-deep);font-weight:600;font-size:.92rem}.hero-card-cta:hover{text-decoration:underline}.scroll-cue{position:absolute;bottom:1.6rem;left:50%;transform:translate(-50%);width:24px;height:40px;border-radius:12px;border:1px solid rgba(245,245,240,.4);display:flex;justify-content:center;padding-top:6px}.scroll-cue span{width:3px;height:8px;border-radius:2px;background:#f5f5f0d9;animation:scrollDot 1.6s ease-in-out infinite}@keyframes scrollDot{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(10px);opacity:.3}}.about{background:var(--c-bg)}.about-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:4rem;align-items:start}.about-copy h2{margin-bottom:1.2rem}.about-copy p{font-size:1.02rem;line-height:1.8}.about-pulled{margin-top:1.4rem;padding-left:1.2rem;border-left:3px solid var(--c-accent);font-family:var(--font-heading);font-style:italic;color:var(--c-text);font-size:1.15rem;line-height:1.55}.about-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;position:sticky;top:110px}.stat-card{background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);padding:1.4rem;display:flex;flex-direction:column;gap:.4rem}.stat-card-quiet{background:var(--c-bg-warm);border-color:transparent}.stat-value{font-family:var(--font-heading);font-size:2rem;font-weight:600;color:var(--c-text);line-height:1}.stat-value small{font-size:1rem;font-weight:400;color:var(--c-secondary);margin-left:.1rem}.stat-label{font-size:.85rem;color:var(--c-text-soft);line-height:1.5}.services{background:linear-gradient(180deg,var(--c-bg) 0%,#EFEDE3 100%);position:relative}.services:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 10% 0%,rgba(8,145,178,.06),transparent 40%),radial-gradient(circle at 90% 100%,rgba(120,113,108,.08),transparent 45%);pointer-events:none}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.service-card{background:#fff;border-radius:var(--radius);padding:1.8rem;border:1px solid var(--c-line);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;position:relative;overflow:hidden}.service-card:after{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--c-accent);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:#0891b240}.service-card:hover:after{transform:scaleX(1)}.service-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:14px;background:#0891b214;color:var(--c-accent-deep);margin-bottom:1.2rem}.service-icon svg{width:30px;height:30px}.service-card h3{margin-bottom:.5rem}.service-card p{font-size:.95rem;margin-bottom:1rem}.service-meta{display:inline-block;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--c-secondary);font-weight:600}.services-foot{margin-top:2.5rem;text-align:center;font-family:var(--font-heading);font-style:italic;font-size:1.08rem;color:var(--c-text)}.gallery{background:var(--c-bg)}.gallery-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:220px;gap:1rem}.gallery-tile{margin:0;border-radius:var(--radius);overflow:hidden;position:relative;grid-column:span 2;grid-row:span 1;box-shadow:var(--shadow-sm);background:var(--c-bg-warm)}.gallery-tile-wide{grid-column:span 4;grid-row:span 2}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.gallery-tile:hover img{transform:scale(1.05)}.gallery-tile figcaption{position:absolute;left:1rem;bottom:1rem;background:#0f172ab3;color:#f5f5f0;padding:.4rem .75rem;border-radius:999px;font-size:.8rem;letter-spacing:.04em;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.testimonials{background:var(--c-bg-warm);position:relative;overflow:hidden}.testimonials:before{content:"";position:absolute;top:-120px;right:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(8,145,178,.1),transparent 70%);pointer-events:none}.testimonials-inner,.carousel{position:relative}.carousel-viewport{overflow:hidden;border-radius:var(--radius-lg)}.carousel-track{display:flex;transition:transform .55s cubic-bezier(.22,.61,.36,1);will-change:transform}.testimonial-slide{flex:0 0 100%;min-width:0;padding:.5rem}.testimonial-card{background:#fff;border-radius:var(--radius-lg);padding:2.4rem clamp(1.5rem,4vw,3rem);max-width:760px;margin-inline:auto;box-shadow:var(--shadow-md);border:1px solid rgba(15,23,42,.05);position:relative}.quote-mark{color:#0891b240;margin-bottom:.8rem}.testimonial-card blockquote{font-family:var(--font-heading);font-size:clamp(1.05rem,1.8vw,1.32rem);line-height:1.55;color:var(--c-text);margin-bottom:1.6rem}.testimonial-foot{display:flex;align-items:center;gap:1rem;padding-top:1.4rem;border-top:1px solid var(--c-line)}.testimonial-foot .avatar{width:48px;height:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--c-accent),var(--c-primary));color:#fff;font-family:var(--font-heading);font-weight:600;font-size:1.2rem;flex-shrink:0}.testimonial-foot strong{display:block;font-family:var(--font-heading);color:var(--c-text);font-weight:600}.testimonial-foot span{display:block;font-size:.82rem;color:var(--c-text-soft);letter-spacing:.02em}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:2rem}.carousel-btn{width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid var(--c-line);display:inline-flex;align-items:center;justify-content:center;color:var(--c-text);transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.carousel-btn:hover,.carousel-btn:focus-visible{background:var(--c-accent);border-color:var(--c-accent);color:#fff;transform:translateY(-1px);outline:none}.carousel-status{font-size:.88rem;color:var(--c-text-soft);letter-spacing:.04em;font-variant-numeric:tabular-nums;min-width:9ch;text-align:center}.carousel-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1.2rem}.carousel-dot{width:8px;height:8px;border-radius:50%;background:#0f172a26;border:0;padding:0;cursor:pointer;transition:background .2s ease,transform .2s ease,width .2s ease}.carousel-dot[aria-current=true]{background:var(--c-accent);width:24px;border-radius:4px}.contact{background:var(--c-bg)}.contact-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:4rem;align-items:start}.contact-copy h2{margin-bottom:1.2rem}.contact-copy p{font-size:1.02rem;line-height:1.8;margin-bottom:2rem}.contact-actions{display:flex;flex-wrap:wrap;gap:.85rem}.contact-card{background:linear-gradient(170deg,#1e293b,#0f172a);color:#f5f5f0;border-radius:var(--radius-lg);padding:2rem;position:relative;overflow:hidden}.contact-card:after{content:"";position:absolute;bottom:-60px;right:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(8,145,178,.35),transparent 70%);pointer-events:none}.contact-card h3{color:#fff;margin-bottom:1.4rem;font-family:var(--font-heading);font-size:1.4rem}.contact-row{display:flex;gap:1rem;padding:1rem 0;border-top:1px solid rgba(245,245,240,.1);position:relative;z-index:1}.contact-row:first-of-type{border-top:0;padding-top:0}.contact-row-icon{width:38px;height:38px;flex-shrink:0;border-radius:10px;background:#0891b22e;color:#7dd3fc;display:inline-flex;align-items:center;justify-content:center}.contact-row strong{display:block;font-family:var(--font-heading);font-weight:600;color:#fff;font-size:1rem;margin-bottom:.25rem}.contact-row p{margin:0;color:#f5f5f0c7;font-size:.92rem;line-height:1.55}.contact-row a{color:#7dd3fc;font-weight:500;border-bottom:1px dashed rgba(125,211,252,.4)}.contact-row a:hover{color:#fff;border-bottom-color:#fff}.site-footer{background:#0f172a;color:#f5f5f0bf;padding-top:4rem;position:relative;z-index:1}.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem;padding-bottom:3rem}.footer-brand{display:flex;align-items:flex-start;gap:.9rem}.footer-brand .brand-mark{color:var(--c-accent);flex-shrink:0}.footer-brand strong{display:block;color:#fff;font-family:var(--font-heading);font-size:1.15rem;letter-spacing:.04em;margin-bottom:.25rem}.footer-brand p{margin:0;font-size:.88rem;color:#f5f5f099}.footer-col span{display:block;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:#f5f5f08c;margin-bottom:.8rem;font-weight:600}.footer-col p{margin:0;font-size:.9rem;line-height:1.7;color:#f5f5f0c7}.footer-col a{color:#f5f5f0d9;transition:color .2s ease}.footer-col a:hover{color:var(--c-accent)}.footer-base{border-top:1px solid rgba(245,245,240,.08);padding:1.2rem 0}.footer-base-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.footer-base p{margin:0;font-size:.82rem;color:#f5f5f08c}.footer-base .credits{font-size:.74rem;color:#f5f5f073}.fab-whatsapp{position:fixed;right:1.25rem;bottom:1.25rem;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 30px #25d36666;z-index:60;transition:transform .25s ease,background .25s ease}.fab-whatsapp:hover{background:#1ebe5d;transform:scale(1.05)}.fab-whatsapp:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid rgba(37,211,102,.4);animation:fabPulse 2s ease-out infinite;pointer-events:none}@keyframes fabPulse{0%{transform:scale(.95);opacity:.8}to{transform:scale(1.25);opacity:0}}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.services-grid .service-card.reveal.is-visible{transition-delay:calc(var(--i, 0) * 60ms)}@media(max-width:960px){.section{padding:4.5rem 0}.hero{padding:7rem 0 4rem}.hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:2.5rem}.hero-card{order:2}.hero-trust{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.about-stats{position:static;grid-template-columns:1fr 1fr}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px}.gallery-tile,.gallery-tile-wide{grid-column:span 2;grid-row:span 1}.footer-inner{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2}}@media(max-width:720px){.primary-nav,.header-cta{display:none}.nav-toggle{display:inline-flex}.hero{min-height:auto}.hero-trust{grid-template-columns:1fr 1fr}.hero-trust li:nth-child(3){grid-column:span 2}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.services-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:240px}.gallery-tile,.gallery-tile-wide{grid-column:span 1;grid-row:span 1}.about-stats{grid-template-columns:1fr}.testimonial-card{padding:1.8rem 1.4rem}.footer-inner{grid-template-columns:1fr;gap:1.8rem}.footer-brand{grid-column:span 1}.footer-base-inner{flex-direction:column;align-items:flex-start;text-align:left}.carousel-btn{width:40px;height:40px}}@media(max-width:420px){.brand-sub{display:none}.hero-card-inner{padding:1.4rem}.fab-whatsapp{width:50px;height:50px;right:1rem;bottom:1rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}html{scroll-behavior:auto}}
