:root{--button-ink:#07364e;--ground:#f7f9f9;--ink:#07364e;--accent:#ff801d;--surface:#e9eff1;--body:'Work Sans';--heading:'Work Sans';--hero:'Work Sans'}

*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ground);color:var(--ink);font:18px/1.6 var(--body),Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;object-fit:cover;width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading),Arial,sans-serif;font-weight:500;letter-spacing:-.04em;line-height:1.06}h2{font-size:clamp(38px,4.4vw,64px)}h3{font-size:clamp(28px,3vw,44px)}p{margin-bottom:24px}button,input,select,textarea{font:inherit}a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.frame{padding:96px 5vw}header{position:absolute;top:0;left:0;width:100%;padding:28px 5vw;display:flex;justify-content:space-between;gap:30px;align-items:center;color:#fff;z-index:3}.brand{font:600 32px/1 var(--heading),Arial,sans-serif;letter-spacing:-.04em}.brand span{display:block;font:400 16px/1.3 var(--body),Arial,sans-serif;letter-spacing:0;margin-top:9px}nav{display:flex;align-items:center;gap:26px}nav a{font:400 16px/1.4 var(--body),Arial,sans-serif;min-height:44px;padding:12px 0}.header-contact{border:1px solid white;padding:15px 20px}.menu{display:none}.hero{position:relative;isolation:isolate;min-height:100svh;display:flex;align-items:flex-end;padding:180px 5vw 80px;overflow:hidden;color:#fff}.hero-media{position:absolute;inset:0;z-index:-1}.hero-media img{height:100%;object-position:center;animation:drift 24s ease-in-out infinite alternate}.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.36))}.hero h1{font-family:var(--hero),Arial,sans-serif;font-size:clamp(54px,6.4vw,98px);font-weight:600;letter-spacing:-.055em;line-height:1.06}.hero h1>span{display:block}.hero h1 em{font-weight:500;color:var(--accent)}.hero-content{max-width:1150px}.hero-content>p{max-width:550px;font:400 20px/1.6 var(--body),Arial,sans-serif;margin:30px 0 36px}.hero-actions{display:flex;gap:18px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:17px 24px;background:var(--accent);color:var(--button-ink);font:500 16px/1.5 var(--body),Arial,sans-serif;transition:transform .25s,opacity .25s}.outline{background:transparent;border:1px solid white;color:white}.button:hover{transform:translateY(-3px)}.button:active{transform:scale(.98)}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end;margin-bottom:55px}.section-intro p{max-width:46ch;margin:0}.text-link{display:inline-block;text-decoration:underline;text-underline-offset:7px;padding:12px 0;min-height:44px;font-size:16px}.text-link:hover,.email:hover{opacity:.7}.service-list{display:flex;flex-direction:column;gap:44px}.service-list article{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.service-list article>div{display:contents}.service-list h3{grid-row:1/3}.service-list p{margin:0;max-width:46ch}.service-list .text-link{grid-column:2}.service-list article>img{display:none}.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px;align-items:start}.gallery-grid figure{margin:0}.gallery-grid img{aspect-ratio:4/5;transition:transform .7s}.gallery-grid figure:first-child img{aspect-ratio:4/3}.gallery-grid a{display:block;overflow:hidden}.gallery-grid a:hover img{transform:scale(1.04)}figcaption{font-size:16px;margin-top:16px}.credits{margin:30px 0 0;font-size:16px;max-width:65ch}.credits a{text-decoration:underline}.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.about h2{margin-bottom:30px}.about-copy p{max-width:46ch}.about>img{aspect-ratio:4/5}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.contact-photo img{aspect-ratio:4/3}.contact-photo p{font-size:16px;margin:20px 0 0}.composer{background:var(--surface);padding:32px}.composer label{display:block;margin:0 0 9px}.composer input,.composer select,.composer textarea{display:block;width:100%;min-height:52px;border:0;border-radius:0;background:#fff;color:#182129;padding:13px;margin-bottom:22px}.composer input::placeholder,.composer textarea::placeholder{color:#59616a}.composer label span,.small{font-size:16px}.composer .button{width:100%}.composer .small{margin:20px 0 0}.email{display:block;font-size:18px;overflow-wrap:anywhere;min-height:44px;padding:12px 0}.faq>h2{margin-bottom:42px}.questions{display:flex;flex-direction:column;gap:14px}.questions details{background:var(--surface);padding:22px 26px}.questions summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;min-height:44px;font-size:20px}.questions summary:after{content:'+';font-family:Arial,sans-serif}.questions details[open] summary:after{content:'−'}.questions details p{max-width:70ch;margin:20px 0 0}.area iframe{display:block;border:0;width:100%;height:400px}.area .section-intro{margin-bottom:0}.area:has(iframe) .section-intro{margin-bottom:50px}footer{padding-bottom:100px}.footer-name{display:block;font-family:var(--heading),Arial,sans-serif;font-size:clamp(72px,13vw,190px);line-height:1;letter-spacing:-.06em}footer>div{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:36px}footer p{font-size:16px;margin:0}footer>div>a{font-size:16px;min-height:44px;padding:10px 0}.whatsapp{position:fixed;right:18px;bottom:max(18px,env(safe-area-inset-bottom));width:56px;height:56px;border-radius:50%;background:var(--accent);color:var(--button-ink);z-index:5;display:grid;place-items:center;transition:transform .25s}.whatsapp:hover{transform:scale(1.08)}.whatsapp svg{width:31px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}.skip{position:fixed;top:-100px;left:24px;z-index:10;padding:20px;background:#172124;color:white}.skip:focus{top:0}dialog{border:0;background:var(--ground);color:var(--ink);padding:24px;max-width:92vw;max-height:95svh}dialog::backdrop{background:#000d}dialog img{width:auto;max-width:80vw;height:70svh;object-fit:contain}dialog p{margin:16px 0 0}.close{display:block;margin:0 0 18px auto;padding:12px 20px;border:0;background:var(--accent);color:#172124;cursor:pointer}.reveal{animation:rise .85s both}.gallery-grid figure.reveal{animation:picture 1.1s both}.hero h1>span{animation:mask .95s both}.hero h1>span:nth-child(2){animation-delay:.11s}@keyframes drift{to{transform:scale(1.055)}}@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes picture{from{opacity:.4;transform:scale(.97)}to{opacity:1;transform:none}}@keyframes mask{from{clip-path:inset(100% 0 0);transform:translateY(25px)}to{clip-path:inset(0);transform:none}}
@media(max-width:1000px){nav{gap:18px}.header-contact{display:none}.hero h1{font-size:7vw}.frame{padding-top:80px;padding-bottom:80px}.section-intro{gap:5vw}.brand{font-size:28px}.brand span{max-width:240px}.lima .service-list{gap:24px}.composer{padding:26px}.hero-content>p{max-width:500px}}
@media(max-width:650px){body{font-size:18px}.frame{padding:70px 22px}header{padding:25px 22px;gap:12px}.brand{font-size:28px}.brand span{font-size:16px;max-width:225px}.menu{display:flex;align-items:center;gap:10px;color:white;background:transparent;border:0;padding:12px 0 12px 10px;min-height:44px}nav{display:none;position:absolute;top:108px;left:22px;right:22px;background:#172124;color:white;padding:22px;flex-direction:column;align-items:stretch;gap:10px}nav.open{display:flex}.header-contact{display:block}.hero{padding:170px 22px 85px;min-height:100svh}.hero h1{font-size:38px;letter-spacing:-.055em;line-height:1.1}.hero-content>p{font-size:18px;max-width:32ch;margin:28px 0 32px}.hero-actions{flex-direction:column;gap:14px;max-width:300px}.hero .button{font-size:16px;min-height:56px}.hero-media img{object-position:60% center}h2{font-size:38px}h3{font-size:28px}.section-intro,.predial .services .section-intro{grid-template-columns:1fr;gap:28px;margin-bottom:40px}.service-list{gap:38px}.service-list article,.predial .service-list article{display:block}.service-list article>div{display:block}.service-list h3{margin-bottom:18px}.service-list p{margin-bottom:12px}.gallery-grid,.hr .gallery-grid,.rel .gallery-grid,.maranata .gallery-grid,.lima .gallery-grid{grid-template-columns:1fr 1fr;gap:24px 18px}.gallery-grid figure:first-child{grid-column:1/3}.gallery-grid img,.rel .gallery-grid img,.hr .gallery-grid img{aspect-ratio:3/4}.gallery-grid figure:first-child img,.maranata .gallery-grid figure:first-child img{aspect-ratio:4/3}.gallery-grid figure:nth-child(2),.gallery-grid figure:nth-child(3){margin-top:0!important}.gallery-grid figcaption{font-size:16px}.about,.predial .about,.rel .about{grid-template-columns:1fr;gap:32px}.about-copy,.predial .about-copy,.rel .about-copy,.maranata .about-copy{grid-column:1;grid-row:auto}.about>img,.predial .about>img,.rel .about>img,.maranata .about>img{grid-column:1;grid-row:auto;aspect-ratio:4/3}.about h2{margin-bottom:26px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-photo img,.rel .contact-photo img{aspect-ratio:4/3}.composer{padding:24px}.composer .button{padding:16px 12px}.questions details{padding:20px}.questions summary,.predial .questions summary{font-size:20px}.predial .questions details p{margin-left:0}.faq>h2{margin-bottom:36px}.area iframe{height:350px}.footer-name{font-size:17vw}footer>div{flex-direction:column;gap:4px}footer>div p{margin-bottom:16px}.whatsapp{width:54px;height:54px;right:15px;bottom:max(16px,env(safe-area-inset-bottom))}.rel .service-list article,.maranata .service-list article{display:block}.rel .service-list article>img,.maranata .service-list article>img{position:static;aspect-ratio:4/3;margin-bottom:26px}.carlesso .service-list h3{font-size:38px}.hr .service-list article{padding:24px}.lima .service-list{grid-template-columns:1fr;gap:32px}.lima .service-list h3{font-size:44px}dialog{padding:18px}dialog img{max-width:77vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}


/* Sigma: the orange chapter solves today's demand; navy organizes continuity. */
h1,h2,h3{font-weight:600}h2{font-size:clamp(38px,4.4vw,64px)}h3{font-size:clamp(28px,2.8vw,40px)}
.brand{display:flex;align-items:center;gap:14px}.brand-symbol{position:relative;display:block;width:62px;height:68px;overflow:hidden;background:#f6f9f9}.brand-symbol img{position:absolute;width:215px;max-width:none;left:-76px;top:-53px}.brand .brand-type{font:700 31px/1 'Work Sans',Arial,sans-serif;letter-spacing:.025em;margin:0}.brand small{display:block;font-size:13px;font-weight:500;letter-spacing:0;margin-top:7px}.brand span{margin-top:0}
.hero{padding-bottom:75px}.hero-content>p{max-width:620px}.hero h1{font-weight:600}.hero .button:first-child{background:#fff;color:#07364e}.hero-media:after{background:linear-gradient(90deg,#000b,#0004)}
.about{background:#f7f9f9}.logo-panel{background:#eff5f5;overflow:hidden}.logo-panel img{width:100%;aspect-ratio:1;object-fit:cover}.about-copy p{max-width:43ch}
.services{background:#07364e;color:#fff}.service-list{gap:0}.service-list article{padding:32px 0;gap:8vw;grid-template-columns:1fr 1fr}.service-list h3{font-size:clamp(30px,3.5vw,50px)}.service-list .text-link{color:#fff}.service-list article:first-child{padding-top:0}.service-list article:last-child{padding-bottom:0}
.modalities{background:#ff801d;color:#082f43}.mode-columns{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.mode-columns article{max-width:510px}.mode-columns h3{margin-bottom:24px;max-width:16ch}.mode-columns p{min-height:115px}.mode-columns .button{background:#07364e;color:#fff}
.contracts{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;background:#07364e;color:#fff}.contract-lead h2{margin-bottom:32px;font-size:clamp(36px,3.8vw,55px)}.contract-lead>p{max-width:45ch}.contract-note{font-size:16px;margin-top:24px}.maintenance-list{display:flex;flex-direction:column;gap:32px}.maintenance-list h3{margin-bottom:14px}.maintenance-list p{margin:0;max-width:40ch}
.gallery{background:#e9eff1}.gallery-grid{grid-template-columns:1.25fr 1fr 1fr;gap:28px}.gallery-grid figure:nth-child(2){margin-top:64px}.gallery-grid figure:nth-child(3){margin-top:128px}.gallery-grid img,.gallery-grid figure:first-child img{aspect-ratio:4/5}
.contact{background:#fff}.contact-photo img{aspect-ratio:4/3}.composer{background:#e9eff1}.composer .button{background:#07364e;color:#fff}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:8vw;background:#f7f9f9}.questions details{background:#e9eff1}.questions summary{font-size:18px;font-weight:500}.area{background:#e9eff1}footer{background:#07364e;color:#fff}.footer-name{font-weight:700;font-size:clamp(90px,18vw,260px)}.whatsapp{background:#ff801d;color:#07364e}#message-preview{font-size:16px}.header-contact:hover{background:#fff;color:#07364e}
@media(max-width:1000px){.brand .brand-type{font-size:25px}.brand small{font-size:13px}.brand-symbol{width:54px;height:60px}.brand-symbol img{width:190px;left:-67px;top:-47px}.contracts{gap:5vw}.contract-lead h2{font-size:38px}}
@media(max-width:650px){.brand{gap:10px}.brand .brand-type{font-size:24px}.brand small{font-size:12px}.brand-symbol{width:48px;height:54px}.brand-symbol img{width:175px;left:-62px;top:-43px}nav{background:#07364e;top:105px}.hero{padding-top:170px;padding-bottom:90px}.hero h1{font-size:44px}.hero-content>p{font-size:18px}.hero-actions{max-width:100%;padding-right:40px}.hero-actions .button{width:100%}.mode-columns,.contracts,.faq{display:block}.mode-columns article+article{margin-top:50px}.mode-columns p{min-height:0}.mode-columns h3{max-width:18ch}.maintenance-list{margin-top:52px}.contract-lead h2{font-size:34px}.about{gap:36px}.logo-panel{max-width:420px}.gallery-grid{gap:24px 16px}.gallery-grid figure:nth-child(2),.gallery-grid figure:nth-child(3){margin-top:0}.gallery-grid figure:first-child img{aspect-ratio:4/3}.service-list article{padding:26px 0}.service-list h3{font-size:32px}.composer{padding:24px 20px}.composer .button{font-size:15px}footer.frame{padding-bottom:110px}}
.modalities :focus-visible{outline-color:#07364e}.button:focus-visible{outline-offset:6px}
.service-list article{column-gap:8vw;row-gap:10px}.service-list .text-link{font-size:18px}.brand small{font-size:13px}@media(max-width:650px){.service-list article+article{margin-top:24px}}
.brand-symbol,.logo-panel{background:transparent}.brand-symbol img{filter:brightness(0) invert(1)}.logo-panel img{transform:scale(1.2)}
.whatsapp{background:transparent;border-radius:0}.whatsapp img{width:100%;height:100%;object-fit:contain}
