
.tri-plane-page { --tp-ivory:#f8f4ee; --tp-paper:#fffdf9; --tp-ink:#201c18; --tp-copy:#6e655b; --tp-gold:#b98336; --tp-line:#e4dacd; }
.tri-plane-page section { scroll-margin-top:110px; }
.tri-plane-page .hero-value-strip { grid-column:1/-1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin-top:28px; padding:24px 0 2px; border-top:1px solid var(--tp-line); }
.tri-plane-page .hero-value-item { min-width:0; display:grid; grid-template-columns:46px minmax(0,1fr); align-items:center; gap:14px; padding:0 24px; border-right:1px solid var(--tp-line); }
.tri-plane-page .hero-value-item:first-child { padding-left:0; }
.tri-plane-page .hero-value-item:last-child { padding-right:0; border-right:0; }
.tri-plane-page .hero-value-icon { display:grid; width:44px; height:44px; place-items:center; border:1px solid #decdb6; border-radius:50%; color:#c28d3d; box-sizing:border-box; }
.tri-plane-page .hero-value-icon svg { display:block; width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.tri-plane-page .hero-value-copy { display:block; min-width:0; }
.tri-plane-page .hero-value-copy strong { display:block; margin-bottom:5px; color:#2a241f; font:600 18px/1.08 'Cormorant Garamond',serif; }
.tri-plane-page .hero-value-copy small { display:block; color:#766d64; font:400 11px/1.42 'Montserrat',sans-serif; }
.tri-plane-page #fit-check .split-grid { grid-template-columns:.78fr 1.22fr; align-items:start; }
.tri-plane-page .fit-list { display:grid; gap:13px; margin-top:28px; }
.tri-plane-page .fit-list li { position:relative; padding-left:27px; color:#665d54; font-size:14px; line-height:1.55; }
.tri-plane-page .fit-list li::before { content:'✓'; position:absolute; left:0; top:0; color:var(--tp-gold); font-weight:700; }
.tri-plane-page .fit-concerns { grid-template-columns:repeat(2,1fr) !important; gap:12px; }
.tri-plane-page .fit-concerns .doctor-portrait { margin-bottom:4px; border:0; border-radius:18px; box-shadow:0 22px 60px rgba(48,37,26,.12); }
.tri-plane-page .fit-concerns .concern-card { padding:20px 18px; border-radius:8px; }
.tri-plane-page .fit-concerns .concern-card h3 { margin-bottom:6px; font-size:17px; color:var(--tp-ink); }
.tri-plane-page .fit-concerns .concern-card p { font-size:12px; line-height:1.55; }
.tri-plane-page .philosophy-copy blockquote { margin-top:34px; padding:26px 0 0 28px; border-top:1px solid var(--tp-line); border-left:3px solid var(--tp-gold); color:#4d443b; font:400 24px/1.35 'Cormorant Garamond',serif; }
.tri-plane-page #what-is .split-grid > :first-child h2 { line-height:1.14; }
.tri-plane-page #what-is .split-grid > :first-child .lead { line-height:1.95; }
.tri-plane-page #what-is .split-grid > :last-child {
  display:grid;
  gap:10px;
}
.tri-plane-page #what-is .assessment-step,
.tri-plane-page #what-is .assessment-step:last-child {
  position:relative;
  grid-template-columns:36px minmax(0,1fr);
  align-items:center;
  gap:14px;
  margin:0;
  box-sizing:border-box;
  min-height:100px;
  padding:15px 20px;
  border:1px solid rgba(222,212,199,.9);
  border-radius:12px;
  background:linear-gradient(105deg,rgba(255,253,249,.98),rgba(255,255,255,.78));
  box-shadow:0 8px 24px rgba(62,46,29,.04);
}
.tri-plane-page #what-is .step-num {
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border:1px solid rgba(185,131,54,.28);
  border-radius:9px;
  color:var(--tp-gold);
  background:rgba(185,131,54,.07);
  font-size:16px;
  line-height:1;
}
.tri-plane-page #what-is .step-body { align-self:center; }
.tri-plane-page #what-is .step-body h3 { margin-bottom:4px; color:#3f372f; font-size:17px; line-height:1.25; }
.tri-plane-page #what-is .step-body p { color:#756b61; font-size:12px; line-height:1.55; }
.tri-plane-page #system .section-header { max-width:none; margin-right:0; margin-left:0; text-align:left; }
.tri-plane-page #system .section-header h2 { max-width:none; font-size:clamp(38px,3.35vw,52px); white-space:nowrap; text-wrap:nowrap; }
.tri-plane-page #system .section-header h2 em { color:var(--tp-gold); font-weight:500; }
.tri-plane-page #system .trust-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; border:0; border-radius:0; overflow:visible; background:transparent; }
.tri-plane-page .system-card { display:grid; grid-template-columns:auto minmax(0,1fr); align-content:center; align-items:center; column-gap:14px; min-width:0; min-height:176px; padding:24px 22px; text-align:left; border:1px solid var(--tp-line) !important; border-radius:12px !important; background:var(--tp-paper) !important; }
.tri-plane-page .system-card>span { display:block; margin:0; color:var(--tp-gold); font:500 31px/1 'Cormorant Garamond',serif; }
.tri-plane-page .system-card h4 { min-width:0; margin:0; color:var(--tp-gold) !important; font-size:clamp(12px,.95vw,15px); line-height:1.2; font-weight:700; white-space:nowrap; }
.tri-plane-page .system-card p { grid-column:1/-1; margin-top:22px; color:var(--tp-copy); font-size:12px; line-height:1.55; }
.tri-plane-page .comparison-wrap { margin-top:28px; overflow-x:auto; overflow-y:hidden; border:1px solid var(--tp-line); border-radius:12px; box-shadow:0 16px 50px rgba(51,40,28,.06); -webkit-overflow-scrolling:touch; }
.tri-plane-page #differentiation .section-header { max-width:none; text-align:left; }
.tri-plane-page #differentiation .section-header h2 { max-width:none; white-space:nowrap; }
.tri-plane-page .comparison-wrap .compare-table { margin:0; border-radius:0; }
.tri-plane-page .comparison-wrap thead th { background:#2a241e; color:#f3e8d8; }
.tri-plane-page .comparison-wrap tbody th { color:var(--tp-gold); background:#faf7f2; }
.tri-plane-page .comparison-wrap td { color:#6b6258; background:#fffdf9; }
.tri-plane-page .comparison-note { margin:16px auto 0; max-width:780px; color:#877d72; font-size:11px; line-height:1.6; text-align:center; }
.tri-plane-page #candidates .section-header { max-width:none; margin-inline:auto; text-align:center; }
.tri-plane-page #candidates .section-header h2 { max-width:none; white-space:nowrap; }
.tri-plane-page #candidates .section-header h2 strong,
.tri-plane-page #candidates .section-header h2 em { color:var(--tp-gold); font-weight:500; }
.tri-plane-page .candidate-layout { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.tri-plane-page .candidate-panel { padding:38px; border:1px solid var(--tp-line); border-radius:12px; background:var(--tp-paper); }
.tri-plane-page .candidate-panel ul { display:grid; gap:18px; margin-top:24px; }
.tri-plane-page .candidate-panel li { position:relative; padding:0 0 18px 30px; border-bottom:1px solid var(--tp-line); color:#61584f; font-size:14px; line-height:1.55; }
.tri-plane-page .candidate-panel li:last-child { padding-bottom:0; border-bottom:0; }
.tri-plane-page .candidate-panel li::before { position:absolute; left:0; top:-1px; color:var(--tp-gold); font-weight:700; }
.tri-plane-page .candidate-yes li::before { content:'✓'; }
.tri-plane-page .candidate-pause li::before { content:'—'; }
.tri-plane-page #matching .path-card { border-radius:12px; }
.tri-plane-page #matching .path-card:first-child { background:#fffdf9; border-color:#c79a5b; }
.tri-plane-page #matching .section-header {
  max-width:none;
  margin-right:0;
  margin-left:0;
  text-align:left;
}
.tri-plane-page #matching .section-header h2 {
  max-width:none;
  font-size:clamp(30px,3.5vw,52px);
  white-space:nowrap;
  text-wrap:nowrap;
}
.tri-plane-page #matching .section-header h2 strong {
  color:var(--tp-gold);
  font-weight:500;
}
.tri-plane-page #matching .section-header h2 em {
  color:var(--tp-ink);
}
.tri-plane-page #matching .path-card a.learn {
  display:inline-block;
  color:var(--tp-gold);
  font-size:13px;
  font-weight:700;
  transition:color .25s ease,letter-spacing .25s ease;
}
.tri-plane-page #matching .path-card a.learn::after {
  display:inline-block;
  transition:transform .25s ease;
}
.tri-plane-page #matching .path-card a.learn:hover,
.tri-plane-page #matching .path-card a.learn:focus-visible {
  color:#8f6228;
  letter-spacing:.18em;
}
.tri-plane-page #matching .path-card a.learn:hover::after,
.tri-plane-page #matching .path-card a.learn:focus-visible::after {
  transform:translateX(4px);
}
.tri-plane-page #journey .section-header { max-width:none; }
.tri-plane-page #journey .section-header h2 {
  max-width:none;
  font-size:clamp(16px,4.1vw,56px);
  white-space:nowrap;
}
.tri-plane-page #journey .journey-step h3 { color:#3e362f; }
.tri-plane-page #recovery .section-header {
  max-width:none;
  margin-right:0;
  margin-left:0;
  text-align:left;
}
.tri-plane-page #recovery .section-header .eyebrow,
.tri-plane-page #recovery .section-header h2 {
  white-space:nowrap;
  text-wrap:nowrap;
}
.tri-plane-page #recovery .section-header h2 {
  max-width:none;
  font-size:clamp(17px,3.5vw,52px);
}
.tri-plane-page #recovery .section-header h2 strong,
.tri-plane-page #recovery .section-header h2 em {
  color:var(--tp-gold);
  font-weight:500;
}
.tri-plane-page #recovery .journey-phases { grid-template-columns:repeat(4,1fr); gap:0; margin-top:48px; padding:0; border:1px solid var(--tp-line); border-radius:12px; overflow:hidden; background:#fffdf9; }
.tri-plane-page #recovery .phase { min-height:240px; padding:28px 24px; border-right:1px solid var(--tp-line); }
.tri-plane-page #recovery .phase:last-child { border-right:0; }
.tri-plane-page #recovery .phase>span { display:block; margin-bottom:28px; color:#c1a078; font:500 13px/1 'Montserrat',sans-serif; letter-spacing:.14em; }
.tri-plane-page #recovery .phase h4 { color:#9b6d2d; }
.tri-plane-page #recovery .phase p { color:#70675e; font-size:13px; line-height:1.7; }
.tri-plane-page .recovery-note { margin-top:22px; padding:18px 22px; border-left:3px solid var(--tp-gold); background:#f0e7dc; color:#6c6258; font-size:13px; }
.tri-plane-page #safety .method-card { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; column-gap:16px; padding:32px 28px; border:1px solid var(--tp-line); border-radius:12px; background:#fffdf9; }
.tri-plane-page #safety .method-num { margin:0; color:var(--tp-gold); font-size:28px; }
.tri-plane-page #safety .method-card h3 { margin:0; color:var(--tp-gold); font-weight:700; }
.tri-plane-page #safety .method-card p { grid-column:1/-1; margin-top:22px; }
.tri-plane-page #safety .section-header { max-width:none; }
.tri-plane-page #safety .section-header h2 { max-width:none; }
.tri-plane-page #safety .safety-disclaimer { margin:32px auto 0; color:var(--muted); text-align:center; font-size:clamp(10px,.9vw,13px); line-height:1.6; font-style:italic; }
body.tri-plane-page main > section#faq#faq .faq-list {
  width:100%;
  max-width:1060px;
  margin-inline:auto;
  padding:0;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
  border:0;
  border-radius:0;
  background:transparent;
}
.tri-plane-page #faq .section-header .lead { max-width:1060px; }
.tri-plane-page #faq .section-header h2 em { color:var(--tp-gold); }
.tri-plane-page #faq .faq-item,.tri-plane-page #faq .assessment-step { border-color:var(--tp-line); }
body.tri-plane-page main > section#faq#faq .faq-q {
  color:#3d352e;
  font-size:20px;
  font-weight:600;
}
.tri-plane-page #faq .faq-a { color:#746a60; }


