/* Services follows the established About identity, with its own content layout. */
.home-layout.services-page main{--service-gap:clamp(55px,6vw,90px)}
.home-layout.services-page main .services-banner{position:relative;isolation:isolate;background:#fcf2e8;padding:65px 0 75px;overflow:hidden}
.services-banner-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:5%;align-items:center}
.home-layout.services-page main .services-banner h1{font-size:clamp(42px,4.6vw,64px);line-height:1.1;letter-spacing:-2.3px}
.services-banner h1 em{font-style:normal;color:#ff7029}
.home-layout.services-page main .services-banner p:not(.kicker){font-size:19px;line-height:1.65;max-width:500px;margin:25px 0 28px}
.services-banner figure{margin:25px 0 0;position:relative}
.services-banner figure img{width:100%;height:360px;object-fit:contain}
.services-banner figcaption{text-align:center;font-size:13px;color:#587297;margin-top:14px}
.services-banner-wave{position:absolute;bottom:-1px;left:0;width:100%;height:60px;pointer-events:none;z-index:-1}
.home-layout.services-page main .service-intro{width:100%;max-width:none;background:#fff;padding:var(--service-gap) max(5%,calc((100% - 1220px)/2));display:grid;grid-template-columns:1fr 1fr;gap:35px 7%;align-items:center}
.service-navigation{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);margin-top:18px;border-top:1px solid #eadfd5;border-bottom:1px solid #eadfd5}
.service-navigation a{padding:25px 18px 25px 0;display:flex;align-items:center;gap:16px;font-size:16px;font-weight:700}
.service-navigation a+a{border-left:1px solid #eadfd5;padding-left:25px}
.service-navigation a>span{color:#e96020;font-size:12px}
.service-navigation a>b{margin-left:auto;color:#ed601d;font-size:22px;font-weight:400}
.service-navigation a:hover{color:#e96020}
.home-layout.services-page main .service-detail{padding:var(--service-gap) 0;scroll-margin-top:155px}
.home-layout.services-page main .service-evaluation{background:#fcf5ec}
.home-layout.services-page main .service-technical{background:#fff}
.service-detail-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:center}
.service-detail-copy h2{margin-bottom:25px}
.service-detail-copy>p+p{margin-top:18px}
.service-visual{position:relative;padding:30px 10px;display:flex;flex-direction:column;align-items:center}
.service-number{font-size:75px;line-height:1;font-weight:700;letter-spacing:-5px;color:#efd8c3;align-self:flex-start;margin-left:16px;margin-bottom:-10px}
.service-visual img{width:200px;height:200px;object-fit:contain;position:relative;border-radius:50%}
.home-layout.services-page main .service-visual>p{font-size:14px;line-height:1.6;text-align:center;max-width:270px;margin-top:24px}
.service-points{list-style:none;padding:0;margin:25px 0 0;display:grid;gap:13px}
.service-points li{font-size:15px;line-height:1.6;color:#345c91;position:relative;padding-left:23px}
.service-points li::before{content:'';position:absolute;left:0;top:9px;width:7px;height:7px;border-radius:50%;background:#ff7029}
.service-reverse{grid-template-columns:1.2fr .8fr}
.service-reverse>.service-detail-copy{grid-column:1;grid-row:1}
.service-reverse>.service-visual,.service-reverse>.protection-visual{grid-column:2;grid-row:1}
.service-note{border-left:3px solid #ff7029;padding:3px 0 3px 20px;margin-top:28px}
.service-note strong{font-size:16px}
.home-layout.services-page main .service-note p{font-size:14px;line-height:1.7;margin-top:7px}
.protection-visual{position:relative;isolation:isolate;padding:30px 0}
.protection-visual::before{content:'';position:absolute;inset:0 -25px;background:#f8e5d4;border-radius:44% 51% 43% 52%;z-index:-1}
.protection-visual img{width:100%;height:300px;object-fit:cover;border-radius:9px}
.protection-caption{display:block;margin-top:18px;text-align:center;letter-spacing:2px;font-size:11px;color:#b65b28;font-weight:700}
.protection-types{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}
.protection-types>div{border-top:1px solid #e8d8ca;padding-top:18px}
.home-layout.services-page main .protection-types h3{font-size:19px;line-height:1.3;margin-bottom:10px}
.home-layout.services-page main .protection-types p{font-size:14px;line-height:1.7}
.home-layout.services-page main .service-faq{padding-top:35px;padding-bottom:var(--service-gap);display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:start}
.service-faq h2{margin-bottom:22px}
.home-layout.services-page main .service-faq>div>p:last-child{font-size:15px;line-height:1.7;max-width:330px}
.service-questions details{border-top:1px solid #e4d9ce;padding:22px 0}
.service-questions details:last-child{border-bottom:1px solid #e4d9ce}
.service-questions summary{font-size:16px;line-height:1.5;font-weight:700;cursor:pointer;list-style:none;padding-right:30px;position:relative}
.service-questions summary::after{content:'+';position:absolute;right:0;top:-2px;font-size:23px;color:#ed601d;font-weight:400}
.service-questions details[open] summary::after{content:'−'}
.service-questions summary::-webkit-details-marker{display:none}
.home-layout.services-page main .service-questions p{font-size:15px;line-height:1.75;margin-top:17px}
@media(max-width:1000px) and (min-width:761px){.services-banner-grid{gap:2%;grid-template-columns:1.15fr 1fr}.services-banner figure img{height:300px}.home-layout.services-page main .services-banner h1{font-size:44px}.service-detail-grid,.service-reverse,.home-layout.services-page main .service-faq{gap:6%}.service-navigation a{font-size:14px;gap:10px}}
@media(max-width:760px){
 .home-layout.services-page main{--service-gap:50px}
 .home-layout.services-page main .services-banner{padding:35px 0 55px}
 .services-banner-grid{grid-template-columns:1fr;gap:20px}
 .home-layout.services-page main .services-banner h1{font-size:42px;letter-spacing:-1.7px}
 .home-layout.services-page main .services-banner p:not(.kicker){font-size:17px;margin:22px 0 25px}
 .services-banner figure{margin:5px auto 0;max-width:400px;width:100%}
 .services-banner figure img{height:260px}
 .services-banner figcaption{font-size:12px}
 .services-banner-wave{height:35px}
 .home-layout.services-page main .service-intro{grid-template-columns:1fr;gap:25px;padding:50px 5%}
 .service-navigation{grid-template-columns:1fr;margin-top:0}
 .service-navigation a{padding:20px 0;font-size:15px}
 .service-navigation a+a{border-left:0;border-top:1px solid #eadfd5;padding-left:0}
 .service-detail-grid,.service-reverse{grid-template-columns:1fr;gap:30px}
 .service-reverse>.service-detail-copy,.service-reverse>.service-visual,.service-reverse>.protection-visual{grid-column:auto;grid-row:auto}
 .service-visual{padding:0 10px 10px;max-width:320px;width:100%;margin:auto}
 .service-number{font-size:60px;align-self:flex-start;margin-bottom:-20px}
 .service-visual img{width:185px;height:185px}
 .home-layout.services-page main .service-detail{scroll-margin-top:115px}
 .home-layout.services-page main .service-detail h2{font-size:31px}
 .home-layout.services-page main .service-detail-copy>p{font-size:16px;line-height:1.75}
 .protection-visual{max-width:330px;width:100%;margin:auto;padding:20px 0}
 .protection-visual img{height:250px}
 .protection-visual::before{inset:0 -10px}
 .protection-types{grid-template-columns:1fr;gap:22px}
 .home-layout.services-page main .service-faq{grid-template-columns:1fr;gap:28px;padding-top:20px}
 .service-questions summary{font-size:15px}
}
/* Match the protection service's rectangular photo composition. */
.services-page .service-visual{isolation:isolate;padding:30px 0;display:block}
.services-page .service-visual::before{content:'';position:absolute;inset:0 -25px;background:#f8e5d4;border-radius:44% 51% 43% 52%;z-index:-1;pointer-events:none}
.services-page .service-visual img{width:100%;height:300px;object-fit:cover;object-position:center 25%;border-radius:9px}
.services-page .service-number{position:absolute;top:-12px;left:0;font-size:24px;line-height:1.2;letter-spacing:0;color:#e96020;margin:0;font-weight:700}
.home-layout.services-page main .service-visual>p{max-width:none;font-size:13px;margin:18px 10px 0;line-height:1.6}
@media(max-width:760px){
 .services-page .service-visual{max-width:330px;width:100%;padding:20px 0;margin:15px auto 0}
 .services-page .service-visual::before{inset:0 -10px}
 .services-page .service-visual img{height:250px}
 .services-page .service-number{top:-17px;font-size:21px}
}
/* White section surfaces requested for evaluation and locations only. */
.home-layout.services-page main .service-evaluation{background:#fff}
.home-layout.services-page main .units{position:relative;isolation:isolate;background:#fff}
.home-layout.services-page main .units::before{content:'';position:absolute;inset:0;left:50%;width:100vw;transform:translateX(-50%);background:#fff;z-index:-1;pointer-events:none}
/* Before your visit uses the approved orange mission treatment. */
.home-layout.services-page main .service-faq-band{position:relative;isolation:isolate;overflow:hidden;background:#ff7029;padding:120px 0 100px}
.home-layout.services-page main .service-faq-band .service-faq{padding-top:0;padding-bottom:0}
.home-layout.services-page main .service-faq-band h2,
.home-layout.services-page main .service-faq-band p,
.home-layout.services-page main .service-faq-band summary,
.home-layout.services-page main .service-faq-band .kicker{color:#fff!important}
.services-page .service-faq-band .service-questions details{border-color:#ffffff60}
.services-page .service-faq-band .service-questions summary::after{color:#fff}
.services-page .service-faq-band>svg{position:absolute;left:0;width:100%;pointer-events:none;z-index:-1}
.services-page .faq-top-wave{top:-1px;height:85px}
.services-page .faq-bottom-wave{bottom:-1px;height:55px}
@media(max-width:760px){
 .home-layout.services-page main .service-faq-band{padding:85px 0 80px}
 .services-page .faq-top-wave{height:50px}
 .services-page .faq-bottom-wave{height:40px}
}
.services-page .service-faq-band summary:focus-visible{outline:2px solid white;outline-offset:5px;border-radius:3px}
