/* Free guide: opt-in page, thank-you page, sign-up form, guide_cta() blocks. Brand values come from hcg.css. */

/* ---- Navy top section (opt-in + thank-you) */
.optin{background:var(--ink);color:#fff;padding:56px 0 64px;position:relative;overflow:hidden}
.optin::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 500px at 85% 10%,rgba(100,179,211,.18),transparent 60%);pointer-events:none}
.optin .wrap{position:relative}
.optin__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
.optin h1{color:#fff;font-size:44px;line-height:1.15;margin:0 0 18px}
.optin h1 .hi{color:var(--sky)}
.optin__sub{font-size:20px;line-height:1.6;color:var(--on-dark);margin:0 0 26px}
.optin__pic img{border-radius:var(--r-lg);box-shadow:0 20px 50px rgba(0,0,0,.35)}
.optin__box{background:#fff;color:var(--text);border-radius:var(--r-lg);padding:32px;box-shadow:0 24px 60px rgba(0,0,0,.28)}
.optin__box h2{font-size:24px;line-height:1.3;margin:0 0 14px;color:var(--ink)}
.optin__list{list-style:none;margin:0 0 22px;padding:0}
.optin__list li{position:relative;padding:0 0 0 30px;margin:0 0 12px;font-size:18px;line-height:1.55}
.optin__list li::before{content:"";position:absolute;left:2px;top:6px;width:16px;height:16px;border-radius:50%;background:var(--accent-soft);box-shadow:inset 0 0 0 5px var(--accent)}
.optin .eyebrow .ic{width:18px;height:18px;vertical-align:-3px}

/* ---- The form */
.gform{display:grid;gap:14px}
.gform__row{display:grid;gap:6px}
.gform label{font:700 16px/1.3 var(--hf);color:var(--ink)}
.gform input[type=text],.gform input[type=email]{width:100%;min-height:52px;padding:12px 16px;border:2px solid var(--line);border-radius:10px;font:18px/1.4 var(--bf);color:var(--text);background:#fff}
.gform input:focus{outline:3px solid var(--sky);outline-offset:1px;border-color:var(--accent)}
.gform__btn{min-height:56px;font-size:19px;margin-top:4px}
.gform__note{font-size:16px;line-height:1.5;color:var(--muted);margin:2px 0 0;text-align:center}
.gform__note .ic{width:16px;height:16px;vertical-align:-2px;margin-right:2px}
.gform__err{margin:0;padding:12px 14px;border-radius:10px;background:#fdecec;color:#8a1f1f;font-weight:700;font-size:17px}
.gform__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.gform--dark label{color:#fff}
.gform--dark .gform__note{color:var(--on-dark)}
.gform--dark .gform__note a{color:#fff}
.gform--dark input[type=text],.gform--dark input[type=email]{border-color:transparent}

/* ---- Proof and risk lines */
.gquote{margin:0}
.gquote blockquote{margin:0 0 12px;font:600 24px/1.5 var(--hf);color:var(--ink)}
.gquote figcaption{font-size:17px;color:var(--muted)}
.gnote{font-size:16px;line-height:1.55;color:var(--muted);margin:22px auto 0;max-width:760px}

/* ---- Thank-you page */
.optin--thanks .btn .ic{width:22px;height:22px}
.thanks__small{font-size:16px;color:var(--on-dark)}
.thanks__small a{color:#fff}
.thanks__next{display:grid;grid-template-columns:1.5fr 1fr;gap:44px;align-items:start}
.thanks__next h2{margin-top:0}
.thanks__go{background:var(--tint);border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;position:sticky;top:96px}
.thanks__go h3{margin:0 0 8px}
.thanks__go .promises{margin-top:18px}

/* ---- guide_cta(): band and card */
.gcta--band{background:var(--accent-soft);padding:56px 0}
.gcta__in{display:grid;grid-template-columns:360px 1fr;gap:44px;align-items:center}
.gcta__img img{border-radius:var(--r);box-shadow:var(--shadow)}
.gcta h2{margin:0 0 12px;font-size:30px;line-height:1.25}
.gcta p{margin:0 0 20px}
.gcta--card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;box-shadow:var(--shadow)}
.gcta--card .gcta__img{margin:0 0 14px}
.gcta--card h3{font-size:20px;line-height:1.3;margin:0 0 10px}
.gcta--card p{font-size:18px}

@media (max-width:1020px){
  .optin__grid,.thanks__next{grid-template-columns:1fr;gap:32px}
  .thanks__go{position:static}
  .gcta__in{grid-template-columns:260px 1fr;gap:28px}
}
@media (max-width:820px){
  .optin{padding:32px 0 44px}
  .optin h1{font-size:32px}
  .optin__sub{font-size:18px}
  .optin__box{padding:22px}
  .optin__box h2{font-size:21px}
  .gquote blockquote{font-size:20px}
  .gcta__in{grid-template-columns:1fr}
  .gcta__img{max-width:420px}
  .gcta h2{font-size:24px}
}
@media (max-width:820px){.optin__copy .optin__pic{max-width:300px;margin:0 auto}}
@media (max-width:520px){.gdl{width:100%;padding:16px 18px;font-size:18px;white-space:nowrap}}