.tri-plane-page .cta-banner .tri-plane-cta-copy {
  width:100%;
  max-width:1120px;
  margin:0 auto 28px;
  font-size:17px;
  line-height:1.65;
}
.tri-plane-page .tri-plane-cta-copy span { display:block; }
.tri-plane-page .tri-plane-cta-actions {
  display:grid;
  grid-template-columns:repeat(2,280px);
  justify-content:center;
  gap:14px;
}
.tri-plane-page .tri-plane-cta-actions .btn {
  box-sizing:border-box;
  width:100%;
  height:58px;
  min-height:58px;
  padding:0 24px !important;
  justify-content:center;
  border-radius:7px;
  font:600 14px/1.2 'Inter',sans-serif;
  letter-spacing:0;
  text-transform:none;
  white-space:nowrap;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.tri-plane-page .tri-plane-cta-gold {
  color:#171411;
  background:var(--ref-gold,#e2b95e);
  border:1px solid var(--ref-gold,#e2b95e);
}
.tri-plane-page .tri-plane-cta-dark {
  color:#f7f1e7;
  background:var(--ref-ink,#171717);
  border:1px solid var(--ref-gold,#e2b95e);
}
.tri-plane-page .tri-plane-cta-gold:hover,
.tri-plane-page .tri-plane-cta-gold:focus-visible {
  color:#fff;
  background:var(--ref-bronze,#a57431);
  border-color:var(--ref-bronze,#a57431);
  box-shadow:0 10px 24px rgba(140,110,56,.24);
  transform:translateY(-2px);
}
.tri-plane-page .tri-plane-cta-dark:hover,
.tri-plane-page .tri-plane-cta-dark:focus-visible {
  color:var(--ref-gold,#e2b95e);
  background:#292621;
  border-color:var(--ref-gold,#e2b95e);
  box-shadow:0 10px 24px rgba(0,0,0,.28);
  transform:translateY(-2px);
}
@media (max-width:900px) {
  .tri-plane-page .hero-value-strip { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 0; padding-top:24px; }
  .tri-plane-page .hero-value-item:nth-child(2) { border-right:0; }
  .tri-plane-page #fit-check .split-grid { grid-template-columns:1fr; }
  .tri-plane-page #system .section-header h2 { font-size:clamp(30px,6vw,42px); white-space:normal; text-wrap:balance; }
  .tri-plane-page .system-card { min-height:160px; }
  .tri-plane-page .system-card h4 { font-size:15px; }
  .tri-plane-page .system-card { border-right:0; border-bottom:1px solid var(--tp-line); }
  .tri-plane-page .system-card:last-child { border-bottom:0; }
  .tri-plane-page #recovery .journey-phases { grid-template-columns:repeat(2,1fr) !important; }
  .tri-plane-page #recovery .phase:nth-child(2) { border-right:0; }
  .tri-plane-page #recovery .phase:nth-child(-n+2) { border-bottom:1px solid var(--tp-line); }
}
@media (max-width:640px) {
  .tri-plane-page .cta-banner .tri-plane-cta-copy {
    max-width:340px;
    margin-bottom:24px;
    font-size:15px;
    line-height:1.65;
  }
  .tri-plane-page .tri-plane-cta-copy span { display:inline; }
  .tri-plane-page .tri-plane-cta-actions {
    width:min(100%,340px);
    grid-template-columns:1fr;
    margin-inline:auto;
    gap:12px;
  }
  .tri-plane-page .tri-plane-cta-actions .btn {
    height:54px;
    min-height:54px;
  }
  .tri-plane-page .hero-value-strip { order:3; grid-template-columns:1fr; gap:0; margin-top:24px; padding:10px 0 0; }
  .tri-plane-page .hero-value-item { min-height:68px; padding:10px 0; border-right:0; border-bottom:1px solid var(--tp-line); }
  .tri-plane-page .hero-value-item:last-child { border-bottom:0; }
  .tri-plane-page .hero-value-icon { width:40px; height:40px; }
  .tri-plane-page .hero-value-copy strong { font-size:17px; }
  .tri-plane-page .fit-concerns,.tri-plane-page .candidate-layout,.tri-plane-page #recovery .journey-phases { grid-template-columns:1fr !important; }
  .tri-plane-page .candidate-panel { padding:28px 22px; }
  .tri-plane-page #differentiation .section-header h2 { font-size:clamp(12px,3.45vw,16px); }
  .tri-plane-page #candidates .section-header h2 { font-size:clamp(18px,5.05vw,32px); letter-spacing:-.025em; }
  .tri-plane-page .comparison-wrap .compare-table { min-width:680px; }
  .tri-plane-page #recovery .phase { min-height:0; border-right:0; border-bottom:1px solid var(--tp-line); }
  .tri-plane-page #recovery .phase:last-child { border-bottom:0; }
  body.tri-plane-page main > section#faq#faq .faq-list { padding:0; gap:12px; }
  body.tri-plane-page main > section#faq#faq .faq-q { font-size:18px; }
  .tri-plane-page #matching .section-header h2 {
    font-size:clamp(16px,4.2vw,22px);
    letter-spacing:-.02em;
  }
}


@media (min-width:901px) {
  .tri-plane-page #safety .section-header h2,
  .tri-plane-page #safety .safety-disclaimer { white-space:nowrap; }

  .tri-plane-page #faq .section-header { max-width:none; }
  .tri-plane-page #faq .section-header h2 { max-width:none; white-space:nowrap; }
  .tri-plane-page #faq .section-header .lead { max-width:1060px; white-space:nowrap; }

  .tri-plane-page main > section:not(.sub-stat-strip):not(.trust-bar):not(.cta-banner):not([hidden]) {
    padding-block:48px !important;
  }

  .tri-plane-page #fit-check .split-grid {
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:40px;
    align-items:center;
  }
  .tri-plane-page #fit-check .fit-concerns { gap:10px; }
  .tri-plane-page #fit-check .fit-concerns .doctor-portrait {
    width:100%;
    max-height:292px;
    aspect-ratio:16/7 !important;
    margin-bottom:2px;
  }
  .tri-plane-page #fit-check .fit-concerns .doctor-portrait img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 34% !important;
  }
  .tri-plane-page #fit-check .fit-list { gap:9px; margin-top:20px; }
  .tri-plane-page #fit-check .fit-list li { padding-left:23px; font-size:12px; line-height:1.45; }
  .tri-plane-page #fit-check .fit-concerns .concern-card { padding:13px 14px; }
  .tri-plane-page #fit-check .fit-concerns .concern-card h3 { margin-bottom:4px; font-size:15px; }
  .tri-plane-page #fit-check .fit-concerns .concern-card p { font-size:11px; line-height:1.45; }
  .tri-plane-page #fit-check .split-grid > div:first-child > div[style] { margin-top:20px !important; }

  .tri-plane-page #what-is .split-grid {
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    gap:54px;
    align-items:center;
  }
  .tri-plane-page #what-is .divider { margin-block:18px; }
  .tri-plane-page #what-is .split-grid > :first-child h2 { line-height:1.16; }
  .tri-plane-page #what-is .split-grid > :first-child .lead { line-height:2; }

  .tri-plane-page #differentiation .section-header { margin-bottom:20px; }
  .tri-plane-page #differentiation .comparison-wrap { margin-top:0; }
  .tri-plane-page #differentiation .compare-table th,
  .tri-plane-page #differentiation .compare-table td { padding:15px 18px; font-size:12px; line-height:1.48; }
  .tri-plane-page #differentiation .compare-table thead th { padding-block:16px; }
  .tri-plane-page #differentiation .comparison-note { margin-top:12px; }

  .tri-plane-page #why-dr-miles .split-grid {
    grid-template-columns:minmax(0,.43fr) minmax(0,.57fr);
    gap:36px;
    align-items:center;
  }
  .tri-plane-page #why-dr-miles .divider { margin-block:18px; }
  .tri-plane-page #why-dr-miles .doctor-points {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-bottom:0;
  }
  .tri-plane-page #why-dr-miles .doctor-point {
    position:relative;
    display:block;
    min-height:112px;
    padding:18px 12px 15px 54px;
    border:1px solid var(--tp-line);
    border-radius:10px;
    background:rgba(255,253,249,.68);
  }
  .tri-plane-page #why-dr-miles .doctor-point:nth-child(even) { padding-left:54px; }
  .tri-plane-page #why-dr-miles .doctor-point::before {
    content:counter(doctor-point,decimal-leading-zero);
    position:absolute;
    top:18px;
    left:18px;
    color:var(--tp-gold);
    font:600 12px/1 'Montserrat',sans-serif;
    letter-spacing:.08em;
  }
  .tri-plane-page #why-dr-miles .doctor-points { counter-reset:doctor-point; }
  .tri-plane-page #why-dr-miles .doctor-point { counter-increment:doctor-point; }
  .tri-plane-page #why-dr-miles .doctor-point strong,
  .tri-plane-page #why-dr-miles .doctor-point span { display:block; }
  .tri-plane-page #why-dr-miles .doctor-point strong { color:var(--tp-gold); font-size:12px; line-height:1.35; letter-spacing:.08em; white-space:nowrap; }
  .tri-plane-page #why-dr-miles .doctor-point span { margin-top:9px; color:var(--tp-copy); font-size:11px; line-height:1.58; }
  .tri-plane-page #why-dr-miles .doctor-portrait {
    width:100%;
    max-height:none;
    aspect-ratio:1.46/1 !important;
    transform:translateY(20px);
    border:0;
    border-radius:18px;
    box-shadow:0 22px 64px rgba(48,37,26,.13);
  }
  .tri-plane-page #why-dr-miles .doctor-portrait img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 42% !important;
  }
}

