/* 1122 Productions — public site. Georgia display, Arial body, black-first with gold accent. */
:root{--black:#0A0A0A;--charcoal:#1A1A1A;--charcoal-2:#2D2D2D;--gold:#C9A84C;--gold-deep:#A8873A;--gold-line:rgba(201,168,76,.32);--gold-wash:rgba(201,168,76,.08);--white:#fff;--off:#F5F5F5;--mid:#E2E2E2;--body:#555;--hint:#888;--brand:Georgia,'Times New Roman',serif;--doc:Arial,Helvetica,sans-serif;--ease:cubic-bezier(.4,0,.2,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:#2A2A2A;font-family:var(--doc);-webkit-font-smoothing:antialiased}
a{color:var(--gold);text-decoration:none;transition:color .2s var(--ease)}
a:hover{color:var(--gold-deep)}
img{max-width:100%;display:block}
.wrap{max-width:1120px;margin:0 auto;padding:0 28px}
.narrow{max-width:860px}

/* Nav */
.nav{position:sticky;top:0;z-index:60;background:rgba(10,10,10,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1)}
.nav .wrap{height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav .wrap>a:first-child{flex:none;display:block}
.nav img{height:46px;width:auto;flex:none}
.nav ul{list-style:none;display:flex;gap:34px;margin:0;padding:0;flex:none}
.nav ul a{color:rgba(255,255,255,.82);font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.nav ul a:hover,.nav ul a.on{color:var(--gold)}
.navcta{border:1px solid var(--gold);color:var(--gold);padding:12px 22px;font-size:11.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;transition:background .2s var(--ease),color .2s var(--ease)}
.navcta:hover{background:var(--gold);color:var(--black)}
.burger{display:none;background:none;border:0;cursor:pointer;padding:8px;flex-direction:column;gap:5px}
.burger span{display:block;width:24px;height:2px;background:#fff}

/* Sections */
.dark{background:var(--black);color:#fff}
.tint{background:var(--off)}
.sec{padding:96px 0}
.sec-sm{padding:68px 0}
.eyebrow{display:flex;align-items:center;gap:14px}
.eyebrow span.r{width:44px;height:2px;background:var(--gold);flex:none}
.eyebrow span.t{color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase}
h1,h2,h3{font-family:var(--brand);font-weight:700;letter-spacing:-.01em;margin:0}
h1{font-size:clamp(40px,6.2vw,68px);line-height:1.04;text-wrap:balance}
h2{font-size:clamp(30px,4.2vw,44px);line-height:1.08;text-wrap:balance}
h3{font-size:23px;line-height:1.15}
.lede{font-size:19px;line-height:1.62;color:var(--body);text-wrap:pretty}
.dark .lede{color:rgba(255,255,255,.78)}
p{line-height:1.65;text-wrap:pretty}

/* Buttons */
.btn{display:inline-block;border:1px solid var(--gold);color:var(--gold);padding:16px 30px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;transition:background .2s var(--ease),color .2s var(--ease)}
.btn:hover{background:var(--gold);color:var(--black)}
.btn-solid{background:var(--gold);color:var(--black)}
.btn-solid:hover{background:var(--gold-deep);color:var(--black)}
.btnrow{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:40px}
.textlink{color:#fff;border-bottom:1px solid var(--gold-line);font-size:14px;padding-bottom:3px}
.dark .textlink:hover{color:var(--gold)}

/* Cards */
.grid{display:grid;gap:18px;margin-top:44px}
.g2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.card{background:#fff;border:1px solid var(--mid);border-left:2px solid var(--gold);box-shadow:0 1px 3px rgba(0,0,0,.05);padding:32px 30px;display:flex;flex-direction:column;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.09)}
.card .num{font-family:var(--brand);font-weight:700;font-size:30px;line-height:.9;color:var(--gold)}
.card h3{margin:16px 0 10px;color:var(--black)}
.card p{margin:0;font-size:15px;color:var(--body)}
.card .go{margin-top:auto;padding-top:22px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.dark .card{background:var(--charcoal);border-color:rgba(255,255,255,.1);border-left-color:var(--gold);box-shadow:none}
.dark .card h3{color:#fff}
.dark .card p{color:rgba(255,255,255,.7)}

/* Origin band */
.origin{text-align:center;max-width:760px;margin:0 auto}
.origin .num{font-family:var(--brand);font-weight:700;font-size:clamp(64px,11vw,120px);line-height:1;color:var(--gold);letter-spacing:.02em}
.origin p{font-size:19px;line-height:1.7;color:rgba(255,255,255,.82);margin:26px 0 0}
.origin .tag{font-family:var(--brand);font-style:italic;font-size:22px;color:var(--gold);margin-top:34px}
.rule-c{width:64px;height:2px;background:var(--gold);margin:30px auto 0}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:44px;border-top:1px solid var(--mid)}
.step{padding:26px 24px 30px;border-right:1px solid var(--mid)}
.step:nth-child(3n){border-right:0}
.step:nth-child(n+4){border-top:1px solid var(--mid)}
.step .n{font-family:var(--brand);font-weight:700;font-size:32px;line-height:.9;color:var(--gold)}
.step h4{font-family:var(--doc);font-size:14px;font-weight:700;color:var(--black);margin:16px 0 0}
.step .when{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-top:4px}
.step p{font-size:13.5px;line-height:1.5;color:var(--body);margin:8px 0 0}
.dark .steps{border-top-color:rgba(255,255,255,.16)}
.dark .step{border-right-color:rgba(255,255,255,.1)}
.dark .step:nth-child(n+4){border-top-color:rgba(255,255,255,.1)}
.dark .step h4{color:#fff}
.dark .step p{color:rgba(255,255,255,.66)}

/* Form */
.field{margin-bottom:26px}
.field label{display:block;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.field input,.field textarea,.field select{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.24);color:#fff;font-family:var(--doc);font-size:16px;padding:12px 2px;transition:border-color .2s var(--ease)}
.field textarea{border:1px solid rgba(255,255,255,.24);padding:14px;min-height:132px;resize:vertical}
.field select{border-bottom:1px solid rgba(255,255,255,.24);padding:12px 2px}
.field select option{background:var(--charcoal);color:#fff}
.field input:focus,.field textarea:focus,.field select:focus{outline:0;border-color:var(--gold)}
.field input::placeholder,.field textarea::placeholder{color:#777}
.formcard{background:var(--charcoal);border:1px solid rgba(255,255,255,.1);padding:42px 40px}
.contactline{font-family:var(--brand);font-size:17px;color:var(--gold);letter-spacing:.03em}
.contactline a{color:var(--gold)}

/* Footer */
.foot{background:var(--black);border-top:1px solid var(--gold-line);color:#fff}
.foot .wrap{padding:44px 28px;display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap}
.foot .name{font-family:var(--brand);font-weight:700;font-size:18px}
.foot .flogo{height:34px;display:block}
.foot .meta{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--hint);margin-top:8px}
.foot nav{display:flex;gap:22px;flex-wrap:wrap;margin-top:12px}
.foot nav a{color:rgba(255,255,255,.7);font-size:12px;letter-spacing:.1em}
.foot nav a:hover{color:var(--gold)}
.foot .tagline{font-family:var(--brand);font-style:italic;font-size:18px;color:var(--gold)}

@media(max-width:1040px) and (min-width:861px){
  .nav ul{gap:20px}
  .nav ul a{font-size:11px;letter-spacing:.14em}
  .navcta{padding:11px 16px;font-size:11px;letter-spacing:.12em}
  .nav .wrap{gap:18px}
}

@media(max-width:860px){
  .nav ul{display:none}
  .nav ul.open{display:flex;position:absolute;top:96px;left:0;right:0;background:var(--black);flex-direction:column;gap:0;padding:8px 28px 20px;border-bottom:1px solid rgba(255,255,255,.1)}
  .nav ul.open li{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.07)}
  .burger{display:flex}
  .sec{padding:64px 0}
  .steps{grid-template-columns:1fr}
  .step:nth-child(n+4){border-top:0}
  .step{border-right:0;border-bottom:1px solid var(--mid)}
  .dark .step{border-bottom-color:rgba(255,255,255,.1)}
  .formcard{padding:30px 24px}
}
