@charset "UTF-8";
:root{--ink:#181a19;--orange-hover:#ff804f;--focus:#cc4d20;--ink-hover:#343934;--muted:#626561;--orange:#ff6b35;--orange-dark:#a83a16;--paper:#f4f5f2;--line:#dedfda;--white:#fff;--container:1280px;--radius:4px;--header-height:88px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-synthesis:none;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:108px}
*{box-sizing:border-box}body{margin:0;background:white;font-size:1rem;line-height:1.65}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.1;font-weight:700}h2{font-size:clamp(2.1rem,4vw,3.7rem);letter-spacing:-.055em}h3{font-size:1.3rem;letter-spacing:-.035em}p{color:var(--muted)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}button{color:inherit}img{max-width:100%;display:block}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}button{border:0}ul,ol{padding:0;list-style:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,pre:focus-visible{outline:3px solid var(--focus);outline-offset:5px}[hidden]{display:none!important}.container{width:min(calc(100% - 96px),var(--container));margin-inline:auto}.section{padding:105px 0}.icon{width:22px;height:22px;flex-shrink:0}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.eyebrow{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:24px}.eyebrow>span{color:var(--orange-dark)}.button{min-height:52px;padding:14px 23px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:var(--radius);font-size:.875rem;font-weight:700;line-height:1.4;transition:background .2s,transform .2s,box-shadow .2s;border:1px solid transparent}.button:hover{transform:translateY(-2px)}.button-orange{background:var(--orange);color:var(--ink)}.button-orange:hover{background:var(--orange-hover)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:var(--ink-hover)}.button-outline{background:transparent;color:white;border-color:#ffffff65}.button-outline:hover{background:#ffffff10;border-color:white}.button-soft{background:var(--paper);color:var(--ink);border-color:var(--line)}.text-link{display:inline-block;background:none;padding:0 0 4px;font-weight:700;font-size:.875rem;border-bottom:1px solid currentColor;line-height:1.5}.text-link:hover{color:var(--orange-dark)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-100px;z-index:100;background:var(--ink);color:white;padding:12px 20px}.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:20;background:white;border-bottom:1px solid var(--line)}.header-inner{height:var(--header-height);display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand-mark{width:33px;height:35px;border:7px solid var(--orange);border-bottom:0;position:relative;display:block}.brand-mark:after{content:"";position:absolute;inset:8px 6px 0;border-left:5px solid var(--orange)}.brand strong{display:block;font-size:2rem;line-height:1.05;letter-spacing:-.08em}.brand small{font-size:.75rem;letter-spacing:.015em;display:block;margin-top:5px;line-height:1.2;color:var(--muted)}.main-nav{display:flex;gap:26px;align-items:center}.main-nav>a:not(.button){font-size:.875rem;color:#585b57;transition:color .2s}.main-nav>a:not(.button):hover,.main-nav>a.is-current{color:var(--orange-dark)}.header-cta{margin-left:10px;min-height:46px;padding:12px 18px}.menu-toggle{display:none}
.hero{height:min(760px,calc(100svh - var(--header-height)));min-height:650px;background:var(--ink);position:relative;isolation:isolate;overflow:hidden;color:white}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(15,20,18,.9) 0%,rgba(15,20,18,.78) 30%,rgba(15,20,18,.4) 61%,rgba(15,20,18,.05) 100%),linear-gradient(0deg,#141a18b0 0%,transparent 24%)}.hero-content{height:100%;display:flex;flex-direction:column;justify-content:center;padding-bottom:28px}.hero-eyebrow{color:#e4e6df;font-size:.75rem;letter-spacing:.16em;margin-bottom:25px}.hero-eyebrow:before{content:"";width:28px;height:2px;background:var(--orange)}.hero h1{font-size:clamp(3.5rem,5.9vw,5.4rem);line-height:1.025;letter-spacing:-.06em;max-width:790px}.hero h1 span{color:var(--orange)}.hero-description{margin-top:27px;max-width:485px;color:#e0e2dc;font-size:1rem;line-height:1.75}.hero-actions{display:flex;gap:14px;margin-top:32px}.hero-location{color:#e0e2dc;display:flex;gap:8px;align-items:center;font-size:.8rem;margin-top:28px}.hero-location .icon{width:16px;height:16px}.hero-bottom{position:absolute;bottom:22px;left:0;right:0;display:flex;justify-content:space-between;gap:20px;color:#e4e6df;font-size:.75rem;font-weight:700;letter-spacing:.14em}.hero-bottom>span:last-child{letter-spacing:.015em;font-weight:400}
.trust-strip{background:var(--paper);border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:29px 0;gap:20px}.trust-grid>div{display:flex;align-items:center;gap:10px;font-size:.8125rem;font-weight:700}.trust-grid>div:not(:first-child){border-left:1px solid var(--line);padding-left:26px}.trust-grid .icon{color:var(--orange-dark);width:19px;height:19px}
.section-heading{display:grid;grid-template-columns:1.35fr 1fr;align-items:end;gap:70px;margin-bottom:49px}.section-heading>p,.section-heading>div:last-child>p{max-width:395px;font-size:1rem;line-height:1.75}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:28px 25px 30px;min-height:295px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;display:flex;flex-direction:column;align-items:start;transition:background .2s}.service-card:hover{background:var(--paper)}.service-number{font-size:.75rem;letter-spacing:.12em;color:#73756f}.service-icon{position:absolute;top:28px;right:25px;width:32px;height:32px;stroke-width:1.35;color:#424640}.service-card h3{margin:45px 0 12px;font-size:1.25rem;line-height:1.25}.service-card p{font-size:.875rem;line-height:1.7;flex:1}.service-card a{font-size:.75rem;font-weight:700;margin-top:24px;border-bottom:1px solid var(--line);padding-bottom:3px}.service-card a:hover{border-color:var(--orange-dark);color:var(--orange-dark)}.service-featured,.service-featured:hover{background:var(--ink);color:white}.service-featured .service-icon{color:var(--orange)}.service-featured .service-number,.service-featured p{color:#b9beb7}.service-featured a{border-color:#505650}
.about{background:var(--paper)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:83px;align-items:center}.about-visual{height:580px;position:relative;overflow:hidden;border-radius:var(--radius)}.about-visual>img{width:100%;height:100%;object-fit:cover;object-position:45% center}.about-visual:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#111914b0)}.about-caption{position:absolute;bottom:35px;left:35px;z-index:1;color:white}.about-caption span{font-size:.75rem;letter-spacing:.14em}.about-caption p{color:white;font-size:1.9rem;line-height:1.15;font-weight:700;letter-spacing:-.04em;margin-top:12px}.about-copy h2{margin-bottom:27px;font-size:clamp(2rem,3.8vw,3.25rem)}.about-copy>p:not(.eyebrow){margin-bottom:18px;font-size:.9375rem}.check-list{margin:25px 0 31px}.check-list li{display:flex;align-items:center;gap:11px;font-size:.875rem;margin-top:12px;font-weight:700}.check-list .icon{color:var(--orange-dark);width:18px;height:18px}
.demo-note{font-size:.8125rem!important;line-height:1.65!important;color:var(--muted)}.section-heading .demo-note{margin-top:10px}.project-filters{display:flex;gap:8px;margin-bottom:27px;flex-wrap:wrap}.filter-button{padding:10px 18px;border-radius:3px;border:1px solid var(--line);background:white;font-size:.8125rem;min-height:44px}.filter-button:hover{border-color:var(--ink)}.filter-button.is-active{color:white;background:var(--ink);border-color:var(--ink)}.projects-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:23px;align-items:start}.project-open{width:100%;padding:0;background:var(--paper);overflow:hidden;position:relative;text-align:left;border-radius:var(--radius)}.project-open img{height:365px;width:100%;object-fit:cover;transition:transform .5s}.project-open:hover img{transform:scale(1.035)}.project-wide .project-open img{object-position:65% center}.project-image-label{position:absolute;top:14px;left:14px;padding:5px 8px;background:#fffffff0;color:var(--ink);font-size:.75rem;font-weight:700}.project-detail-button{position:absolute;bottom:17px;right:17px;color:white;background:var(--ink);padding:9px 13px;font-size:.75rem}.project-meta{padding:19px 0 0}.project-meta>span{font-size:.75rem;color:var(--muted)}.project-meta h3{font-size:1.1875rem;margin-top:7px;line-height:1.25}.projects-grid.is-filtered{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.why-us{background:var(--ink);color:white;padding:85px 0}.why-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:center}.why-us .eyebrow{color:var(--orange)}.why-us h2{font-size:clamp(2rem,4vw,3.6rem)}.why-grid>div>p:last-child{max-width:400px;color:#acb2aa;margin-top:26px;font-size:.9375rem}.why-items article{display:flex;gap:23px;padding:25px 0;border-bottom:1px solid #ffffff20}.why-items article:first-child{padding-top:0}.why-items article:last-child{border-bottom:0;padding-bottom:0}.why-items article>span{font-size:.75rem;color:var(--orange);padding-top:5px}.why-items h3{font-size:1.125rem;margin-bottom:11px}.why-items p{font-size:.875rem;color:#b9beb7;max-width:400px}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:20px 0 40px;position:relative}.process-grid li{border-top:1px solid var(--line);padding-top:25px}.step-number{font-size:2.7rem;letter-spacing:-.075em;font-weight:700;color:var(--orange-dark);line-height:1}.process-grid h3{font-size:1.125rem;margin-top:24px;margin-bottom:13px;line-height:1.3}.process-grid p{font-size:.875rem;line-height:1.7}.process-cta{border-top:1px solid var(--line);padding-top:26px;display:flex;align-items:center;justify-content:space-between;gap:25px}.process-cta p{font-size:1rem;color:var(--ink);font-weight:700}.testimonials{padding-bottom:85px}.testimonial-empty{background:var(--paper);padding:33px 40px;display:flex;gap:30px;border:1px solid var(--line)}.quote-icon{width:45px;height:45px;color:var(--orange-dark);flex-shrink:0;stroke-width:1.4}.testimonial-empty .eyebrow{margin-bottom:10px}.testimonial-empty h2{font-size:1.65rem;letter-spacing:-.04em;line-height:1.25}.testimonial-empty p:last-child{font-size:.875rem;margin-top:10px}
.quote-section{background:var(--paper)}.quote-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:95px;align-items:start}.quote-copy{padding-top:24px}.quote-copy h2{font-size:clamp(2.2rem,4.1vw,3.7rem);margin-bottom:28px}.orange-text{color:var(--orange-dark)}.quote-copy>p:not(.eyebrow){max-width:390px;font-size:.9375rem}.contact-details{display:grid;gap:24px;margin:40px 0;scroll-margin-top:140px}.contact-details>div{display:flex;gap:15px;align-items:start}.contact-details .icon{color:var(--orange-dark);margin-top:5px}.contact-details small{display:block;font-size:.75rem;color:var(--muted);margin-bottom:3px}.contact-details span{display:block;font-size:.9375rem;font-weight:700;overflow-wrap:anywhere}.contact-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.contact-demo-note{margin-top:22px;font-size:.75rem!important}.quote-form{background:white;padding:38px;border:1px solid var(--line);border-radius:var(--radius)}.form-heading{margin-bottom:25px}.form-heading h3{font-size:1.6rem}.form-heading p{font-size:.75rem;margin-top:8px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}.field-full{grid-column:1/-1}.field>label:not(.upload-zone),.field-label{display:block;font-size:.8125rem;font-weight:700;margin-bottom:8px;line-height:1.45}.field label span,.field-label span{font-weight:400;color:var(--muted)}.field input:not([type=file]),.field select,.field textarea{width:100%;min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:3px;background:white;min-height:47px;font-size:.875rem;line-height:1.5;color:var(--ink);transition:border .2s}.field input::placeholder,.field textarea::placeholder{color:#737770;opacity:1}.field textarea{resize:vertical;min-height:116px}.field input:hover,.field select:hover,.field textarea:hover{border-color:#9ca197}.field select{padding-right:25px}.upload-zone{padding:18px;border:1px dashed #aeb4a8;display:flex;gap:13px;align-items:center;border-radius:3px;cursor:pointer;position:relative}.upload-zone:hover{background:var(--paper)}.upload-zone strong{font-size:.8125rem;display:block;font-weight:700;color:var(--ink)}.upload-zone small{font-size:.75rem;display:block;line-height:1.5;margin-top:3px}.upload-zone .icon{color:var(--muted)}.upload-zone input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.upload-zone:focus-within{outline:3px solid var(--orange-dark);outline-offset:3px}.photo-previews{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.photo-preview{width:72px;height:72px;position:relative}.photo-preview img{width:100%;height:100%;object-fit:cover;border-radius:3px}.photo-remove{position:absolute;right:-6px;top:-6px;min-width:27px;min-height:27px;border-radius:50%;background:var(--ink);color:white;display:grid;place-items:center;font-size:1rem;border:2px solid white}.file-error{font-size:.75rem;color:#a32b20;margin-top:8px}.file-error:empty{display:none}.consent{display:flex;align-items:start;gap:10px;font-size:.75rem;line-height:1.7;margin-top:21px;cursor:pointer}.consent input{width:17px;height:17px;accent-color:var(--orange-dark);margin:3px 0 0;flex-shrink:0}.inline-link{background:none;padding:0;font-size:inherit;text-decoration:underline;text-underline-offset:3px}.form-submit{width:100%;margin-top:23px}.form-note{font-size:.75rem;line-height:1.7;margin-top:13px;text-align:center}
.closing-banner{background:var(--orange);padding:54px 0}.closing-banner .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.closing-banner p{font-size:clamp(2rem,3.9vw,3.25rem);line-height:1.05;letter-spacing:-.055em;font-weight:700;color:var(--ink)}.site-footer{background:var(--ink);color:white;padding:64px 0 25px}.brand-light small{color:#bbc0b8}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .9fr 1.1fr;gap:45px}.footer-grid>div{display:flex;flex-direction:column;align-items:start}.footer-grid p{color:#abb2a7;font-size:.875rem;margin-top:22px}.footer-grid h3{font-size:.875rem;letter-spacing:0;margin:5px 0 23px}.footer-grid>div>a:not(.brand),.footer-grid>div>span,.footer-link{display:block;color:#bdc3ba;font-size:.8125rem;line-height:1.6;margin-bottom:10px;overflow-wrap:anywhere}.footer-link{background:none;padding:0}.footer-grid a:hover,.footer-link:hover{color:var(--orange)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;font-size:.75rem;color:#afb6aa;border-top:1px solid #ffffff20;margin-top:45px;padding-top:22px}.whatsapp-float{position:fixed;bottom:27px;right:27px;z-index:15;display:flex;gap:9px;align-items:center;padding:14px 20px;background:#186c4c;color:white;border-radius:40px;box-shadow:0 5px 20px #0002;font-size:.8125rem;font-weight:700;min-height:52px;transition:background .2s,transform .2s}.whatsapp-float:hover{background:#11543a;transform:translateY(-2px)}.whatsapp-float .icon{width:24px;height:24px}.mobile-contact-bar{display:none}
dialog{border:0;padding:0;border-radius:6px;box-shadow:0 24px 100px #0005;color:var(--ink);max-height:90svh;max-width:calc(100% - 32px);overflow:auto}dialog::backdrop{background:#101610ad;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:15px;top:15px;z-index:3;width:42px;height:42px;border-radius:50%;background:var(--ink);color:white;display:grid;place-items:center}.dialog-close .icon{width:21px;height:21px}.project-dialog{width:900px}.project-dialog-image{position:relative}.project-dialog-image>img{width:100%;height:450px;object-fit:cover}.project-dialog-copy{padding:33px 38px 38px}.project-dialog-copy .eyebrow{margin-bottom:15px}.project-dialog h2{font-size:2rem;line-height:1.15}.project-dialog-copy p:not(.eyebrow){margin:16px 0}.project-dialog-copy .button{margin-top:10px}.info-dialog{width:570px;padding:42px}.info-dialog .eyebrow{padding-right:30px;margin-bottom:17px}.info-dialog h2{font-size:2rem;letter-spacing:-.05em;line-height:1.2}.info-dialog>p:not(.eyebrow){margin:20px 0;font-size:.9375rem}.info-dialog h3{margin-top:25px;font-size:1rem}.summary-dialog{width:660px}.summary-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--paper);border:1px solid var(--line);padding:20px;font-family:inherit;font-size:.875rem;line-height:1.7;max-height:290px;overflow:auto}.summary-actions{display:flex;gap:10px;flex-wrap:wrap}.summary-actions .button{font-size:.8125rem;min-height:46px;padding:12px 16px}.copy-status{font-size:.8125rem!important;min-height:24px;margin:15px 0!important;color:var(--orange-dark)}.before-after{position:absolute;inset:0;--split:50%}.before-after>img{width:100%;height:100%;object-fit:cover;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.before-after:after{content:"";position:absolute;left:var(--split);top:0;bottom:0;width:3px;background:white;pointer-events:none}.before-after>span{position:absolute;top:20px;color:white;background:#181a19de;font-size:.75rem;padding:5px 12px}.before-label{left:20px}.after-label{right:70px}.before-after input{position:absolute;bottom:22px;left:10%;width:80%;accent-color:var(--orange);z-index:1}.noscript-notice{background:var(--ink);color:white;padding:20px;text-align:center}
@media(min-width:1600px){.hero{height:780px;max-height:none}.hero h1{font-size:5.7rem}.hero-image{object-position:center 55%}}
@media(max-width:1150px){.container{width:calc(100% - 64px)}.main-nav{gap:18px}.header-cta{padding:12px;margin-left:0}.brand small{font-size:.75rem}.about-grid{gap:50px}.about-visual{height:530px}.quote-grid{gap:50px}.service-card{padding:25px 20px}.service-icon{right:20px}.section-heading{gap:45px}.why-grid{gap:70px}.footer-grid{gap:30px}.quote-form{padding:28px}.trust-grid>div{font-size:.75rem}.trust-grid>div:not(:first-child){padding-left:18px}}
@media(max-width:950px){:root{--header-height:76px}.main-nav{position:absolute;top:75px;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:20px 32px 28px;flex-direction:column;align-items:stretch;gap:0;display:none;box-shadow:0 18px 20px #0001}.main-nav.is-open{display:flex}.main-nav>a:not(.button){font-size:1rem;padding:12px 0}.header-cta{margin-top:10px}.menu-toggle{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;width:44px;height:44px;background:none}.menu-toggle span{height:2px;width:24px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.hero{min-height:640px;height:700px}.hero h1{font-size:4.7rem}.hero-shade{background:linear-gradient(90deg,#111b16d9,#111b1660),linear-gradient(0deg,#111b1690,transparent 30%)}.hero-bottom>span:first-child{font-size:.75rem}.hero-bottom>span:last-child{max-width:165px;text-align:right}.trust-grid{grid-template-columns:repeat(2,1fr);padding:25px 0;gap:20px}.trust-grid>div{font-size:.8125rem}.trust-grid>div:nth-child(3){border-left:0;padding-left:0}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:270px;padding:28px}.service-icon{right:28px}.section{padding:80px 0}.section-heading{gap:35px}.section-heading h2{font-size:2.8rem}.about-grid{gap:35px}.about-visual{height:560px}.about-copy h2{font-size:2.7rem}.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-open img{height:300px}.project-meta h3{font-size:1.1rem}.why-grid{gap:45px}.why-us h2{font-size:2.8rem}.process-grid{grid-template-columns:repeat(2,1fr);gap:40px}.quote-grid{grid-template-columns:1fr;gap:40px}.quote-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.quote-copy>.eyebrow,.quote-copy>h2,.quote-copy>p:not(.contact-demo-note){grid-column:1}.quote-copy h2{font-size:3.2rem}.quote-copy .contact-details{grid-column:2;grid-row:1/5;margin:0}.quote-copy .contact-actions{grid-column:1/-1;margin-top:20px}.quote-copy .contact-demo-note{grid-column:1/-1}.quote-form{padding:36px}.footer-grid{grid-template-columns:1.15fr 1fr;row-gap:40px}.closing-banner p{font-size:2.8rem}}
@media(max-width:640px){:root{scroll-padding-top:95px}.container{width:calc(100% - 40px)}.brand strong{font-size:1.8rem}.brand small{font-size:.75rem}.brand-mark{width:30px;height:31px;border-width:6px}.brand-mark:after{inset:7px 5px 0;border-left-width:4px}.hero{min-height:625px;height:calc(100svh - 76px);max-height:750px}.hero-image{object-position:65% center}.hero-shade{background:linear-gradient(90deg,#111b16df,#111b1680),linear-gradient(0deg,#111b1690,transparent 40%)}.hero-content{padding-bottom:48px;justify-content:center}.hero-eyebrow{font-size:.75rem;margin-bottom:23px;gap:10px}.hero h1{font-size:clamp(2.55rem,9.5vw,3.8rem);line-height:1.06;letter-spacing:-.055em}.hero-description{font-size:.9375rem;margin-top:22px;max-width:365px}.hero-actions{margin-top:26px;gap:10px;flex-wrap:wrap}.hero-actions .button{font-size:.8125rem;padding:13px 17px}.hero-location{font-size:.75rem;margin-top:24px}.hero-bottom{bottom:20px;display:block;font-size:.75rem}.hero-bottom>span:first-child{display:none}.hero-bottom>span:last-child{max-width:none;text-align:left}.trust-grid{gap:18px 14px;padding:24px 0}.trust-grid>div{font-size:.75rem;gap:7px;line-height:1.5}.trust-grid>div:not(:first-child){padding-left:0;border-left:0}.trust-grid .icon{width:16px;height:16px}.section{padding:64px 0}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:2.5rem}.section-heading>p,.section-heading>div:last-child>p{margin-top:21px;font-size:.9375rem}.eyebrow{font-size:.75rem;margin-bottom:19px;gap:12px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{padding:21px 17px;min-height:315px}.service-card h3{font-size:1.0625rem;line-height:1.3;margin-top:43px}.service-card p{font-size:.8125rem;line-height:1.7}.service-icon{width:26px;height:26px;top:21px;right:17px}.service-number{font-size:.75rem}.service-card a{font-size:.75rem;line-height:1.5;margin-top:18px}.about-grid{display:flex;flex-direction:column-reverse;gap:35px;align-items:stretch}.about-copy h2{font-size:2.5rem}.about-copy>p:not(.eyebrow){font-size:.9375rem}.about-visual{height:370px}.about-caption{bottom:28px;left:27px}.about-caption p{font-size:1.75rem}.check-list{margin:24px 0}.check-list li{font-size:.8125rem}.projects-grid,.projects-grid.is-filtered{grid-template-columns:1fr;gap:30px}.project-open img{height:320px}.project-meta h3{font-size:1.25rem}.project-filters{gap:7px;margin-bottom:23px}.filter-button{font-size:.75rem;padding:9px 14px}.section-heading .demo-note{font-size:.75rem!important;margin-top:10px!important}.why-us{padding:65px 0}.why-grid{display:block}.why-us h2{font-size:2.6rem}.why-grid>div>p:last-child{font-size:.9375rem;margin-top:23px}.why-items{margin-top:37px}.why-items article{gap:19px;padding:24px 0}.why-items p{font-size:.875rem}.process-grid{gap:30px 22px}.process-grid li{padding-top:20px}.step-number{font-size:2.4rem}.process-grid h3{font-size:1rem;margin-top:20px}.process-grid p{font-size:.8125rem}.process-cta{align-items:start;flex-direction:column;gap:18px}.process-cta p{font-size:.9375rem}.testimonials{padding-bottom:64px}.testimonial-empty{padding:25px;gap:17px;align-items:start}.quote-icon{width:29px;height:29px}.testimonial-empty h2{font-size:1.35rem}.testimonial-empty .eyebrow{font-size:.75rem;letter-spacing:.09em}.testimonial-empty p:last-child{font-size:.8125rem}.quote-grid{gap:30px}.quote-copy{display:block;padding-top:0}.quote-copy h2{font-size:2.7rem}.quote-copy .contact-details{margin:30px 0;gap:20px}.contact-details span{font-size:.875rem}.contact-actions{gap:18px}.contact-actions .button{font-size:.8125rem}.quote-form{padding:26px 21px}.form-heading h3{font-size:1.45rem}.form-grid{grid-template-columns:1fr;gap:18px}.field-full{grid-column:auto}.field input:not([type=file]),.field select,.field textarea{font-size:1rem}.field>label:not(.upload-zone),.field-label{font-size:.8125rem}.upload-zone{padding:16px 13px;gap:10px}.upload-zone small{font-size:.75rem}.consent{font-size:.75rem}.form-note{font-size:.75rem}.closing-banner{padding:42px 0}.closing-banner .container{display:block}.closing-banner p{font-size:2.6rem;margin-bottom:25px}.site-footer{padding:46px 0 92px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid p{font-size:.8125rem;margin-top:18px}.footer-grid h3{margin-bottom:17px}.footer-grid>div>a:not(.brand),.footer-grid>div>span,.footer-link{font-size:.8125rem}.footer-bottom{display:block;margin-top:30px;padding-top:22px;line-height:1.7;font-size:.75rem}.footer-bottom>span{display:block;margin-top:7px}.whatsapp-float{display:none}.mobile-contact-bar{display:grid;grid-template-columns:1fr 1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:20;background:white;box-shadow:0 -3px 18px #0001;border-top:1px solid var(--line);padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:5px}.mobile-contact-bar>button,.mobile-contact-bar>a{display:flex;align-items:center;justify-content:center;gap:7px;font-size:.75rem;background:white;font-weight:700;min-height:43px}.mobile-contact-bar>a{background:var(--orange);border-radius:3px}.mobile-contact-bar .icon{width:18px;height:18px}.info-dialog{padding:32px 25px;max-height:85svh}.info-dialog h2{font-size:1.8rem;padding-right:18px}.info-dialog>p:not(.eyebrow){font-size:.875rem}.info-dialog .eyebrow{font-size:.75rem}.project-dialog-image>img{height:270px}.project-dialog-copy{padding:27px 25px}.project-dialog h2{font-size:1.7rem;padding-right:0}.project-dialog-copy p:not(.eyebrow){font-size:.875rem}.dialog-close{right:12px;top:12px;width:36px;height:36px}.summary-dialog pre{font-size:.8125rem;padding:15px}.summary-actions .button{flex:1 1 130px;min-height:48px}.copy-status{font-size:.75rem!important}}
@media(max-width:360px){.container{width:calc(100% - 32px)}.hero h1{font-size:2.65rem}.hero-actions .button{padding:13px 12px;font-size:.75rem}.services-grid{grid-template-columns:1fr}.service-card{min-height:260px}.service-card h3{font-size:1.2rem}.service-card p{font-size:.875rem}.service-card a{font-size:.8125rem}.trust-grid>div{font-size:.75rem}.process-grid{grid-template-columns:1fr}.hero-location{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover,.whatsapp-float:hover,.project-open:hover img{transform:none}}
@media print{.site-header,.hero,.trust-strip,.services,.about,.projects,.why-us,.process,.testimonials,.closing-banner,.site-footer,.whatsapp-float,.mobile-contact-bar,.dialog-close{display:none!important}.quote-section{padding:0}.quote-grid{display:block}.quote-copy{display:none}.quote-form{border:0}dialog[open]{position:static;max-height:none;max-width:none;box-shadow:none;border:0}.summary-actions,.summary-dialog .text-link{display:none}.summary-dialog pre{max-height:none;overflow:visible}}

/* Tamaños de lectura y controles accesibles en todas las pantallas. */
.service-card p,.about-copy>p:not(.eyebrow),.why-items p,.process-grid p,.quote-copy>p:not(.eyebrow),.project-dialog-copy p:not(.eyebrow),.info-dialog>p:not(.eyebrow){font-size:1rem;line-height:1.7}
.service-card a,.filter-button,.field>label:not(.upload-zone),.field-label,.consent,.upload-zone strong,.mobile-contact-bar>button,.mobile-contact-bar>a,.contact-details small,.trust-grid>div,.footer-grid>div>a:not(.brand),.footer-grid>div>span,.footer-link,.text-link{font-size:.875rem}
.service-card{min-height:330px}.service-card p{line-height:1.65}.upload-zone small{font-size:.75rem}.summary-dialog pre{font-size:1rem}.hero-description{font-size:1rem}
@media(max-width:640px){.service-card{min-height:365px}.trust-grid>div{font-size:.8125rem}.hero-actions .button{font-size:.875rem}.process-grid h3{font-size:1.125rem}.project-image-label{font-size:.75rem}.quote-form{padding:26px 20px}.testimonial-empty .eyebrow{font-size:.75rem}.footer-bottom{font-size:.75rem}}
@media(max-width:360px){.service-card{min-height:285px}.trust-grid{grid-template-columns:1fr}}
.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.send-error{margin:0 0 16px;padding:12px 14px;border-left:3px solid var(--orange-dark);background:var(--paper);color:var(--ink)}
.brand-logo{display:block;width:auto;height:56px;max-width:none}.site-footer .brand-logo{height:64px}@media(max-width:640px){.brand-logo{height:44px}.site-footer .brand-logo{height:56px}}
