@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{--forest:#24473c;--green:#64866c;--cream:#faf8f2;--coral:#cb705b;--ink:#18312e;--muted:#61706b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;background:#fff}h1,h2,h3,.brand{font-family:Manrope,sans-serif}a{text-decoration:none;color:inherit}img{width:100%;display:block;object-fit:cover}.header{height:90px;padding:0 max(5%,calc((100vw - 1250px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 16px #243e3010}.brand{display:flex;gap:13px;align-items:center}.brand-mark{font-size:44px;color:var(--coral);line-height:1}.brand-mark span{color:var(--forest);font-size:28px}.brand strong{font-size:24px;letter-spacing:-1.5px}.brand em{color:var(--green);font-style:normal}.brand small{display:block;text-transform:uppercase;font-size:8px;letter-spacing:1.4px;margin-top:2px}nav{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:700}nav>a:not(.btn):hover{color:var(--coral)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--coral);color:white;padding:17px 26px;border-radius:35px;font-weight:700;font-size:14px;border:0;cursor:pointer;transition:.2s}.btn:hover{background:#ad5847;transform:translateY(-2px)}.btn-small{padding:13px 20px}.menu-toggle{display:none}.hero{min-height:600px;display:grid;grid-template-columns:48% 52%;background:var(--cream)}.hero-copy{padding:100px 6% 50px max(10%,calc((100vw - 1250px)/2));display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{color:var(--green);font-size:11px;letter-spacing:2.5px;font-weight:800}.hero h1{font-size:clamp(42px,5vw,74px);letter-spacing:-3.5px;line-height:1.13;margin:25px 0}.hero h1 i{color:var(--green);font-family:Georgia,serif;font-weight:400}.hero p{font-size:17px;line-height:1.8;max-width:460px;color:#455853;margin:0 0 28px}.hero-points{display:flex;flex-wrap:wrap;gap:20px;margin-top:55px;color:var(--forest);font-size:12px;font-weight:700}.hero-photo{position:relative;min-height:580px}.hero-photo>img{height:100%}.photo-note{position:absolute;right:8%;top:14%;width:150px;height:150px;background:#f6e3d6;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(8deg);font-family:Georgia,serif;font-style:italic;font-size:19px;color:var(--forest)}.section{padding:100px 6%}.services{background:#fffdf9}.section-head{text-align:center;max-width:750px;margin:0 auto 44px}.section-head h2,h2{font-size:clamp(29px,3.2vw,43px);letter-spacing:-1.6px;line-height:1.2}.section-head p{color:var(--muted);line-height:1.7}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:1180px;margin:auto}.service-card{background:white;border-radius:17px;overflow:hidden;box-shadow:0 8px 32px #274b3510}.service-card img{height:245px}.card-body{padding:25px 28px 30px}.service-icon{background:#f8e7de;border-radius:50%;width:54px;height:54px;display:grid;place-items:center;font-size:26px;margin-top:-53px;position:relative;border:5px solid white;box-sizing:content-box}.service-card h3{margin:14px 0 9px;font-size:20px}.service-card p{line-height:1.7;color:var(--muted);min-height:90px}.service-card a{color:var(--green);font-weight:800;font-size:14px}.trust{display:grid;grid-template-columns:1fr 1fr;background:#f0f4eb}.trust-photo img{height:100%;min-height:540px}.trust-copy{padding:80px 10%;align-self:center}.trust-copy h2{max-width:560px}.benefit{display:flex;gap:18px;margin-top:24px}.benefit>span{background:#fff8e2;flex:0 0 48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:25px;color:var(--forest)}.benefit h3{margin:0 0 5px;font-size:16px}.benefit p{margin:0;color:var(--muted);line-height:1.5}.area{background:var(--forest);color:white;padding:70px max(6%,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:40px}.area>div{max-width:680px}.area .eyebrow{color:#b6d3b6}.area h2{margin:15px 0}.area p{line-height:1.7;color:#d9e7dc}.btn-light{background:white;color:var(--forest);white-space:nowrap}.btn-light:hover{background:#f6e3d6}.contact{display:grid;grid-template-columns:40% 60%;gap:40px;max-width:1300px;margin:auto}.contact-intro p{color:var(--muted);line-height:1.8;max-width:370px}.contact-hint{font-size:13px}form{padding-right:40px}label{font-size:13px;font-weight:700;display:block;margin-bottom:20px}input,select,textarea{display:block;width:100%;padding:15px;border:1px solid #dce3dc;border-radius:10px;background:#fff;font:inherit;font-size:14px;margin-top:8px;color:var(--ink)}input:focus,textarea:focus,select:focus{outline:2px solid var(--green)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}footer{background:#17382e;color:white;padding:55px 6%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:25px}footer strong{font-family:Manrope;font-size:24px}footer p{color:#c8d9cd;font-size:13px}footer small{width:100%;color:#a6b9ab}@media(max-width:850px){.header{height:75px;padding:0 5%}.brand strong{font-size:20px}.menu-toggle{display:block;background:none;border:0;font-size:28px;color:var(--forest);cursor:pointer}nav{display:none;position:absolute;top:75px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:25px 6%;box-shadow:0 15px 20px #0001}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 7% 55px}.hero-photo{min-height:370px;height:370px}.hero-points{margin-top:35px}.cards{grid-template-columns:1fr;max-width:460px}.trust{grid-template-columns:1fr}.trust-photo img{height:350px;min-height:0}.trust-copy{padding:65px 7%}.area{flex-direction:column;align-items:flex-start}.contact{grid-template-columns:1fr;padding:70px 7%;gap:15px}form{padding:0}.section{padding:70px 7%}}@media(max-width:480px){.form-grid{grid-template-columns:1fr}.photo-note{width:115px;height:115px;font-size:15px}.hero h1{letter-spacing:-2px}.hero-points{gap:12px}.service-card img{height:220px}}

/* V2: readable typography and text-free photography */
.hero{grid-template-columns:minmax(0,48%) minmax(0,52%)}.hero-copy{min-width:0;padding-right:8%}.hero h1{font-size:clamp(40px,4.2vw,64px);letter-spacing:-2.6px;overflow-wrap:normal}.hero-photo{overflow:hidden}.hero-photo>img{object-position:center center}.trust-photo{min-width:0;overflow:hidden}.trust-photo img{object-position:center center}.contact-details{display:flex;flex-direction:column;gap:10px;margin:24px 0}.contact-details a{font-weight:700;color:var(--forest);overflow-wrap:anywhere}.contact-details a:hover,footer a:hover{text-decoration:underline}@media(max-width:850px){.hero{grid-template-columns:1fr}.hero h1{font-size:clamp(39px,8vw,56px)}}

/* V3: keep editorial photography at a controlled display size */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr)}
.hero-copy{padding-right:7%;min-width:0}
.hero h1{font-size:clamp(39px,4.3vw,62px);letter-spacing:-2.5px}
.hero-photo{overflow:hidden;min-width:0}
.hero-photo>img{object-fit:cover;object-position:52% center}
.trust-photo{overflow:hidden}
.trust-photo img{object-fit:cover;object-position:48% center}
@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-photo{height:350px;min-height:350px}.hero-photo>img{height:350px}.trust-photo img{height:350px;object-position:center 40%}}
