
/* ── FREE GUIDES ─────────────────────────────────────────────── */
.g-hero{background:var(--black);color:#fff;padding:clamp(3.5rem,8vw,6.5rem) var(--gut) clamp(3rem,6vw,5rem);position:relative;overflow:hidden}
.g-hero::after{content:"";position:absolute;right:-160px;top:-160px;width:560px;height:560px;border-radius:50%;background:radial-gradient(closest-side,rgba(201,25,33,.3),transparent);pointer-events:none}
.g-hero-in{max-width:var(--wrap);margin:0 auto;position:relative;z-index:1;display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}
.g-hero .eyebrow{color:#fff}.g-hero .eyebrow::before{background:var(--red)}
.g-hero h1{font-family:var(--fd);font-weight:900;text-transform:uppercase;font-size:clamp(3rem,7.5vw,6rem);line-height:.86;letter-spacing:-.015em;margin:0 0 1.25rem}
.g-hero h1 em{color:var(--red);font-style:italic}
.g-hero .lede{color:rgba(255,255,255,.72)}
.g-trust{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1.5rem;font-size:14px;color:rgba(255,255,255,.7)}
.g-trust span::before{content:"✓ ";color:var(--red);font-weight:700}
.g-fan{position:relative;height:380px}
.g-fan img{position:absolute;width:46%;height:auto;border-radius:4px;box-shadow:0 30px 60px -20px rgba(0,0,0,.8);border:1px solid rgba(255,255,255,.08)}
.g-fan img:nth-child(1){left:0;top:30px;transform:rotate(-6deg);z-index:1}
.g-fan img:nth-child(2){left:27%;top:0;z-index:3}
.g-fan img:nth-child(3){right:0;top:36px;transform:rotate(6deg);z-index:2}
.g-grid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.g-card{min-width:0;display:grid;grid-template-columns:120px minmax(0,1fr);gap:1.1rem;align-items:start;background:#fff;border:1px solid var(--border);border-radius:4px;padding:1.1rem;text-decoration:none;color:var(--black);transition:transform .3s var(--ease),border-color .2s,box-shadow .3s}
.g-card:hover{transform:translateY(-3px);border-color:var(--black);box-shadow:0 24px 40px -24px rgba(0,0,0,.35)}
.g-card.feat{grid-column:1/-1;grid-template-columns:200px minmax(0,1fr);background:var(--black);color:#fff;border-color:var(--black)}
.g-card img{width:100%;height:auto;border-radius:3px;display:block;aspect-ratio:3/4;object-fit:cover}
.g-card small{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-bottom:.4rem}
.g-card h3{font-family:var(--fd);font-weight:900;text-transform:uppercase;font-size:1.55rem;line-height:.95;margin:0 0 .5rem;overflow-wrap:anywhere}
.g-card.feat h3{font-size:clamp(2rem,3.4vw,2.8rem)}
.g-card p{font-size:14px;line-height:1.55;color:var(--mid);margin:0 0 .75rem}
.g-card.feat p{color:rgba(255,255,255,.72);font-size:15px;max-width:52ch}
.g-card .g-go{font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.g-card .g-go::after{content:" →"}
.g-card.feat .g-go{display:inline-block;background:var(--red);color:#fff;padding:.7rem 1rem;border-radius:3px;margin-top:.25rem}
.g-why{background:var(--light)}
.g-why-in{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.g-why img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:top;border-radius:4px}
.g-why p{font-size:16.5px;line-height:1.7;color:var(--mid);margin-bottom:1rem;max-width:56ch}

/* single guide page */
.gp{display:grid;grid-template-columns:1.1fr .9fr;min-height:calc(100svh - var(--nav-h));background:var(--black);color:#fff}
.gp-txt{padding:clamp(3rem,7vw,6rem) var(--gut);display:flex;flex-direction:column;justify-content:center;max-width:680px}
.gp-txt .eyebrow{color:#fff}.gp-txt .eyebrow::before{background:var(--red)}
.gp-txt h1{font-family:var(--fd);font-weight:900;text-transform:uppercase;font-size:clamp(2.4rem,6vw,5rem);overflow-wrap:anywhere;line-height:.88;letter-spacing:-.015em;margin:0 0 1.25rem}
.gp-txt h1 em{color:var(--red);font-style:italic}
.gp-hook{font-size:clamp(17px,1.6vw,20px);line-height:1.5;color:rgba(255,255,255,.85);margin-bottom:1rem}
.gp-desc{font-size:16px;line-height:1.7;color:rgba(255,255,255,.65);margin-bottom:1.75rem}
.gp-inside{list-style:none;margin:0 0 2rem;display:grid;gap:.55rem}
.gp-inside li{display:flex;gap:.7rem;font-size:15.5px;line-height:1.45;color:rgba(255,255,255,.9)}
.gp-inside li::before{content:"";flex:0 0 auto;width:18px;height:18px;margin-top:2px;background:var(--red);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat}
.gp-jump{display:none;margin-top:1.75rem}
@media(max-width:900px){.gp-jump{display:inline-flex}}
.gp-who{font-size:14px;color:rgba(255,255,255,.5);border-left:3px solid var(--red);padding-left:1rem;line-height:1.55}
.gp-side{padding:clamp(3rem,7vw,6rem) var(--gut);background:#141414;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow:hidden}
.gp-side::before{content:"";position:absolute;inset:0;background:radial-gradient(closest-side at 70% 30%,rgba(201,25,33,.25),transparent)}
.gp-form{position:relative;width:100%;max-width:440px;background:#fff;color:var(--black);border-radius:6px;padding:2rem;box-shadow:0 40px 80px -30px rgba(0,0,0,.8)}
.gp-form img{width:120px;height:auto;float:right;margin:-3.25rem -1rem 0 1rem;border-radius:3px;box-shadow:0 20px 40px -16px rgba(0,0,0,.6);transform:rotate(4deg)}
.gp-form h2{font-family:var(--fd);font-weight:900;text-transform:uppercase;font-size:1.9rem;line-height:.95;margin:0 0 .35rem}
.gp-form .sub{font-size:14px;color:var(--mid);margin-bottom:1.25rem;clear:none}
.gp-form label{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mid);margin:0 0 .35rem}
.gp-form input{width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:3px;font-family:var(--fb);font-size:16px;margin-bottom:.9rem;outline:none;transition:border-color .2s;background:#fff;color:var(--black)}
.gp-form input:focus{border-color:var(--red)}
.gp-form .btn-red{width:100%;margin-top:.25rem}
.gp-note{font-size:12px;color:var(--muted);line-height:1.55;margin-top:.8rem}
.gp-note a{color:var(--red)}
.gp-err{display:none;background:#fbebeb;color:#8a1016;border-radius:3px;padding:.75rem 1rem;font-size:14px;margin-top:.75rem}
.gp-done{display:none;position:relative;width:100%;max-width:440px;background:#fff;color:var(--black);border-radius:6px;padding:2rem;text-align:center}
.gp-done h2{font-family:var(--fd);font-weight:900;text-transform:uppercase;font-size:2.2rem;line-height:.95;margin:.25rem 0 .75rem}
.gp-done h2 em{color:var(--red);font-style:italic}
.gp-done p{font-size:15px;color:var(--mid);line-height:1.6;margin-bottom:1.25rem}
.gp-done .btn-red{width:100%}
.gp-done .more{display:block;margin-top:1rem;font-size:14px;color:var(--mid)}
.gp-more{background:var(--light)}
.gp-more .g-grid{grid-template-columns:repeat(3,1fr)}
.gp-cta{background:var(--red);color:#fff;padding:clamp(3rem,6vw,4.5rem) var(--gut)}
.gp-cta-in{max-width:var(--wrap);margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}
.gp-cta h2{font-family:var(--fd);font-weight:900;text-transform:uppercase;font-size:clamp(2rem,4vw,3rem);line-height:.9}
.gp-cta p{color:rgba(255,255,255,.85);margin-top:.5rem;max-width:48ch}
.gp-cta .btn-white{color:var(--black)}
@media(max-width:1060px){.g-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-more .g-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
  .g-hero-in{grid-template-columns:1fr}.g-fan{display:none}
  .gp{grid-template-columns:1fr}.gp-txt{max-width:none;padding-bottom:2rem}.gp-side{padding-top:1rem}
  .g-why-in{grid-template-columns:1fr}.g-why img{max-width:320px}
}
@media(max-width:380px){.gp-txt h1{font-size:2.2rem}}
@media(max-width:640px){
  .g-grid,.gp-more .g-grid{grid-template-columns:1fr}
  .g-card{grid-template-columns:96px minmax(0,1fr)}.g-card.feat{grid-template-columns:120px minmax(0,1fr)}
  .g-card.feat h3{font-size:1.7rem}
  .gp-form img{width:90px;margin-top:-2.75rem}
}
