:root{--navy:#1D2C56;--red:#BA202D;--cream:#F7F3EA;--sand:#ECE6D8;--green:#6AA97C;--ink:#1b1f2a;--muted:#555b66;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.65 Roboto,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}picture{display:block}
a{color:var(--red)}a:hover{color:var(--navy)}
h1,h2,h3,h4,h5,h6{font-family:Oswald,"Arial Narrow",Impact,sans-serif;color:var(--navy);line-height:1.15;margin:.2em 0 .5em;text-transform:none;letter-spacing:.2px}
h1{font-size:clamp(2.1rem,6vw,3.8rem);text-transform:uppercase}
h2{font-size:clamp(1.6rem,4vw,2.5rem)}h3{font-size:1.35rem}h4,h5,h6{font-size:1.15rem}
h1 .hl,h2 .hl{display:block;color:var(--red)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}
.btn{display:inline-block;background:var(--red);color:#fff;font:600 1rem/1 Oswald,sans-serif;text-transform:uppercase;letter-spacing:.06em;padding:15px 26px;border-radius:4px;text-decoration:none;border:2px solid var(--red);cursor:pointer;margin:.3em .4em .3em 0}
.btn:hover{background:var(--navy);border-color:var(--navy);color:#fff}
.btn-ghost{background:transparent;color:inherit;border-color:currentColor}.hero .btn-ghost{color:#fff}
.btn-lg{font-size:1.1rem;padding:18px 34px;width:100%}
.eyebrow{font:600 .85rem/1.3 Oswald,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin:0 0 .3em}
/* header */
.site-header{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 12px rgba(0,0,0,.08)}
.hdr{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:16px}
.brand img{width:96px;height:auto}
.nav ul{list-style:none;margin:0;padding:0}
.nav>ul>li>a,.sub a{font:500 1rem Oswald,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--navy);text-decoration:none;display:block;padding:10px 12px}
.nav a:hover{color:var(--red)}
.phone{font:700 1.15rem Oswald,sans-serif;color:var(--navy);text-decoration:none;white-space:nowrap}
.menu-btn{display:none;background:none;border:0;padding:10px;cursor:pointer}.menu-btn span{display:block;width:26px;height:3px;background:var(--navy);margin:5px 0;border-radius:2px}
@media(min-width:1000px){.nav{display:flex;align-items:center;gap:18px}.nav>ul{display:flex}.has-sub{position:relative}
 .sub{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:230px;box-shadow:0 8px 20px rgba(0,0,0,.12);border-top:3px solid var(--red)}
 .has-sub:hover .sub,.has-sub:focus-within .sub{display:block}.nav-cta{display:flex;align-items:center;gap:14px}.nav-cta .btn{margin:0}}
@media(max-width:999px){.menu-btn{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:10px 20px 20px;box-shadow:0 10px 20px rgba(0,0,0,.1)}
 .nav.open{display:block}.sub{padding-left:16px}.nav-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:10px}}
/* sections */
section{padding:64px 0}
.band{background:var(--cream)}.plain{background:#fff}
.hero{background:var(--navy);color:#fff;padding:80px 0;position:relative}
.hero.has-bg{background:linear-gradient(rgba(16,24,48,.72),rgba(16,24,48,.78)),var(--bgm) center/cover no-repeat}
@media(min-width:801px){.hero.has-bg{background:linear-gradient(rgba(16,24,48,.68),rgba(16,24,48,.75)),var(--bg) center/cover no-repeat}}
.band.has-bg,.plain.has-bg{background:linear-gradient(rgba(16,24,48,.8),rgba(16,24,48,.85)),var(--bgm) center/cover;color:#fff}
.hero h1,.hero h2,.hero h3,.has-bg h2,.has-bg h3,.has-bg h1{color:#fff}.hero .eyebrow,.has-bg .eyebrow{color:#ffb3b9}
.hero .txt,.hero p{font-size:1.12rem;max-width:760px}.has-bg a:not(.btn){color:#fff}
.page-hero{padding:56px 0;text-align:center}.page-hero h1{margin:0}
.txt p{margin:0 0 1em}.txt ul{padding-left:1.2em}
.blk{margin:0 0 1rem}
.grid{display:grid;gap:24px;margin:20px 0}
@media(min-width:720px){.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.g4{grid-template-columns:repeat(4,1fr)}}
.col{min-width:0}
.band .col,.plain .col{background:#fff;border:1px solid var(--sand);border-radius:6px;padding:22px}
.band .col{border-color:#e4dccb}
.col .col,.hero .col,.has-bg .col,.formsec .col{background:transparent;border:0;padding:0}
.hero .grid{gap:14px}
.card{background:#fff;border-left:4px solid var(--red);padding:18px 20px;border-radius:4px;box-shadow:0 2px 10px rgba(0,0,0,.05);color:var(--ink);height:100%}.card h3{margin-top:0}
ul.checks{list-style:none;padding:0;margin:.5em 0 1em}
ul.checks li{position:relative;padding:4px 0 4px 30px}
ul.checks li:before{content:"";position:absolute;left:0;top:.6em;width:18px;height:18px;border-radius:50%;background:var(--red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/13px no-repeat}
.hero ul.checks{display:flex;flex-wrap:wrap;gap:6px 26px;font:600 .95rem Oswald,sans-serif;letter-spacing:.08em;text-transform:uppercase}
ul.checks.single li{font-weight:700;font-family:Oswald,sans-serif;font-size:1.15rem;color:var(--navy)}
.has-bg ul.checks.single li,.hero ul.checks.single li{color:#fff}
.pic img{border-radius:6px;box-shadow:0 10px 30px rgba(0,0,0,.15)}.logo-fig img{box-shadow:none;max-width:320px;margin:auto}
.ba{display:grid;gap:16px;margin:20px 0}@media(min-width:720px){.ba{grid-template-columns:1fr 1fr}}
.ba figure{margin:0;position:relative}.ba img{border-radius:6px;aspect-ratio:4/3;object-fit:cover;width:100%}
.ba figcaption{position:absolute;top:12px;left:12px;background:var(--red);color:#fff;font:600 .85rem Oswald,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:5px 12px;border-radius:3px}
.ba figure+figure figcaption{background:var(--green)}
.stat{display:flex;flex-direction:column}.stat strong{font:700 3rem/1 Oswald,sans-serif;color:var(--red)}
.faq details{background:#fff;border:1px solid var(--sand);border-radius:6px;margin:0 0 10px}
.faq summary{cursor:pointer;padding:16px 20px;font:600 1.08rem Oswald,sans-serif;color:var(--navy);list-style:none;position:relative;padding-right:44px}
.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:18px;top:12px;font-size:1.5rem;color:var(--red)}
.faq details[open] summary:after{content:"–"}.faq .ans{padding:0 20px 14px}
/* form */
.formsec{background:var(--navy);color:#fff}.formsec h2,.formsec h3,.formsec h1{color:#fff}.formsec .hl{color:#ffb3b9}
.formsec .wrap{max-width:820px}.formsec .logo-fig{display:none}
.quote-form{background:#fff;color:var(--ink);padding:28px;border-radius:8px;margin-top:16px;box-shadow:0 20px 40px rgba(0,0,0,.25)}
.fgrid{display:grid;gap:14px}@media(min-width:640px){.fgrid{grid-template-columns:1fr 1fr}.fgrid .full{grid-column:1/-1}}
.quote-form label{display:block;font-weight:700;font-size:.9rem;color:var(--navy)}
.quote-form input[type=text],.quote-form input[type=email],.quote-form input[type=tel],.quote-form textarea{display:block;width:100%;margin-top:5px;padding:13px 14px;border:1px solid #c9c3b4;border-radius:4px;font:inherit;font-size:16px;background:#fdfcf9}
.quote-form input:focus,.quote-form textarea:focus{outline:2px solid var(--red);border-color:var(--red)}
.optin{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;font-size:.82rem!important;color:var(--muted)!important;margin:16px 0}
.optin input{margin-top:4px;width:18px;height:18px;flex:none}
.hp{position:absolute;left:-5000px}
.legal-links{font-size:.85rem;text-align:center;margin:12px 0 0}
.legal .wrap{max-width:860px}.legal h2{font-size:1.5rem;margin-top:1.4em}.legal h3{font-size:1.2rem}.legal table{border-collapse:collapse;width:100%}.legal td,.legal th{border:1px solid var(--sand);padding:6px}
.center{text-align:center}
/* footer */
.site-footer{background:#111a33;color:#cfd5e4;padding:48px 0 90px;font-size:.95rem}
.site-footer a{color:#fff}.fgrid3{display:grid;gap:24px}@media(min-width:760px){.fgrid3{grid-template-columns:1fr 1fr 2fr}}
.badge{font:700 2rem Oswald,sans-serif;color:#fff;margin:0}.ftitle{font:600 1rem Oswald,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin:0 0 6px}
.copy{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:18px;font-size:.85rem}
.call-fab{position:fixed;left:12px;right:12px;bottom:12px;background:var(--red);color:#fff;text-align:center;font:700 1.05rem Oswald,sans-serif;letter-spacing:.06em;padding:14px;border-radius:6px;text-decoration:none;z-index:60;box-shadow:0 6px 20px rgba(0,0,0,.3)}
@media(min-width:800px){.call-fab{display:none}.site-footer{padding-bottom:40px}}
@media(max-width:600px){section{padding:44px 0}.hero{padding:56px 0}.quote-form{padding:18px}}
em.hl2{font-style:normal;color:var(--red)}.hero em.hl2,.has-bg em.hl2,.formsec em.hl2{color:#ff8a93}
h1 a,h2 a,h3 a{color:inherit;text-decoration:none}h2 a:hover,h3 a:hover{color:var(--red)}
.grid{align-items:start}.logo-fig+.txt,.logo-fig~.txt{text-align:center;font:600 1rem Oswald,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}
.formsec h2{font-size:clamp(1.8rem,4vw,2.6rem);text-align:center}
.grid .col .grid{grid-template-columns:1fr}
.legal .grid{display:block}.legal .col{border:0;padding:0;background:none}

/* two ways to hire */
.hire-ways .col{display:flex;flex-direction:column}.hire-ways .col.primary{border-top:4px solid var(--red)}.hire-ways .col.alt{border-top:4px solid var(--navy)}
.hire-ways .tag{font:600 .75rem/1 Oswald,sans-serif;letter-spacing:.14em;text-transform:uppercase;background:var(--red);color:#fff;padding:5px 9px;border-radius:3px;align-self:flex-start;margin-bottom:10px}
.hire-ways .alt .tag{background:var(--navy)}
.hire-ways .price{font:700 2.2rem/1.1 Oswald,sans-serif;color:var(--navy);margin:.2em 0}.hire-ways .price small{font-size:.9rem;font-weight:500;color:var(--muted);letter-spacing:.04em}
.rates{list-style:none;padding:0;margin:.4em 0 .6em}.rates li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--sand)}.rates li strong{font-family:Oswald,sans-serif;color:var(--navy);white-space:nowrap}
.hire-ways .note{font-size:.9rem;color:var(--muted);margin:0 0 1em}.hire-ways .col .btn{margin-top:auto;align-self:flex-start}
.quote-form select{display:block;width:100%;margin-top:5px;padding:13px 14px;border:1px solid #c9c3b4;border-radius:4px;font:inherit;font-size:16px;background:#fdfcf9}
.quote-form select:focus{outline:2px solid var(--red);border-color:var(--red)}
.quote-form fieldset{border:0;padding:0;margin:0}.quote-form legend{font-weight:700;font-size:.9rem;color:var(--navy);padding:0;margin-bottom:6px}
.radios{display:flex;flex-wrap:wrap;gap:8px 22px}.radios label{display:flex!important;align-items:center;gap:8px;font-weight:400!important;font-size:1rem!important;color:var(--ink)!important}.radios input{width:18px;height:18px;margin:0}
