/* Environmental edition: forest green, sage, warm ivory, river blue accents. */
:root{--navy:#123c2c;--ink:#17382c;--blue:#247fa9;--muted:#62746b;--line:#dbe5dc;--paper:#f4f6ef}
body{background:#fbfcf7;color:var(--ink)}
.nav{position:sticky;top:0;z-index:20;background:#fbfcf7f2;color:var(--ink);border-bottom:1px solid var(--line);padding-block:16px}
.brand img{background:transparent}.brand small{color:var(--muted)}
.btn{border-radius:100px;min-height:48px}.primary,.dark{background:#1c6346;color:#fff}.primary:hover,.dark:hover{background:#144d35}
.hero.shell{margin:20px auto 0;width:calc(100% - 40px);max-width:1600px;border-radius:28px;min-height:690px;padding:92px 6%;overflow:hidden;background:#123c2c}
.hero h1{font-weight:600;letter-spacing:-.065em;font-size:clamp(3rem,5.5vw,6rem);line-height:1.06;max-width:740px}
.hero-copy{max-width:720px}.hero .lead{max-width:555px;color:#e0e9dd}.hero .eyebrow{color:#cbe0be;font-size:.7rem;letter-spacing:.16em}
.hero-photo{border-radius:0}.hero-photo>img{object-position:72% center}.hero-photo:after{background:linear-gradient(90deg,#0d3027ed 0%,#123c2cce 32%,#123c2c50 66%,#123c2c18),linear-gradient(0deg,#123c2c55,transparent 50%)}
.hero .primary{background:#d5e9ae;color:#17382c}.hero .primary:hover{background:#e6f1cf}.spark{color:#c4e4a7}
.hero .text-link{color:#fff}.service-tags a{color:#eff5e8;border-color:#cfe4c54d;background:#17382c33}.service-tags a:hover{color:#fff;border-color:#d5e9ae}
.photo-caption{background:#f6faefeb;border:1px solid #e3efdd;color:#17382c;right:46px;bottom:38px;border-radius:18px;backdrop-filter:blur(14px);width:290px;padding:23px}
.photo-caption span{color:#33734f;font-size:.65rem}.photo-caption b{font-size:1.06rem;font-weight:600;line-height:1.4}.photo-stamp{display:none}.image-disclosure{font-size:.62rem;bottom:14px;color:#eef6e6}
.expertise-strip{background:#fbfcf7;color:#45694f;border-bottom:1px solid var(--line);padding:27px 6%;font-size:.78rem;font-weight:500}
.finder{padding-block:88px;gap:90px}.finder h2{font-weight:500}.finder-control{background:#edf3e8;border:1px solid #d9e6d1;border-radius:22px;padding:32px}.finder-links a{background:#fff;color:#23644a;border-color:#c5dac9;border-radius:100px;font-size:.88rem}.finder-control select{border-color:#cadac7;border-radius:12px}.finder-control .text-link{color:#247fa9}
h2{font-weight:500;letter-spacing:-.055em}h3{font-weight:600}.services{padding-top:12px}.section-head>p{max-width:440px}
.service-grid{grid-template-columns:repeat(2,1fr);gap:24px}.service-card{border-radius:22px;background:#fff;padding:28px;min-height:350px;position:relative;overflow:hidden}.service-card-image{height:180px;object-fit:cover;border-radius:12px;margin-bottom:24px}.service-card h3{font-size:2rem}.card-top{color:#5e7666}.card-link{color:#247fa9}.service-card:hover{background:#173f2b;color:#fff;transform:translateY(-4px)}.service-card:hover .card-top{color:#c5dfb5}
.about{background:#173f2b;border-radius:28px;width:calc(100% - 40px);margin:auto;padding-block:88px}.about h2{color:#e4f0cf}.about .eyebrow{color:#bbd3a2}.about .lead,.values p{color:#c8d8c5}.values span{color:#a7cf80}.values>div{border-color:#bdd3b72e}.about-grid{gap:85px}
.coverage{background:#fbfcf7;padding-block:88px}.area-list span{border-radius:12px;background:#f0f4ea}.sector-list span{color:#5b7867;border-color:#cad7c6}.coverage .small{color:var(--muted)}
.steps b{background:#e5efe0;color:#33724b;border-color:#cbdcc2}.steps h3{font-size:1.18rem}.steps{position:relative}.steps>div{border-top:1px solid #cad9c3;padding-top:24px}
.check{background:#e5f2f7;border-color:#cadde6;border-radius:26px;padding:44px}.check h2{color:#174f66}.check .eyebrow{color:#247fa9}.check-box{border-radius:18px}.progress span{background:#247fa9}.check .dark{background:#247fa9}.check .text-link{color:#1d668a}
.article-card{border-radius:18px}.article-card h3{font-size:1.08rem;line-height:1.45}.article-card>span{color:#247fa9}.article-placeholder{background:#dae7d2;color:#456645}.search input{background:#fff;border-radius:100px}.article-grid{row-gap:28px}.article-card:hover{box-shadow:0 15px 35px #173f2b14}
.faq summary{font-size:1rem}.contact{background:#123c2c}.contact .eyebrow{color:#c3e09e}.contact .lead,.contact-info,.contact-info a{color:#d9e8d1}.contact form{border-radius:22px;background:#f9fcf5}.contact input,.contact textarea,.contact select{background:#fff;border-color:#d1ddcc;border-radius:10px}
.footer{background:#fbfcf7}.floating-wa{background:#1c6346;color:#fff;box-shadow:0 7px 30px #163f2b33}
.detail-hero{background:#eaf1e2;border-color:#d5e2ce}.detail-hero h1{color:#123c2c;font-weight:500}.note{background:#e7f3f7;border-color:#c6dfe9}.reading h1{color:#163f2c;font-weight:600}.service-detail-image{border-radius:22px}.article-body a{color:#247fa9;text-decoration:underline}
.load-more-wrap{text-align:center;margin-top:32px}.load-more{background:#fff;border:1px solid #a4baa6;color:#235d42;padding:14px 28px;border-radius:100px;font-weight:600}
@media(max-width:1050px){.hero.shell{min-height:660px;padding-inline:44px}.hero h1{font-size:4.5rem}.hero-copy{max-width:600px}.photo-caption{right:30px;width:260px}.finder,.about-grid{gap:45px}}
@media(max-width:760px){.nav{padding:12px 18px}.nav nav{background:#fbfcf7}.hero.shell{width:calc(100% - 20px);margin-top:10px;border-radius:20px;min-height:730px;padding:58px 25px 180px}.hero h1{font-size:clamp(2.7rem,10.2vw,4rem)}.hero .lead{font-size:.98rem;max-width:100%}.hero-photo>img{object-position:65% center}.hero-photo:after{background:linear-gradient(90deg,#123c2ce8,#123c2c88),linear-gradient(0deg,#123c2c45,transparent)}.photo-caption{left:25px;right:25px;width:auto;bottom:42px;padding:18px}.photo-caption b{font-size:.94rem}.hero .eyebrow{max-width:none;font-size:.62rem;line-height:1.7}.service-tags{gap:7px;margin-top:24px}.service-tags a{font-size:.65rem;padding:5px 10px}.image-disclosure{bottom:16px;right:25px}.expertise-strip{font-size:.72rem;gap:15px;padding:24px 18px}.finder{padding-block:48px;gap:24px}.finder-control{padding:24px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:22px}.service-card h3{font-size:1.8rem}.service-card-image{height:170px}.about{width:calc(100% - 20px);border-radius:20px;padding-block:50px}.about-grid{gap:30px}.coverage{padding-block:48px}.steps{grid-template-columns:1fr 1fr}.check{padding:25px;gap:22px;border-radius:20px}.contact form{padding:24px}.detail-hero h1{font-size:3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.client-section{padding-block:48px 0;text-align:center}.client-section .eyebrow{color:#677d69;font-size:.7rem}.client-logos{display:grid;grid-template-columns:repeat(10,1fr);align-items:center;gap:28px}.client-logos img{width:100%;height:45px;object-fit:contain;filter:grayscale(1);opacity:.6;transition:filter .2s,opacity .2s}.client-logos img:hover{filter:none;opacity:1}@media(max-width:1050px){.client-logos{grid-template-columns:repeat(5,1fr);gap:24px}}@media(max-width:760px){.client-section{padding-top:30px}.client-logos{grid-template-columns:repeat(5,1fr);gap:16px}.client-logos img{height:30px}}

.service-symbol{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px;color:#4a835a}.service-symbol svg{width:55px;height:55px}.service-symbol>span{font-size:4rem;line-height:1;letter-spacing:-.06em;color:#e4eddf;font-weight:500}.service-card .card-top>span:first-child{display:none}.service-card:hover .service-symbol{color:#bddb9b}.service-card:hover .service-symbol>span{color:#3d6345}.service-card{min-height:355px}.service-card .card-top{margin-bottom:15px}@media(max-width:760px){.service-card{min-height:320px}.service-symbol{margin-bottom:25px}}

.hero.shell{display:block}.hero-copy{max-width:780px}.hero h1{max-width:780px}@media(max-width:760px){.hero-copy{max-width:none}}

.contact form{border-color:#d1ddcc}.contact form label,.contact form .consent{color:#405747}.contact form input,.contact form select,.contact form textarea{color:#17382c}.contact form #form-status{color:#235d42}