@media (max-width:900px) {
  .tri-plane-page #why-dr-miles .split-grid { grid-template-columns:1fr; }
  .tri-plane-page #why-dr-miles .doctor-points { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; counter-reset:doctor-point; }
  .tri-plane-page #why-dr-miles .doctor-point { position:relative; min-height:120px; padding:20px 18px 18px 52px; border:1px solid var(--tp-line); border-radius:10px; background:rgba(255,253,249,.68); counter-increment:doctor-point; }
  .tri-plane-page #why-dr-miles .doctor-point::before { content:counter(doctor-point,decimal-leading-zero); position:absolute; top:20px; left:17px; color:var(--tp-gold); font:600 12px/1 'Montserrat',sans-serif; letter-spacing:.08em; }
  .tri-plane-page #why-dr-miles .doctor-point strong,
  .tri-plane-page #why-dr-miles .doctor-point span { display:block; }
  .tri-plane-page #why-dr-miles .doctor-point strong { color:var(--tp-gold); font-size:12px; line-height:1.35; letter-spacing:.08em; white-space:nowrap; }
  .tri-plane-page #why-dr-miles .doctor-point span { margin-top:8px; color:var(--tp-copy); font-size:11px; line-height:1.58; }
  .tri-plane-page #why-dr-miles .doctor-portrait { width:100%; aspect-ratio:4/3 !important; border:0; border-radius:16px; box-shadow:0 18px 48px rgba(48,37,26,.12); }
  .tri-plane-page #why-dr-miles .doctor-portrait img { width:100%; height:100%; object-fit:cover; object-position:center center !important; }
}

