:root{--navy:#082a40;--blue:#067dba;--pale:#edf6fa;--ink:#183747}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:17px/1.65 Arial,Helvetica,sans-serif}a{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.8rem,5.5vw,5rem);line-height:1.02;letter-spacing:-.055em;color:var(--navy);margin-bottom:25px}h2{font-size:clamp(2rem,3.7vw,3rem);line-height:1.12;letter-spacing:-.035em;color:var(--navy)}h3{font-size:1.35rem;line-height:1.3}p{max-width:650px}.wrap{width:min(1240px,90%);margin:auto}header{background:white;border-bottom:1px solid #dbe7ed}nav{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand img{width:275px;height:auto}.links{display:flex;align-items:center;gap:28px}.links a{text-decoration:none;font-size:15px;font-weight:700}.links a:hover{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 25px;background:var(--blue);color:white;text-decoration:none;font-weight:700;border:0;border-radius:4px;font:inherit;cursor:pointer}.btn:hover{background:#056394}.btn.outline{background:transparent;color:var(--navy);border:1px solid #9cb3bf}.eyebrow{font-size:14px;letter-spacing:.14em;font-weight:700;text-transform:uppercase;color:var(--blue);margin-bottom:20px}.hero{display:grid;grid-template-columns:1fr 1.08fr;min-height:590px;align-items:center;gap:45px;padding:65px 0}.hero p{font-size:19px;line-height:1.65;color:#456371}.hero-photo{position:relative}.hero-photo img{width:100%;height:470px;object-fit:cover;object-position:43% center;border-radius:5px}.caption{position:absolute;bottom:22px;left:22px;right:22px;background:var(--navy);color:white;padding:18px 22px;display:flex;justify-content:space-between;gap:16px;font-size:14px;border-left:4px solid #60c9f1}.actions{display:flex;gap:12px;flex-wrap:wrap}.trust{background:var(--navy);color:white}.trust .wrap{display:grid;grid-template-columns:repeat(3,1fr);padding:28px 0;gap:25px}.trust strong{display:block;font-size:23px}.trust span{font-size:14px;color:#c4dbe5}.section{padding:85px 0}.section.pale{background:var(--pale)}.section-head{display:flex;justify-content:space-between;align-items:start;gap:45px;margin-bottom:35px}.section-head h2{max-width:550px;margin-bottom:0}.section-head p{max-width:400px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{border-top:3px solid var(--blue);padding:30px;background:white;box-shadow:0 3px 16px #082a4008}.num{font-size:14px;color:var(--blue);font-weight:700;margin-bottom:35px}.card p{margin-bottom:0;color:#506a77}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.specs{margin:0}.specs div{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid #d2e0e7}.specs dt{color:#506a77}.specs dd{margin:0;font-weight:700;text-align:right}.contact{background:var(--navy);color:white}.contact h2{color:white}.contact .eyebrow{color:#77cdef}.contact a:not(.btn){color:white}.contact .btn{background:#57c2eb;color:var(--navy)}.contact .btn.outline{background:transparent;color:white;border-color:#71929f}.phone{display:inline-block;font-size:clamp(2rem,4vw,3.6rem);font-weight:700;text-decoration:none;line-height:1.2;margin-bottom:20px;letter-spacing:-.03em}.small{font-size:14px}.form{background:white;color:var(--ink);padding:32px;border-radius:5px}.form label{display:block;font-weight:700;font-size:14px;margin-bottom:6px}.form input,.form textarea{width:100%;padding:13px;border:1px solid #adc2cd;border-radius:3px;font:inherit;margin-bottom:17px;background:#fbfdfe}.form textarea{min-height:105px;resize:vertical}.form .btn{width:100%;background:var(--blue);color:white}.form p{margin:13px 0 0;color:#526b78}.fieldpair{display:grid;grid-template-columns:1fr 1fr;gap:15px}footer{padding:30px 0;background:#051e2e;color:#c4d5de;font-size:14px}footer .wrap{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}footer a{color:white}details{border-bottom:1px solid #ccdfe8;padding:20px 0}summary{font-weight:700;cursor:pointer}details p{margin:15px 0 0}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #e6a525;outline-offset:4px}.subhero{padding:65px 0 20px}.subhero h1{max-width:850px}.mobile-call{display:none}@media(max-width:850px){nav{flex-wrap:wrap;padding:20px 0;gap:20px}.brand img{width:240px}.links{gap:20px;flex-wrap:wrap}.links .btn{min-height:44px;padding:9px 15px}.hero{grid-template-columns:1fr;gap:30px;padding:45px 0}.hero-photo img{height:390px}.split{grid-template-columns:1fr;gap:35px}.cards{grid-template-columns:1fr}.section{padding:55px 0}.section-head{display:block}.section-head h2{margin-bottom:20px}.trust .wrap{gap:18px}.trust strong{font-size:19px}.caption{left:15px;right:15px;bottom:15px}.mobile-call{display:block;text-align:center;position:sticky;bottom:0;background:var(--blue);color:white;padding:14px;text-decoration:none;font-weight:700}}@media(max-width:480px){.links{gap:16px}.links a{font-size:14px}.links .btn{display:none}.hero-photo img{height:310px}.trust .wrap{grid-template-columns:1fr;padding:25px 0;gap:15px}.trust strong{display:inline;margin-right:10px}.caption{flex-direction:column;gap:0;padding:12px 16px}.form{padding:23px}.fieldpair{grid-template-columns:1fr;gap:0}}

.brand img{width:380px;height:65px;object-fit:cover}@media(max-width:850px){.brand img{width:320px;height:55px}}@media(max-width:480px){.brand img{width:290px;height:50px}}

.contact-title{color:white;font-size:clamp(2rem,3.7vw,3rem);line-height:1.12;letter-spacing:-.035em}

.mobile-contact{display:none}
@media(max-width:850px){
 body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
 .mobile-contact{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;bottom:0;left:0;right:0;z-index:1000;padding:10px 5% calc(10px + env(safe-area-inset-bottom,0px));background:white;border-top:1px solid #dbe7ed;box-shadow:0 -3px 14px #082a4018}
 .mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:50px;padding:10px 8px;border-radius:4px;text-align:center;text-decoration:none;font-size:16px;font-weight:700;line-height:1.3}
 .mobile-contact .mobile-call{position:static;background:white;color:var(--navy);border:1px solid #9cb3bf}
 .mobile-contact .mobile-text{background:var(--blue);color:white}
 .mobile-contact .mobile-text:hover{background:#056394}
}

/* Consistent blue call-to-action buttons across every page and mobile contact bar. */
:root{--button-blue:#067dba;--button-blue-hover:#056394}
.btn,.btn.outline,.contact .btn,.contact .btn.outline,.form .btn,
.mobile-contact .mobile-call,.mobile-contact .mobile-text{
 background:var(--button-blue);color:white;border:1px solid var(--button-blue);
 border-radius:2px;font-weight:700;text-align:center;
}
.btn:hover,.btn.outline:hover,.contact .btn:hover,.contact .btn.outline:hover,.form .btn:hover,
.mobile-contact .mobile-call:hover,.mobile-contact .mobile-text:hover{
 background:var(--button-blue-hover);border-color:var(--button-blue-hover);color:white;
}

/* Keep the logo and phone together on the first header row. */
header nav{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:28px;min-height:90px}
header .brand{grid-column:1;grid-row:1;min-width:0}
header .brand img{width:280px;height:auto;object-fit:contain}
header .links{grid-column:2;grid-row:1}
header .header-phone{grid-column:3;grid-row:1;white-space:nowrap;min-height:46px;padding:10px 18px;font-size:15px;text-decoration:none}
@media(max-width:850px){
 header nav{grid-template-columns:minmax(0,1fr) auto;gap:12px 18px;min-height:0;padding:14px 0}
 header .brand img{width:250px;height:auto}
 header .header-phone{grid-column:2;padding:10px 14px;font-size:14px}
 header .links{grid-column:1 / -1;grid-row:2;gap:24px}
 header .links .btn{display:none}
}
@media(max-width:480px){
 header nav{width:92%;gap:10px}
 header .brand img{width:210px;height:auto}
 header .header-phone{font-size:12px;padding:10px;min-height:44px}
 header .links a{font-size:13px}
}
