@font-face{font-family:Audiowide;src:url(../fonts/audiowide-400.woff2) format("woff2");font-display:swap}
:root{--ink:#0a1a26;--deep:#102a3b;--star:#f4d47c;--txt:#e9eef2;--mut:#a9b8c4;--line:rgba(255,255,255,.14)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--txt);font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
a{color:inherit}img{max-width:100%;height:auto;display:block}
h1,h2,.brand span,.foot-brand{font-family:Audiowide,system-ui,sans-serif;font-weight:400;letter-spacing:.02em;line-height:1.15}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;color:#000;padding:8px 12px;z-index:9}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:rgba(10,26,38,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:34px;height:auto}.brand span{font-size:18px}
.menu summary{list-style:none;cursor:pointer;padding:10px;display:grid;gap:5px}.menu summary::-webkit-details-marker{display:none}
.menu summary span{display:block;width:24px;height:2px;background:var(--txt)}
.menu nav{position:absolute;right:0;left:0;top:100%;background:var(--ink);border-bottom:1px solid var(--line);display:flex;flex-direction:column;padding:8px 20px 20px}
.menu nav a{padding:12px 0;text-decoration:none;border-bottom:1px solid var(--line)}.menu nav a[aria-current]{color:var(--star)}
.menu nav a.btn{margin-top:14px;border:0;text-align:center}
.btn{display:inline-block;background:var(--star);color:var(--ink)!important;text-decoration:none;font-weight:700;padding:10px 18px;border-radius:999px;border:0;font-size:15px;cursor:pointer}
.btn:hover{background:#ffe39b}.btn-lg{padding:14px 28px;font-size:17px}
.hero{position:relative;min-height:72vh;display:grid;place-items:center;text-align:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,26,38,.15),rgba(10,26,38,.75))}
.hero-in{position:relative;z-index:1;padding:64px 22px;max-width:820px}
.hero h1{font-size:clamp(38px,9vw,76px);margin:0 0 14px;text-shadow:0 2px 24px rgba(0,0,0,.5)}
.sub{font-size:clamp(17px,2.6vw,21px);color:#dbe5ec;margin:0 0 28px}
section h2{font-size:clamp(26px,5vw,36px);margin:0 0 24px;text-align:center}
.services,.cta,.quote{padding:64px 20px;max-width:1100px;margin:0 auto}
.grid{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:1fr}
.grid a{display:flex;align-items:center;gap:14px;padding:22px 24px;border:1px solid var(--line);border-radius:14px;background:var(--deep);text-decoration:none;font-family:Audiowide,sans-serif;font-size:20px;transition:border-color .2s,transform .2s}
.grid a:hover{border-color:var(--star);transform:translateY(-2px)}.star{color:var(--star)}
.cta{text-align:center;border-top:1px solid var(--line)}.cta p{color:var(--mut);margin:0 0 24px}
.quote{max-width:680px}
form .row{display:flex;flex-direction:column;margin-bottom:16px}
label{font-size:15px;color:var(--mut);margin-bottom:6px}
input,select,textarea{font:inherit;color:var(--txt);background:var(--deep);border:1px solid var(--line);border-radius:10px;padding:12px 14px;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--star);outline-offset:1px}
.two{display:grid;gap:0 16px}.hint{color:var(--mut);font-size:14px}.err{color:#ffb4a8}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ok{text-align:center;padding:24px;border:1px solid var(--star);border-radius:14px}.note{color:var(--mut);font-size:14px}
.foot{border-top:1px solid var(--line);padding:40px 20px;text-align:center;color:var(--mut)}
.foot nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin:12px 0}.foot nav a{text-decoration:none}.foot nav a:hover{color:var(--star)}
.foot-brand{color:var(--txt);font-size:20px;margin:0}.small{font-size:13px;margin:0}
@media(min-width:640px){.grid{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr 1fr}}
@media(min-width:900px){.menu summary{display:none}.menu nav{position:static;flex-direction:row;align-items:center;gap:26px;padding:0;border:0;background:none}
.menu nav a{border:0;padding:6px 0}.menu nav a.btn{margin:0;padding:10px 18px}.grid{grid-template-columns:repeat(5,1fr)}.grid a{flex-direction:column;text-align:center;padding:30px 12px;font-size:18px}.hero{min-height:78vh}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
