*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff}button,input,textarea{font:inherit}button,a,input,textarea,summary{touch-action:manipulation}button,summary{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #2294c5;outline-offset:4px}[hidden]{display:none!important}.shell{width:87%;max-width:1200px;margin:auto}.topline{border-bottom:1px solid #f4f4f4;font-size:20px;padding:10px 0;color:#a3acb7}.topline a{color:#566372;border-bottom:1px dotted}.brand-row{min-height:120px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{width:360px;max-width:100%;height:auto}#navigation{display:flex;gap:20px;align-items:center;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}#navigation>a,.nav-group>a{color:#98a3b2;white-space:nowrap}#navigation a:hover,#navigation a[aria-current=page]{color:#972833}.nav-group{position:relative;display:flex;align-items:center;gap:3px}.nav-group button,.search-toggle{border:0;background:none;color:#98a3b2;padding:4px;font-size:18px}.nav-group ul{display:none;position:absolute;top:100%;left:-15px;min-width:275px;list-style:none;background:white;box-shadow:0 4px 14px #0002;margin:0;padding:15px;z-index:20;text-transform:none;letter-spacing:0}.nav-group ul a{display:block;padding:10px;color:#566372}.nav-group:hover ul,.nav-group:focus-within ul,.nav-group.open ul{display:block}.menu-toggle{display:none}.search-panel{padding:25px 6.5%;background:#f4f6f7}.search-panel form{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.search-panel input{margin:0}.search-panel button{padding:8px 15px}.search-panel #search-results a{display:block;padding:10px}.hero{position:relative;border-bottom:5px solid #972833;background:#374353}.slide{height:55vw;max-height:865px;min-height:480px;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;position:relative}.slide:before{content:'';position:absolute;inset:0;background:#0004}.slide-copy{position:relative;text-align:center;color:white;max-width:1000px;padding:40px 65px;margin-top:-20px}.slide h1,.slide h2{color:#fff;font-size:48px;line-height:1.15;margin:0 0 25px;font-weight:700;letter-spacing:0}.slide p{font-size:18px;letter-spacing:.2em;text-transform:uppercase;line-height:1.6;margin:0 0 35px}.hero-button{display:inline-block;color:#fff;border:2px solid #3499cc;border-radius:24px;padding:10px 30px;font-size:16px}.hero-button:hover{background:#3499cc;color:white}.slide-prev,.slide-next{position:absolute;top:48%;border:0;border-radius:50%;width:40px;height:40px;background:#0007;color:white;font-size:20px}.slide-prev{left:20px}.slide-next{right:20px}.slide-controls{position:absolute;bottom:18px;left:0;right:0;display:flex;gap:7px;justify-content:center;align-items:center}.slide-dot{width:14px;height:14px;border:0;border-radius:100%;background:#ffffff66;padding:0}.slide-dot[aria-pressed=true]{outline:2px solid white;outline-offset:2px;background:white}.slide-pause{background:#0006;color:white;border:0;border-radius:4px;margin-left:10px}.entry-content{margin:0!important}.cs-ta-center{text-align:center}.cs-ta-left{text-align:left}.cs-ta-right{text-align:right}.bg-image{background-position:center;background-size:cover}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;padding:65px 0}.footer-grid img{max-width:100%;height:auto}.footer-grid h2{font-size:18px;margin:0 0 15px}.footer-grid a{color:#566372}.footer-bottom{text-align:center;border-top:1px solid #eee;padding:25px 20px;font-size:12px;color:#8491a0}.footer-bottom a{color:#8491a0}.case-study{background:#fff;border:1px solid #ddd;border-radius:4px;margin-bottom:10px;text-align:left}.case-study summary{font-size:16px;font-weight:700;padding:15px;color:#566372}.case-study[open] summary{border-bottom:1px solid #eee;color:#972833}.case-study .x-accordion-inner{padding:25px}.contact-form label{display:block;font-weight:700;margin-bottom:18px}.contact-form input,.contact-form textarea{width:100%;display:block;margin:8px 0 0;border:1px solid #bbc3ca;border-radius:3px;padding:12px;height:auto}.contact-form button{background:#3499cc;color:white;border:0;border-radius:25px;padding:12px 30px}.contact-form button:disabled{opacity:.55;cursor:not-allowed}.contact-form h2{font-size:24px}.honeypot{position:absolute;left:-10000px}.skip-link{position:absolute;left:10px;top:-100px;background:white;padding:15px;z-index:100}.skip-link:focus{top:10px}iframe{max-width:100%}
@media(max-width:1200px){.logo{width:285px}#navigation{gap:13px;font-size:12px}.brand-row{gap:20px}.slide h1,.slide h2{font-size:42px}}
@media(max-width:979px){.brand-row{flex-wrap:wrap;padding:20px 0;min-height:100px}.logo{width:320px}.menu-toggle{display:block;background:#f4f4f4;border:1px solid #ddd;border-radius:4px;padding:10px;color:#566372}#navigation{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;font-size:14px}#navigation.open{display:flex}#navigation>a,.nav-group{padding:12px 0;border-top:1px solid #eee}.nav-group{flex-wrap:wrap;justify-content:space-between}.nav-group ul{position:static;width:100%;box-shadow:none}.nav-group:hover:not(.open) ul{display:none}.nav-group.open ul{display:block!important}.footer-grid{gap:30px;grid-template-columns:repeat(2,1fr)}.slide{height:65vw;min-height:460px}.slide h1,.slide h2{font-size:36px}.slide p{font-size:15px}}
@media(max-width:767px){.topline{font-size:14px}.logo{width:245px}.shell{width:90%}.brand-row{gap:10px}.menu-toggle span{display:none}.slide{min-height:440px;height:65vh;max-height:650px}.slide-copy{padding:25px 45px}.slide h1,.slide h2{font-size:29px}.slide p{font-size:13px;letter-spacing:.12em}.slide-prev{left:6px}.slide-next{right:6px}.slide-prev,.slide-next{width:30px;height:35px;font-size:15px}.x-column.x-sm{width:100%!important;float:none!important;margin-right:0!important;margin-bottom:25px}.x-container.width{width:90%}.x-section .x-container{padding-left:0!important;padding-right:0!important}.x-section .x-column{padding-left:0!important;padding-right:0!important}.h2{font-size:26px}.h4{font-size:22px}.footer-grid{grid-template-columns:1fr;gap:25px;padding:40px 0}.footer-grid img{max-width:270px}.x-img.x-hide-xs,.x-img.x-hide-sm{display:block!important}.cs-hide-xl.cs-hide-lg.cs-hide-md{display:none}.entry-content p{line-height:1.8}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.topline a{display:inline-block}

/* Overlay slides in a shared grid cell; retain responsive height without layout jumps. */
.sliding-hero{display:grid;overflow:hidden;isolation:isolate}
.sliding-hero>.slide{grid-area:1 / 1;width:100%;min-width:0}
.sliding-hero>.slide-prev,.sliding-hero>.slide-next,.sliding-hero>.slide-controls{z-index:2}

/* Consistent alignment for headings, contact details, and primary contact actions. */
.topline .shell{text-align:center}
.service-benefit-title{font-size:18px;line-height:1.4;letter-spacing:0;margin:0 0 18px!important;text-align:center}
.service-benefit>p{text-align:left;line-height:1.8}
.contact-intro{text-align:center}
.contact-intro .x-text{max-width:850px;margin-inline:auto}
.contact-details{text-align:center;padding:24px 12px 0}
.contact-details p{margin-bottom:24px}
.contact-details a[href^="tel:"]{display:inline-block;white-space:nowrap;font-size:22px;font-weight:700}
.contact-callout{text-align:center;color:#fff;max-width:780px;margin:0 auto}
.contact-callout-label{font-size:18px;line-height:1.5;margin:0 0 12px}
.contact-callout-number{display:inline-block;color:#fff;font-size:clamp(28px,4vw,42px);font-weight:700;line-height:1.3;white-space:nowrap;margin:0 auto 18px;text-decoration:none}
.contact-callout-number:hover{color:#fff;text-decoration:underline}
.contact-callout-description{font-size:18px;line-height:1.65;margin:0}
.contact-form form>button{display:block;margin:24px auto 0}
.contact-form #form-status{text-align:center}
a[href^="tel:"]{white-space:nowrap}
@media(max-width:767px){.footer-grid{text-align:center}.footer-grid img{display:block;margin-inline:auto}.contact-form h2{text-align:center}.contact-callout-description{font-size:16px}}

/* Keep the complete CTA centered after its inner content reaches max-width. */
.contact-cta-section .contact-callout{width:100%;max-width:780px;margin-left:auto!important;margin-right:auto!important;text-align:center}
.contact-cta-section>.x-container>.x-column{float:none;margin-left:auto;margin-right:auto}

/* Contact sections use dark text on both white and blue backgrounds. */
.contact-cta-section .contact-callout,
.contact-cta-section .contact-callout-number,
.contact-cta-section .contact-callout-number:hover,
.contact-cta-section .contact-callout p,
.contact-cta-section h2,
.contact-cta-section h2 span{color:#172b3a!important}
.contact-cta-section .x-btn{background:#172b3a;color:#fff;border-color:#172b3a;text-shadow:none}
.contact-cta-section .x-btn:hover{background:#fff;color:#172b3a;border-color:#172b3a}
.contact-details,.contact-form,.contact-form h2,.contact-form label,.contact-form input,.contact-form textarea{color:#172b3a}
.contact-form input,.contact-form textarea{background:#fff}
.contact-details a[href^="tel:"],.contact-form a[href^="tel:"]{color:#972833}
