.home-hero{position:relative;min-height:620px;display:flex;align-items:center;background:url(../../img/site1.jpg) center/cover no-repeat;color:#fff;isolation:isolate}
.hero-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,34,27,.91) 0%,rgba(8,34,27,.76) 52%,rgba(8,34,27,.36) 100%)}
.hero-grid{display:grid;grid-template-columns:1.15fr .65fr;gap:76px;align-items:center;padding-block:90px}
.hero-copy{max-width:760px}
.hero-kicker{display:block;margin-bottom:16px;color:#bdddac;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.hero-copy h1{color:#fff;font-size:clamp(2.7rem,6vw,5rem);line-height:1.12;margin:0 0 22px;letter-spacing:-.03em}
.hero-copy h1 span{color:#b9dda5}
.hero-copy p{max-width:720px;font-size:clamp(1.05rem,2vw,1.28rem);color:#e0ebe6;margin-bottom:28px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-facts{display:grid;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:22px;padding:18px;backdrop-filter:blur(5px)}
.hero-facts div{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:14px;padding:17px 14px;border-radius:13px;background:rgba(0,0,0,.12)}
.hero-facts strong{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:50%;background:#fff;color:#173d32;font-size:.82rem}
.hero-facts span{font-weight:700;color:#eef6f2}

.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start;margin-bottom:38px}
.intro-grid p{font-size:1.13rem;color:#4e6259;margin:0;max-width:760px}
.service-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.preview-card{position:relative;min-height:285px;border:1px solid var(--line);border-radius:20px;padding:28px;background:#fff;box-shadow:var(--shadow-soft);overflow:hidden}
.preview-card:after{content:"";position:absolute;width:135px;height:135px;border:1px solid #dce9df;border-radius:50%;left:-60px;bottom:-60px}
.preview-card .card-index{font-size:.78rem;font-weight:900;color:var(--leaf-dark);letter-spacing:.08em}
.preview-card h3{font-size:1.45rem;margin:18px 0 10px}
.preview-card p{color:#5b6e65;margin-bottom:26px}
.preview-card a{position:absolute;bottom:26px;right:28px;font-weight:800;text-decoration:none}
.advisory-card{background:#f2f7f3}

.decision-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}
.decision-grid h2{font-size:clamp(2rem,4vw,3.2rem);max-width:640px}
.decision-grid p{color:#cbdcd3;max-width:680px;font-size:1.07rem;margin-bottom:26px}
.decision-cards{display:grid;gap:12px}
.decision-cards div{display:flex;align-items:center;gap:18px;padding:20px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.06)}
.decision-cards span{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:#b9dda5;color:#173d32;font-size:.8rem;font-weight:900}
.decision-cards strong{font-size:1.18rem;color:#fff}

.section-heading-row{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:28px}
.section-heading-row h2{margin-bottom:0}
.team-photo-strip{display:grid;grid-template-columns:1.05fr .9fr .9fr;gap:16px}
.team-photo-strip figure{position:relative;margin:0;height:400px;border-radius:20px;overflow:hidden;background:#dde7e0}
.team-photo-strip img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.team-photo-strip figure:hover img{transform:scale(1.02)}
.team-photo-strip figcaption{position:absolute;right:14px;bottom:14px;padding:8px 12px;border-radius:9px;background:rgba(16,47,39,.88);color:#fff;font-weight:800;backdrop-filter:blur(5px)}

.cta-card{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:36px;border:1px solid #e4e1d4;border-radius:20px;background:#fff}
.cta-card h2{font-size:clamp(1.6rem,3vw,2.25rem);margin-bottom:8px}
.cta-card p{margin:0;color:#607169}
.visitor-line{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:22px;color:#7a847f;font-size:.83rem}
.visitor-line strong{color:var(--green-800)}

@media(max-width:960px){.hero-grid,.intro-grid,.decision-grid{grid-template-columns:1fr;gap:38px}.home-hero{min-height:auto}.hero-facts{max-width:680px}.service-preview-grid{grid-template-columns:1fr}.preview-card{min-height:230px}.team-photo-strip{grid-template-columns:1fr 1fr}.team-photo-strip figure:first-child{grid-column:1/-1;height:420px}}
@media(max-width:640px){.hero-grid{padding-block:66px}.hero-copy h1{font-size:2.65rem}.hero-actions .btn{width:100%}.section-heading-row,.cta-card{align-items:flex-start;flex-direction:column}.team-photo-strip{grid-template-columns:1fr}.team-photo-strip figure,.team-photo-strip figure:first-child{grid-column:auto;height:380px}.service-preview-grid{gap:12px}.preview-card{padding:24px}.preview-card a{right:24px}}

.home-hero{background-image:url(../../img/team-kinan.webp);background-position:25% 38%}
.hero-overlay{background:linear-gradient(270deg,rgba(8,34,27,.96),rgba(8,34,27,.88) 45%,rgba(8,34,27,.35))}
.team-photo-strip{grid-template-columns:repeat(3,1fr)}
.team-photo-strip img{object-position:center 40%}
.decision-cards span{flex-shrink:0}
@media(max-width:960px){.team-photo-strip{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.team-photo-strip{grid-template-columns:1fr}.home-hero{background-position:center}}

.section-dark .eyebrow{color:#b9dda5}
.home-hero{background:#102f27}
.home-hero::before{content:"";position:absolute;inset:0 auto 0 0;width:45%;z-index:-2;background:url(../../img/team-kinan.webp) center 38%/cover no-repeat}
.hero-overlay{background:linear-gradient(270deg,#102f27 0%,rgba(16,47,39,.98) 46%,rgba(16,47,39,.42) 75%,rgba(16,47,39,.25) 100%)}
.cta-card>.btn{flex-shrink:0}
.preview-card{padding-bottom:64px}
@media(max-width:960px){.home-hero::before{width:100%}.hero-overlay{background:rgba(16,47,39,.87)}}

/* Display the supplied overview in full without cropping or text overlays. */
.home-hero{display:block;min-height:auto;background:#102f27;padding-bottom:42px}
.home-hero::before,.home-hero .hero-overlay{display:none}
.hero-grid{padding-block:62px 38px}
.hero-main-image img{display:block;width:100%;height:auto;border-radius:16px;border:1px solid rgba(255,255,255,.2)}
@media(max-width:640px){.hero-grid{padding-block:42px 28px}.home-hero{padding-bottom:26px}.hero-main-image img{border-radius:9px}}
