/* Services page. Shared navigation and footer retain the main site's styling. */
.services-page { --svc-forest:#073e26; --svc-green:#0b7a33; --svc-ink:#193b2a; --svc-muted:#5c6e62; --svc-line:#dbe5dc; color:var(--svc-ink); background:#fff; font:400 16px/1.7 Roboto,Arial,sans-serif; -webkit-font-smoothing:antialiased; }
.services-page * { box-sizing:border-box; }
.svc-width { width:min(89.2%,1260px); margin-inline:auto; }
.services-page h1,.services-page h2,.services-page h3 { padding:0; margin:0; color:var(--svc-forest); font-family:Poppins,Arial,sans-serif; }
.services-page h2 { font-size:clamp(30px,3.25vw,46px); line-height:1.18; font-weight:500; letter-spacing:-1.4px; }
.services-page h3 { font-size:clamp(25px,2.5vw,35px); line-height:1.24; font-weight:500; letter-spacing:-.9px; }
.services-page p { margin:0; }
.services-page a { text-decoration:none; }
.services-page a:focus-visible { outline:3px solid #38a560; outline-offset:5px; }
.services-page [id] { scroll-margin-top:115px; }
.svc-breadcrumb { display:flex; gap:12px; align-items:center; padding:24px 0; color:#677b6d; font-size:13px; }
.svc-breadcrumb a { color:var(--svc-muted); }
.svc-breadcrumb a:hover { color:var(--svc-green); text-decoration:underline; }
.services-page .svc-eyebrow { margin:0 0 15px; font-size:11px; font-weight:700; letter-spacing:1.8px; line-height:1.5; text-transform:uppercase; color:var(--svc-green); }
.svc-hero { display:grid; grid-template-columns:1.08fr 1fr; border-radius:12px; overflow:hidden; background:var(--svc-forest); }
.svc-hero-copy { padding:52px 44px 35px; display:flex; flex-direction:column; align-items:start; }
.svc-hero .svc-eyebrow { color:#b7d8c0; margin-bottom:24px; }
.services-page .svc-hero h1 { color:#fff; font-size:clamp(38px,4.1vw,58px); line-height:1.13; font-weight:500; letter-spacing:-2px; }
.svc-hero h1 span { color:#b9d8b0; }
.services-page .svc-lead { color:#d5e3d9; font-size:17px; line-height:1.75; margin-top:25px; max-width:430px; }
.svc-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; margin-top:30px; }
.svc-button { display:inline-flex; align-items:center; justify-content:center; gap:24px; min-height:50px; border:1px solid transparent; border-radius:5px; background:var(--svc-green); color:#fff; padding:13px 22px; font:500 14px/1.5 Roboto,Arial,sans-serif; transition:background .2s; }
.svc-button:hover { color:#fff; background:var(--svc-forest); }
.svc-button-light { color:var(--svc-forest); background:#fff; }
.svc-button-light:hover { color:var(--svc-forest); background:#dfeddf; }
.svc-hero-explore { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:#fff; font-size:13px; }
.svc-hero-explore:hover { color:#c8e6c6; text-decoration:underline; }
.services-page .svc-hero-location { color:#b7cdbf; font-size:12px; margin-top:35px; padding-top:22px; border-top:1px solid #ffffff26; width:100%; }
.svc-hero-photo { position:relative; min-width:0; margin:0; min-height:490px; }
.svc-hero-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:74% center; }
.svc-hero-photo figcaption { position:absolute; bottom:16px; right:18px; color:#fff; background:#132b21c9; border-radius:3px; padding:4px 9px; font-size:10px; }
.svc-foundation { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:23px 32px; border-bottom:1px solid var(--svc-line); }
.svc-foundation p { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:6px 12px; padding:0 15px; }
.svc-foundation p + p { border-left:1px solid var(--svc-line); }
.svc-foundation strong { color:var(--svc-forest); font-size:14px; font-weight:500; }
.svc-foundation span { color:var(--svc-muted); font-size:12px; }
.svc-directory { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding-top:27px; gap:28px; }
.svc-directory a { display:flex; align-items:center; gap:16px; padding:18px 0; border-bottom:1px solid #a8bdaf; color:var(--svc-forest); font-size:15px; font-weight:500; }
.svc-number { color:#7b9584; font-size:12px; font-weight:400; }
.svc-directory a > span:last-child { margin-left:auto; color:var(--svc-green); }
.svc-directory a:hover { border-color:var(--svc-green); color:var(--svc-green); }
.svc-offering { padding:75px 0 70px; }
.svc-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:55px; margin-bottom:35px; }
.svc-section-heading > p { max-width:390px; color:var(--svc-muted); font-size:16px; }
.svc-feature { display:grid; grid-template-columns:.9fr 1.1fr; overflow:hidden; border:1px solid var(--svc-line); border-radius:10px; background:#f3f6ef; }
.svc-feature-photo { position:relative; min-width:0; overflow:hidden; background:#dce5dc; }
.svc-atlas { position:relative; aspect-ratio:4/3; overflow:hidden; background:#e1e8e0; }
.svc-atlas img { position:absolute; width:303%; height:202%; max-width:none; left:calc(var(--column) * -101% - .5%); top:-.5%; object-fit:fill; }
.svc-feature-photo .svc-atlas { position:absolute; width:max(100%,680px); height:100%; left:50%; transform:translateX(-50%); }
.svc-image-label { position:absolute; bottom:24px; left:24px; padding:7px 13px; color:var(--svc-forest); background:#fffffff2; border-radius:3px; font-size:11px; letter-spacing:.4px; }
.svc-service-copy { padding:37px 40px; }
.svc-service-copy > p:not(.svc-eyebrow) { color:var(--svc-muted); margin-top:18px; font-size:16px; }
.svc-list { list-style:none; margin:23px 0 28px; padding:0; }
.svc-list li { position:relative; padding:8px 0 8px 18px; color:#3a5544; font-size:14px; line-height:1.55; }
.svc-list li::before { content:''; position:absolute; left:0; top:17px; width:5px; height:5px; background:#64936a; border-radius:50%; }
.svc-list-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; }
.svc-link { display:inline-flex; align-items:center; justify-content:space-between; gap:22px; color:var(--svc-green); font:500 14px/1.6 Roboto,Arial,sans-serif; min-height:44px; }
.svc-link:hover,.svc-secondary-link:hover { color:var(--svc-forest); text-decoration:underline; text-underline-offset:4px; }
.svc-service-actions { display:flex; flex-direction:column; align-items:start; border-top:1px solid var(--svc-line); padding-top:12px; }
.svc-secondary-link { display:inline-flex; gap:14px; align-items:center; color:var(--svc-muted); font-size:13px; min-height:44px; }
.svc-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; margin-top:28px; }
.svc-card { display:flex; flex-direction:column; border:1px solid var(--svc-line); border-radius:10px; overflow:hidden; }
.svc-card > .svc-atlas { aspect-ratio:2/1; }
.svc-card > .svc-atlas img { height:300%; top:-25%; }
.svc-card .svc-service-copy { display:flex; flex-direction:column; flex:1; }
.svc-card .svc-link { border-top:1px solid var(--svc-line); padding-top:18px; margin-top:auto; }
.services-page .svc-imagery-note { margin-top:17px; font-size:12px; color:#657569; }
.svc-projects { padding:56px 0; background:#eff4eb; border-block:1px solid #dfe7da; }
.svc-projects-inner { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.svc-projects h2 { font-size:clamp(28px,2.7vw,38px); }
.svc-projects-inner > div > p:not(.svc-eyebrow) { color:var(--svc-muted); margin-top:20px; max-width:430px; }
.svc-projects-inner > div > .svc-link { margin-top:16px; }
.svc-project-links { border-top:1px solid #c2d2c0; }
.svc-project-links a { display:block; position:relative; padding:24px 65px 24px 0; border-bottom:1px solid #c2d2c0; color:var(--svc-forest); }
.svc-project-type { display:block; text-transform:uppercase; letter-spacing:1.4px; color:var(--svc-green); font-size:10px; font-weight:700; }
.svc-project-links strong { display:block; font:500 clamp(18px,1.7vw,23px)/1.4 Poppins,Arial,sans-serif; margin:8px 0; }
.svc-project-description { color:var(--svc-muted); font-size:13px; }
.svc-round-arrow { position:absolute; right:0; top:50%; transform:translateY(-50%); display:grid; place-items:center; width:42px; height:42px; border:1px solid #abc5ad; border-radius:50%; color:var(--svc-green); }
.svc-project-links a:hover .svc-round-arrow { background:var(--svc-forest); color:#fff; border-color:var(--svc-forest); }
.svc-start { padding:75px 0 70px; }
.svc-steps { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.svc-steps li { padding:10px 32px 10px 0; }
.svc-steps li + li { padding-left:32px; border-left:1px solid var(--svc-line); }
.svc-steps li > span { font:400 14px/1.5 Roboto,Arial,sans-serif; color:#799984; }
.services-page .svc-steps h3 { font-size:21px; letter-spacing:-.4px; margin:15px 0 12px; }
.svc-steps p { color:var(--svc-muted); font-size:15px; max-width:300px; }
.svc-contact-row { display:flex; align-items:center; flex-wrap:wrap; gap:26px 35px; border-top:1px solid var(--svc-line); padding-top:30px; margin-top:30px; }
.svc-contact-row > div { display:flex; flex-direction:column; }
.svc-contact-row > div > span,.svc-contact-row > p { color:var(--svc-muted); font-size:12px; }
.svc-contact-row > div > a { color:var(--svc-forest); font-size:16px; font-weight:500; }
.svc-contact-row > p { margin-left:auto; }
.kinmel-services-page #tt-header a[aria-current="page"] { color:#0b7a33; }
.kinmel-services-page #mobile-menu a[aria-current="page"] { color:#c4e6c9; background:#0b3f28; box-shadow:inset 3px 0 #77bd88; }
@media(max-width:1100px) {
 .svc-hero-copy { padding:36px 30px 28px; }
 .services-page .svc-hero h1 { font-size:43px; }
 .svc-hero-photo { min-height:470px; }
 .svc-directory { gap:20px; }
 .svc-directory a { font-size:14px; gap:10px; }
 .svc-service-copy { padding:30px; }
 .svc-list-columns { grid-template-columns:1fr; }
 .svc-projects-inner { gap:40px; }
 .svc-card h3 { font-size:28px; }
}
@media(max-width:800px) {
 .svc-hero { grid-template-columns:1fr; }
 .svc-hero-copy { padding:40px; }
 .services-page .svc-hero h1 { font-size:clamp(40px,7vw,56px); }
 .svc-hero-photo { min-height:0; height:340px; }
 .svc-hero-photo img { object-position:center 35%; }
 .svc-foundation { padding:22px 0; }
 .svc-foundation p { display:block; text-align:center; padding:0 10px; }
 .svc-foundation span { display:block; margin-top:3px; }
 .svc-directory { gap:16px; }
 .svc-directory a { align-items:flex-start; }
 .svc-directory a > span:nth-child(2) { max-width:135px; }
 .svc-section-heading { align-items:start; gap:30px; }
 .svc-section-heading > p { max-width:290px; }
 .svc-feature { grid-template-columns:1fr; }
 .svc-feature-photo { height:320px; }
 .svc-feature-photo .svc-atlas { width:100%; }
 .svc-list-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .svc-card-grid { gap:20px; }
 .svc-card .svc-service-copy { padding:25px; }
 .svc-card h3 { font-size:25px; }
 .svc-projects-inner { grid-template-columns:1fr; gap:28px; }
 .svc-projects-inner > div > p:not(.svc-eyebrow) { max-width:520px; }
 .svc-steps li { padding-right:20px; }
 .svc-steps li + li { padding-left:20px; }
 .svc-contact-row > p { margin-left:0; }
}
@media(max-width:600px) {
 .svc-width { width:calc(100% - 40px); }
 .svc-breadcrumb { padding:20px 0; }
 .svc-hero-copy { padding:32px 25px; }
 .svc-hero .svc-eyebrow { font-size:10px; letter-spacing:1.3px; }
 .services-page .svc-hero h1 { font-size:clamp(33px,8vw,45px); letter-spacing:-1.3px; }
 .services-page .svc-lead { font-size:16px; margin-top:20px; }
 .svc-actions { gap:10px 20px; margin-top:24px; }
 .svc-hero-photo { height:265px; }
 .services-page .svc-hero-location { font-size:11px; margin-top:22px; padding-top:18px; }
 .svc-foundation strong { font-size:12px; }
 .svc-foundation span { font-size:10px; line-height:1.5; }
 .svc-foundation p { padding:0 7px; }
 .svc-directory { grid-template-columns:1fr; gap:0; padding-top:10px; }
 .svc-directory a { align-items:center; padding:15px 0; gap:20px; }
 .svc-directory a > span:nth-child(2) { max-width:none; }
 .svc-offering,.svc-start { padding:48px 0; }
 .svc-section-heading { display:block; margin-bottom:26px; }
 .svc-section-heading > p { margin-top:20px; max-width:none; }
 .services-page h2 { font-size:34px; letter-spacing:-1px; }
 .svc-feature-photo { height:280px; }
 .svc-feature-photo .svc-atlas { width:max(100%,375px); }
 .svc-service-copy,.svc-card .svc-service-copy { padding:27px 24px; }
 .svc-list-columns { grid-template-columns:1fr; }
 .svc-list { margin:19px 0 22px; }
 .svc-service-copy h3 { font-size:28px; }
 .svc-service-copy > p:not(.svc-eyebrow) { font-size:15px; }
 .svc-card-grid { grid-template-columns:1fr; gap:24px; margin-top:24px; }
 .svc-card > .svc-atlas { aspect-ratio:1.6; }
 .svc-card > .svc-atlas img { height:240%; top:-10%; }
 .svc-projects { padding:40px 0; }
 .svc-projects h2 { font-size:30px; }
 .svc-steps { grid-template-columns:1fr; }
 .svc-steps li,.svc-steps li + li { border-left:0; border-top:1px solid var(--svc-line); padding:23px 0 23px 45px; position:relative; }
 .svc-steps li > span { position:absolute; left:0; top:25px; }
 .services-page .svc-steps h3 { margin:0 0 9px; }
 .svc-contact-row { gap:22px; margin-top:8px; }
 .svc-contact-row .svc-button { width:100%; }
 .svc-contact-row > p { width:100%; margin-top:-13px; }
}
@media(prefers-reduced-motion:reduce) { .services-page * { transition:none!important; scroll-behavior:auto!important; } }
