/* Signstar sub-pages (sign-type pages, 404). Same tokens, fonts and glass language as index.html, without the heavy motion.
   Generated pages use this file; edit here, not in each page. */
:root{
  color-scheme:light;
  --bg:#E8EEF9; --bg-2:#F3E8CE; --surface:#F3F6FC; --tint:#DCE6F8;
  --ink:#0A1233; --text:#2E3A63; --muted:#4F5B84;
  --line:rgba(10,18,51,.13);
  --accent:#1B44E0; --accent-hi:#1534B6;
  --gold:#B7862A; --gold-ink:#7A5712; --gold-hi:#E4C27C;
  --night:#060A1A; --night-2:#0B1330;
  --ivory:#F6F1E5; --on-night:#C3CCE6; --night-line:rgba(246,241,229,.14);
  --r:16px; --r-m:26px; --r-l:34px;
  --display:"Instrument Serif",Georgia,"Times New Roman",serif;
  --body:"Manrope","Helvetica Neue",Arial,sans-serif;
  --gutter:clamp(18px,4.4vw,72px);
  --glass:linear-gradient(150deg,rgba(250,252,255,.74),rgba(234,241,252,.40));
  --sh:0 1px 0 rgba(252,250,244,.95) inset,0 0 0 1px rgba(10,18,51,.045),0 32px 64px -36px rgba(10,18,51,.42);
  --ease:cubic-bezier(.23,1,.32,1);
}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.7 var(--body);-webkit-font-smoothing:antialiased;overflow-x:clip}
img,video{display:block;max-width:100%;height:auto}
a{color:var(--accent)}
h1,h2,h3{font-family:var(--display);font-weight:400;color:var(--ink);margin:0;letter-spacing:-.018em;text-wrap:balance}
h1 em,h2 em{font-style:italic;color:var(--gold-ink)}
p{margin:0 0 1em}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.wrap{max-width:1240px;margin:0 auto;padding:0 var(--gutter)}
.meta{font:600 11.5px/1.35 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--ivory);padding:10px 16px;border-radius:999px;z-index:60}
.skip:focus{left:12px}

/* header */
.hdr{position:sticky;top:10px;z-index:40;margin:10px var(--gutter) 0}
.bar{display:flex;align-items:center;gap:18px;padding:10px 12px 10px 18px;border-radius:999px;background:var(--glass);backdrop-filter:blur(20px) saturate(1.6);-webkit-backdrop-filter:blur(20px) saturate(1.6);box-shadow:var(--sh)}
.brand{display:flex;align-items:center;gap:10px;margin-right:auto}
.brand img{height:34px;width:auto}
.brand .wm{height:22px}
.nav{display:flex;gap:2px}
.nav a{padding:10px 13px;border-radius:999px;font:500 14.5px/1 var(--body);color:var(--ink);text-decoration:none;transition:background .3s var(--ease)}
.nav a:hover,.nav a[aria-current]{background:rgba(27,68,224,.09)}
@media (max-width:980px){.nav{display:none}}
@media (max-width:420px){.brand .wm{height:17px}.bar{gap:10px;padding-left:12px}.hdr .btn-sm{padding:0 14px;font-size:11px;letter-spacing:.04em}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border-radius:999px;font:700 13px/1 var(--body);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s}
.btn-primary{color:#F6F1E5;background:linear-gradient(180deg,#3A63F2,var(--accent) 55%,#1534B6);box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 14px 30px -14px rgba(27,68,224,.8)}
.btn-primary:hover{transform:translateY(-2px)}
.btn-ghost{color:var(--ink);background:var(--glass);box-shadow:var(--sh)}
.btn-sm{min-height:42px;padding:0 18px;font-size:12px}
.btn-gold{color:var(--night);background:linear-gradient(180deg,#F3D79A,var(--gold-hi) 55%,#C9964A)}

/* breadcrumb + hero */
.crumbs{margin:28px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:var(--muted)}
.crumbs li+li::before{content:"/";margin-right:6px;opacity:.5}
.crumbs a{color:var(--muted)}
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,64px);align-items:center;padding:clamp(24px,4vw,56px) 0 clamp(48px,6vw,88px)}
.hero h1{font-size:clamp(44px,6.4vw,92px);line-height:.95;letter-spacing:-.03em;margin:14px 0 22px}
.hero .lede{font-size:clamp(17px,1.4vw,19.5px);max-width:58ch}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.hero figure{margin:0;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--sh);aspect-ratio:4/5;background:var(--tint)}
.hero figure img{width:100%;height:100%;object-fit:cover}
.hero figcaption{font-size:13px;color:var(--muted);margin-top:10px}
.trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:22px;font-size:14px;color:var(--muted)}
.trust span{display:inline-flex;align-items:center;gap:6px}
.trust i{color:var(--gold)}
@media (max-width:860px){.hero{grid-template-columns:1fr}.hero figure{aspect-ratio:4/3}}

