:root{color:#22312d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#22312d;--muted:#5f6f69;--line:#22312d29;--surface:#fffdf8;--surface-soft:#eef5ef;--green:#245c4f;--green-dark:#173c34;--coral:#b86655;--gold:#d5a84b;--blue:#507a91;--shadow:0 18px 46px #182d2724;background:#f4f7f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--ink);background:linear-gradient(135deg,#245c4f21,#0000 34%),linear-gradient(225deg,#d5a84b1f,#0000 32%),#f4f7f2;margin:0}button,input,select,textarea{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #b5665573}.site-header{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf8f0;border-bottom:1px solid #22312d1f;grid-template-columns:minmax(240px,300px) minmax(0,1fr);align-items:center;gap:14px;padding:14px clamp(18px,3vw,40px);display:grid;position:sticky;top:0}.brand-link{min-width:0;max-width:300px;color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand-link img{border-radius:8px;flex:none}.brand-link span{min-width:0;line-height:1.1;display:grid}.brand-link strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.brand-link small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.menu-toggle{border:1px solid var(--line);background:var(--surface);width:42px;height:42px;color:var(--green);cursor:pointer;border-radius:8px;justify-self:end;place-items:center;display:none}.menu-toggle svg{width:20px;height:20px}.main-nav{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:3px;min-width:0;display:flex}.main-nav a{color:#33443f;white-space:nowrap;border-radius:8px;align-items:center;min-height:36px;padding:0 7px;font-size:.74rem;font-weight:760;text-decoration:none;display:inline-flex}.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--green-dark);background:#245c4f1a}.main-nav .nav-whatsapp{background:var(--green);color:#fffdf8;margin-left:4px}.hero{isolation:isolate;align-items:end;min-height:calc(100vh - 74px);padding:clamp(96px,12vh,160px) clamp(18px,6vw,72px) clamp(38px,8vh,86px);display:grid;position:relative;overflow:hidden}.hero-image,.hero-overlay{position:absolute;inset:0}.hero-image{object-fit:cover;z-index:-2;width:100%;height:100%}.hero-overlay{z-index:-1;background:linear-gradient(#173c3447,#173c34cc),linear-gradient(90deg,#122a24c7,#122a2414)}.hero-content{color:#fffdf8;text-shadow:0 2px 22px #00000042;width:min(780px,100%)}.eyebrow{color:var(--coral);letter-spacing:0;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:850}.hero .eyebrow{color:#ffd6ca}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2{letter-spacing:0}.hero h1{max-width:780px;margin:0;font-size:clamp(2.35rem,6vw,5.2rem);line-height:.98}.hero-lede{color:#fffdf8eb;max-width:720px;margin:18px 0 0;font-size:clamp(1rem,1.4vw,1.22rem);line-height:1.55}.button-row{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.primary-button,.secondary-button{text-align:center;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 18px;font-weight:850;line-height:1.15;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.primary-button{background:var(--green);color:#fffdf8;box-shadow:0 14px 30px #173c3433}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.secondary-button{border-color:var(--line);background:var(--surface);color:var(--green-dark)}.hero-secondary{color:#fffdf8;background:#fffdf81f;border-color:#fffdf894}.technical-note{color:#fffdf8d1;margin:18px 0 0;font-size:.92rem}.intro-band,.section-grid,.content-page,.cta-band,.site-footer{width:min(1160px,100% - 36px);margin-inline:auto}.intro-band{padding:clamp(30px,5vw,54px) 0 clamp(22px,4vw,38px);display:block}.intro-band h2,.cta-band h2,.feature-card h2,.service-card h2,.city-card h2,.content-body h2{color:var(--green-dark);margin:0}.intro-band h2{max-width:760px;font-size:clamp(1.7rem,2.6vw,2.65rem);line-height:1.14}.intro-band p,.content-body p,.feature-card p,.service-card p,.city-card p,.cta-band p,.site-footer p,.info-list li{color:var(--muted);line-height:1.62}.intro-band>p{border-left:4px solid #b866556b;max-width:820px;margin:16px 0 0;padding-left:18px;font-size:1rem}.section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:34px;display:grid}.home-services{width:min(1160px,100% - 36px);box-shadow:var(--shadow);background:#fffdf8d1;border:1px solid #245c4f24;border-radius:8px;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(18px,4vw,42px);margin:0 auto 34px;padding:clamp(22px,4vw,34px);display:grid}.home-services-heading h2{color:var(--green-dark);margin:0;font-size:clamp(1.45rem,2.4vw,2.2rem);line-height:1.16}.home-services-heading p:last-child{color:var(--muted);margin:12px 0 0;line-height:1.6}.home-service-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.home-service-links a{background:var(--surface-soft);min-height:48px;color:var(--green-dark);border:1px solid #245c4f24;border-radius:8px;align-items:center;padding:12px 14px;font-weight:800;line-height:1.25;text-decoration:none;display:flex}.home-service-links a:hover{background:#fffdf8;border-color:#245c4f57}.feature-card,.service-card,.city-card,.content-page,.cta-band,.site-footer,details{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdf8db;border-radius:8px}.feature-card,.service-card,.city-card{padding:22px}.feature-icon{width:46px;height:46px;color:var(--green);background:#245c4f1a;border-radius:8px;place-items:center;margin-bottom:14px;display:grid}.feature-icon svg{width:24px;height:24px}.feature-card h2,.service-card h2,.service-card h3,.city-card h2{font-size:1.12rem}.service-card h3{color:var(--green-dark);margin:0}.text-link{color:var(--green);text-underline-offset:4px;align-items:center;margin-top:10px;font-weight:850;text-decoration-thickness:2px;display:inline-flex}.content-page{margin-top:34px;margin-bottom:34px;overflow:hidden}.compact-page{min-height:48vh}.page-title{background:linear-gradient(135deg,#245c4f29,#0000 36%),linear-gradient(225deg,#507a911f,#0000 34%),#fffdf8;padding:clamp(28px,5vw,56px)}.page-title h1{max-width:880px;color:var(--green-dark);margin:0;font-size:clamp(2rem,5vw,4rem);line-height:1.04}.content-body{gap:22px;padding:clamp(22px,4vw,44px);display:grid}.content-body>p{max-width:850px;margin:0;font-size:1.04rem}.city-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.services-intro{background:var(--surface-soft);border:1px solid #245c4f24;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.services-intro p{max-width:760px;margin:0}.services-intro .primary-button{flex:none}.service-groups{gap:26px;display:grid}.service-group{gap:14px;display:grid}.service-group-heading{max-width:860px}.service-group-heading h2{color:var(--green-dark);margin:0;font-size:clamp(1.25rem,2vw,1.7rem)}.service-group-heading p{margin:6px 0 0}.service-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.info-list{gap:12px;max-width:930px;margin:0;padding:0;list-style:none;display:grid}.topic-layout{gap:16px;display:grid}.topic-panel{background:#fffdf8b8;border:1px solid #245c4f24;border-radius:8px;gap:12px;padding:18px;display:grid}.topic-panel h2{color:var(--green-dark);margin:0;font-size:1.12rem}.topic-panel p{margin:0}.info-list li{background:var(--surface-soft);border:1px solid #245c4f1f;border-radius:8px;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px;padding:14px;display:grid}.info-list svg,.alert-grid svg{color:var(--coral);margin-top:3px}.alert-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.alert-grid span{color:#4e403c;background:#fff6f2;border:1px solid #b8665538;border-radius:8px;align-items:center;gap:8px;min-height:62px;padding:12px;font-weight:780;display:flex}.about-grid{grid-template-columns:minmax(220px,320px) minmax(0,1fr);align-items:start;gap:clamp(18px,4vw,38px);display:grid}.about-grid img{background:#fff;border-radius:8px;width:100%;height:auto}.faq-list{gap:12px;display:grid}details{box-shadow:none}summary{color:var(--green-dark);cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:18px;font-weight:850;display:flex}summary::-webkit-details-marker{display:none}details[open] summary svg{transform:rotate(180deg)}details p{margin:0;padding:0 18px 18px}.cta-band{background:var(--green-dark);color:#fffdf8;box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:18px;margin-top:28px;margin-bottom:34px;padding:clamp(20px,4vw,34px);display:flex}.content-body .cta-band{width:100%;margin:0}.cta-band h2,.cta-band p{color:#fffdf8}.cta-band p{opacity:.86;max-width:720px;margin:8px 0 0}.cta-band .primary-button{color:var(--green-dark);background:#fffdf8;flex:none}.site-footer{background:linear-gradient(135deg,#245c4f14,#0000 38%),#fffdf8e6;margin-bottom:28px;padding:0;overflow:hidden}.footer-main{grid-template-columns:minmax(280px,1fr) minmax(150px,auto) minmax(230px,auto);gap:clamp(22px,4vw,52px);padding:clamp(22px,4vw,34px);display:grid}.footer-logo{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.footer-logo img{background:#fff;border-radius:8px}.footer-logo span{line-height:1.12;display:grid}.footer-logo small{color:var(--muted);margin-top:3px;font-size:.84rem}.site-footer strong,.footer-links strong,.footer-contact strong{color:var(--green-dark);font-size:1.05rem}.site-footer p{max-width:620px;margin:14px 0 0;font-size:.92rem}.footer-links,.footer-contact{align-content:start;gap:10px;display:grid}.footer-links a,.footer-contact a{color:var(--green);font-weight:780;text-decoration:none}.footer-links a:hover,.footer-contact a:hover{text-underline-offset:4px;text-decoration:underline}.footer-whatsapp{background:var(--green);text-align:center;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;margin-top:4px;padding:0 14px;display:inline-flex;box-shadow:0 12px 26px #173c3429;color:#fffdf8!important}.footer-whatsapp:hover{text-decoration:none!important}.footer-bottom{background:#eef5efb8;border-top:1px solid #22312d1f;justify-content:space-between;gap:16px;padding:14px clamp(22px,4vw,34px);display:flex}.footer-bottom p{margin:0;font-size:.84rem}.floating-whatsapp{z-index:30;background:var(--green);color:#fffdf8;border-radius:8px;align-items:center;gap:8px;max-width:calc(100vw - 32px);min-height:50px;padding:0 16px;font-weight:850;text-decoration:none;display:none;position:fixed;bottom:16px;right:16px;box-shadow:0 14px 34px #173c3447}@media (width<=1500px){.site-header{grid-template-columns:auto auto;justify-content:space-between}.brand-link{min-width:0;max-width:min(320px,100vw - 86px)}.menu-toggle{display:grid}.main-nav{flex-wrap:wrap;grid-column:1/-1;justify-content:start;width:100%;padding-top:12px;display:none}.main-nav a{min-height:38px;padding:0 9px;font-size:.83rem}.main-nav.is-open{display:flex}}@media (width<=820px){.hero{min-height:650px}.intro-band,.section-grid,.home-services,.service-list,.city-grid,.about-grid,.home-service-links{grid-template-columns:1fr}.alert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cta-band,.services-intro{flex-direction:column;align-items:stretch}.footer-main{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.floating-whatsapp{display:inline-flex}}@media (width<=560px){.site-header{padding:12px 14px}.brand-link small{display:none}.main-nav{flex-direction:column;align-items:stretch;display:none}.main-nav.is-open{display:flex}.main-nav a{width:100%}.hero{min-height:680px;padding:92px 18px 32px}.hero h1{font-size:clamp(2.1rem,12vw,3.4rem)}.button-row .primary-button,.button-row .secondary-button,.cta-band .primary-button{width:100%}.intro-band,.section-grid,.home-services,.content-page,.cta-band,.site-footer{width:min(100% - 24px,1160px)}.page-title,.content-body{padding:22px}.alert-grid{grid-template-columns:1fr}}
