:root{--ink:#111e30;--muted:#536074;--blue:#2857c9;--line:#d8e0ec;--paper:#f3f6fb;font-family:"DM Sans",Arial,sans-serif;color:var(--ink);background:var(--paper);scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0}a{color:inherit}a:focus-visible{outline:3px solid #729bff;outline-offset:4px}.wrap{max-width:1240px;width:calc(100% - 96px);margin:auto}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:2;background:white;padding:1rem}
.masthead{background:#fff;border-bottom:1px solid var(--line)}.nav{min-height:85px;display:flex;align-items:center;gap:30px}.brand img{display:block;width:140px;height:auto}.nav-links{display:flex;gap:27px;margin-left:auto}.nav-links a,.nav-call{text-decoration:none;font-weight:700;font-size:.92rem}.nav-links a:hover,.directions:hover{text-decoration:underline}.nav-call{border:1px solid var(--line);padding:12px 16px;border-radius:5px}.nav-call span{color:var(--blue);margin-right:4px}
.hero{background:#142238;position:relative;color:#fff;isolation:isolate}.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101c30 2%,rgba(16,28,48,.94) 25%,rgba(16,28,48,.42) 62%,rgba(16,28,48,.08)),url("assets/workshop.png") center 55%/cover no-repeat}.hero-content{min-height:570px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-block:64px}.eyebrow{color:#d7e5ff;text-transform:uppercase;font-size:.76rem;font-weight:700;letter-spacing:.15em;display:flex;align-items:center;gap:10px}.eyebrow span{width:21px;height:2px;background:#81a5ff}.hero h1,h2,h3{font-family:"Barlow Condensed","Arial Narrow",Arial,sans-serif;line-height:.99;margin:0}.hero h1{font-size:clamp(4rem,8vw,7.35rem);font-weight:700;letter-spacing:-.018em}.intro{max-width:420px;line-height:1.6;color:#e3eaf5;font-size:1.07rem;margin:22px 0 26px}.actions{display:flex;gap:11px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:48px;padding:11px 16px;border-radius:5px;text-decoration:none;font-weight:700;font-size:.93rem}.primary{background:#a9c2ff;color:#101e37;border:1px solid #a9c2ff}.primary:hover{background:#c4d4ff}.secondary{border:1px solid #7687a2;color:#fff}.secondary:hover{background:#ffffff1f}
.services{padding-block:68px 74px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:27px}.section-head p{max-width:380px;margin:0;color:var(--muted);line-height:1.55}.section-head h2,.visit h2{font-size:clamp(2.8rem,5.5vw,4.8rem)}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.card{display:flex;flex-direction:column;min-height:232px;padding:26px 21px 22px;background:white;border:1px solid var(--line);border-top:3px solid #315cc5;border-radius:6px;transition:border-color .2s}.card:hover{border-color:#668bdf}.card h3,.contact h3{font-size:2rem}.card p,.contact p{line-height:1.55;color:var(--muted)}.card a{margin-top:auto;color:#234cae;font-weight:700;font-size:.88rem;text-decoration:none;padding-top:12px}.card a:hover{text-decoration:underline}.card a span{margin-left:2px}
.visit{background:#15243b;color:#fff;padding-block:53px}.visit-inner{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.visit address{font-style:normal;margin-block:17px 13px;line-height:1.55;color:#d7e4f7}.directions{color:#bcd0ff;text-decoration:none;font-weight:700}.contact{border:1px solid #4b5b75;padding:24px;border-radius:6px}.contact p{color:#d7e4f7;margin-block:10px 16px}.footer{display:flex;justify-content:space-between;gap:10px;padding-block:21px;font-size:.85rem;color:var(--muted)}
@media(max-width:950px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card{min-height:190px}}
@media(max-width:650px){.wrap{width:calc(100% - 32px)}.nav{min-height:65px;gap:13px}.brand img{width:110px}.nav-links{gap:13px}.nav-call{display:none}.hero::before{background:linear-gradient(90deg,#101c30 0%,rgba(16,28,48,.89) 38%,rgba(16,28,48,.39)),url("assets/workshop.png") 59% center/cover no-repeat}.hero-content{min-height:475px;padding-block:45px}.hero h1{font-size:clamp(3.25rem,13vw,5.2rem)}.intro{font-size:.98rem;max-width:325px}.eyebrow{letter-spacing:.09em}.services{padding-block:43px}.section-head{display:block}.section-head p{margin-top:10px}.service-grid,.visit-inner{grid-template-columns:1fr}.card{min-height:0;padding:19px}.card a{padding-top:5px}.visit-inner{gap:23px}.visit{padding-block:38px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.booking{padding-bottom:70px}.booking-form{background:white;border:1px solid var(--line);border-radius:8px;padding:26px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.booking-form label{display:grid;gap:6px;font-weight:700;font-size:.92rem;min-width:0}.booking-form input,.booking-form select,.booking-form textarea{width:100%;min-width:0;min-height:46px;border:1px solid #a2b0c4;background:white;color:var(--ink);border-radius:5px;padding:10px;font:inherit;font-weight:400}.booking-form button{justify-self:start;cursor:pointer}.booking-form button:disabled{opacity:.65;cursor:wait}.booking-wide{grid-column:1/-1}.booking-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#booking-status{margin:0;color:#173465}#booking-status:empty{display:none}@media(max-width:650px){.booking{padding-bottom:43px}.booking-form{grid-template-columns:minmax(0,1fr);padding:17px}}