@media (max-width:640px) {
  .tri-plane-page #why-dr-miles .doctor-points { grid-template-columns:1fr; }
  .tri-plane-page #why-dr-miles .doctor-point { min-height:0; }
  .tri-plane-page #why-dr-miles .doctor-portrait { aspect-ratio:4/3 !important; }
}


@media (min-width:901px) {
  .tri-plane-page .page-hero.page-hero-split {
    height:auto !important;
    min-height:820px !important;
  }
  .tri-plane-page .page-hero.page-hero-split .page-hero-grid {
    min-height:820px !important;
    padding-top:96px !important;
    padding-bottom:44px !important;
    align-content:start;
  }
  .tri-plane-page .page-hero-content {
    margin-top:10px !important;
  }
  .tri-plane-page .hero-meta {
    top:-58px !important;
  }
}

@media (min-width:641px) and (max-width:900px) {
  .tri-plane-page .page-hero.page-hero-split .page-hero-grid {
    padding-top:72px !important;
  }
}

@media (max-width:640px) {
  .tri-plane-page .page-hero.page-hero-split .page-hero-grid {
    padding-top:46px !important;
  }
}


.tri-plane-page #fit-check h2 {
  line-height:1.14;
}

.tri-plane-page #fit-check h2 em {
  color:var(--tp-gold);
  -webkit-text-fill-color:currentColor;
}

