:root{--bg:#0a0a0a;--panel:#141414;--line:#2a2a2a;--text:#f5f5f5;--muted:#a3a3a3;--red:#d90429;--red2:#ef233c;--ok:#4ade80;--warn:#fbbf24}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,"Segoe UI",sans-serif;line-height:1.55}
a{color:inherit}h1,h2,h3{font-family:Anton,Impact,"Arial Narrow",sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.02em;line-height:1.05;margin:.3em 0}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
/* header */
header{position:sticky;top:0;z-index:20;background:rgba(10,10,10,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;height:68px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:1.15rem;letter-spacing:.03em}
.brand img{width:44px;height:44px;border-radius:50%}.brand span{color:var(--red2)}
nav{display:flex;align-items:center;gap:22px}nav a{text-decoration:none;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
nav a:hover,nav a.on{color:#fff}
.btn,button{display:inline-block;background:var(--red);color:#fff!important;border:0;padding:12px 22px;font:700 .8rem Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;cursor:pointer;border-radius:2px}
.btn:hover,button:hover{background:var(--red2)}.btn.ghost{background:transparent;border:1px solid #555}.btn.ghost:hover{border-color:#fff}
.btn.white{background:#fff;color:#000!important}
nav .btn{padding:10px 16px}.menu{display:none;background:none;border:1px solid var(--line);padding:8px 12px}
@media(max-width:820px){.menu{display:block}nav{display:none;position:absolute;top:68px;left:0;right:0;background:#0a0a0a;flex-direction:column;align-items:stretch;padding:16px 20px;border-bottom:1px solid var(--line)}nav.open{display:flex}}
/* hero */
.hero{position:relative;overflow:hidden;padding:90px 0 80px;border-bottom:1px solid var(--line);background:radial-gradient(900px 400px at 85% 10%,rgba(217,4,41,.28),transparent 60%),#0a0a0a}
.hero:before{content:"";position:absolute;right:-8%;top:0;bottom:0;width:38%;background:repeating-linear-gradient(115deg,transparent 0 26px,rgba(255,255,255,.04) 26px 28px)}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.4fr 1fr;gap:30px;align-items:center}
.hero h1{font-size:clamp(3.2rem,10vw,7.4rem);margin:0}.hero h1 em{font-style:normal;background:var(--red);padding:0 .12em;display:inline-block}
.hero p{max-width:520px;color:#cfcfcf;font-size:1.05rem}.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.hero img.logo{width:min(320px,70%);border-radius:50%;justify-self:center;box-shadow:0 0 0 6px #111,0 0 0 8px var(--red)}
@media(max-width:820px){.hero{padding:50px 0}.hero .wrap{grid-template-columns:1fr}.hero img.logo{display:none}}
.ticker{background:var(--red);overflow:hidden;white-space:nowrap;padding:12px 0;font:400 1.1rem Anton,Impact,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.ticker div{display:inline-block;animation:slide 28s linear infinite}@keyframes slide{to{transform:translateX(-50%)}}
/* sections */
section{padding:70px 0;border-bottom:1px solid var(--line)}.eyebrow{color:var(--red2);font-size:.75rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
h2.big{font-size:clamp(2.2rem,6vw,4rem)}.lead{color:var(--muted);max-width:620px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:30px}
.card{background:var(--panel);padding:26px;position:relative}.card .n{position:absolute;right:16px;top:8px;font:400 2.6rem Anton,sans-serif;color:#222}
.card h3{font-size:1.2rem;margin-top:0}.card p{color:var(--muted);margin:0;font-size:.92rem}
/* plans */
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:30px}
.plan{background:var(--panel);border:1px solid var(--line);padding:30px;text-align:center}
.plan.best{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}.plan .tag{display:inline-block;background:var(--red);font-size:.68rem;font-weight:700;letter-spacing:.14em;padding:3px 10px;margin-bottom:8px}
.plan h3{font-size:1.6rem}.price{font:400 3rem Anton,sans-serif}.plan small{display:block;color:var(--muted);margin-bottom:18px}
.note{color:var(--muted);font-size:.85rem;margin-top:16px}
/* banner + footer */
.banner{background:var(--red);text-align:center;padding:60px 0;border:0}.banner h2{font-size:clamp(2.2rem,6vw,4rem)}
footer{padding:50px 0 24px;background:#050505}.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:30px}
footer h4{font:700 .72rem Inter;letter-spacing:.18em;text-transform:uppercase;color:var(--red2);margin:0 0 12px}
footer p,footer li{color:var(--muted);font-size:.9rem;margin:.35em 0}footer ul{list-style:none;padding:0;margin:0}footer li b{color:#ddd;font-weight:600}
.copy{border-top:1px solid var(--line);margin-top:30px;padding-top:16px;color:#666;font-size:.8rem}
.wa{position:fixed;right:18px;bottom:18px;z-index:30;background:#25d366;color:#fff;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;box-shadow:0 6px 20px rgba(0,0,0,.5)}
/* forms + panels (also used by owner pages) */
main{padding:40px 0 70px;min-height:60vh}.narrow{max-width:520px}
.panel{background:var(--panel);border:1px solid var(--line);padding:22px;margin:18px 0}
input,select,textarea{width:100%;padding:12px;background:#0a0a0a;border:1px solid #3a3a3a;color:#fff;border-radius:2px;font:1rem Inter,sans-serif;margin:5px 0 10px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--red);border-color:var(--red)}label{font-size:.8rem;color:var(--muted)}
.admin-row input,.admin-row select{width:auto;display:inline-block;margin:4px 4px 4px 0}
.msg{background:#1c0b0e;border:1px solid var(--red);padding:12px 16px;margin-bottom:18px}.err{color:#ff6b6b}
.steps{counter-reset:s;list-style:none;padding:0}.steps li{counter-increment:s;margin:10px 0;padding-left:44px;position:relative}
.steps li:before{content:counter(s);position:absolute;left:0;top:-2px;width:30px;height:30px;background:var(--red);display:grid;place-items:center;font:400 1.1rem Anton,sans-serif}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin-top:26px}
.gal img,.gal .ph{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--panel);border:1px solid var(--line)}
.gal .ph{display:grid;place-items:center;color:#555;font:400 1rem Anton,sans-serif;letter-spacing:.1em}
.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.big-link{display:block;margin:10px 0}
.status{font:400 2.2rem Anton,sans-serif}.s-active{color:var(--ok)}.s-expiring{color:var(--warn)}.s-expired{color:#ff6b6b}
/* owner dashboard compatibility */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.stat{background:var(--panel);border:1px solid var(--line);padding:14px;border-left:5px solid var(--line)}.stat b{font:400 2rem Anton,sans-serif;display:block}.stat span{color:var(--muted);font-size:.9rem}
.stat.s-active{border-left-color:var(--ok)}.stat.s-expiring{border-left-color:var(--warn)}.stat.s-expired{border-left-color:#ff6b6b}.stat.s-pending{border-left-color:var(--red)}
table{border-collapse:collapse;width:100%}th{font-size:.75rem;text-transform:uppercase;color:var(--muted);text-align:left;letter-spacing:.08em}td,th{padding:9px 8px;border-bottom:1px solid var(--line)}.tablewrap{overflow-x:auto}
.badge{padding:2px 10px;border-radius:99px;font-size:.78rem;font-weight:600}.b-active{background:#052e16;color:var(--ok)}.b-expiring{background:#3b2a05;color:var(--warn)}.b-expired{background:#3b0a0a;color:#ff6b6b}
form.inline{display:inline}code{background:#222;padding:1px 6px}
footer .brand{display:block}.card h3{padding-right:44px}
@media(max-width:480px){.brand{font-size:.95rem}.brand img{width:38px;height:38px}}
.dash{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:10px;align-items:start}@media(max-width:820px){.dash{grid-template-columns:1fr}}
.bar2{height:8px;background:#222;border-radius:9px;overflow:hidden}.bar2 i{display:block;height:100%;background:var(--ok)}.bar2 i.s-expiring{background:var(--warn)}.bar2 i.s-expired{background:#ff6b6b}
main.wrap{padding-top:40px;padding-bottom:70px}
/* expiring: pulsing ring + live countdown */
.ringwrap{--c:var(--warn);display:flex;align-items:center;gap:22px;margin:8px 0 14px}.ringwrap.urgent{--c:#ff5a6a}
.ring{position:relative;width:132px;height:132px;flex:none;animation:beat 2.4s ease-in-out infinite}.urgent .ring{animation-duration:1.2s}
.ring svg{position:absolute;inset:0}.rc{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.rc b{font:400 3rem/1 Anton,Impact,sans-serif}.rc small{color:var(--muted);font-size:.75rem}
@keyframes beat{0%,100%{transform:scale(1);filter:drop-shadow(0 0 3px var(--c))}50%{transform:scale(1.05);filter:drop-shadow(0 0 14px var(--c))}}
.tick{display:flex;gap:14px;margin-top:8px;font-variant-numeric:tabular-nums}.tick span{display:flex;flex-direction:column;align-items:center}
.tick b{font:400 1.9rem/1 Anton,Impact,sans-serif}.tick i{font-style:normal;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:3px}
@media(max-width:420px){.ringwrap{gap:14px}.ring{width:110px;height:110px}.ring svg{width:110px;height:110px}.tick{gap:10px}}
@media (prefers-reduced-motion:reduce){.ring{animation:none}}
.anav{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 22px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.anav a{text-decoration:none;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:8px 12px;border:1px solid var(--line)}.anav a:hover{color:#fff;border-color:#555}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:600px){.row2{grid-template-columns:1fr}}
.ghostbtn{background:transparent!important;border:1px solid #555!important;padding:5px 10px;font-size:.7rem}.ghostbtn:hover{border-color:#fff!important}
.ownertag{background:var(--red);color:#fff;font:700 .6rem Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:3px 7px;border-radius:2px;margin-left:4px}
