.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;padding:15px 24px;font-weight:700;font-size:12px;line-height:1.8;min-height:48px;border:1px solid var(--gold);color:var(--navy);transition:background .25s,color .25s,transform .25s}.button svg{width:20px;height:20px}.button:hover{transform:translateY(-2px)}.button.gold,.header-cta{background:var(--gold);color:var(--deep)}.button.gold:hover,.header-cta:hover{background:var(--gold-light)}.button.outline{border-color:#ffffff70;color:white;background:transparent}.button.outline:hover{background:#ffffff12}.button.navy{background:var(--navy);color:white;border-color:var(--navy)}.button.navy:hover{background:var(--deep)}.contact-form{background:white;border:1px solid var(--line);padding:35px}.contact-form label{display:block;font-size:12px;font-weight:600;margin-bottom:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-form select{display:block;width:100%;border:0;border-bottom:1px solid #d8e0e7;background:var(--paper);padding:11px 13px;margin-top:7px;color:var(--navy);font-size:12px;border-radius:0}.contact-form textarea{resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#8d99a4}.contact-form .consent{display:flex;gap:10px;align-items:flex-start;font-size:10px;font-weight:400;line-height:1.9;margin:20px 0}.consent input{margin:3px 0 0;accent-color:var(--navy)}.consent a{text-decoration:underline}.form-status{font-size:12px;margin-top:12px}.form-status.error{color:#a12c2c}.form-status.success{color:#22613f}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.comparison{position:absolute;inset-inline-end:0;top:30px;width:410px;padding:10px;background:#0b1b2b80;border:1px solid #ffffff30}.compare-view{position:relative;height:270px;overflow:hidden;direction:ltr}.compare-after,.compare-before{position:absolute;inset:0;background-size:cover;background-position:center}.compare-after{background-color:#ebe6da;background-image:repeating-linear-gradient(90deg,transparent 0 32px,#5e696e 33px 50px,transparent 51px 70px),linear-gradient(0deg,#5b7160 0 16%,transparent 16% 30%,#e5dccb 30% 36%,transparent 36% 60%,#e5dccb 60% 67%,transparent 67%)}.compare-before{clip-path:inset(0 calc(100% - var(--split)) 0 0);background-color:#a5a8a6;background-image:repeating-linear-gradient(90deg,transparent 0 34px,#555d5f 35px 48px,transparent 49px 70px),repeating-linear-gradient(0deg,transparent 0 58px,#6e7679 59px 66px,transparent 67px 82px)}.has-photo{background-size:cover}.compare-label{position:absolute;top:10px;background:#0b1b2bc9;padding:2px 10px;color:white;font-size:10px;z-index:1}.compare-label.before{left:10px}.compare-label.after{right:10px}.compare-handle{position:absolute;left:var(--split);top:0;bottom:0;width:2px;background:white;display:flex;align-items:center;justify-content:center;color:var(--navy);font-size:0;pointer-events:none;z-index:2}.compare-handle:after{content:'↔';background:white;min-width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:20px}.compare-view input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:ew-resize;margin:0;z-index:3}.compare-view:focus-within{outline:3px solid var(--gold);outline-offset:-3px}.comparison small{display:block;color:#d5dce2;font-size:9px;margin-top:7px;text-align:center}.hero-slide[data-slide="1"] h1{max-width:680px}.hero-slide[data-slide="1"] .hero-content>p{max-width:500px}@media(max-width:1200px){.comparison{width:330px;top:50px}.compare-view{height:220px}.hero-slide[data-slide="1"] h1{max-width:580px;font-size:44px}}@media(max-width:1000px){.comparison{width:280px;top:220px}.compare-view{height:170px}.hero-slide[data-slide="1"] h1{font-size:40px}}@media(max-width:760px){.contact-form{padding:25px}.form-row{grid-template-columns:1fr;gap:0}.comparison{position:relative;top:auto;inset:auto;width:100%;max-width:400px;margin-top:20px}.compare-view{height:180px}.hero-slide[data-slide="1"] .hero-content{top:16%}.hero-slide[data-slide="1"] h1{font-size:32px}.hero-slide[data-slide="1"] .hero-content>p{font-size:12px;line-height:1.8;margin-top:10px}.hero-slide[data-slide="1"] .hero-actions{margin-top:15px}.hero-slide[data-slide="1"] h1 em{margin-top:0}.hero-slide[data-slide="1"] .eyebrow{margin-bottom:8px}.button{font-size:12px}}
.honeypot{position:absolute!important;left:auto!important;right:auto!important;width:1px!important;height:1px!important;padding:0!important;clip-path:inset(50%);overflow:hidden;pointer-events:none}


/* Hero-only cinematic motion. Layers never participate in document layout. */
.hero{isolation:isolate;perspective:none}
.hero-slide{transform:none;transition:none;opacity:0;visibility:hidden;z-index:0;overflow:hidden}
.hero-slide.active,.hero-slide.leaving{visibility:visible;opacity:1;transform:none}
.hero-slide.active{z-index:2}.hero-slide.leaving{z-index:1;pointer-events:none}
.hero-slide .hero-image{transform:scale(1.015);transform-origin:50% 50%;transition:none;animation:none}
.hero-slide.active .hero-image{animation:hero-ken-burns 7.2s linear both}
.hero-slide.leaving .hero-image{animation:hero-ken-burns 7.2s linear both;animation-play-state:paused}
.hero-slide .hero-content,.hero-slide.active .hero-content{animation:none;transform:none}
@keyframes hero-ken-burns{from{transform:scale(1.015) translate3d(0,0,0)}to{transform:scale(1.065) translate3d(-.45%,.3%,0)}}
.hero.motion-paused .hero-slide.active .hero-image{animation-play-state:paused}
.hero-bottom{z-index:4}
.hero-switches button{position:relative}
.hero-switches .slide-progress{position:absolute;inset-inline-start:0;top:-1px;width:100%;height:2px;background:var(--gold-light);transform:scaleX(0);transform-origin:right;pointer-events:none}
.tf-ltr .slide-progress{transform-origin:left}
.hero-autoplay{flex-shrink:0;background:#0b1b2b55;border:1px solid #ffffff45;border-radius:50%;color:white;width:40px;height:40px;font:16px Arial,sans-serif;display:grid;place-items:center;margin-inline-start:20px}
.hero-slide[data-slide="2"] .hero-image{object-position:50% 50%}
@media(max-width:760px){
 .hero-autoplay{width:34px;height:34px;margin-inline-start:14px}
 .hero-switches{width:auto;flex:1}
 .hero-slide.active .hero-image,.hero-slide.leaving .hero-image{animation-name:hero-ken-burns-mobile}
 @keyframes hero-ken-burns-mobile{from{transform:scale(1.01)}to{transform:scale(1.035)}}
 .hero-slide[data-slide="2"] .hero-image{object-position:52% 50%}
}
html.motion-reduced{
 .hero-slide .hero-image,.hero-slide.active .hero-image,.hero-slide.leaving .hero-image{animation:none;transform:none}
 .hero-slide .hero-content{animation:none;transform:none}
 .slide-progress{display:none}
}
.hero.hero-reduced-motion .hero-slide .hero-image{animation:none;transform:none}
.hero.hero-reduced-motion .slide-progress{display:none}

/* Official identity: fixed image box keeps the scroll swap stable. */
.brand-identity{position:relative;display:block;width:210px;height:67px;flex-shrink:0}
.brand-identity img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .3s ease}
.brand-identity .brand-white{opacity:1}
.brand-identity .brand-color{opacity:0}
.site-header.scrolled .brand-white,.site-header.solid .brand-white{opacity:0}
.site-header.scrolled .brand-color,.site-header.solid .brand-color{opacity:1}
.whatsapp{width:56px;height:56px;border-radius:50%;padding:0;justify-content:center;gap:0;background:#25d366;border:0;isolation:isolate;box-shadow:0 4px 20px #075e5440}
.whatsapp svg{width:29px;height:29px}
.whatsapp::before,.whatsapp::after{content:"";position:absolute;inset:0;border:2px solid #25d366;border-radius:50%;pointer-events:none;z-index:-1;animation:whatsapp-pulse 2.8s ease-out infinite}
.whatsapp::after{animation-delay:1.4s}
.whatsapp:hover{background:#128c7e}
.whatsapp:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@keyframes whatsapp-pulse{0%{transform:scale(1);opacity:.55}85%,100%{transform:scale(1.7);opacity:0}}
@media(max-width:760px){.brand-identity{width:190px;height:60px}.whatsapp{width:52px;height:52px;padding:0}}
html.motion-reduced{.whatsapp::before,.whatsapp::after{animation:none;display:none}.brand-identity img{transition:none}}

.footer-brand-logo{width:210px;height:auto;display:block;object-fit:contain}

/* Service archive: balanced rows, independent cards and a consistent action row. */
.post-type-archive-service .services-section{background:var(--paper)}
.post-type-archive-service .services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;background:transparent;border:0}
.post-type-archive-service .service-card{display:flex;flex-direction:column;min-height:330px;padding:34px;border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 18px #0e2a4705;transition:opacity .75s ease,border-color .3s ease,box-shadow .3s ease,background .3s ease,transform .4s cubic-bezier(.22,.61,.36,1)}
.post-type-archive-service .service-icon{display:grid;place-items:center;width:64px;height:64px;border:1px solid #c3995933;border-radius:12px;background:#c399590d;margin-bottom:24px;color:#a87836}
.post-type-archive-service .service-icon svg{width:32px;height:32px}
.post-type-archive-service .service-index{top:38px;inset-inline-end:34px;font-size:22px;line-height:1;color:#b2bdc8}
.post-type-archive-service .service-card h3{font-size:21px;line-height:1.7;margin:0 0 12px}
.post-type-archive-service .service-card p{max-width:none;font-size:14px;line-height:2;margin:0;color:var(--slate);flex:1}
.post-type-archive-service .service-more{border-top:1px solid var(--line);padding-top:18px;margin-top:26px;font-size:12px;min-height:48px}
.post-type-archive-service .service-more svg{width:30px;height:30px;padding:6px;border-radius:50%;background:var(--paper);transition:background .3s ease,transform .3s ease}
.post-type-archive-service .service-card:hover{background:white;color:var(--navy);border-color:#c3995970;box-shadow:0 12px 30px #0e2a4710;transform:translateY(-4px)}
.post-type-archive-service .service-card:hover p{color:var(--slate)}
.post-type-archive-service .service-card:hover .service-icon{color:#a87836}
.post-type-archive-service .service-card:hover .service-more svg{background:#c3995920}
.post-type-archive-service .service-card:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@media(max-width:760px){
 .post-type-archive-service .services-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 .post-type-archive-service .service-card{min-height:300px;padding:26px}
 .post-type-archive-service .service-index{top:32px;inset-inline-end:26px}
 .post-type-archive-service .service-card h3{font-size:19px}
}

.motion-smooth .reveal{transition:opacity .75s cubic-bezier(.22,.61,.36,1),transform .75s cubic-bezier(.22,.61,.36,1)}.motion-smooth .whatsapp{transition:background .3s ease,transform .3s cubic-bezier(.22,.61,.36,1)}.motion-smooth .whatsapp:hover{transform:translateY(-3px)}


.motion-smooth .post-type-archive-service .service-card{transition:opacity .75s ease,border-color .3s ease,box-shadow .3s ease,background .3s ease,transform .4s cubic-bezier(.22,.61,.36,1)}
