:root{
  --sm-navy:#18365f;
  --sm-deep:#10263f;
  --sm-gold:#e8b743;
  --sm-ink:#24354b;
  --sm-muted:#627086;
  --sm-line:#d7e0e9;
  --sm-frame:min(1410px,calc(100% - 48px));
  --sm-radius:30px;
  --sm-shadow:0 24px 70px rgba(24,54,95,.12);
}

body.self-management-guide{
  overflow-x:clip;
  color:var(--sm-ink);
  background:#eaf0f5;
  font-family:"Inter Tight",Arial,sans-serif;
}

.self-management-guide main{display:block}

.self-management-guide .sm-hero{
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(420px,.97fr);
  width:var(--sm-frame);
  min-height:650px;
  margin:18px auto 24px;
  overflow:hidden;
  border-radius:var(--sm-radius);
  background:var(--sm-deep);
  box-shadow:var(--sm-shadow);
  color:#fff;
}

.sm-hero-copy{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(54px,6vw,96px);
  background:
    radial-gradient(circle at 10% 5%,rgba(232,183,67,.18),transparent 34%),
    linear-gradient(140deg,#10263f 0%,#18365f 100%);
}

.sm-hero-copy::after{
  position:absolute;
  right:-95px;
  bottom:-125px;
  width:310px;
  height:310px;
  border:1px solid rgba(232,183,67,.35);
  border-radius:50%;
  box-shadow:0 0 0 70px rgba(232,183,67,.07),0 0 0 140px rgba(232,183,67,.035);
  content:"";
  pointer-events:none;
}

.sm-eyebrow{
  margin:0 0 20px;
  color:var(--sm-gold);
  font:800 11px/1.2 "Plus Jakarta Sans",Arial,sans-serif;
  letter-spacing:.17em;
  text-transform:uppercase;
}

.sm-hero h1{
  position:relative;
  z-index:1;
  max-width:740px;
  margin:0;
  color:#fff;
  font:700 clamp(46px,5.2vw,78px)/.96 "Inter Tight",Arial,sans-serif;
  letter-spacing:-.045em;
  text-wrap:balance;
}

.sm-hero-intro{
  position:relative;
  z-index:1;
  max-width:650px;
  margin:30px 0 0;
  color:#dce5ee;
  font:500 clamp(16px,1.4vw,19px)/1.65 "Plus Jakarta Sans",Arial,sans-serif;
}

.sm-hero-actions,.sm-cta-actions{
  position:relative;
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:34px;
}

.sm-button{
  display:inline-flex;
  min-height:52px;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:0 20px;
  border:1px solid transparent;
  border-radius:999px;
  font:800 10px/1 "Plus Jakarta Sans",Arial,sans-serif;
  letter-spacing:.06em;
  text-decoration:none;
  text-transform:uppercase;
  transition:transform .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease;
}

.sm-button:hover,.sm-button:focus-visible{transform:translateY(-2px)}
.sm-button-gold{background:var(--sm-gold);color:var(--sm-deep)}
.sm-button-gold:hover,.sm-button-gold:focus-visible{background:#f2c85c;color:var(--sm-deep)}
.sm-button-ghost{border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.08);color:#fff}
.sm-button-ghost:hover,.sm-button-ghost:focus-visible{background:#fff;color:var(--sm-deep)}

.sm-hero-image{position:relative;min-width:0;margin:0;overflow:hidden}
.sm-hero-image::after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,38,63,.35),transparent 42%),linear-gradient(0deg,rgba(16,38,63,.7),transparent 36%);content:""}
.sm-hero-image img{width:100%;height:100%;min-height:650px;display:block;object-fit:cover;object-position:57% center}
.sm-hero-image figcaption{position:absolute;right:32px;bottom:28px;z-index:1;max-width:270px;color:#fff;font:700 11px/1.45 "Plus Jakarta Sans",Arial,sans-serif;letter-spacing:.05em;text-align:right;text-transform:uppercase}

.sm-page-background{
  padding:0 0 34px;
  background:
    radial-gradient(circle at 3% 20%,rgba(232,183,67,.20),transparent 26%),
    radial-gradient(circle at 97% 65%,rgba(24,54,95,.14),transparent 30%),
    linear-gradient(180deg,rgba(237,243,248,.88) 0%,rgba(248,245,237,.94) 48%,rgba(232,240,246,.93) 100%),
    url("assets/waco-sunset-river.jpg") center/cover fixed;
}

.sm-shell{width:var(--sm-frame);margin:0 auto;display:grid;gap:24px}
.sm-section,.sm-cta{min-width:0;border-radius:var(--sm-radius);box-shadow:var(--sm-shadow)}
.sm-section{padding:clamp(42px,5vw,76px);background:rgba(255,255,255,.97)}

.sm-section-heading{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);
  gap:clamp(30px,6vw,96px);
  align-items:end;
  margin-bottom:42px;
}