.tri-plane-page #fit-check .fit-cta {
  margin-top:24px;
}

body.tri-plane-page #fit-check .fit-cta .btn.btn-primary {
  box-sizing:border-box;
  display:inline-flex;
  width:260px !important;
  min-width:260px !important;
  max-width:260px !important;
  height:58px !important;
  min-height:58px !important;
  padding:0 18px !important;
  align-items:center;
  justify-content:center;
  border-radius:6px;
  background:var(--ref-gold, #e2b95e);
  border-color:var(--ref-gold, #e2b95e);
}

body.tri-plane-page #fit-check .fit-cta .btn.btn-primary:hover {
  background:var(--ref-bronze, #a57431);
  border-color:var(--ref-bronze, #a57431);
  color:#fff;
  transform:translateY(-2px);
}

.tri-plane-page #fit-check .fit-concerns .concern-card h3 {
  color:var(--tp-gold) !important;
}

@media (min-width:901px) {
  .tri-plane-page #fit-check .split-grid {
    align-items:stretch;
  }

  .tri-plane-page #fit-check .fit-copy {
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-self:stretch;
    padding-block:20px;
  }

  .tri-plane-page #fit-check .fit-concerns .concern-card {
    min-height:0;
    padding:10px 14px;
  }

  .tri-plane-page #fit-check .fit-concerns .concern-card h3 {
    margin-bottom:3px;
    font-size:15px;
    line-height:1.2;
  }
}

