:root{--gold:#B5622A;--gold-light:#D07A41;--blue:#526B90;--navy:#0F1923;--cream:#F0F0EE;--text:#1f2937;--text-soft:#6b7280;--border:#e7dfd4;--white:#ffffff;}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'DM Sans',system-ui,sans-serif;background:var(--cream);color:var(--text);line-height:1.65;}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 28px;}
.nav{background:linear-gradient(180deg,#132132 0%,#0F1923 100%);border-bottom:1px solid rgba(82,107,144,0.35);}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;}
.brand{display:inline-flex;align-items:center;}
.brand img{height:74px;width:auto;}
.brand-fb{display:none;font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;color:var(--cream);}
.brand-fb span{color:var(--gold);}
.nl{display:flex;gap:22px;flex-wrap:wrap;align-items:center;}
.nl a{font-size:13px;color:var(--cream);opacity:0.82;}
.nl a:hover,.nl a.on{color:var(--gold);opacity:1;}
/* Buttons — see "Unified button system" block at end of file */
.hero{padding:58px 0 48px;background:linear-gradient(135deg,#132132 0%,#0F1923 100%);}
.hg{display:grid;gap:38px;align-items:center;}
.sl{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:12px;font-weight:500;display:inline-flex;align-items:center;gap:10px;}
.sl::before{content:'';display:inline-block;width:44px;height:2px;background:var(--gold);flex-shrink:0;}
.sl-g{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:500;}
.hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(32px,4.5vw,54px);font-weight:600;color:var(--cream);line-height:1.1;margin-bottom:16px;}
.hero p{font-size:16px;color:rgba(240,240,238,0.65);line-height:1.82;max-width:580px;margin-bottom:14px;}
.hcta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;}
.hic{background:rgba(255,255,255,0.06);padding:10px;border:1px solid rgba(82,107,144,0.38);max-width:280px;margin:0 auto;}
.hi{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 22%;}
.bs{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px;}
.b{font-size:10.5px;font-weight:500;color:rgba(240,240,238,0.72);border:1px solid rgba(82,107,144,0.4);padding:5px 12px;}
.sec{padding:58px 0;}
.bw{background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.st{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(27px,3.5vw,42px);font-weight:600;line-height:1.15;margin-bottom:14px;}
.si{font-size:16px;color:var(--text-soft);line-height:1.82;max-width:750px;}
.kk{font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:10px;font-weight:500;display:block;}
.gr{width:44px;height:2px;background:var(--gold);display:inline-block;margin-right:12px;vertical-align:middle;}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.g2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.c{background:var(--white);border:1px solid var(--border);padding:26px;}
.c h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;margin-bottom:10px;color:var(--navy);}
.c p{font-size:14px;color:var(--text-soft);line-height:1.78;}
.ct{border-top:3px solid var(--gold);}
.clg{border-left:3px solid var(--gold);padding-left:26px;}
.clb{border-left:3px solid var(--blue);padding-left:26px;}
.tc{background:var(--white);border:1px solid rgba(181,98,42,0.24);padding:26px;}
.tc h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-weight:600;margin-bottom:10px;}
.tc p{font-size:14px;color:var(--text-soft);line-height:1.7;}
.pn{background:var(--white);border:1px solid var(--border);padding:28px;}
.pn h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;font-weight:600;margin-bottom:12px;}
.pn p{font-size:15px;color:var(--text-soft);line-height:1.8;margin-bottom:12px;}
.pn-sm h3{font-size:26px;}
.pn-sm p{font-size:14px;}
.pn-acc{border-top:3px solid var(--gold);background:linear-gradient(180deg,rgba(181,98,42,0.025) 0%,#fff 18%);}
.ps{margin-top:20px;padding-top:20px;border-top:1px solid var(--border);}
.ps h4{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;margin-bottom:8px;}
.ps p{font-size:14px;color:var(--text-soft);line-height:1.8;margin-bottom:8px;}
.stps{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:28px;}
.stp{background:var(--white);border:1px solid var(--border);padding:28px;}
.stn{font-family:'Cormorant Garamond',Georgia,serif;font-size:46px;color:rgba(181,98,42,0.15);line-height:1;margin-bottom:10px;}
.stp h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;margin-bottom:8px;color:var(--navy);}
.stp p{font-size:14px;color:var(--text-soft);line-height:1.78;}
.ac{background:var(--white);border:1px solid var(--border);display:flex;flex-direction:column;}
.at{height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-light));}
.ab{padding:24px 26px;display:flex;flex-direction:column;flex:1;}
.ah{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px;}
.acat{font-size:9.5px;font-weight:600;color:var(--gold);letter-spacing:1.2px;text-transform:uppercase;}
.adt{font-size:11px;color:#9ca3af;}
.ac h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;font-weight:600;line-height:1.35;margin-bottom:10px;color:var(--navy);}
.ac p{font-size:13px;color:var(--text-soft);line-height:1.68;flex:1;margin-bottom:18px;}
.af{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid #f3efe9;}
.rl{font-size:12px;font-weight:500;color:var(--gold);}
.rt{font-size:11px;color:#9ca3af;}
.db{background:var(--navy);padding:44px 48px;margin-top:24px;}
.db-in{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;}
.db h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(20px,2.4vw,30px);font-weight:600;color:var(--cream);margin-bottom:8px;}
.db p{font-size:14px;color:rgba(240,240,238,0.5);}
.qp{background:var(--navy);padding:34px 30px;}
.qm{font-family:'Cormorant Garamond',Georgia,serif;font-size:64px;color:rgba(181,98,42,0.1);line-height:0.8;margin-bottom:14px;}
.qt{font-family:'Cormorant Garamond',Georgia,serif;font-size:16px;font-style:italic;color:rgba(240,240,238,0.8);line-height:1.65;}
.qmt{margin-top:18px;font-size:11px;color:var(--gold);letter-spacing:1px;text-transform:uppercase;}
.fg{display:grid;gap:14px;}
label{font-size:11px;font-weight:600;color:var(--text);display:block;margin-bottom:5px;letter-spacing:0.5px;text-transform:uppercase;}
input,textarea,select{width:100%;padding:11px 14px;border:1px solid var(--border);background:#fff;font-family:inherit;font-size:14px;color:var(--text);outline:none;}
input:focus,textarea:focus,select:focus{border-color:var(--gold);}
textarea{min-height:130px;resize:vertical;}
/* .fsub styled in unified button block at end of file */
.ib{margin-top:18px;padding:18px 20px;background:#faf8f4;border:1px solid rgba(181,98,42,0.22);}
.ib strong{display:block;margin-bottom:10px;font-size:13px;}
.ib ul{padding-left:18px;}
.ib li{font-size:13px;color:var(--text-soft);line-height:1.9;}
.ft{background:var(--navy);border-top:1px solid rgba(181,98,42,0.14);padding:38px 0 28px;}
.ft-in{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:24px;}
.ft-brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--cream);margin-bottom:7px;}
.ft-brand span{color:var(--gold);}
.ft-tag{font-size:12px;color:rgba(240,240,238,0.4);line-height:1.65;}
.ft-links{display:flex;gap:20px;flex-wrap:wrap;align-items:center;padding-top:6px;}
.ft-links a{font-size:12px;color:rgba(240,240,238,0.48);}
.ft-links a:hover{color:var(--gold);}
.ft-copy{font-size:10.5px;color:rgba(240,240,238,0.24);margin-top:26px;}
@media(max-width:980px){.hg{grid-template-columns:1fr!important;}.g3{grid-template-columns:1fr 1fr;}.stps{grid-template-columns:1fr;}.db-in{grid-template-columns:1fr;}.cc{grid-template-columns:1fr!important;}.fg2{grid-template-columns:1fr!important;}}
@media(max-width:680px){.g3,.g2{grid-template-columns:1fr;}.wrap{padding:0 18px;}.db{padding:28px 20px;}.nav-in{flex-direction:column;align-items:flex-start;gap:12px;}}

/* ─────────────────────────────────────────────────────────────────
   Unified button system. Every CTA on the site uses one of these.
   Roles ─ tiers (color) × sizes (padding+font).
   TIERS:  gold (primary/featured), blue (free download),
           outline-dark (paid/secondary on light), outline-cream
           (hero secondary on dark), navy-fill (inline article).
   SIZES:  inline (content-sized), inline-feature (prominent),
           card-block (full-width inside cards/sidebars/forms).
   ───────────────────────────────────────────────────────────────── */
.bg, .bo, .fsub, .fw-cta, .fw-bundle-cta, .ty-cta,
.btn-free, .btn-fw, .btn-bundle, .btn-article {
  font-family:'DM Sans',system-ui,sans-serif;
  font-weight:600;
  letter-spacing:0.4px;
  text-decoration:none;
  cursor:pointer;
  border:none;
  line-height:1.2;
  transition:background 0.15s, color 0.15s, border-color 0.15s, box-shadow 0.15s, opacity 0.15s;
}

/* SIZE: inline (content-sized) */
.bg, .bo, .btn-article {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 22px;
  font-size:12px;
}

/* SIZE: inline-feature (prominent CTA, content-sized) */
.fw-bundle-cta, .ty-cta {
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:14px 28px;
  font-size:13px;
  white-space:nowrap;
}

/* SIZE: card-block (full-width inside cards/sidebars/forms) */
.fsub, .fw-cta, .btn-free, .btn-fw, .btn-bundle {
  display:block;
  width:100%;
  padding:13px 18px;
  font-size:13px;
  text-align:center;
}

/* TIER: gold (primary action / featured) */
.bg, .fsub, .fw-bundle-cta, .ty-cta, .btn-bundle, .fw-cta.primary {
  background:var(--gold);
  color:var(--cream)!important;
  box-shadow:0 8px 18px rgba(181,98,42,0.22);
  opacity:1!important;
}
.bg:hover, .fsub:hover, .fw-bundle-cta:hover,
.ty-cta:hover, .btn-bundle:hover, .fw-cta.primary:hover {
  background:var(--gold-light)!important;
  color:var(--cream)!important;
}
.ty-cta { box-shadow:0 14px 30px rgba(181,98,42,0.28); }

/* TIER: blue (free download) */
.btn-free, .fw-cta.free {
  background:var(--blue);
  color:var(--cream);
  box-shadow:0 8px 18px rgba(82,107,144,0.18);
}
.btn-free:hover, .fw-cta.free:hover {
  background:#3F5478;
  color:var(--cream);
}

/* TIER: outline-dark (paid / secondary on light surfaces) */
.fw-cta.secondary, .btn-fw {
  background:transparent;
  color:var(--text);
  border:1px solid var(--text);
}
.fw-cta.secondary:hover, .btn-fw:hover {
  background:var(--navy);
  color:var(--cream);
  border-color:var(--navy);
}

/* TIER: outline-cream (hero secondary on dark surfaces) */
.bo {
  background:transparent;
  color:var(--cream);
  border:1px solid rgba(240,240,238,0.32);
}
.bo:hover { border-color:var(--cream); color:var(--cream); }

/* TIER: navy-fill (inline article CTA) */
.btn-article {
  background:var(--navy);
  color:var(--cream);
}
.btn-article:hover { background:var(--gold); color:var(--cream); }