/* sections */
.sec{padding:clamp(56px,7vw,104px) 0}
.sec.champ{background:linear-gradient(180deg,var(--bg-2),#F7EFDB)}
.sec h2{font-size:clamp(34px,4.2vw,60px);line-height:1;margin-bottom:18px}
.sec .intro{max-width:66ch;font-size:18px}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));margin-top:30px}
.card{padding:24px 24px 20px;border-radius:var(--r-m);background:var(--glass);box-shadow:var(--sh)}
.card h3{font-size:27px;line-height:1.05;margin-bottom:10px}
.card p{margin:0;font-size:16px}
.steps{counter-reset:s;list-style:none;padding:0;margin:30px 0 0;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.steps li{counter-increment:s;padding:24px;border-radius:var(--r-m);background:var(--glass);box-shadow:var(--sh)}
.steps li::before{content:"0" counter(s);display:block;font:600 12px/1 var(--body);letter-spacing:.2em;color:var(--gold-ink);margin-bottom:14px}
.steps h3{font-size:27px;margin-bottom:8px}
.steps p{margin:0;font-size:16px}
.ticks{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px}
.ticks li{display:flex;gap:10px;align-items:flex-start}
.ticks li::before{content:"";flex:0 0 18px;height:18px;margin-top:5px;border-radius:50%;background:radial-gradient(circle at 50% 50%,var(--gold) 0 4px,rgba(183,134,42,.18) 5px)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,64px);align-items:start}
@media (max-width:860px){.two{grid-template-columns:1fr}}

/* gallery */
.gal{columns:3 260px;column-gap:14px;margin-top:30px}
.gal figure{break-inside:avoid;margin:0 0 14px;border-radius:var(--r);overflow:hidden;background:var(--tint);box-shadow:var(--sh)}
.gal a{display:block}
.gal img{width:100%;transition:transform .6s var(--ease)}
.gal a:hover img{transform:scale(1.03)}
.gal figcaption{padding:10px 14px 12px;font-size:14px;color:var(--ink);background:rgba(246,241,229,.7)}
.vid{margin:30px 0 0;max-width:420px;border-radius:var(--r-m);overflow:hidden;box-shadow:var(--sh);background:#05070d}
.vid video{width:100%;aspect-ratio:9/16;object-fit:cover}
.vid figcaption{padding:10px 14px;font-size:14px;color:var(--on-night)}

/* FAQ */
.faq{max-width:860px}
.qa{border-radius:var(--r);background:var(--glass);box-shadow:var(--sh);margin-bottom:10px}
.qa summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:18px 22px}
.qa summary::-webkit-details-marker{display:none}
.qa summary h3{font:600 17px/1.4 var(--body);letter-spacing:0;color:var(--ink)}
.qa summary::after{content:"+";font:400 26px/1 var(--body);color:var(--gold-ink);transition:transform .3s var(--ease)}
.qa[open] summary::after{transform:rotate(45deg)}
.qa .a{padding:0 22px 18px}
.qa .a p{margin:0}

/* related + CTA */
.rel{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));margin-top:26px}
.rel a{display:block;padding:20px 22px;border-radius:var(--r-m);background:var(--glass);box-shadow:var(--sh);text-decoration:none;color:var(--ink);font:400 26px/1.1 var(--display);transition:transform .3s var(--ease)}
.rel a span{display:block;margin-top:8px;font:500 14px/1.4 var(--body);color:var(--muted)}
.rel a:hover{transform:translateY(-3px)}
.band{background:radial-gradient(60% 120% at 80% 0,rgba(228,194,124,.18),transparent 60%),var(--night);color:var(--on-night)}
.band h2{color:var(--ivory)}
.band h2 em{color:var(--gold-hi)}
.band .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.band .btn-ghost{color:var(--ivory);background:rgba(255,255,255,.08);box-shadow:0 0 0 1px var(--night-line) inset}
.band a{color:var(--gold-hi)}

/* footer */
.foot{background:var(--night);color:var(--on-night);padding:56px 0 110px;border-top:1px solid var(--night-line);font-size:15px}
.foot a{color:var(--on-night)}
.foot-grid{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}
.foot h3{font:600 12px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-hi);margin-bottom:14px}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.foot .copy{margin-top:40px;padding-top:20px;border-top:1px solid var(--night-line);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-size:13.5px;color:#9AA6C9}

/* mobile call bar */
.callbar{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;display:none}
@media (max-width:760px){.callbar{display:flex}}

/* 404 */
.nf{min-height:62vh;display:grid;align-content:center;padding:60px 0}
.nf h1{font-size:clamp(48px,8vw,110px);line-height:.95;margin:12px 0 18px}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media (prefers-reduced-transparency:reduce){.bar,.card,.steps li,.qa,.rel a,.btn-ghost{background:var(--surface)}}
.q-short{display:none}
@media (max-width:420px){.q-long{display:none}.q-short{display:inline}}
