/* STRUCTR — original draft aesthetic (structr-website-v2.html): black + dark rose, cinematic */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --black:#0A0A0A; --rose:#8B3A52; --rose-light:#C4748A; --rose-pale:#F9F0F3;
  --gray:#4A4A4A; --gray-light:#999; --white:#FFFFFF; --off-white:#F5F0F2;
  --serif:Georgia,'Times New Roman',serif; --sans:Arial,Helvetica,sans-serif;
}
html{scroll-behavior:smooth}
body{background:var(--black);color:var(--white);font-family:var(--serif);font-size:17px;line-height:1.7}
.wrap{max-width:1100px;margin:0 auto;padding:0 24px}
a{color:var(--rose-light);text-decoration:none}
a:hover{text-decoration:underline}

/* NAV — sticky, blurred */
nav{position:sticky;top:0;z-index:100;background:rgba(10,10,10,.95);backdrop-filter:blur(8px);border-bottom:1px solid #1c1c1c}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:70px}
.wordmark{font-family:var(--serif);font-size:20px;letter-spacing:.14em;color:var(--white);text-decoration:none}
.wordmark span{color:var(--rose-light)}
.nav-links{display:flex;gap:26px;align-items:center}
.nav-links a{color:var(--gray-light);font-family:var(--sans);font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:color .2s}
.nav-links a:hover{color:var(--rose-light)}

/* BUTTONS */
.btn{display:inline-block;background:var(--rose);color:var(--white);padding:.85rem 2rem;font-family:var(--sans);font-size:.9rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border:none;border-radius:2px;cursor:pointer;transition:background .2s}
.btn:hover{background:#a0485e;text-decoration:none}
.btn-outline{background:transparent;border:1px solid #333;color:#aaa;transition:all .2s}
.btn-outline:hover{background:transparent;border-color:var(--rose-light);color:var(--rose-light)}

/* TYPE */
h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,5.5vw,4rem);line-height:1.12;letter-spacing:-.01em}
h1 em,h2 em{font-style:normal;color:var(--rose-light)}
h2{font-family:var(--serif);font-weight:400;font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.2;margin-bottom:1.2rem}
h3{font-family:var(--serif);font-weight:400;font-size:1.35rem;margin-bottom:.5rem;color:var(--white)}
.lead{font-family:var(--sans);font-size:1.05rem;color:#aaa;max-width:560px;line-height:1.7}
.kicker{font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--rose-light);margin-bottom:1rem}
.muted{color:var(--gray-light)}

/* TICKER */
.ticker{background:var(--rose);padding:.7rem 0;overflow:hidden;white-space:nowrap}
.ticker-inner{display:inline-flex;animation:ticker 30s linear infinite}
.ticker-item{font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;padding:0 2.5rem;color:var(--white)}
.ticker-dot{color:rgba(255,255,255,.4)}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* SECTIONS */
section{padding:5rem 2rem}
section .wrap{padding:0}
.hero{padding:7rem 2rem 5rem}
.hero h1{max-width:18ch;margin-bottom:1.6rem}
.hero .lead{margin-bottom:2.5rem}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}
.rule{border:none;border-top:1px solid #1c1c1c}

/* GRID CARDS */
.grid{display:grid;gap:1px;background:#1c1c1c;border:1px solid #1c1c1c}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.cell{background:#0F0D0E;padding:2.2rem 2rem}
.cell .num{font-family:var(--serif);font-size:2.2rem;color:var(--rose-light);display:block;margin-bottom:.8rem}
.cell p{font-family:var(--sans);color:var(--gray-light);font-size:.92rem;line-height:1.7}

/* PRICING TIERS */
.tier{background:#0F0D0E;padding:2.5rem 2rem;display:flex;flex-direction:column}
.tier .price{font-family:var(--serif);font-size:2.4rem;margin:.4rem 0 0}
.tier .per{font-family:var(--sans);font-size:.8rem;color:var(--gray-light);margin-bottom:1.4rem;text-transform:uppercase;letter-spacing:.1em}
.tier ul{list-style:none;margin:0 0 1.8rem;flex:1}
.tier li{padding:.55rem 0;border-bottom:1px solid #1c1c1c;font-family:var(--sans);font-size:.9rem;color:#bbb}
.tier li:last-child{border-bottom:none}
.tier.featured{outline:1px solid var(--rose);outline-offset:-1px}
.tag{display:inline-block;font-family:var(--sans);font-size:.65rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;background:var(--rose);color:var(--white);padding:.3rem .7rem;align-self:flex-start}

/* OFFER BLOCKS (Problem → Solution → Outcome) */
.offer{background:#0F0D0E;border:1px solid #1c1c1c;padding:2.5rem;margin-bottom:1.5rem}
.offer .meta{font-family:var(--sans);font-size:.82rem;color:var(--rose-light);letter-spacing:.05em;text-transform:uppercase;margin-top:.3rem}
.offer .pso{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:1.5rem}
.pso h4{font-family:var(--sans);font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--rose-light);margin-bottom:.5rem}
.pso p{font-family:var(--sans);font-size:.9rem;color:var(--gray-light);line-height:1.7}

/* FORMS */
form{max-width:720px}
fieldset{border:none;margin-bottom:2.5rem}
legend{font-family:var(--serif);font-size:1.4rem;margin-bottom:1.2rem;padding-top:.5rem;color:var(--white)}
label{display:block;font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#bbb;margin:1.1rem 0 .4rem}
input,select,textarea{width:100%;padding:.8rem .9rem;background:#141114;border:1px solid #2a2a2a;border-radius:2px;font-family:var(--sans);font-size:1rem;color:var(--white)}
input:focus,select:focus,textarea:focus{outline:1px solid var(--rose-light);border-color:var(--rose-light)}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#999 50%),linear-gradient(135deg,#999 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat}
textarea{min-height:110px;resize:vertical}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.required::after{content:" *";color:var(--rose-light)}
.help{font-family:var(--sans);font-size:.8rem;color:var(--gray-light);margin-top:.4rem}
.notice{background:#141114;border:1px solid #2a2a2a;border-left:2px solid var(--rose);padding:1rem 1.3rem;font-family:var(--sans);font-size:.88rem;color:var(--gray-light);margin:1.5rem 0}

/* STEPS */
.steps{counter-reset:step;list-style:none}
.steps li{counter-increment:step;padding:1.3rem 0 1.3rem 4rem;position:relative;border-bottom:1px solid #1c1c1c}
.steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:1.3rem;font-family:var(--serif);font-size:1.6rem;color:var(--rose-light)}
.steps b{display:block;margin-bottom:.15rem;font-weight:400;font-family:var(--serif);font-size:1.15rem}
.steps span{font-family:var(--sans);color:var(--gray-light);font-size:.92rem}

/* FOOTER */
footer{padding:3rem 2rem;border-top:1px solid #1c1c1c}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;font-family:var(--sans);font-size:.82rem;color:var(--gray)}
footer a{color:var(--gray-light)}
footer a:hover{color:var(--rose-light)}

@media(max-width:820px){
  .grid-3,.grid-2,.offer .pso{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .nav-links{gap:14px}
  .nav-links a:not(.btn){display:none}
  section{padding:3.5rem 1rem}
  .hero{padding:4.5rem 1rem 3.5rem}
}