.sm-section-heading .sm-eyebrow,.sm-example-heading .sm-eyebrow{margin-bottom:14px;color:#997115}
.sm-section h2,.sm-cta h2{
  margin:0;
  color:var(--sm-navy);
  font:700 clamp(36px,4vw,60px)/.98 "Inter Tight",Arial,sans-serif;
  letter-spacing:-.04em;
  text-wrap:balance;
}

.sm-section-heading>p,.sm-example-heading>p{
  margin:0;
  color:var(--sm-muted);
  font:500 16px/1.7 "Plus Jakarta Sans",Arial,sans-serif;
}

.sm-table-wrap{
  width:100%;
  max-width:100%;
  overflow:auto;
  border:1px solid var(--sm-line);
  border-radius:20px;
  outline-offset:4px;
  scrollbar-color:var(--sm-navy) #edf1f5;
}

.self-management-guide .comparison-table{display:table;width:100%;min-width:820px;margin:0;border-collapse:separate;border-spacing:0;overflow:visible}
.self-management-guide .comparison-table th,.self-management-guide .comparison-table td{border:0;border-bottom:1px solid var(--sm-line);padding:25px 28px;vertical-align:top}
.self-management-guide .comparison-table thead th{background:var(--sm-deep);color:#fff;font:800 10px/1.2 "Plus Jakarta Sans",Arial,sans-serif;letter-spacing:.12em;text-align:left;text-transform:uppercase}
.self-management-guide .comparison-table thead th:first-child{width:18%;border-radius:18px 0 0}
.self-management-guide .comparison-table thead th:last-child{border-radius:0 18px 0 0}
.self-management-guide .comparison-table tbody th{background:#f8fafc;color:var(--sm-navy);font:700 17px/1.25 "Plus Jakarta Sans",Arial,sans-serif;text-align:left}
.self-management-guide .comparison-table tbody td{color:#526175;font:500 14px/1.65 "Plus Jakarta Sans",Arial,sans-serif}
.self-management-guide .comparison-table tbody td:nth-child(2){background:#fcf8ed}
.self-management-guide .comparison-table tbody td:nth-child(3){background:#f2f6fa}
.self-management-guide .comparison-table tbody tr:last-child>*{border-bottom:0}

.sm-example{
  display:grid;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);
  gap:clamp(36px,6vw,90px);
  overflow:hidden;
  background:
    radial-gradient(circle at 2% 98%,rgba(232,183,67,.22),transparent 34%),
    linear-gradient(140deg,#10263f,#18365f);
  color:#fff;
}

.sm-example h2{color:#fff}
.sm-example-heading>p{max-width:510px;margin-top:22px;color:#cbd7e4}
.sm-example-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-self:center}
.sm-example-stats article{display:flex;min-height:226px;flex-direction:column;justify-content:flex-end;padding:26px;border:1px solid rgba(255,255,255,.18);border-radius:20px;background:rgba(255,255,255,.08);backdrop-filter:blur(5px)}
.sm-example-stats span{margin-bottom:auto;color:var(--sm-gold);font:800 9px/1.3 "Plus Jakarta Sans",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.sm-example-stats strong{display:block;color:#fff;font:700 clamp(34px,3vw,50px)/1 "Inter Tight",Arial,sans-serif;letter-spacing:-.04em}
.sm-example-stats p{margin:9px 0 0;color:#d8e1eb;font:500 12px/1.5 "Plus Jakarta Sans",Arial,sans-serif}
.sm-example-note{grid-column:1/-1;margin:0;padding-top:20px;border-top:1px solid rgba(255,255,255,.17);color:#bfcbd9;font:500 11px/1.65 "Plus Jakarta Sans",Arial,sans-serif}

.sm-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.sm-faq-grid article{min-height:305px;padding:32px;border:1px solid var(--sm-line);border-radius:20px;background:#f8fafc}
.sm-faq-grid article span{display:block;margin-bottom:54px;color:#8b98a8;font:800 10px/1 "Plus Jakarta Sans",Arial,sans-serif;letter-spacing:.14em}
.sm-faq-grid h3{margin:0 0 16px;color:var(--sm-navy);font:700 clamp(23px,2.2vw,32px)/1.08 "Inter Tight",Arial,sans-serif;letter-spacing:-.025em}
.sm-faq-grid p{margin:0;color:#58667a;font:500 14px/1.7 "Plus Jakarta Sans",Arial,sans-serif}

.sm-cta{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:40px;
  padding:clamp(42px,5vw,72px);
  overflow:hidden;
  background:
    radial-gradient(circle at 92% 0,rgba(232,183,67,.23),transparent 30%),
    var(--sm-deep);
  color:#fff;
}

.sm-cta>div:first-child{max-width:770px}
.sm-cta h2{color:#fff}
.sm-cta .sm-eyebrow{margin-bottom:14px}
.sm-cta-actions{flex:0 0 auto;margin-top:0}

@media (max-width:1050px){
  .self-management-guide .sm-hero{grid-template-columns:1fr;min-height:0}
  .sm-hero-copy{min-height:540px}
  .sm-hero-image img{min-height:430px;max-height:520px}
  .sm-example{grid-template-columns:1fr}
  .sm-example-heading{max-width:760px}
  .sm-cta{align-items:flex-start;flex-direction:column}
}

@media (max-width:760px){
  :root{--sm-frame:calc(100% - 24px);--sm-radius:22px}
  .self-management-guide .sm-hero{margin-top:10px;margin-bottom:12px}
  .sm-hero-copy{min-height:0;padding:46px 26px 50px}
  .sm-hero h1{font-size:clamp(42px,12vw,58px)}
  .sm-hero-intro{margin-top:22px;font-size:15px}
  .sm-hero-actions{align-items:stretch;flex-direction:column;margin-top:28px}
  .sm-button{width:100%;padding:0 16px}
  .sm-hero-image img{min-height:330px;height:48vh;max-height:430px}
  .sm-hero-image figcaption{right:22px;bottom:20px;left:22px;text-align:left}
  .sm-page-background{padding-bottom:18px}
  .sm-shell{gap:12px}
  .sm-section,.sm-cta{padding:38px 24px}
  .sm-section-heading{grid-template-columns:1fr;gap:18px;margin-bottom:28px}
  .sm-section h2,.sm-cta h2{font-size:clamp(36px,10vw,48px)}
  .sm-section-heading>p,.sm-example-heading>p{font-size:14px}
  .sm-table-wrap{margin-right:-6px}
  .self-management-guide .comparison-table th,.self-management-guide .comparison-table td{padding:20px}
  .sm-example{gap:30px}
  .sm-example-stats{grid-template-columns:1fr}
  .sm-example-stats article{min-height:170px}
  .sm-faq-grid{grid-template-columns:1fr}
  .sm-faq-grid article{min-height:0;padding:26px}
  .sm-faq-grid article span{margin-bottom:36px}
  .sm-cta{gap:30px}
  .sm-cta-actions{width:100%;flex-direction:column}
}

@media (prefers-reduced-motion:reduce){.sm-button{transition:none}}
