:root{color:#303030;background:#f7f8fa;font-family:Open Sans,system-ui,sans-serif;line-height:1.5;--brand: #5c85b7;--ink: #1a1a1a;--paper: #ffffff}body{margin:0}a{color:inherit}.site-header,.section,main>[role=status],.site-footer{max-width:72rem;margin:0 auto;padding:1.5rem}.site-header,nav,.hero,.grid,.gallery{display:flex;gap:1rem}.site-header{align-items:center;justify-content:space-between;background:var(--paper)}.brand{color:var(--ink);display:grid;font-weight:800;line-height:1.1;text-decoration:none;text-transform:uppercase}.brand span{color:var(--brand);font-size:1.25rem}.brand small{font-size:.65rem;letter-spacing:.08em}nav a{border-bottom:.2rem solid transparent;padding-block:.4rem;text-decoration:none}nav a:hover,nav a[aria-current=page]{border-color:var(--brand)}.route-hero{background:linear-gradient(120deg,#1a1a1ae6,#303030bf);color:#fff;padding:clamp(3rem,8vw,6rem) max(1.5rem,calc((100% - 69rem)/2))}.route-hero p{color:#d8e5f4;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.route-hero h1{font-size:clamp(2.25rem,7vw,4.5rem);line-height:1.05;margin:.35rem 0 0}.hero,.grid,.gallery{flex-wrap:wrap}.hero>*,.grid>*,.gallery>*{flex:1 1 18rem}img{display:block;max-width:100%;height:auto}.button,button{display:inline-block;border:0;border-radius:.35rem;padding:.7rem 1rem;color:#fff;background:var(--brand);cursor:pointer}form,label{display:grid;gap:.4rem}form{max-width:36rem;gap:1rem}input,textarea{padding:.65rem;font:inherit}textarea{min-height:8rem}.honeypot{position:absolute;left:-10000px}.contact-details{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin-top:1rem}.route-hero .contact-details a{color:#fff}.site-footer{border-top:.3rem solid var(--brand);color:#fff;background:var(--ink)}@media(max-width:48rem){.site-header{align-items:flex-start;flex-direction:column}nav{flex-wrap:wrap}}:root{--brand: #5c85b7;--ink: #262626;--soft: #f4f4f4;font-family:Open Sans,Arial,sans-serif;color:#555;background:#fff}*{box-sizing:border-box}body{background:#fff}button,input,textarea{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid #1b527f;outline-offset:3px}.live-container{width:min(1170px,calc(100% - 40px));margin-inline:auto}.site-header{display:block;max-width:none;padding:0;margin:0;background:#fff}.top-bar{background:#1a242c;border-bottom:0;font-size:13px}.top-bar-inner{display:flex;justify-content:flex-end;align-items:center;min-height:54px}.top-contact{display:flex;flex-direction:column;flex-wrap:wrap;gap:4px}.top-contact a{color:#fff;text-decoration:none}.top-contact a:hover{color:var(--brand)}.social-placeholders{color:#fff;letter-spacing:.04em}.navigation-bar{background:#fff;box-shadow:0 1px 5px #00000012}.navigation-inner{display:flex;align-items:center;justify-content:space-between;min-height:101px;gap:40px}.brand{display:block;flex:0 0 185px}.brand img{display:block;width:171px;height:auto}.navigation-inner nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:0}.navigation-inner nav a{display:block;padding:34px 16px;color:#222;font-family:Roboto,Arial,sans-serif;font-size:14px;font-weight:500;text-transform:uppercase;text-decoration:none;border:0;white-space:nowrap}.navigation-inner nav a:hover,.navigation-inner nav a[aria-current=page]{color:var(--brand);border:0}.route-hero{min-height:220px;display:flex;align-items:center;background:linear-gradient(#0008,#0008),url(/images/background/header.jpg) center / cover;padding:32px max(20px,calc((100% - 1170px)/2))}.route-hero h1{margin:0;color:#fff;font:600 clamp(30px,4vw,46px)/1.2 Roboto,Arial,sans-serif;text-transform:uppercase}.breadcrumb-bar{background:#f3f3f3;padding:19px 0;font-size:13px}.breadcrumb-bar .live-container{display:flex;gap:9px;align-items:center}.breadcrumb-bar a{color:var(--brand);text-decoration:none}.breadcrumb-bar span:last-child{color:#777}main{min-height:200px}.live-section{padding:80px 0 70px}.section-title{margin-bottom:28px}.section-title h2{margin:0;color:#222;font:600 31px/1.25 Roboto,Arial,sans-serif;text-transform:uppercase}.title-separator{display:block;width:70px;height:3px;margin-top:16px;background:var(--brand);position:relative}.title-separator:after{content:"";position:absolute;left:29px;top:-5px;width:11px;height:11px;border:2px solid var(--brand);background:#fff;transform:rotate(45deg)}.section-intro{text-align:center;margin:-10px 0 30px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service-card{background:#f5f5f5}.service-card img{width:100%;aspect-ratio:1.6;object-fit:cover}.service-card>div{padding:26px 30px 30px}.service-card h3{margin:0 0 12px;color:#222;font:500 21px/1.3 Roboto,Arial,sans-serif}.service-card h3 a{text-decoration:none}.service-card p{min-height:75px;font-size:14px;line-height:1.7}.site-button,.button,.contact button{display:inline-block;border:0;border-radius:0;background:var(--brand);color:#fff;padding:12px 23px;font-size:13px;font-weight:600;text-transform:uppercase;text-decoration:none;cursor:pointer}.site-button:hover,.contact button:hover{background:#222;color:#fff}.home-slider{position:relative;height:820px;min-height:820px;display:flex;align-items:center;background-position:center bottom;background-size:cover;color:#fff}.slide-copy{padding-inline:30px}.slide-copy h1{max-width:800px;margin:0 0 20px;color:#fff;font:700 clamp(40px,5vw,60px)/1.15 Roboto,Arial,sans-serif;text-transform:uppercase}.slide-copy p{margin:0 0 60px;font:500 18px/1.5 Roboto,Arial,sans-serif}.slide-arrow{position:absolute;top:50%;width:46px;height:46px;padding:0;border-radius:0;background:#0008;color:#fff;font-size:40px;line-height:1;transform:translateY(-50%)}.slide-arrow:hover{background:var(--brand)}.slide-arrow.previous{left:12px}.slide-arrow.next{right:12px}.slide-dots{position:absolute;bottom:22px;left:50%;display:flex;gap:9px;transform:translate(-50%)}.slide-dots button{width:12px;height:12px;padding:0;border-radius:50%;background:#fff8}.slide-dots button[aria-current=true]{background:var(--brand)}.about-layout{display:grid;grid-template-columns:7fr 5fr;align-items:center;gap:35px}.about-section.image-first .about-layout{grid-template-columns:5fr 7fr}.about-section:not(.image-first){padding-bottom:84px}.about-image{width:100%;object-fit:contain}.about-copy p{font-size:15px;line-height:1.8}.about-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px 25px;margin-top:25px}.about-feature-grid a{display:flex;align-items:center;gap:14px;text-decoration:none;color:#222;text-transform:uppercase;font-size:14px}.feature-icon{color:var(--brand);font-size:30px;min-width:36px}.why-section{background:#f5f5f5}.why-section .section-title,.home-testimonials .section-title,.reviews-section .section-title{text-align:center}.why-section .title-separator,.home-testimonials .title-separator,.reviews-section .title-separator{margin-inline:auto}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.why-grid>div{min-height:145px;margin:5px;padding:22px;text-align:center;background:#fff}.why-grid span{color:var(--brand);font-size:36px}.why-grid h3{font:600 15px Roboto,Arial,sans-serif;color:#222}.home-testimonials{padding:90px 0 60px;color:#fff;background:linear-gradient(#000c,#000c),url(/images/background/bg3.jpg) center / cover}.home-testimonials h2{color:#fff}.testimonial-row{display:grid;place-items:center;text-align:center}.testimonial-row figure{width:min(560px,100%);margin:0;padding:15px 20px}.testimonial-avatar{display:block;font-size:48px}.testimonial-row blockquote{margin:16px 0;font-size:15px;line-height:1.7}.testimonial-row figcaption{font-weight:700;text-transform:uppercase}.detail-photo-grid{display:grid;grid-template-columns:1fr 2fr;grid-auto-rows:200px;gap:25px}.detail-photo-grid a{overflow:hidden}.detail-photo-grid img{width:100%;height:100%;object-fit:cover}.detail-copy{border-top:1px solid #ccc;margin-top:45px;padding-top:36px;font-size:15px;line-height:1.8}.detail-copy h2{font:500 17px/1.6 Roboto,Arial,sans-serif;color:#222}.detail-list{width:min(430px,100%);padding-left:25px;counter-reset:item;list-style:none}.detail-list li{position:relative;margin:9px 0;padding:8px 12px 8px 28px;color:#fff;background:var(--brand);border-radius:30px}.detail-list li:before{counter-increment:item;content:counter(item);position:absolute;left:-23px;top:3px;width:35px;height:35px;display:grid;place-items:center;border:4px solid #fff;border-radius:50%;background:var(--brand);font-weight:700}.related-section{padding-top:0}.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.related-grid img{width:100%;height:180px;object-fit:cover}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.gallery-tile{position:relative;display:block;padding:15px;border:0;background:#fff;cursor:pointer}.gallery-tile img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .3s}.gallery-tile span{position:absolute;inset:15px;display:grid;place-items:center;color:#fff;font-size:40px;background:#0008;opacity:0;transition:opacity .2s}.gallery-tile:hover span,.gallery-tile:focus-visible span{opacity:1}.gallery-tile:hover img{transform:scale(1.02)}.gallery-lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:40px;background:#000e}.gallery-lightbox img{max-width:100%;max-height:100%;object-fit:contain}.gallery-lightbox button{position:absolute;top:12px;right:18px;padding:0;background:transparent;color:#fff;font-size:44px}.reviews-section .section-title h2{text-transform:none}.text-center{text-align:center}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:35px 0 0;list-style:none}.reviews-grid li blockquote{min-height:220px;position:relative;margin:0 0 30px;padding:30px;border:10px solid #ebebeb;font-size:15px;line-height:1.7}.reviews-grid li blockquote:after{content:"";position:absolute;bottom:-30px;left:45%;width:30px;height:30px;background:#fff;border-right:10px solid #ebebeb;border-bottom:10px solid #ebebeb;transform:rotate(45deg)}.reviews-grid strong{display:block;color:#666;text-align:center;text-transform:uppercase}.testimonial-form h2{text-transform:uppercase}.testimonial-form form{display:grid;gap:15px}.testimonial-form .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.testimonial-form input,.testimonial-form textarea{min-height:34px;padding:6px 12px;border-radius:0;font-size:14px}.testimonial-form textarea{min-height:130px;resize:vertical}.testimonial-form button[type=submit]{text-transform:uppercase}.testimonial-form .testimonial-actions{display:flex;justify-content:flex-end;gap:15px}.contact-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.location-map{width:100%;min-height:380px;border:5px solid #e8e8e8}.contact-layout .section,.live-container>.section{max-width:none;margin:0;padding:0}.contact .section-title{margin-bottom:20px}.contact h2{margin:0 0 25px;color:#222;font:600 23px Roboto,Arial,sans-serif;text-transform:uppercase}.contact p:empty{display:none}.contact form{max-width:none;gap:15px}.contact label{font-size:14px;color:#555}.contact input,.contact textarea{width:100%;padding:11px 14px;border:1px solid #ddd;background:#fff}.contact textarea{min-height:100px}.contact-detail-section{padding-top:10px}.contact-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.contact-detail-grid>div{border:2px solid #e8e8e8;min-height:170px;padding:30px 10px;text-align:center}.contact-detail-grid>div>span{display:inline-grid;place-items:center;width:47px;height:47px;border-radius:50%;background:var(--brand);color:#fff;font-size:25px}.contact-detail-grid h3{margin:15px 0 8px;color:#222;font:600 17px Roboto,Arial,sans-serif}.contact-detail-grid .contact-details{justify-content:center;margin-top:0}.contact-detail-grid .contact-details a{display:none}.site-footer{max-width:none;margin:0;padding:0;background:#222;border:0;color:#bbb}.footer-cta{background:var(--brand);color:#fff;padding:27px 0}.footer-cta .live-container{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-cta strong{font:500 22px Roboto,Arial,sans-serif}.footer-cta .site-button{background:#222}.footer-columns{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:70px;padding:55px 0 20px}.footer-logo{width:230px;max-width:100%;margin:0 0 18px}.footer-columns h3{color:#fff;font:500 18px Roboto,Arial,sans-serif;text-transform:uppercase}.footer-columns p{font-size:14px;line-height:1.8}.footer-columns a{display:block;color:#bbb;margin-bottom:7px;text-decoration:none}.footer-columns a:hover{color:#fff}.footer-bottom{position:relative;background:#1a1a1a;padding:32px 0 15px;font-size:12px}.footer-social-links{color:#bbb;font-size:20px;letter-spacing:.07em}.footer-contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:15px 0 35px}.footer-contact-cards>div{display:flex;gap:12px;align-items:center;min-height:70px;padding:12px 10px;border:1px solid #4b4b4b}.footer-contact-cards>div>span{color:var(--brand);font-size:28px}.footer-contact-cards h3{margin:0 0 5px;font-size:14px}.footer-contact-cards p{margin:0;font-size:13px;line-height:1.45}.footer-contact-cards a,.footer-bottom a{color:#bbb;text-decoration:none}.footer-bottom a{color:var(--brand)}.footer-strip{position:absolute;inset:0 0 auto;height:14px;background:url(/images/footer-strip.png) repeat-x}@media(max-width:900px){.navigation-inner{gap:12px;min-height:70px}.navigation-inner nav a{padding:20px 8px;font-size:12px}.service-grid,.gallery-grid,.reviews-grid,.why-grid,.footer-columns,.footer-contact-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.live-container{width:min(100% - 28px,1170px)}.top-bar-inner{display:block;padding-block:8px}.social-placeholders{display:none}.top-contact{gap:5px 15px}.navigation-inner{display:block;padding-block:14px}.brand img{width:145px}.navigation-inner nav{justify-content:flex-start;margin-top:12px;gap:6px 12px}.navigation-inner nav a{padding:4px 0}.route-hero{min-height:150px}.live-section{padding:50px 0}.home-slider{min-height:420px;height:55vh}.slide-copy{padding-inline:25px}.slide-copy h1{font-size:34px}.slide-copy p{margin-bottom:25px}.slide-arrow{width:30px;height:38px;font-size:30px}.slide-arrow.previous{left:0}.slide-arrow.next{right:0}.about-layout,.about-section.image-first .about-layout,.contact-layout{display:flex;flex-direction:column}.about-section.image-first .about-image{order:2}.service-grid,.gallery-grid,.reviews-grid,.why-grid,.testimonial-row,.contact-detail-grid{grid-template-columns:1fr}.detail-photo-grid{gap:10px;grid-auto-rows:120px}.related-grid{grid-template-columns:repeat(2,1fr)}.footer-cta .live-container{align-items:flex-start;flex-direction:column}.footer-columns{grid-template-columns:1fr;padding-block:35px}.footer-contact-cards{grid-template-columns:1fr;padding-bottom:25px}}