@media (max-width:640px) {
  .tri-plane-page #fit-check h2 {
    line-height:1.14;
  }

  body.tri-plane-page #fit-check .fit-cta .btn.btn-primary {
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:54px !important;
    min-height:54px !important;
  }

  .tri-plane-page #fit-check .fit-concerns .concern-card {
    padding:13px 16px;
  }
}


.tri-plane-page #preview {
  background:var(--tp-paper);
  padding:76px 32px;
}

.tri-plane-page #preview > .container {
  width:100%;
  max-width:1280px;
  margin:0 auto;
  padding:0;
}

.tri-plane-page #preview .preview-philosophy-layout {
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  align-items:center;
  gap:48px;
}

.tri-plane-page #preview .philosophy-copy {
  min-width:0;
}

.tri-plane-page #preview .philosophy-copy h2 {
  margin-top:20px;
  font-size:clamp(34px,2.65vw,44px);
  line-height:1.08;
  letter-spacing:-.025em;
}

.tri-plane-page #preview .philosophy-copy h2 span,
.tri-plane-page #preview .philosophy-copy h2 em {
  display:block;
  white-space:nowrap;
}

.tri-plane-page #preview .philosophy-copy h2 em {
  color:var(--tp-gold);
}

.tri-plane-page #preview .philosophy-copy .lead {
  margin-top:24px;
  font-size:15px;
  line-height:1.85;
}

