.home-page{--stone:#e9e6de;--surface-radius:36px;background:var(--paper)}.home-page .section{padding-block:clamp(64px,6vw,88px)}.home-page .section h2{letter-spacing:-.04em;font-size:clamp(2rem,3.1vw,3rem);line-height:1.2}.home-page .eyebrow{letter-spacing:.12em;font-size:.6875rem}.home-page .hero{min-height:min(700px,85svh)}.home-page .hero-shade{background:linear-gradient(#050e2024 22%,#050e20d9),linear-gradient(90deg,#050e203b,#0000)}.home-page .hero-inner{justify-content:space-between;padding-block:32px 80px}.hero-topline{justify-content:space-between;align-items:center;gap:20px;display:flex}.hero-signature{color:#ffffffc9;font-size:.8125rem}.hero-bottom{grid-template-columns:1.4fr 1fr;align-items:end;gap:clamp(40px,6vw,96px);display:grid}.home-page .hero-copy{max-width:660px}.home-page .hero h1{letter-spacing:-.055em;text-wrap:initial;margin:0 0 24px;font-size:clamp(3.25rem,5.6vw,5.25rem);font-weight:500;line-height:1.06}.home-page .hero h1 strong{color:#ffffffb8;font-weight:500}.hero-work-link{color:#ffffffe0;align-items:center;gap:10px;min-height:44px;font-size:.8125rem;line-height:1.5;display:inline-flex}.hero-work-link>span:last-child{margin-left:4px}.status-dot{background:#8ed8f8;border-radius:50%;flex:none;width:6px;height:6px;box-shadow:0 0 0 4px #8ed8f81a}.hero-aside{padding-bottom:5px}.hero-aside>p{color:#ffffffe0;text-wrap:pretty;max-width:37ch;margin:0;font-size:1rem;line-height:1.7}.hero-aside>p strong{color:#fff;font-weight:500}.home-page .hero-actions{gap:20px;margin-top:24px}.home-page .hero-secondary{gap:10px;font-size:.8125rem}.home-page .button{gap:20px;min-height:48px;padding:7px 8px 7px 20px;font-size:.8125rem}.home-page .button-arrow{width:32px;height:32px}.home-page .gallery-section{z-index:1;border-radius:var(--surface-radius) var(--surface-radius) 0 0;margin-top:-32px;padding-top:clamp(64px,6vw,88px);position:relative}.home-page .gallery-heading{flex-direction:row;align-items:end;gap:32px;margin-bottom:32px}.home-page .gallery-heading h2{color:var(--ink)}.home-page .gallery-heading h2 strong{color:var(--heading-soft);font-weight:500}.home-page .gallery-heading p{max-width:59ch;color:var(--muted);text-wrap:pretty;margin:20px 0 0;font-size:.9375rem;line-height:1.7}.home-page .gallery-heading .inline-link{flex:none;gap:16px;font-size:.8125rem}.home-page .gallery-grid{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;gap:18px;padding:2px 2px 12px;display:flex;overflow:auto hidden}.ideas-track::-webkit-scrollbar{display:none}.ideas-track:focus-visible{outline-offset:5px;border-radius:20px;outline:3px solid #00aeef}.home-page .gallery-card{background:var(--stone);scroll-snap-align:start;border:1px solid #0000;border-radius:23px;flex:0 0 44%;min-width:0;padding:6px}.home-page .gallery-image{border-radius:16px}.home-page .gallery-image-variants{position:relative;overflow:hidden}.home-page .gallery-image-variants .gallery-image-alternate{object-fit:cover;width:100%;height:100%;animation:10s ease-in-out infinite gallery-color-cycle;position:absolute;inset:0}@keyframes gallery-color-cycle{0%,42%,to{opacity:0}50%,92%{opacity:1}}@media (prefers-reduced-motion:reduce){.home-page .gallery-image-variants .gallery-image-alternate{opacity:0;animation:none}}.home-page .gallery-card figcaption{justify-content:space-between;align-items:center;gap:12px;padding:18px 12px 14px;display:flex}.home-page .gallery-card figcaption strong{font-family:var(--font-display);letter-spacing:-.025em;font-size:1rem;font-weight:550}.carousel-bottom{justify-content:space-between;align-items:center;gap:20px;margin-top:16px;display:flex}.carousel-controls{gap:8px;display:flex}.carousel-button{background:var(--stone);width:44px;height:44px;color:var(--navy);cursor:pointer;border:1px solid #0000;border-radius:50%;place-items:center;padding:0;font-size:21px;line-height:1;transition:background-color .15s ease-out,opacity .15s ease-out;display:grid}.carousel-button:disabled{opacity:.35;cursor:default}.home-page .work-section{border-radius:var(--surface-radius);background:var(--navy-deep)}.home-page .work-heading{text-align:center;margin-bottom:40px;display:block}.home-page .work-heading>div{max-width:none}.home-page .work-heading h2{color:#fff}.home-page .work-heading h2 strong{color:#aeb9d2;font-weight:500}.home-page .work-heading>p{max-width:none;margin:20px 0 0;font-size:.875rem}.home-page .work-grid,.home-page .work-row{gap:16px}.home-page .work-row-three{grid-template-columns:repeat(3,minmax(0,1fr))}.home-page .work-row-three .work-card img{aspect-ratio:4/3;object-fit:cover;display:block}.home-page .work-card{border-radius:22px}.home-page .work-card figcaption strong{font-size:1rem;font-weight:500}.process-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:72px;display:grid}.process-intro{position:sticky;top:110px}.process-intro h2{color:var(--ink);margin-top:16px}.process-intro h2 strong{color:var(--heading-soft);font-weight:500}.process-intro>div>p{max-width:43ch;color:var(--muted);margin:20px 0 28px;font-size:.9375rem;line-height:1.75}.construction-graphic{background:var(--stone);color:var(--navy);border:1px solid #d9d6cd;border-radius:24px;margin-top:56px;padding:28px 24px;overflow:hidden}.house-drawing{width:100%;height:auto;display:block}.process-steps{gap:18px;padding-top:32px;display:grid}.process-card{box-shadow:var(--shadow-surface);background:#fff;border:1px solid #0000;border-radius:24px;grid-template-columns:54px minmax(0,1fr);align-items:start;gap:22px;padding:32px;display:grid}.process-icon{background:var(--paper);width:54px;height:54px;color:var(--navy);border-radius:16px;place-items:center;display:grid}.process-icon svg{width:30px;height:30px}.process-label{color:var(--muted);margin:2px 0 12px;font-size:.6875rem;line-height:1.3;display:block}.process-card h3{letter-spacing:-.035em;margin:0;font-size:1.25rem;font-weight:550;line-height:1.35}.process-card p{color:var(--muted);margin:14px 0 0;font-size:.875rem;line-height:1.75}.process-card .inline-link{gap:16px;margin-top:16px;font-size:.8125rem}.home-page .faq-section{padding-top:32px}.faq-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:80px;display:grid}.home-page .faq-grid h2{color:var(--ink);margin-top:16px}.home-page .faq-grid h2 strong{color:var(--heading-soft);font-weight:500}.faq-list{padding-top:8px}.faq-list details{border-bottom:1px solid #d5d3cc}.faq-list summary{min-height:68px;color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:24px;padding-block:18px;font-size:.875rem;font-weight:550;line-height:1.5;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";background:var(--stone);border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:18px;font-weight:400;display:grid}.faq-list details[open] summary:after{content:"−"}.faq-list summary:focus-visible{outline-offset:4px;border-radius:6px;outline:3px solid #00aeef}.faq-list details>div{padding:0 36px 22px 0}.faq-list p{color:var(--muted);margin:0;font-size:.875rem;line-height:1.75}.faq-list .inline-link{gap:16px;margin-top:12px;font-size:.8125rem}.home-page .contact-section{background:var(--paper);padding-top:0;padding-bottom:40px}.contact-banner{isolation:isolate;border-radius:var(--surface-radius);background:var(--navy);color:#fff;text-align:center;padding:72px 32px;position:relative;overflow:hidden}.home-page .contact-banner h2{color:#fff;max-width:700px;margin:18px auto 0;position:relative}.home-page .contact-banner h2 strong{color:#b8c5de;font-weight:500}.contact-banner>p{color:#ffffffc9;margin:22px 0 28px;font-size:.9375rem;position:relative}.contact-banner-lines{z-index:-1;border:1px solid #ffffff12;border-radius:50%;width:650px;height:650px;position:absolute;inset:-130px auto auto -220px;box-shadow:0 0 0 50px #ffffff03,0 0 0 100px #ffffff03,0 0 0 150px #ffffff03,0 0 0 200px #ffffff03}.home-page .contact-banner-actions{max-width:none;box-shadow:none;background:0 0;border:0;border-radius:0;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;padding:0;display:flex;position:relative}.contact-whatsapp{color:#ffffffe0;align-items:center;gap:9px;min-height:44px;font-size:.8125rem;display:inline-flex}.contact-whatsapp .button-whatsapp-icon{width:19px;height:19px}.home-page [data-reveal=waiting]{opacity:0}.home-page [data-reveal=visible]{animation:.15s ease-out both home-fade-in}@keyframes home-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:no-preference){.home-page [data-reveal=visible]{animation:.3s ease-out both home-rise-in}.hero-aside[data-reveal=visible]{animation-delay:.1s}.home-page .hero-image{animation:1.1s cubic-bezier(.2,0,0,1) both hero-settle}.construction-graphic[data-reveal=visible] .drawing-lines path{stroke-dasharray:1;animation:11s linear infinite both trace-foundation}.construction-graphic[data-reveal=visible] .drawing-lines path:nth-child(2){animation-name:trace-walls}.construction-graphic[data-reveal=visible] .drawing-lines path:nth-child(3){animation-name:trace-roof}.construction-graphic[data-reveal=visible] .drawing-lines path:nth-child(4){animation-name:trace-openings}.construction-graphic[data-reveal=visible] .drawing-lines path:nth-child(5){animation-name:trace-windows}.construction-graphic[data-reveal=visible] .drawing-lines path:nth-child(6){animation-name:trace-details}.construction-graphic[data-reveal=visible] .drawing-fills,.construction-graphic[data-reveal=visible] .drawing-nodes{animation:11s linear infinite both drawing-fill}.carousel-button{transition:background-color .15s ease-out,opacity .15s ease-out,scale .15s ease-out}.carousel-button:not(:disabled):active{scale:.96}}@keyframes home-rise-in{0%{opacity:0;filter:blur(4px);transform:translateY(12px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes hero-settle{0%{transform:scale(1.035)}to{transform:scale(1)}}@keyframes trace-foundation{0%{stroke-dashoffset:1px;opacity:1}12%,88%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}@keyframes trace-walls{0%,7%{stroke-dashoffset:1px;opacity:1}22%,88%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}@keyframes trace-roof{0%,15%{stroke-dashoffset:1px;opacity:1}30%,88%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}@keyframes trace-openings{0%,23%{stroke-dashoffset:1px;opacity:1}36%,88%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}@keyframes trace-windows{0%,29%{stroke-dashoffset:1px;opacity:1}44%,88%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}@keyframes trace-details{0%,37%{stroke-dashoffset:1px;opacity:1}52%,88%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}@keyframes drawing-fill{0%,46%{opacity:0;transform:translateY(6px)}58%,88%{opacity:1;transform:translateY(0)}96%,to{opacity:0;transform:translateY(0)}}@media (hover:hover){.carousel-button:not(:disabled):hover{background:#dad6cc}.contact-whatsapp:hover{color:#8ed8f8}}@media (forced-colors:active){.home-page .gallery-card,.process-card{border-color:currentColor}}@media (max-width:1080px){.home-page .hero{min-height:650px}.hero-bottom{grid-template-columns:1.15fr 1fr;gap:32px}.hero-aside .hero-actions{flex-direction:column;align-items:flex-start;gap:8px}.process-grid{gap:36px}.process-intro{top:160px}.process-card{gap:18px;padding:24px}}@media (max-width:760px){.home-page{--surface-radius:28px}.home-page .section{padding-block:56px}.home-page .section h2{font-size:clamp(1.875rem,7.2vw,2.5rem)}.home-page .hero{min-height:650px}.home-page .hero-inner{padding-block:24px 68px}.hero-signature{display:none}.hero-bottom{grid-template-columns:minmax(0,1fr);gap:28px}.home-page .hero h1{margin-bottom:16px;font-size:clamp(3.125rem,12vw,4.5rem)}.hero-aside>p{max-width:40ch;font-size:.9375rem}.home-page .hero-actions{flex-direction:row;align-items:center;gap:18px;margin-top:20px}.home-page .hero-shade{background:linear-gradient(#050e204d 10%,#050e20e6)}.home-page .gallery-section{margin-top:-28px;padding-top:56px}.home-page .gallery-heading{flex-direction:column;align-items:start;gap:14px}.home-page .gallery-card{flex-basis:85%}.home-page .work-heading{margin-bottom:32px}.home-page .work-grid,.home-page .work-row{gap:12px}.home-page .work-row-three{grid-template-columns:minmax(0,1fr)}.process-grid{grid-template-columns:minmax(0,1fr);gap:24px}.process-intro{position:static}.process-intro>div>p{max-width:52ch}.construction-graphic{max-width:540px;margin-top:32px;padding:20px 16px}.process-steps{gap:14px;padding-top:0}.process-card{padding:24px}.faq-grid{grid-template-columns:minmax(0,1fr);gap:28px}.home-page .faq-section{padding-top:8px}.home-page .contact-section{padding-top:0;padding-bottom:24px}.contact-banner{padding:52px 22px}.home-page .contact-banner h2{font-size:clamp(1.875rem,7.5vw,2.625rem)}.home-page .contact-banner-actions{gap:16px}}@media (max-width:530px){.home-page .hero h1{font-size:clamp(2.5rem,10vw,3.125rem)}.process-card{grid-template-columns:44px minmax(0,1fr);gap:16px;padding:22px}.process-icon{border-radius:12px;width:44px;height:44px}.process-icon svg{width:26px;height:26px}.process-card h3{font-size:1.125rem}.home-page .gallery-card figcaption strong{font-size:.875rem}.home-page .contact-banner-actions{flex-direction:column}}
