
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#17251f;--green:#243d32;--green2:#365849;--cream:#f5f2eb;--paper:#fffdf8;--muted:#6c756e;--line:#deded5;--accent:#c28b5b;--white:#fff;--radius:18px;--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(var(--max),calc(100% - 44px));margin-inline:auto}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--accent)}.eyebrow:before{content:"";width:28px;height:1px;background:currentColor}.section{padding:92px 0}.section-cream{background:var(--cream)}.section-dark{background:var(--green);color:white}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-head h2{max-width:650px;margin:12px 0 0;font:700 clamp(2rem,4vw,3.35rem)/1.1 Manrope,sans-serif;letter-spacing:-.045em}.section-head p{max-width:380px;color:var(--muted);margin:0}.section-dark .section-head p{color:#c5d0c8}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.04em}h1{font-size:clamp(2.9rem,6.5vw,5.6rem);line-height:.99;font-weight:700}h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.1}h3{font-size:1.25rem;line-height:1.25}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 22px;border:1px solid transparent;border-radius:999px;background:var(--green);color:#fff;font-weight:700;font-size:.9rem;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px);background:var(--green2)}.btn-light{background:var(--cream);color:var(--ink)}.btn-light:hover{background:#fff}.btn-outline{background:transparent;color:inherit;border-color:currentColor}.btn-outline:hover{background:rgba(255,255,255,.1)}.arrow{font-size:1.1rem}.site-header{height:82px;display:flex;align-items:center;border-bottom:1px solid rgba(23,37,31,.09);background:rgba(255,253,248,.96);position:relative;z-index:20}.nav-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;font:800 1.18rem Manrope,sans-serif;letter-spacing:-.04em}.brand-mark{width:38px;height:38px;border-radius:12px;background:var(--green);color:white;display:grid;place-items:center;font:800 1rem Manrope;letter-spacing:-.08em}.brand span small{display:block;font:600 .58rem 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:1px}.nav-links{display:flex;align-items:center;gap:26px}.nav-links a{font-size:.88rem;color:#435048;font-weight:600}.nav-links a:hover,.nav-links a.active{color:var(--accent)}.nav-cta{padding:12px 17px!important;border-radius:999px;background:var(--green);color:white!important}.menu-toggle{display:none;border:0;background:transparent;font-size:1.6rem;color:var(--ink)}.hero{padding:34px 0 72px}.hero-grid{display:grid;grid-template-columns:1fr 1.04fr;gap:52px;align-items:center;min-height:590px}.hero-copy{padding:32px 0}.hero-copy h1{margin:20px 0 24px}.hero-copy h1 em{font-style:normal;color:var(--green2)}.hero-copy>p{font-size:1.08rem;color:var(--muted);max-width:500px;margin-bottom:30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.trust-row{display:flex;gap:24px;margin-top:40px;padding-top:24px;border-top:1px solid var(--line);flex-wrap:wrap}.trust-item{display:flex;align-items:center;gap:10px;font-size:.83rem;font-weight:600}.trust-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--cream);color:var(--green)}.hero-visual{position:relative;min-height:550px}.hero-photo{position:absolute;inset:0 0 28px 28px;width:calc(100% - 28px);height:calc(100% - 28px);object-fit:cover;border-radius:220px 220px 20px 20px}.photo-label{position:absolute;bottom:0;left:0;background:var(--paper);padding:18px 22px;border-radius:14px;box-shadow:0 12px 40px #17251f15;max-width:260px}.photo-label strong{display:block;font:700 1rem Manrope}.photo-label span{font-size:.83rem;color:var(--muted)}.photo-badge{position:absolute;right:-12px;top:44px;background:var(--accent);color:white;width:95px;height:95px;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:.7rem;line-height:1.3;font-weight:700;transform:rotate(8deg)}.photo-badge b{font:700 1.4rem Manrope;display:block}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 45px #17251f10}.service-image{height:225px;overflow:hidden}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-card:hover img{transform:scale(1.04)}.service-content{padding:25px}.service-content p{color:var(--muted);font-size:.93rem;margin-bottom:18px}.text-link{font-size:.9rem;font-weight:700;color:var(--green);display:inline-flex;gap:8px;align-items:center}.text-link:hover{color:var(--accent)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split-image{height:520px;border-radius:var(--radius);overflow:hidden;position:relative}.split-image img{width:100%;height:100%;object-fit:cover}.split-copy h2{margin:14px 0 20px}.split-copy>p{color:var(--muted);font-size:1.02rem}.check-list{list-style:none;padding:0;margin:28px 0;display:grid;gap:14px}.check-list li{display:flex;gap:12px;align-items:flex-start}.check{flex:0 0 23px;width:23px;height:23px;border-radius:50%;background:#e6eee7;color:var(--green);display:grid;place-items:center;font-size:.8rem;font-weight:800;margin-top:2px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff25;margin-top:34px}.stat{padding:24px 20px 8px 0}.stat strong{display:block;font:700 2.1rem Manrope;color:#f0c39c}.stat span{font-size:.82rem;color:#d1dbd4}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.process-item{border-top:1px solid #ffffff45;padding-top:20px}.process-num{font:700 2.1rem Manrope;color:#e5b58c}.process-item h3{margin:15px 0 8px}.process-item p{color:#c5d0c8;font-size:.92rem}.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:230px 230px;gap:16px}.gallery-item{position:relative;border-radius:16px;overflow:hidden;background:#ddd}.gallery-item:first-child{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-item:hover img{transform:scale(1.04)}.gallery-caption{position:absolute;inset:auto 0 0;padding:45px 20px 18px;color:white;background:linear-gradient(transparent,#0009);font-weight:700}.quote-cta{padding:56px;border-radius:24px;background:var(--accent);color:white;display:flex;align-items:center;justify-content:space-between;gap:30px}.quote-cta h2{max-width:650px;margin:12px 0 0}.quote-cta .eyebrow{color:#fff1e5}.faq-list{max-width:850px;margin:auto}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;border:0;background:none;text-align:left;font:700 1.05rem Manrope;color:var(--ink);cursor:pointer}.faq-q span:last-child{font-size:1.5rem;color:var(--accent)}.faq-a{display:none;color:var(--muted);padding:0 40px 22px 0;max-width:700px}.faq-item.open .faq-a{display:block}.page-hero{padding:78px 0 65px;background:var(--cream)}.page-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center}.page-hero h1{font-size:clamp(2.7rem,5vw,4.6rem);margin:18px 0}.page-hero p{max-width:590px;color:var(--muted);font-size:1.05rem}.page-hero-image{height:350px;border-radius:18px;overflow:hidden}.page-hero-image img{width:100%;height:100%;object-fit:cover}.service-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-detail{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:white}.service-detail img{width:100%;height:100%;min-height:270px;object-fit:cover}.service-detail-copy{padding:28px}.service-detail-copy p{color:var(--muted);font-size:.93rem}.service-detail-copy ul{padding-left:18px;color:var(--muted);font-size:.9rem}.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.value-card{background:var(--cream);padding:24px;border-radius:16px}.value-card p{color:var(--muted);font-size:.92rem;margin-bottom:0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.contact-panel{background:var(--green);color:white;border-radius:20px;padding:34px;height:fit-content}.contact-panel p{color:#c5d0c8}.contact-method{padding:18px 0;border-top:1px solid #ffffff25}.contact-method span{display:block;color:#c5d0c8;font-size:.8rem}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.85rem;font-weight:700}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:white;border-radius:10px;padding:14px 15px;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--green2);box-shadow:0 0 0 3px #36584918}.field textarea{min-height:140px;resize:vertical}.form-note{font-size:.8rem;color:var(--muted)}.footer{background:#15251e;color:white;padding:54px 0 24px}.footer-top{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:45px;padding-bottom:38px}.footer .brand{margin-bottom:15px}.footer p{color:#c5d0c8;max-width:340px;font-size:.9rem}.footer h3{font-size:.95rem;letter-spacing:0;margin-bottom:14px}.footer-links{display:grid;gap:10px;color:#c5d0c8;font-size:.9rem}.footer-links a:hover{color:white}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff25;padding-top:20px;color:#aebbb2;font-size:.78rem}.notice{padding:12px 16px;background:#f8eee4;border-radius:10px;color:#6b4a2e;font-size:.85rem;margin-top:15px}
@media(max-width:900px){.nav-links{gap:16px}.nav-links a{font-size:.82rem}.hero-grid{gap:28px;min-height:auto}.hero-visual{min-height:470px}.service-grid{grid-template-columns:repeat(2,1fr)}.split{gap:36px}.process-grid{grid-template-columns:repeat(2,1fr);row-gap:30px}.gallery-grid{grid-template-rows:190px 190px}.service-detail-grid{grid-template-columns:1fr}.contact-grid{gap:30px}}
@media(max-width:700px){.container{width:min(var(--max),calc(100% - 32px))}.site-header{height:72px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:71px;left:0;right:0;background:var(--paper);padding:18px 22px 24px;box-shadow:0 16px 24px #17251f12;flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links a{padding:12px 0;font-size:.95rem}.nav-links .nav-cta{text-align:center;margin-top:10px;padding:13px!important}.hero{padding:15px 0 48px}.hero-grid,.page-hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-copy{padding:25px 0 0}.hero-copy h1{font-size:clamp(2.8rem,13vw,4.4rem)}.hero-visual{min-height:400px}.hero-photo{inset:0 0 22px 16px;width:calc(100% - 16px);height:calc(100% - 22px);border-radius:150px 150px 16px 16px}.photo-badge{right:0;width:78px;height:78px}.trust-row{gap:14px}.trust-item{font-size:.78rem}.section{padding:64px 0}.section-head{display:block}.section-head p{margin-top:16px}.service-grid{grid-template-columns:1fr}.service-image{height:245px}.split-image{height:350px;order:2}.stats{margin-top:25px}.process-grid{grid-template-columns:1fr 1fr;gap:20px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:240px 170px 170px}.gallery-item:first-child{grid-row:auto;grid-column:span 2}.quote-cta{padding:30px 24px;display:block}.quote-cta .btn{margin-top:22px}.page-hero{padding:52px 0}.page-hero-grid{gap:24px}.page-hero-image{height:260px}.service-detail{grid-template-columns:1fr}.service-detail img{height:220px;min-height:0}.about-values{grid-template-columns:1fr}.contact-form{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-top{grid-template-columns:1fr;gap:28px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}}