.tri-plane-page #preview .case-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  width:100%;
  margin-left:auto;
}

.tri-plane-page #preview .case-card {
  min-width:0;
  overflow:hidden;
  padding:0;
  border:1px solid #e6ded3;
  border-radius:22px;
  background:#fff;
  box-shadow:0 24px 60px rgba(43,37,32,.08);
}

.tri-plane-page #preview .case-kicker {
  margin:0;
  color:#b68a45;
  font:700 12px/16px 'Montserrat',sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.tri-plane-page #preview .case-photo {
  position:relative;
  aspect-ratio:1/1.06;
  overflow:hidden;
  background:#f8f4ee;
}

.tri-plane-page #preview .case-photo::before,
.tri-plane-page #preview .case-photo::after {
  display:none;
}

.tri-plane-page #preview .case-photo img {
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.tri-plane-page #preview .case-body {
  min-height:0;
  padding:20px 22px 22px;
}

.tri-plane-page #preview .case-body h3 {
  margin:10px 0 0;
  color:var(--tp-ink) !important;
  font:600 24px/1.1 'Cormorant Garamond',serif;
}

.tri-plane-page #preview .case-meta {
  display:grid;
  gap:0;
}

.tri-plane-page #preview .case-meta p {
  margin:0;
  padding:0;
  border:0;
  color:#6f675f !important;
  font-size:14px;
  line-height:24px;
}

