@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display Fallback;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_0a80b4{font-family:Playfair Display,Playfair Display Fallback;font-style:normal}.__variable_0a80b4{--font-playfair:"Playfair Display","Playfair Display Fallback"}@font-face{font-family:Lato;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/9ce3050912c26948-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lato;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/155cae559bbd1a77-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cce080f35d014443-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4de1fea1a954a5b6-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/39969fcf98a3026e-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6d664cce900333ee-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lato Fallback;src:local("Arial");ascent-override:101.03%;descent-override:21.80%;line-gap-override:0.00%;size-adjust:97.69%}.__className_06d0dd{font-family:Lato,Lato Fallback;font-style:normal}.__variable_06d0dd{--font-lato:"Lato","Lato Fallback"}:root{--green-darkest:#0f2d1a;--green-dark:#1a3d2b;--green-medium:#2c6e49;--green-accent:#52b788;--green-light:#b7e4c7;--green-pale:#d8f3dc;--cream:#f8f5ee;--text-dark:#1c1c1c;--text-medium:#4a5568;--font-serif:var(--font-playfair,"Playfair Display",Georgia,serif);--font-sans:var(--font-lato,"Lato","Helvetica Neue",Arial,sans-serif)}body,html{max-width:100vw;overflow-x:hidden}body{color:var(--text-dark);background:#fff;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.7}*{box-sizing:border-box;padding:0;margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);line-height:1.2}a{color:inherit;text-decoration:none}.section-grid-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:32px;gap:32px}.section-grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:64px;gap:64px;align-items:center}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-gap:48px;gap:48px}@media (max-width:1024px){.gallery-grid,.section-grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.footer-grid,.gallery-grid,.section-grid-2,.section-grid-3{grid-template-columns:1fr;gap:24px}}.header-desktop-nav{display:flex;align-items:center;gap:28px}.header-nav-link{color:#b7e4c7;font-size:13px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:color .2s}.header-nav-link:hover{color:#fff}.header-phone-btn{display:inline-flex;align-items:center;gap:8px;background-color:#52b788;color:#fff!important;padding:10px 20px;border-radius:4px;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap;transition:background-color .2s}.header-phone-btn:hover{background-color:#40916c}.header-hamburger{display:none;background:none;border:none;cursor:pointer;color:#fff;padding:4px;align-items:center;justify-content:center}.header-mobile-menu{display:none;flex-direction:column;padding:12px 24px 24px;background-color:#1a3d2b;border-top:1px solid hsla(0,0%,100%,.08);gap:0}.header-mobile-menu.open{display:flex}.header-mobile-link{color:#b7e4c7;font-size:16px;padding:14px 0;text-decoration:none;border-bottom:1px solid hsla(0,0%,100%,.07);display:block}.header-mobile-phone{display:flex;align-items:center;justify-content:center;gap:10px;background-color:#52b788;color:#fff;padding:14px 20px;border-radius:4px;font-size:16px;font-weight:700;text-decoration:none;margin-top:16px}@media (max-width:768px){.header-desktop-nav{display:none}.header-hamburger{display:flex}}.service-card{padding:32px 24px;border-radius:8px;border:1px solid #e8f4ec;background-color:#fff;transition:transform .2s ease,box-shadow .2s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(26,61,43,.12)}.btn-primary{display:inline-flex;align-items:center;gap:8px;background-color:#52b788;color:#fff;padding:14px 32px;border-radius:4px;font-size:15px;font-weight:700;letter-spacing:.03em;text-decoration:none;transition:background-color .2s;white-space:nowrap}.btn-primary:hover{background-color:#40916c;color:#fff}.btn-outline-white{display:inline-flex;align-items:center;gap:8px;background-color:transparent;color:#fff;padding:14px 32px;border-radius:4px;font-size:15px;font-weight:700;letter-spacing:.03em;text-decoration:none;border:2px solid hsla(0,0%,100%,.55);transition:border-color .2s,background-color .2s;white-space:nowrap}.btn-outline-white:hover{border-color:hsla(0,0%,100%,.9);background-color:hsla(0,0%,100%,.1);color:#fff}.contact-label{display:block;color:#b7e4c7;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}.contact-input{width:100%;background-color:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.2);border-radius:4px;padding:14px 16px;color:#fff;font-size:15px;font-family:var(--font-sans);transition:border-color .2s,background-color .2s;outline:none;box-sizing:border-box}.contact-input::placeholder{color:hsla(0,0%,100%,.35)}.contact-input:focus{border-color:#52b788;background-color:hsla(0,0%,100%,.12)}.contact-textarea{resize:vertical;line-height:1.65;min-height:130px}.contact-submit{width:100%;background-color:#52b788;color:#fff;border:none;border-radius:4px;padding:16px;font-size:16px;font-weight:700;font-family:var(--font-sans);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;letter-spacing:.03em;transition:background-color .2s,opacity .2s}.contact-submit:hover:not(:disabled){background-color:#40916c}.contact-submit:disabled{opacity:.75;cursor:wait}@media (max-width:600px){.contact-form-row{grid-template-columns:1fr!important}}.whatsapp-btn{position:fixed;bottom:24px;right:24px;z-index:999;width:56px;height:56px;border-radius:50%;background-color:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,0,0,.25);transition:transform .2s ease,box-shadow .2s ease;text-decoration:none}.whatsapp-btn:hover{transform:scale(1.1);box-shadow:0 6px 24px rgba(0,0,0,.32)}@keyframes fade-slide-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.hero-animate-1{animation:fade-slide-up .8s cubic-bezier(.25,.46,.45,.94) both;animation-delay:.15s}.hero-animate-2{animation:fade-slide-up .9s cubic-bezier(.25,.46,.45,.94) both;animation-delay:.35s}.hero-animate-3{animation:fade-slide-up .8s cubic-bezier(.25,.46,.45,.94) both;animation-delay:.55s}.hero-animate-4{animation:fade-slide-up .8s cubic-bezier(.25,.46,.45,.94) both;animation-delay:.75s}.reveal{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.25,.46,.45,.94),transform .7s cubic-bezier(.25,.46,.45,.94)}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes scroll-bounce{0%,to{transform:translateY(0);opacity:.7}50%{transform:translateY(10px);opacity:.3}}.scroll-indicator{position:absolute;bottom:36px;left:0;right:0;display:flex;justify-content:center;color:hsla(0,0%,100%,.65);animation:scroll-bounce 2.2s ease-in-out infinite;pointer-events:none}.preview-img-wrap img{transition:transform .5s ease}.preview-img-wrap:hover img{transform:scale(1.07)}.gallery-filter-bar{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:40px}.gallery-filter-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 20px;border-radius:100px;border:1.5px solid #2c6e49;background:transparent;color:#2c6e49;font-size:13px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s;letter-spacing:.02em}.gallery-filter-btn:hover{background-color:#d8f3dc}.gallery-filter-btn.active{background-color:#2c6e49;color:#fff;border-color:#2c6e49}.gallery-filter-count{background:rgba(0,0,0,.1);border-radius:50px;padding:1px 7px;font-size:11px;font-weight:700}.gallery-filter-btn.active .gallery-filter-count{background:hsla(0,0%,100%,.22)}.gallery-grid-uniform{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.gallery-grid-uniform .pf-card{aspect-ratio:4/3;border-radius:10px;overflow:hidden;position:relative;box-shadow:0 4px 20px rgba(0,0,0,.12);transition:box-shadow .3s ease;cursor:default}.gallery-grid-uniform .pf-card:hover{box-shadow:0 16px 48px rgba(0,0,0,.22)}.gallery-grid-uniform .pf-card:hover .pf-img{transform:scale(1.05)}.gallery-grid-uniform .pf-card:hover .pf-overlay{opacity:1}@keyframes card-fade-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.gallery-card-anim{animation:card-fade-in .45s cubic-bezier(.25,.46,.45,.94) both}@media (max-width:1024px){.gallery-grid-uniform{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.gallery-grid-uniform{grid-template-columns:1fr}.gallery-filter-btn{font-size:12px;padding:8px 14px}}.portfolio-hero{padding:96px 24px 88px}.portfolio-hero-stats{display:flex;justify-content:center;gap:32px;flex-wrap:wrap}.portfolio-hero-stat-card{text-align:center;padding:16px 24px;border-radius:8px;background:hsla(0,0%,100%,.07);border:1px solid hsla(0,0%,100%,.12);min-width:110px}@media (max-width:640px){.portfolio-hero{padding:48px 20px 40px}.portfolio-hero-stats{display:none}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.hero-animate-1,.hero-animate-2,.hero-animate-3,.hero-animate-4{animation:none;opacity:1;transform:none}.scroll-indicator{animation:none}.preview-img-wrap img{transition:none}}.portfolio-card{border-radius:10px;overflow:hidden;position:relative;box-shadow:0 4px 20px rgba(0,0,0,.12);opacity:0;transform:translateY(28px);transition:opacity .55s ease,transform .55s ease,box-shadow .3s ease}.portfolio-card.pf-visible{opacity:1;transform:translateY(0)}.portfolio-card:hover{box-shadow:0 16px 48px rgba(0,0,0,.22)}.pf-img{width:100%;height:100%;object-fit:cover;object-position:center;image-orientation:from-image;display:block;transition:transform .5s ease}.portfolio-card:hover .pf-img{transform:scale(1.05)}.pf-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,45,26,.88) 0,transparent 55%);display:flex;align-items:flex-end;padding:20px 22px;opacity:0;transition:opacity .3s ease}.portfolio-card:hover .pf-overlay{opacity:1}.pf-label{color:#fff;font-size:14px;font-weight:600;letter-spacing:.02em;line-height:1.4}.portfolio-bento{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:300px 220px 300px;grid-gap:16px;gap:16px}.portfolio-bento>:first-child{grid-column:1/3}.portfolio-bento>:nth-child(7){grid-column:2/4}@media (max-width:1024px){.portfolio-bento{grid-template-columns:repeat(2,1fr);grid-template-rows:auto;grid-auto-rows:240px}.portfolio-bento>:nth-child(n){grid-column:auto;grid-row:auto}}@media (max-width:640px){.portfolio-bento{grid-template-columns:1fr;grid-auto-rows:220px}}