:root{--ink:#10251f;--ink-2:#17372e;--cream:#f6f3ea;--paper:#fffdf7;--mint:#c8f35c;--aqua:#a9e5d2;--coral:#ef7e68;--white:#fff;--muted:#60756e;--line:rgba(16,37,31,.14);--serifless:"Manrope",sans-serif;--body:"DM Sans",sans-serif;--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 var(--body);overflow-x:hidden}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.skip-link{position:fixed;left:12px;top:-100px;background:var(--mint);padding:10px 16px;z-index:100;border-radius:8px}.skip-link:focus{top:12px}.section-shell,.section-pad{padding-left:clamp(22px,5vw,76px);padding-right:clamp(22px,5vw,76px)}.section-pad{padding-top:clamp(84px,10vw,150px);padding-bottom:clamp(84px,10vw,150px)}.dark-section{background:var(--ink);color:var(--white)}.eyebrow{font:700 12px var(--serifless);text-transform:uppercase;letter-spacing:.18em;margin:0 0 20px}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;background:rgba(246,243,234,.9);backdrop-filter:blur(18px)}.brand{display:flex;gap:11px;align-items:center}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--ink);color:var(--mint);font:800 18px var(--serifless)}.brand strong,.brand small{display:block;line-height:1}.brand strong{font:800 18px var(--serifless);letter-spacing:.08em}.brand small{font-size:9px;letter-spacing:.3em;margin-top:5px}.site-header nav{display:flex;gap:clamp(18px,2.5vw,36px);font-weight:600}.site-header nav a{position:relative}.site-header nav a:after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:right;transition:transform .25s ease}.site-header nav a:hover:after{transform:scaleX(1);transform-origin:left}.menu-button{display:none;border:0;background:none;font-weight:700;color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--mint);color:var(--ink);border:0;padding:16px 23px;border-radius:999px;font-weight:700;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.button:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(16,37,31,.17);background:#d3fa73}.button:focus-visible,.text-link:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.button-small{padding:11px 18px;font-size:14px}.button-light{background:var(--white)}
.hero{min-height:calc(100vh - 84px);display:grid;grid-template-columns:1.02fr .98fr;padding-top:clamp(34px,5vw,72px);padding-bottom:clamp(48px,6vw,88px);gap:clamp(38px,6vw,100px);align-items:center}.hero h1{font:800 clamp(51px,6.5vw,102px)/.94 var(--serifless);margin:0;max-width:900px;letter-spacing:-.062em}.hero h1 em,.section-heading h2 em,.testimonial-intro h2 em,.faq-intro h2 em,.contact h2 em,.closing-cta h2 em{font-style:normal;color:#21896f}.hero-text{font-size:clamp(17px,1.4vw,21px);max-width:620px;margin:28px 0 32px;color:#39534b}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.text-link{font-weight:700;border-bottom:1px solid}.trust-row{display:flex;gap:clamp(22px,4vw,52px);margin-top:58px;padding-top:24px;border-top:1px solid var(--line)}.trust-row div{display:grid}.trust-row strong{font:800 22px var(--serifless)}.trust-row span{font-size:13px;color:var(--muted)}.hero-visual{margin:0;min-height:620px;border-radius:240px 240px 28px 28px;background:#10251f;position:relative;overflow:hidden;color:var(--aqua);letter-spacing:.12em;text-transform:uppercase;font-size:12px}.hero-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,37,31,.05) 50%,rgba(16,37,31,.6))}.visual-tag{position:absolute;z-index:2;top:28px;left:50%;transform:translateX(-50%);white-space:nowrap;background:rgba(16,37,31,.78);backdrop-filter:blur(10px);padding:8px 14px;border-radius:999px}.visual-card{z-index:2;position:absolute;left:28px;right:28px;bottom:28px;background:var(--white);color:var(--ink);padding:22px 26px;border-radius:18px;display:grid;letter-spacing:0;text-transform:none}.visual-card b{font:700 18px var(--serifless)}.visual-card small{color:var(--muted)}.ticker{overflow:hidden;background:var(--mint);border-block:1px solid var(--ink);padding:16px 0}.ticker div{display:flex;justify-content:center;align-items:center;gap:clamp(18px,3vw,48px);white-space:nowrap;font:800 clamp(15px,1.5vw,21px) var(--serifless);text-transform:uppercase;letter-spacing:.05em}.ticker i{font-style:normal;font-size:13px}
.section-heading{display:grid;grid-template-columns:.7fr 2fr;gap:48px;margin-bottom:76px}.section-heading>div{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start}.section-heading h2,.testimonial-intro h2,.faq-intro h2,.contact h2,.closing-cta h2{font:700 clamp(38px,5vw,74px)/1.06 var(--serifless);letter-spacing:-.05em;margin:0}.dark-section .section-heading h2 em,.contact h2 em{color:var(--mint)}.section-number{font-size:13px;color:#82968f}.service-list{border-top:1px solid rgba(255,255,255,.18)}.service-item{display:grid;grid-template-columns:50px 70px minmax(0,1fr) 50px;align-items:center;gap:24px;min-height:150px;border-bottom:1px solid rgba(255,255,255,.18);transition:background .25s ease,padding .25s ease}.service-item:hover{background:rgba(255,255,255,.04);padding-inline:18px}.service-no{color:#80948d;font-size:13px}.service-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:var(--mint);font-size:24px}.service-item>div:nth-child(3){display:grid;grid-template-columns:minmax(150px,.6fr) 1fr;gap:30px;align-items:center}.service-item h3{font:700 clamp(25px,2.5vw,39px) var(--serifless);margin:0}.service-item p{color:#b5c3be;max-width:600px;margin:0}.service-item>a{font-size:28px;justify-self:end}.service-cta{margin-top:56px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--ink-2);padding:24px 28px;border-radius:18px}.service-cta p{margin:0;font-weight:700}
.about{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,10vw,160px);align-items:center;background:var(--aqua)}.about-stat{position:relative;padding:55px;border:1px solid rgba(16,37,31,.25);border-radius:50% 50% 24px 24px;min-height:540px;display:flex;flex-direction:column;justify-content:center}.about-stat:before{content:"✦";position:absolute;top:30px;right:40px;font-size:48px;color:#21896f}.about-stat span{font:700 13px var(--serifless);text-transform:uppercase;letter-spacing:.16em;margin-bottom:20px}.about-stat strong{font:800 clamp(48px,5.5vw,82px)/.95 var(--serifless);letter-spacing:-.055em}.about-copy h2{font:700 clamp(35px,4vw,58px)/1.06 var(--serifless);letter-spacing:-.045em;margin:0 0 28px}.about-copy>p:not(.eyebrow){font-size:20px;color:#2d5147}.about-copy ul{list-style:none;padding:0;margin:32px 0 0;border-top:1px solid rgba(16,37,31,.22)}.about-copy li{padding:14px 0;border-bottom:1px solid rgba(16,37,31,.22);font-weight:700}.about-copy li:before{content:"✓";margin-right:12px;color:#21896f}
.portfolio{background:var(--paper)}.gallery{display:grid;grid-template-columns:1.12fr .88fr;grid-template-rows:390px 390px;gap:20px}.gallery figure{position:relative;overflow:hidden;border-radius:var(--radius);margin:0}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.gallery figure:hover img{transform:scale(1.035)}.gallery-main{grid-row:1/3}.gallery figcaption{position:absolute;left:20px;right:20px;bottom:20px;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);padding:17px 19px;border-radius:14px;display:flex;justify-content:space-between;align-items:center;gap:12px}.gallery figcaption b{font:700 17px var(--serifless)}.gallery figcaption span{font-size:13px;color:var(--muted)}.gallery-note{margin:12px 0 0;color:var(--muted);font-size:13px}
.testimonials{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(60px,10vw,150px);background:#f0eadc}.testimonial-intro{align-self:start;position:sticky;top:120px}.testimonial-intro .text-link{display:inline-block;margin-top:36px}.quote-stack{border-top:1px solid var(--line)}blockquote{margin:0;padding:42px 0;border-bottom:1px solid var(--line)}.stars{color:#21896f;letter-spacing:.12em}blockquote>p{font:500 clamp(21px,2.2vw,30px)/1.45 var(--serifless);letter-spacing:-.02em}blockquote footer{display:flex;gap:13px;align-items:center}blockquote footer>span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--ink);color:var(--mint);font-weight:700}blockquote footer div{display:grid}blockquote small{color:var(--muted)}
.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(50px,9vw,140px)}.faq-intro>p:last-child{color:var(--muted);max-width:300px;margin-top:30px}.accordion{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:23px 0}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font:700 19px var(--serifless)}summary::-webkit-details-marker{display:none}summary span{transition:transform .25s ease}details[open] summary span{transform:rotate(45deg)}details p{color:var(--muted);max-width:680px;margin:18px 50px 3px 0}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(55px,10vw,150px)}.contact-copy>p:not(.eyebrow){color:#b5c3be;max-width:540px;font-size:18px}.contact-cards{display:grid;margin-top:44px;border-top:1px solid rgba(255,255,255,.18)}.contact-cards a{display:grid;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.18)}.contact-cards small{color:#9cafaa}.contact-cards b{font:700 19px var(--serifless)}.contact-form{background:var(--white);color:var(--ink);padding:clamp(28px,4vw,50px);border-radius:var(--radius)}.field{display:grid;gap:8px;margin-bottom:20px}.field label{font-weight:700;font-size:14px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#f8f8f3;padding:14px 15px;border-radius:10px;color:var(--ink)}.field textarea{resize:vertical}.contact-form .button{width:100%;margin-top:8px}.form-note{color:var(--muted);font-size:12px;text-align:center;margin:12px 0 0}
.location{min-height:560px;display:grid;grid-template-columns:.72fr 1.28fr;background:var(--aqua)}.location iframe{width:100%;height:100%;min-height:560px;border:0;filter:saturate(.55) contrast(1.04)}.location-card{align-self:center;padding:clamp(50px,8vw,110px)}.location-card h2{font:700 clamp(37px,4.5vw,66px)/1 var(--serifless);letter-spacing:-.05em;margin:0 0 24px}.location-card p:not(.eyebrow){font-size:19px;margin-bottom:32px}.closing-cta{text-align:center;padding:clamp(90px,12vw,170px) 22px;position:relative;overflow:hidden}.closing-cta:before,.closing-cta:after{content:"✦";position:absolute;color:var(--coral);font-size:70px}.closing-cta:before{left:10%;top:25%}.closing-cta:after{right:10%;bottom:20%}.closing-cta h2{font-size:clamp(46px,7vw,105px);max-width:1100px;margin:0 auto 42px}.closing-cta .eyebrow{color:var(--muted)}footer{background:var(--ink);color:var(--white);padding:60px clamp(22px,5vw,76px) 28px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.brand-footer .brand-mark{background:var(--mint);color:var(--ink)}footer>p{grid-column:1;color:#a8b9b3;margin:0}footer>div{grid-column:2;grid-row:1/3;display:flex;gap:26px}footer>small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:22px;color:#82968f}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:60;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.22);transition:transform .25s ease}.whatsapp-float:hover{transform:translateY(-4px) scale(1.04)}.whatsapp-float svg{width:30px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){.site-header nav{gap:16px}.site-header nav a:nth-child(3),.site-header nav a:nth-child(4){display:none}.hero{grid-template-columns:1fr 1fr;gap:36px}.hero h1{font-size:clamp(50px,7vw,76px)}.hero-visual{min-height:540px}.section-heading{grid-template-columns:1fr}.section-heading>div{flex-direction:row}.about-stat{min-height:450px}.testimonials{grid-template-columns:1fr}.testimonial-intro{position:static}.faq{grid-template-columns:1fr}.contact{gap:50px}}
@media(max-width:760px){html{scroll-padding-top:72px}.site-header{height:72px}.desktop-cta{display:none}.menu-button{display:block}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--cream);padding:22px;flex-direction:column;border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(16,37,31,.08)}.site-header nav.open{display:flex}.site-header nav a:nth-child(n){display:block;padding:6px 0}.hero{grid-template-columns:1fr;padding-top:54px}.hero-visual{min-height:500px;max-width:560px;width:100%;justify-self:center}.trust-row{margin-top:42px}.ticker div{justify-content:flex-start;width:max-content;animation:marquee 16s linear infinite}.section-heading{margin-bottom:48px}.section-heading>div{gap:24px}.service-item{grid-template-columns:35px 52px 1fr 30px;gap:13px;padding:24px 0}.service-icon{width:46px;height:46px}.service-item>div:nth-child(3){grid-template-columns:1fr;gap:8px}.service-item h3{font-size:25px}.service-item p{font-size:14px}.service-cta{align-items:flex-start;flex-direction:column}.about{grid-template-columns:1fr}.about-stat{min-height:430px;max-width:560px;width:100%;justify-self:center}.gallery{grid-template-columns:1fr;grid-template-rows:520px 360px 360px}.gallery-main{grid-row:auto}.testimonials,.contact{grid-template-columns:1fr}.location{grid-template-columns:1fr}.location iframe{min-height:420px}.closing-cta:before,.closing-cta:after{font-size:40px}footer{grid-template-columns:1fr}footer>p,footer>div,footer>small{grid-column:1;grid-row:auto}footer>div{flex-wrap:wrap}}
@media(max-width:520px){.hero h1{font-size:50px}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{display:grid;grid-template-columns:1fr 1fr}.trust-row div:last-child{grid-column:1/-1}.hero-visual{min-height:410px;border-radius:170px 170px 24px 24px}.visual-card{left:16px;right:16px;bottom:16px}.section-heading>div{flex-direction:column}.service-item{grid-template-columns:32px 1fr 28px}.service-icon{display:none}.service-item>div:nth-child(3){grid-column:2}.about-stat{min-height:370px;padding:36px}.gallery{grid-template-rows:430px 330px 330px}.gallery figcaption{align-items:flex-start;flex-direction:column}.contact-form{margin-inline:-8px}.location-card{padding-inline:28px}.closing-cta:before{left:3%}.closing-cta:after{right:3%}footer>div{flex-direction:column;gap:9px}.whatsapp-float{right:16px;bottom:16px;width:54px;height:54px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.ticker div{animation:none!important}.button,.gallery img,.whatsapp-float{transition:none}}@keyframes marquee{to{transform:translateX(-40%)}}