.tri-plane-page #preview .case-meta p:first-child { margin-top:13px; }
.tri-plane-page #preview .case-meta p + p { margin-top:6px; }

.tri-plane-page #preview .case-meta strong {
  color:#1f1c19;
  font-weight:700;
}

.tri-plane-page #preview .case-disclaimer {
  margin-top:7px;
  padding:0;
  border:0;
  color:#92877b;
  font-size:11px;
  line-height:1.5;
}

@media (min-width:641px) and (max-width:900px) {
  .tri-plane-page #preview {
    padding:88px 24px;
  }

  .tri-plane-page #preview .preview-philosophy-layout {
    grid-template-columns:1fr;
    gap:52px;
  }

  .tri-plane-page #preview .philosophy-copy {
    max-width:720px;
  }
}

@media (max-width:640px) {
  .tri-plane-page #preview {
    padding:72px 0;
  }

  .tri-plane-page #preview > .container {
    max-width:none;
    padding:0 20px;
    overflow:hidden;
  }

  .tri-plane-page #preview .preview-philosophy-layout {
    grid-template-columns:1fr;
    gap:44px;
  }

  .tri-plane-page #preview .philosophy-copy h2 {
    font-size:clamp(38px,11vw,48px);
  }

  .tri-plane-page #preview .philosophy-copy h2 span,
  .tri-plane-page #preview .philosophy-copy h2 em {
    white-space:normal;
  }

  .tri-plane-page #preview .philosophy-copy blockquote {
    margin-top:28px;
    padding:22px 0 0 20px;
    font-size:21px;
  }

  .tri-plane-page #preview .case-grid {
    display:flex;
    width:auto;
    margin:0;
    gap:16px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    padding-right:18vw;
  }

  .tri-plane-page #preview .case-grid::-webkit-scrollbar { display:none; }

  .tri-plane-page #preview .case-card {
    flex:0 0 82vw;
    scroll-snap-align:start;
  }

  .tri-plane-page #preview .case-body {
    min-height:0;
  }
}

/* Final alignment for the hero brand mark. */
.tri-plane-page .hero-doctor-line {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 16px;
  line-height: 1.2 !important;
}

.tri-plane-page .hero-doctor-mark {
  display: inline-grid !important;
  width: 16px !important;
  height: 14px !important;
  flex: 0 0 16px !important;
  place-items: center;
  transform: translate(2px, -1px);
}

.tri-plane-page .hero-doctor-mark svg {
  display: block;
  width: 16px !important;
  height: 14px !important;
}

@media (max-width: 900px) {
  .tri-plane-page .hero-doctor-line {
    gap: 10px !important;
  }

  .tri-plane-page .hero-doctor-mark {
    width: 14px !important;
    height: 13px !important;
    flex-basis: 14px !important;
    transform: translate(1px, -1px);
  }

  .tri-plane-page .hero-doctor-mark svg {
    width: 14px !important;
    height: 12px !important;
  }
}
