/* vanilla base reset (no framework) */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--xc15f-font, system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif); line-height: 1.5; color: var(--xc15f-ink, #111); background: var(--xc15f-bg, #fff); }
h1, h2, h3, h4, h5, h6 { font-family: var(--xc15f-font-display, var(--xc15f-font, system-ui, sans-serif)); }
img, svg, video, canvas { max-width: 100%; height: auto; }
a { color: inherit; }
*:focus-visible { outline: 2px solid var(--xc15f-primary, #2563eb); outline-offset: 2px; }
/* visibility shim for framework toggles */
.hidden { display: none !important; }

/* design tokens */
:root {
  --xc15f-primary: #111213;
  --xc15f-secondary: #C63B2D;
  --xc15f-accent: #C63B2D;
  --xc15f-ink: #111213;
  --xc15f-slate: #535962;
  --xc15f-mist: #DDE0E4;
  --xc15f-border: #E3E4E6;
  --xc15f-surface: #FFFFFF;
  --xc15f-bg: #F6F6F4;
  --xc15f-text: #111213;
  --xc15f-font: Georgia, Cambria, 'Times New Roman', serif;
  --xc15f-font-display: 'Hoefler Text', 'Baskerville Old Face', Garamond, Georgia, serif;
}

/* state utilities */
.is-open { display: block !important; }
.is-active { display: block !important; }
[hidden] { display: none !important; }

/* framework-injected components (vanilla) */
[data-xc15f-ui="cookie-banner"] { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; z-index: 9999; margin: 0 auto; max-width: 56rem; border: 1px solid var(--xc15f-border, #e5e7eb); background: var(--xc15f-surface, #fff); border-radius: 1rem; padding: 1rem; box-shadow: 0 10px 30px rgba(0,0,0,.15); }
[data-xc15f-ui="cookie-banner"] > div { display: flex; flex-wrap: wrap; gap: 1rem; align-items: flex-start; justify-content: space-between; }
[data-xc15f-ui="cookie-banner"] > div > div:last-child { display: flex; flex-wrap: wrap; gap: .5rem; }
[data-xc15f-ui="cookie-banner"] a { text-decoration: underline; }
[data-xc15f-cs-action], [data-xc15f-ag-action] { cursor: pointer; border-radius: .5rem; padding: .5rem .9rem; font-size: .8rem; border: 1px solid var(--xc15f-border, #d1d5db); background: transparent; color: var(--xc15f-ink, #111); }
[data-xc15f-cs-action="accept-all"], [data-xc15f-cs-action="save"], [data-xc15f-ag-action="confirm"] { background: var(--xc15f-primary, #2563eb); color: #fff; border-color: transparent; font-weight: 600; }
[data-xc15f-cs-action="reject-all"] { background: var(--xc15f-ink, #111); color: #fff; border-color: transparent; font-weight: 600; }
[data-xc15f-cs-panel] { margin-top: 1rem; border: 1px solid var(--xc15f-border, #e5e7eb); background: var(--xc15f-surface, #fff); border-radius: .75rem; padding: 1rem; font-size: .875rem; }
[data-xc15f-cs-panel] > div { display: flex; flex-wrap: wrap; gap: .75rem; }
[data-xc15f-ui="cookie-banner"] label { display: inline-flex; align-items: center; gap: .5rem; }
[data-xc15f-ui="age-gate-overlay"] { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.8); }
[data-xc15f-ui="age-gate-overlay"] > div { width: 100%; max-width: 28rem; margin: 0 1rem; background: var(--xc15f-surface, #1a1a2e); color: var(--xc15f-ink, #fff); border-radius: 1rem; padding: 2rem; text-align: center; box-shadow: 0 20px 60px rgba(0,0,0,.4); }
[data-xc15f-ui="age-gate-overlay"] > div > div:last-of-type { display: flex; flex-direction: column; gap: .75rem; }
[data-xc15f-ag-action] { padding: .75rem 1.5rem; }

/* sections */
/* xc15f:header */
/* xc15f:header */
#header{position:sticky;top:0;z-index:50;background:var(--xc15f-surface);border-bottom:1px solid var(--xc15f-border)}
#header .header-inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);display:grid;grid-template-columns:1fr auto auto;align-items:center;min-height:72px;gap:1rem}
#header .brand{justify-self:start;text-decoration:none;color:var(--xc15f-ink)}
#header .brand-mark{font-family:var(--font-family-serif);font-size:1.25rem;letter-spacing:-0.02em;font-weight:700}
#header .nav{display:flex;gap:1.25rem;align-items:center}
#header .nav-link{font-family:var(--font-family-sans);font-size:1rem;color:var(--xc15f-slate);text-decoration:none;padding:0.5rem 0.25rem;line-height:1.2}
#header .nav-link:focus-visible{outline:2px solid var(--xc15f-accent);outline-offset:3px;border-radius:2px}
#header .header-cta{display:flex;gap:0.75rem;align-items:center;justify-self:end}
#header .btn{font-family:var(--font-family-sans);font-size:1rem;line-height:1.2;border-radius:0px;padding:0.62rem 0.9rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;white-space:nowrap}
#header .btn-primary{background:var(--xc15f-secondary);color:var(--xc15f-surface);border:1px solid var(--xc15f-secondary)}
#header .btn-primary:hover{background:#b6362a}
#header .btn-primary:focus-visible{outline:2px solid var(--xc15f-accent);outline-offset:3px}
#header .btn-secondary{background:var(--xc15f-surface);color:var(--xc15f-ink);border:1px solid var(--xc15f-border)}
#header .btn-secondary:hover{border-color:var(--xc15f-accent)}
#header .btn-secondary:focus-visible{outline:2px solid var(--xc15f-accent);outline-offset:3px}
#header .menu-toggle{display:none;font-family:var(--font-family-sans);font-size:1rem;line-height:1.2;border-radius:0px;padding:0.62rem 0.9rem;background:var(--xc15f-surface);color:var(--xc15f-ink);border:1px solid var(--xc15f-border);min-height:44px;justify-self:end}
#header .menu-toggle:focus-visible{outline:2px solid var(--xc15f-accent);outline-offset:3px}
#header .menu{grid-column:1/-1;margin:0 auto;max-width:72rem;padding:0 clamp(1rem,4vw,3rem) 1rem}
#header .menu-link{display:block;text-decoration:none;color:var(--xc15f-ink);font-family:var(--font-family-sans);padding:0.85rem 0;border-top:1px solid var(--xc15f-border)}
#header .menu-link:first-child{border-top:0}
#header .menu-link:focus-visible{outline:2px solid var(--xc15f-accent);outline-offset:3px}
@media (max-width:768px){
  #header .header-inner{grid-template-columns:1fr auto;}
  #header .nav{display:none}
  #header .header-cta{display:none}
  #header .menu-toggle{display:inline-flex}
  #header .menu{display:block}
}
@media (prefers-reduced-motion: reduce){
  #header .btn-primary:hover,#header .btn-secondary:hover{transition:none}
}
#header ::selection{background:var(--xc15f-secondary);color:var(--xc15f-surface)}
/* xc15f:footer */
/* xc15f:footer */
#footer{background:var(--xc15f-bg);color:var(--xc15f-text);padding:clamp(2.5rem,6vw,5rem) 0 1.5rem;border-top:1px solid var(--xc15f-border)}
#footer .footer-inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
#footer .footer-top{display:grid;gap:1.75rem;grid-template-columns:1fr}
#footer .footer-brand{display:flex;gap:0.9rem;align-items:flex-start}
#footer .footer-mark{width:26px;height:26px;border:1px solid var(--xc15f-border);display:flex;align-items:center;justify-content:center;color:var(--xc15f-secondary);font-size:18px;line-height:1;margin-top:0.1rem}
#footer .footer-xc15f-b-text{display:flex;flex-direction:column;gap:0.35rem}
#footer .footer-name{font-family:var(--xc15f-sans,Georgia,Cambria,'Times New Roman',serif);font-weight:700;letter-spacing:-0.02em;font-size:1.25rem}
#footer .footer-tagline{font-size:1rem;max-width:42ch;line-height:1.6;color:var(--xc15f-text)}
#footer .footer-columns{display:grid;gap:1.5rem;grid-template-columns:1fr}
#footer .footer-col{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);padding:1.25rem 1.25rem;border-radius:var(--xc15f-radius,2px)}
#footer .footer-col-title{font-family:Georgia,Cambria,'Times New Roman',serif;font-size:1.05rem;font-weight:700;letter-spacing:-0.01em;margin-bottom:0.9rem;position:relative;padding-bottom:0.75rem}
#footer .footer-col-title:after{content:"";position:absolute;left:0;bottom:0;height:1px;width:56px;background:var(--xc15f-secondary)}
#footer .footer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.65rem}
#footer .footer-link{color:var(--xc15f-text);text-decoration:none;border-bottom:1px solid transparent;line-height:1.5}
#footer .footer-link:focus-visible{outline:2px solid var(--xc15f-secondary);outline-offset:3px;border-bottom-color:var(--xc15f-secondary)}
#footer .footer-link:hover{border-bottom-color:var(--xc15f-secondary)}
#footer .footer-muted{color:var(--xc15f-slate);font-size:0.95rem;line-height:1.5}
#footer .footer-small{margin-top:0.95rem;color:var(--xc15f-slate);font-size:0.9rem;line-height:1.5}
#footer .footer-bottom{margin-top:1.25rem;display:flex;flex-direction:column;gap:1rem;border-top:1px solid var(--xc15f-border);padding-top:1.25rem}
#footer .footer-legal{display:flex;flex-direction:column;gap:0.35rem}
#footer .footer-legal-line{font-size:0.9rem;color:var(--xc15f-slate);line-height:1.5}
#footer .footer-policy{display:flex;flex-wrap:wrap;gap:0.9rem}
#footer .footer-policy-link{color:var(--xc15f-text);text-decoration:none;border-bottom:1px solid var(--xc15f-border);padding-bottom:0.15rem}
#footer .footer-policy-link:focus-visible{outline:2px solid var(--xc15f-secondary);outline-offset:3px}
#footer .footer-policy-link:hover{border-bottom-color:var(--xc15f-secondary)}
#footer ::selection{background:rgba(198,59,45,0.18)}
#footer a[aria-current]{font-weight:700}
@media (min-width: 768px){
  #footer .footer-top{grid-template-columns:1fr}
  #footer .footer-columns{grid-template-columns:repeat(3,minmax(0,1fr))}
  #footer .footer-bottom{flex-direction:row;align-items:flex-start;justify-content:space-between}
}
@media (prefers-reduced-motion: reduce){
  #footer .footer-link,#footer .footer-policy-link{transition:none}
}

/* xc15f:hero */
/* xc15f:hero */
#hero.hero{background:var(--xc15f-bg);color:var(--xc15f-ink);padding:clamp(2.5rem,6vw,5rem) 0 clamp(2.2rem,4.6vw,4rem);}
#hero.hero .hero-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#hero.hero .hero-top{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.5rem,4vw,3rem);align-items:start;}
#hero.hero .hero-left{padding-top:.25rem;}
#hero.hero .eyebrow{display:inline-block;font-family:var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);letter-spacing:.06em;text-transform:uppercase;font-size:.85rem;color:var(--xc15f-slate);border-left:3px solid var(--xc15f-secondary);padding-left:.85rem;}
#hero.hero .hero-title{margin:.85rem 0 .85rem;font-family:var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);font-size:clamp(2.2rem,4.4vw,4.2rem);line-height:1.03;letter-spacing:-.02em;text-wrap:balance;}
#hero.hero .hero-lead{max-width:62ch;margin:0 0 1.4rem;font-size:1.05rem;line-height:1.6;color:var(--xc15f-ink);}
#hero.hero .hero-ctas{display:flex;flex-wrap:wrap;gap:.85rem;margin-bottom:1.4rem;}
#hero.hero .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.9rem 1.1rem;border-radius:var(--xc15f-radius-lg,0px);font-family:Georgia, Cambria, 'Times New Roman', serif;font-weight:700;text-decoration:none;letter-spacing:.01em;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .12s ease;}
#hero.hero .btn-primary{background:var(--xc15f-secondary);border:1px solid var(--xc15f-secondary);color:var(--xc15f-surface);}
#hero.hero .btn-primary:hover{background:color-mix(in srgb,var(--xc15f-secondary) 92%, #000 8%);transform:translateY(-1px);}
#hero.hero .btn-primary:active{transform:translateY(0px);}
#hero.hero .btn-secondary{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);color:var(--xc15f-ink);}
#hero.hero .btn-secondary:hover{border-color:color-mix(in srgb,var(--xc15f-border) 60%, var(--xc15f-secondary) 40%);}
#hero.hero .btn:focus-visible{outline:3px solid color-mix(in srgb,var(--xc15f-secondary) 45%, #000 0%);outline-offset:3px;}
#hero.hero .hero-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:46rem;}
#hero.hero .trust-item{display:flex;gap:.7rem;align-items:flex-start;}
#hero.hero .trust-dot{width:10px;height:10px;border-radius:50%;background:var(--xc15f-secondary);margin-top:.45rem;flex:0 0 auto;box-shadow:0 0 0 3px color-mix(in srgb,var(--xc15f-secondary) 18%, transparent 0%);}
#hero.hero .trust-text{font-size:.98rem;line-height:1.4;color:var(--xc15f-ink);}
#hero.hero .trust-strong{font-weight:800;}

#hero.hero .hero-right{position:relative;}
#hero.hero .proof-slab{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:var(--xc15f-radius-lg,0px);padding:1.25rem 1.25rem 1.1rem;}
#hero.hero .proof-top{padding-bottom:1rem;}
#hero.hero .proof-name{font-family:var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);font-size:1.4rem;font-weight:800;letter-spacing:-.01em;}
#hero.hero .proof-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.65rem;}
#hero.hero .chip{display:inline-flex;align-items:center;padding:.45rem .7rem;border:1px solid var(--xc15f-border);background:var(--xc15f-bg);font-size:.92rem;color:var(--xc15f-ink);border-radius:var(--xc15f-radius-md,2px);font-weight:700;}
#hero.hero .proof-mini{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;padding:1rem;border:1px solid var(--xc15f-border);background:linear-gradient(180deg, var(--xc15f-surface), color-mix(in srgb,var(--xc15f-bg) 55%, var(--xc15f-surface) 45%));}
#hero.hero .proof-mini-left{min-width:0;}
#hero.hero .mini-label{font-size:.85rem;color:var(--xc15f-slate);text-transform:uppercase;letter-spacing:.08em;font-weight:800;}
#hero.hero .mini-value{margin-top:.35rem;font-family:var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);font-size:1.2rem;font-weight:900;letter-spacing:-.01em;}
#hero.hero .mini-copy{margin:.45rem 0 0;max-width:40ch;font-size:.98rem;line-height:1.55;color:var(--xc15f-ink);}
#hero.hero .proof-mini-metric{text-align:right;}
#hero.hero .metric-number{font-variant-numeric:tabular-nums;font-family:var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);font-size:2.5rem;font-weight:900;line-height:1;letter-spacing:-.03em;}
#hero.hero .metric-unit{margin-top:.35rem;font-size:.95rem;line-height:1.35;color:var(--xc15f-slate);font-weight:800;}
#hero.hero .proof-divider{height:1px;background:var(--xc15f-border);margin:1.05rem 0 1rem;}
#hero.hero .proof-cred{display:flex;flex-direction:column;gap:.65rem;}
#hero.hero .cred-row{display:flex;gap:.8rem;align-items:center;}
#hero.hero .cred-badge{display:inline-flex;align-items:center;justify-content:center;min-width:64px;max-width:64px;height:28px;border-radius:var(--xc15f-radius-md,2px);background:color-mix(in srgb,var(--xc15f-secondary) 12%, var(--xc15f-surface) 88%);border:1px solid color-mix(in srgb,var(--xc15f-secondary) 32%, var(--xc15f-border) 68%);color:var(--xc15f-secondary);font-weight:900;font-size:.92rem;}
#hero.hero .cred-text{font-size:1rem;font-weight:800;color:var(--xc15f-ink);}

#hero.hero .hero-bottom{margin-top:1.9rem;}
#hero.hero .fit-check{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;}
#hero.hero .fit-item{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:var(--xc15f-radius-lg,0px);padding:1.15rem 1.15rem 1.1rem;}
#hero.hero .fit-kicker{font-size:.82rem;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:var(--xc15f-slate);}
#hero.hero .fit-title{margin-top:.55rem;font-family:var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);font-weight:900;font-size:1.2rem;letter-spacing:-.01em;}
#hero.hero .fit-body{margin-top:.55rem;color:var(--xc15f-ink);font-size:.98rem;line-height:1.6;max-width:44ch;}

#hero.hero ::selection{background:color-mix(in srgb,var(--xc15f-secondary) 20%, #000 0%);}
@media (prefers-reduced-motion: reduce){#hero.hero .btn{transition:none;}}
@media (max-width: 920px){#hero.hero .hero-top{grid-template-columns:1fr;gap:1.4rem;}#hero.hero .hero-trust{grid-template-columns:1fr;max-width:none;}#hero.hero .fit-check{grid-template-columns:1fr;}}
@media (min-width: 641px) and (max-width: 920px){#hero.hero .fit-check{grid-template-columns:repeat(2,minmax(0,1fr));}#hero.hero .fit-item:last-child{grid-column:1 / -1;}}

/* xc15f:fit-checks */
/* xc15f:fit-checks */
#fit-checks.fit-checks{padding:clamp(2.5rem,6vw,4.5rem) 0;background:var(--xc15f-bg);color:var(--xc15f-ink)}
#fit-checks .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
#fit-checks .section-title{font-family:var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);font-size:clamp(1.6rem,3.2vw,2.3rem);line-height:1.15;margin:0 0 .75rem;letter-spacing:-.01em}
#fit-checks .accent-rule{height:2px;width:5.5rem;background:var(--xc15f-accent);margin:0 0 1.25rem}
#fit-checks .lead{max-width:62ch;font-family:Georgia, Cambria, 'Times New Roman', serif;letter-spacing:0;font-size:1rem;line-height:1.7;margin:0 0 1.9rem;color:var(--xc15f-ink)}
#fit-checks .checks{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr;gap:1rem}
#fit-checks .check-card{display:grid;grid-template-columns:64px 1fr;gap:1rem;align-items:start;padding:1.1rem 1.1rem;border:1px solid var(--xc15f-border);background:var(--xc15f-surface)}
#fit-checks .check-index{font-variant-numeric:tabular-nums;font-family:Georgia, Cambria, 'Times New Roman', serif;font-weight:700;color:var(--xc15f-accent);line-height:1;font-size:1rem;margin-top:.15rem}
#fit-checks .check-title{margin:0 0 .35rem;font-family:Georgia, Cambria, 'Times New Roman', serif;font-size:1.1rem;line-height:1.25;letter-spacing:-.005em}
#fit-checks .check-text{margin:0;max-width:62ch;color:var(--xc15f-slate);font-family:Georgia, Cambria, 'Times New Roman', serif;line-height:1.7;font-size:1rem}
#fit-checks .cta-row{display:flex;gap:.85rem;flex-wrap:wrap;align-items:center;margin-top:1.6rem}
#fit-checks .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.75rem 1.05rem;border-radius:0;border:1px solid var(--xc15f-border);text-decoration:none;color:var(--xc15f-ink);background:var(--xc15f-surface);font-family:Georgia, Cambria, 'Times New Roman', serif;font-weight:700;letter-spacing:-.01em;transition:background-color .15s ease,border-color .15s ease,color .15s ease, box-shadow .15s ease}
#fit-checks .btn.primary{background:var(--xc15f-primary);border-color:var(--xc15f-primary);color:var(--xc15f-surface);box-shadow:0 10px 25px rgba(17,18,19,.08)}
#fit-checks .btn.ghost{background:transparent;border-color:var(--xc15f-border)}
#fit-checks .btn:hover{box-shadow:0 14px 30px rgba(17,18,19,.10)}
#fit-checks .btn.primary:hover{background:var(--xc15f-primary)}
#fit-checks .btn.ghost:hover{border-color:var(--xc15f-accent);color:var(--xc15f-ink)}
#fit-checks .btn:focus-visible{outline:3px solid color-mix(in oklab, var(--xc15f-accent) 70%, white 30%);outline-offset:2px}
#fit-checks ::selection{background:color-mix(in oklab, var(--xc15f-accent) 35%, white 65%)}
@media (min-width:640px){
  #fit-checks .checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem}
  #fit-checks .check-card:nth-child(3){grid-column:1 / -1}
}
@media (prefers-reduced-motion: reduce){
  #fit-checks .btn{transition:none}
}

/* xc15f:offer-breakdown */
/* xc15f:offer-breakdown */
#offer-breakdown.offer-breakdown{background:var(--xc15f-bg);color:var(--xc15f-text);padding:var(--section-pad,clamp(2.5rem,6vw,6rem)) var(--section-side,clamp(1rem,3vw,2.5rem));}
#offer-breakdown .container{max-width:72rem;margin:0 auto;}
#offer-breakdown .section-head{max-width:62ch;}
#offer-breakdown .section-title{font-family:var(--font-serif, Georgia, Cambria, 'Times New Roman', serif);font-weight:700;font-size:clamp(1.8rem,3.3vw,2.6rem);letter-spacing:-0.02em;margin:0;line-height:1.15;text-wrap:balance;}
#offer-breakdown .section-divider{height:1px;background:var(--xc15f-accent);width:clamp(120px,18vw,180px);margin:0.75rem 0 1rem;}
#offer-breakdown .lead{font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:1rem;line-height:1.6;margin:0;max-width:62ch;color:var(--xc15f-text);}
#offer-breakdown .offer-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1.25rem;margin-top:1.75rem;}
#offer-breakdown .feature-card{grid-column:span 4; background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:var(--xc15f-radius,0px);padding:1.05rem 1.05rem 1.1rem;}
#offer-breakdown .feature-top{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.65rem;}
#offer-breakdown .badge{display:inline-flex;align-items:center;justify-content:center;padding:0.35rem 0.6rem;border:1px solid var(--xc15f-accent);color:var(--xc15f-accent);background:transparent;font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:0.875rem;line-height:1;white-space:nowrap;}
#offer-breakdown .feature-title{font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-weight:700;font-size:1.05rem;margin:0 0 0.45rem;letter-spacing:-0.01em;}
#offer-breakdown .feature-text{font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);margin:0;line-height:1.65;color:var(--xc15f-slate);max-width:44ch;}
#offer-breakdown .pricing-cta{margin-top:1.75rem;max-width:72rem;}
#offer-breakdown .pricing-strip{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem;padding:1.15rem;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);}
#offer-breakdown .pricing-kicker{margin:0 0 0.25rem;font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:0.875rem;letter-spacing:0.02em;text-transform:none;color:var(--xc15f-accent);}
#offer-breakdown .pricing-text{margin:0;font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:1rem;line-height:1.6;color:var(--xc15f-text);max-width:46ch;}
#offer-breakdown .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0.75rem 1rem;border-radius:var(--xc15f-radius,0px);font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-weight:700;text-decoration:none;letter-spacing:-0.01em;}
#offer-breakdown .btn-primary{background:var(--xc15f-secondary);color:#fff;border:1px solid var(--xc15f-secondary);}
#offer-breakdown .btn-primary:focus-visible{outline:3px solid color-mix(in srgb, var(--xc15f-secondary) 55%, #000 0%);outline-offset:2px;}
#offer-breakdown .btn-primary:hover{filter:saturate(1.05);}
#offer-breakdown .fineprint{margin:0.7rem 0 0;color:var(--xc15f-slate);font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:0.875rem;line-height:1.5;}
#offer-breakdown ::selection{background:color-mix(in srgb, var(--xc15f-accent) 22%, #fff 0%);}
@media (max-width:1024px){
  #offer-breakdown .feature-card{grid-column:span 6;}
}
@media (max-width:640px){
  #offer-breakdown {padding:clamp(2rem,6vw,3.2rem) clamp(1rem,4vw,1.25rem);} 
  #offer-breakdown .offer-grid{gap:1rem;}
  #offer-breakdown .feature-card{grid-column:span 12;}
  #offer-breakdown .pricing-strip{flex-direction:column;align-items:stretch;}
  #offer-breakdown .btn{width:100%;}
}
@media (prefers-reduced-motion:reduce){
  #offer-breakdown *{scroll-behavior:auto;}
}

/* xc15f:evidence-process-tiles */
/* xc15f:evidence-process-tiles */
#evidence-process-tiles{padding:clamp(2.5rem,6vw,6rem) 0;background:var(--xc15f-surface);color:var(--xc15f-ink);}
#evidence-process-tiles .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#evidence-process-tiles .section-title{font-family:var(--font-serif, Georgia, Cambria, 'Times New Roman', serif);font-size:clamp(1.6rem,3.2vw,2.3rem);line-height:1.12;margin:0 0 0.9rem;letter-spacing:-0.02em;text-wrap:balance;}
#evidence-process-tiles .section-lead{max-width:62ch;margin:0 0 1.9rem;font-size:1rem;line-height:1.65;color:var(--xc15f-text);}
#evidence-process-tiles .tiles{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;align-items:stretch;}
#evidence-process-tiles .tile{grid-column:span 4;position:relative;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);padding:1.15rem 1.1rem 1.2rem;border-radius:var(--radius-lg);}
#evidence-process-tiles .tile::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--xc15f-border);}
#evidence-process-tiles .tile-head{display:flex;gap:0.75rem;align-items:baseline;margin-bottom:0.65rem;}
#evidence-process-tiles .tile-index{font-variant-numeric:tabular-nums;font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-weight:700;font-size:0.95rem;color:var(--xc15f-secondary);min-width:2.2rem;}
#evidence-process-tiles .tile-title{margin:0;font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:1.05rem;line-height:1.25;letter-spacing:-0.01em;}
#evidence-process-tiles .tile-body{margin:0;max-width:44ch;font-size:1rem;line-height:1.65;color:var(--xc15f-text);}
#evidence-process-tiles .highlight{grid-column:span 4;border-color:color-mix(in srgb, var(--xc15f-secondary) 35%, var(--xc15f-border));}
#evidence-process-tiles .highlight::after{background:var(--xc15f-secondary);}
#evidence-process-tiles .cta-bar{margin-top:1.9rem;display:flex;gap:1.25rem;align-items:center;justify-content:space-between;border-top:1px solid var(--xc15f-border);padding-top:1.6rem;}
#evidence-process-tiles .cta-copy{max-width:62ch;}
#evidence-process-tiles .cta-eyebrow{margin:0 0 0.35rem;font-weight:700;color:var(--xc15f-secondary);font-size:0.95rem;}
#evidence-process-tiles .cta-text{margin:0;font-size:1.02rem;line-height:1.6;color:var(--xc15f-text);}
#evidence-process-tiles .cta-actions{display:flex;gap:0.75rem;flex-wrap:wrap;justify-content:flex-end;}
#evidence-process-tiles .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0.85rem 1rem;border-radius:var(--radius-md);font-family:var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:1rem;line-height:1;border:2px solid transparent;text-decoration:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;}
#evidence-process-tiles .btn.primary{background:var(--xc15f-secondary);border-color:var(--xc15f-secondary);color:var(--xc15f-surface);}
#evidence-process-tiles .btn.primary:hover{background:color-mix(in srgb, var(--xc15f-secondary) 88%, #000 12%);} 
#evidence-process-tiles .btn.ghost{background:var(--xc15f-surface);border-color:var(--xc15f-border);color:var(--xc15f-ink);}
#evidence-process-tiles .btn.ghost:hover{border-color:color-mix(in srgb, var(--xc15f-secondary) 35%, var(--xc15f-border));box-shadow:0 0 0 3px color-mix(in srgb, var(--xc15f-secondary) 18%, transparent);} 
#evidence-process-tiles .btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb, var(--xc15f-secondary) 30%, transparent);} 
#evidence-process-tiles .fineprint{margin:1.05rem 0 0;max-width:80ch;font-size:0.9rem;line-height:1.6;color:var(--xc15f-slate);} 
#evidence-process-tiles ::selection{background:color-mix(in srgb, var(--xc15f-secondary) 25%, var(--xc15f-surface));}
@media (max-width:1024px){#evidence-process-tiles .tile{grid-column:span 6;}#evidence-process-tiles .highlight{grid-column:span 6;}}
@media (max-width:640px){#evidence-process-tiles .tiles{gap:0.9rem;}#evidence-process-tiles .tile{grid-column:span 12;}#evidence-process-tiles .highlight{grid-column:span 12;}#evidence-process-tiles .cta-bar{flex-direction:column;align-items:flex-start;}#evidence-process-tiles .cta-actions{width:100%;justify-content:flex-start;}}
@media (prefers-reduced-motion:reduce){#evidence-process-tiles .btn{transition:none;}}
/* xc15f:testimonials */
/* xc15f:testimonials */
#testimonials{background:var(--xc15f-surface);color:var(--xc15f-ink);padding:var(--t-section-pad,clamp(2.5rem,6vw,5rem)) 0;}
#testimonials .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#testimonials .section-heading{max-width:62ch;margin:0 0 clamp(1.5rem,3vw,2.25rem) 0;}
#testimonials .section-title{font-family:var(--font-serif,Georgia,serif);font-size:clamp(1.6rem,2.8vw,2.2rem);letter-spacing:-0.02em;margin:0;}
#testimonials .divider{height:2px;width:5.25rem;background:var(--xc15f-accent);margin:0.75rem 0 0.9rem 0;}
#testimonials .section-lead{font-family:var(--font-sans,Georgia,Cambria,'Times New Roman',serif);font-size:1rem;line-height:1.7;color:var(--xc15f-text);margin:0;max-width:62ch;}
#testimonials .testimonials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch;margin-bottom:clamp(1.25rem,3vw,2rem);}
#testimonials .testimonial-card{background:var(--xc15f-bg);border:1px solid var(--xc15f-border);border-radius:var(--radius-lg,0px);padding:18px 18px 16px 18px;min-height:180px;display:flex;flex-direction:column;justify-content:space-between;}
#testimonials .quote{font-family:var(--font-sans,Georgia,Cambria,'Times New Roman',serif);font-size:1rem;line-height:1.65;margin:0 0 14px 0;}
#testimonials .testimonial-meta{display:flex;flex-direction:column;gap:10px;}
#testimonials .person{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;}
#testimonials .person-name{font-weight:700;letter-spacing:-0.01em;}
#testimonials .person-role{color:var(--xc15f-slate);font-size:0.92rem;}
#testimonials .goal-tag{display:inline-flex;align-items:center;gap:8px;background:var(--xc15f-surface);border:1px solid var(--xc15f-border);padding:8px 10px;border-radius:var(--radius-md,2px);font-size:0.875rem;color:var(--xc15f-text);width:fit-content;}
#testimonials .disclaimer{max-width:62ch;border-top:1px solid var(--xc15f-border);padding-top:14px;}
#testimonials .disclaimer-text{margin:0;color:var(--xc15f-slate);font-size:0.95rem;line-height:1.6;}
#testimonials .cta-bar{margin-top:18px;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:16px 16px;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);border-radius:var(--radius-lg,0px);}
#testimonials .cta-head{margin:0;font-family:var(--font-serif,Georgia,serif);font-size:1.25rem;letter-spacing:-0.02em;}
#testimonials .cta-sub{margin:6px 0 0 0;color:var(--xc15f-slate);font-size:0.95rem;line-height:1.6;max-width:50ch;}
#testimonials .button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 16px;border-radius:var(--radius-md,2px);text-decoration:none;font-family:var(--font-sans,Georgia,Cambria,'Times New Roman',serif);font-weight:700;letter-spacing:-0.01em;border:1px solid transparent;transition:background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;}
#testimonials .button-primary{background:var(--xc15f-secondary);color:var(--xc15f-surface);border-color:var(--xc15f-secondary);}
#testimonials .button-primary:hover{background:color-mix(in srgb, var(--xc15f-secondary) 88%, black 12%);}
#testimonials .button-primary:active{transform:translateY(1px);}
#testimonials .button-primary:focus-visible{outline:3px solid var(--xc15f-accent);outline-offset:2px;}
#testimonials *::selection{background:color-mix(in srgb, var(--xc15f-secondary) 22%, white 78%);}
@media (max-width:1024px){#testimonials .testimonials-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){#testimonials .testimonials-grid{grid-template-columns:1fr;gap:12px;}#testimonials .cta-bar{flex-direction:column;align-items:flex-start;}#testimonials .cta-sub{max-width:60ch;}}
@media (prefers-reduced-motion:reduce){#testimonials .button{transition:none;}}

/* xc15f:contacts */
/* xc15f:contacts */
#contacts{background:var(--xc15f-bg);color:var(--xc15f-text);padding:clamp(2.5rem,6vw,6rem) 0;}
#contacts .contacts-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#contacts .contacts-header{margin-bottom:clamp(1.5rem,3vw,2.5rem);}
#contacts .contacts-title{font-family:var(--serif, Georgia, Cambria, 'Times New Roman', serif);font-weight:700;letter-spacing:-0.01em;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.15;margin:0;}
#contacts .contacts-divider{height:1px;background:var(--xc15f-secondary);width:4.75rem;margin-top:0.75rem;}
#contacts .contacts-lead{max-width:62ch;font-family:Georgia, Cambria, 'Times New Roman', serif;font-size:1.02rem;line-height:1.6;margin:1rem 0 0;}
#contacts .contacts-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:clamp(1.25rem,3vw,2.25rem);align-items:start;}
#contacts .contacts-form-wrap{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:0px;box-shadow:0 10px 30px rgba(17,18,19,.06);padding:clamp(1.25rem,3vw,1.8rem);}
#contacts .form-title{margin:0 0 0.75rem;font-size:1.25rem;letter-spacing:-0.01em;}
#contacts .lead-form{margin-top:0.5rem;}
#contacts .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
#contacts .form-row + .form-row{margin-top:1rem;}
#contacts .field{display:flex;flex-direction:column;gap:0.5rem;min-width:0;}
#contacts .field-full{grid-column:1 / -1;}
#contacts .label-text{font-size:0.9rem;color:var(--xc15f-slate);font-family:Georgia, Cambria, 'Times New Roman', serif;}
#contacts input,#contacts select{width:100%;padding:0.75rem 0.85rem;border:1px solid var(--xc15f-border);border-radius:0px;background:var(--xc15f-surface);color:var(--xc15f-ink);font-family:Georgia, Cambria, 'Times New Roman', serif;font-size:1rem;line-height:1.3;}
#contacts input::placeholder{color:#6b7280;}
#contacts input:focus-visible,#contacts select:focus-visible{outline:2px solid var(--xc15f-secondary);outline-offset:2px;border-color:var(--xc15f-secondary);}
#contacts .form-microcopy{margin:1rem 0 0;font-size:0.9rem;color:var(--xc15f-slate);line-height:1.5;max-width:62ch;}
#contacts .form-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:1.25rem;}
#contacts .primary-btn{appearance:none;border:1px solid var(--xc15f-secondary);background:var(--xc15f-secondary);color:var(--xc15f-surface);padding:0.85rem 1.1rem;border-radius:0px;cursor:pointer;font-family:Georgia, Cambria, 'Times New Roman', serif;font-size:1rem;font-weight:700;letter-spacing:-0.01em;min-height:44px;}
#contacts .primary-btn:hover{filter:saturate(1.05) brightness(1.02);}
#contacts .primary-btn:active{transform:translateY(1px);}
#contacts .primary-btn:focus-visible{outline:2px solid var(--xc15f-secondary);outline-offset:3px;}
#contacts .ghost-link{color:var(--xc15f-ink);text-decoration:none;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);padding:0.85rem 1.1rem;border-radius:0px;min-height:44px;display:inline-flex;align-items:center;font-family:Georgia, Cambria, 'Times New Roman', serif;font-size:1rem;font-weight:600;}
#contacts .ghost-link:hover{border-color:var(--xc15f-secondary);}
#contacts .ghost-link:focus-visible{outline:2px solid var(--xc15f-secondary);outline-offset:3px;}
#contacts .contacts-aside{display:flex;flex-direction:column;gap:1rem;}
#contacts .aside-card{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:0px;padding:1.1rem 1.1rem;box-shadow:0 10px 30px rgba(17,18,19,.05);}
#contacts .aside-title{margin:0 0 0.35rem;font-size:1.15rem;letter-spacing:-0.01em;}
#contacts .aside-lead{margin:0 0 0.9rem;max-width:44ch;line-height:1.6;color:var(--xc15f-slate);font-family:Georgia, Cambria, 'Times New Roman', serif;}
#contacts .city-list{margin:0; padding:0; list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:0.55rem 1rem;}
#contacts .city-item{font-family:Georgia, Cambria, 'Times New Roman', serif; color:var(--xc15f-ink); padding:0.45rem 0.55rem; border:1px solid var(--xc15f-border);}
#contacts .aside-contact .inline-link{color:var(--xc15f-ink);text-decoration:none;border-bottom:1px solid var(--xc15f-border);}
#contacts .aside-contact .inline-link:hover{border-bottom-color:var(--xc15f-secondary);}
#contacts .contact-dl{margin:0;}
#contacts .dl-row{display:flex;justify-content:space-between;gap:1rem;padding:0.55rem 0;border-bottom:1px solid var(--xc15f-border);}
#contacts .dl-row:last-child{border-bottom:none;}
#contacts .dl-term{color:var(--xc15f-slate);font-size:0.9rem;}
#contacts .dl-value{margin:0;text-align:right;}
#contacts .aside-note{margin:0.9rem 0 0;color:var(--xc15f-slate);line-height:1.5;font-family:Georgia, Cambria, 'Times New Roman', serif;}
#contacts ::selection{background:rgba(198,59,45,.18);}
@media (max-width: 900px){
  #contacts .contacts-grid{grid-template-columns:1fr;}
  #contacts .form-row{grid-template-columns:1fr;}
  #contacts .city-list{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion: reduce){
  #contacts .primary-btn:active{transform:none;}
}

/* xc15f:approach-lead */
/* xc15f:approach-lead */
#approach-lead{background:var(--xc15f-bg);color:var(--xc15f-ink);padding:clamp(2.5rem,6vw,4.5rem) 0;}
#approach-lead .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#approach-lead .section-header{max-width:62ch;}
#approach-lead .eyebrow{display:inline-block;font-family:var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:0.875rem;letter-spacing:0.02em;text-transform:uppercase;color:var(--xc15f-secondary);margin-bottom:0.9rem;}
#approach-lead .section-title{font-family:var(--xc15f-serif, 'Hoefler Text', Baskerville Old Face, Garamond, Georgia, serif);font-weight:700;font-size:clamp(1.5rem,3vw,2.4rem);letter-spacing:-0.02em;line-height:1.12;margin:0 0 1rem 0;text-wrap:balance;}
#approach-lead .lead{margin:0;max-width:62ch;font-size:1.02rem;line-height:1.7;color:var(--xc15f-text);}
#approach-lead .process{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-top:clamp(1.8rem,4vw,2.4rem);}
#approach-lead .steps{list-style:none;margin:0;padding:0;display:grid;gap:0.9rem;}
#approach-lead .step{display:flex;gap:1rem;align-items:flex-start;padding:1rem 1rem;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);}
#approach-lead .step-index{font-variant-numeric:tabular-nums;font-family:var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:1rem;min-width:3.2rem;height:2.1rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--xc15f-border);color:var(--xc15f-secondary);background:var(--xc15f-bg);}
#approach-lead .step-title{margin:0;font-family:var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:1.05rem;line-height:1.3;font-weight:700;}
#approach-lead .step-text{margin:0.35rem 0 0 0;font-size:0.98rem;line-height:1.65;color:var(--xc15f-text);max-width:60ch;}
#approach-lead .quick-cta{align-self:start;}
#approach-lead .quick-card{border:1px solid var(--xc15f-border);background:var(--xc15f-surface);padding:1.25rem;}
#approach-lead .quick-badge{display:inline-block;background:var(--xc15f-bg);border:1px solid var(--xc15f-border);color:var(--xc15f-secondary);padding:0.35rem 0.6rem;font-family:var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);font-size:0.875rem;margin-bottom:0.8rem;}
#approach-lead .quick-text{margin:0 0 1rem 0;font-size:0.98rem;line-height:1.65;color:var(--xc15f-text);}
#approach-lead .cta-actions{display:flex;flex-direction:column;gap:0.75rem;}
#approach-lead .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0.75rem 1rem;border-radius:var(--xc15f-radius-md, 0px);text-decoration:none;font-family:var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);font-weight:700;letter-spacing:0.01em;}
#approach-lead .btn-primary{background:var(--xc15f-primary);color:var(--xc15f-surface);border:1px solid var(--xc15f-primary);position:relative;overflow:hidden;}
#approach-lead .btn-primary::after{content:"";position:absolute;left:-20%;top:0;bottom:0;width:0;background:var(--xc15f-secondary);transition:width 200ms ease;z-index:0;}
#approach-lead .btn-primary span,#approach-lead .btn-primary{z-index:1;}
#approach-lead .btn-primary:hover::after{width:140%;}
#approach-lead .btn-primary:focus-visible{outline:3px solid var(--xc15f-secondary);outline-offset:3px;}
#approach-lead .btn-ghost{background:var(--xc15f-surface);color:var(--xc15f-ink);border:1px solid var(--xc15f-border);}
#approach-lead .btn-ghost:hover{border-color:var(--xc15f-secondary);color:var(--xc15f-secondary);}
#approach-lead .btn-ghost:focus-visible{outline:3px solid var(--xc15f-secondary);outline-offset:3px;}
#approach-lead .btn:active{transform:translateY(0.5px);}
#approach-lead ::selection{background:rgba(198,59,45,0.22);}
@media (min-width: 768px){
  #approach-lead .process{grid-template-columns:1fr 0.58fr;gap:1.5rem;align-items:start;}
  #approach-lead .cta-actions{flex-direction:column;}
}
@media (prefers-reduced-motion: reduce){
  #approach-lead .btn-primary::after{transition:none;}
}

/* xc15f:session-flow */
/* xc15f:session-flow */
#session-flow{padding:var(--section-pad, clamp(2.5rem,6vw,4.5rem)) 0;background:var(--xc15f-bg);} 
#session-flow .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);} 
#session-flow .section-head{max-width:62ch;margin:0 0 clamp(1.25rem,2.5vw,2.2rem);} 
#session-flow .section-title{font-family:var(--font-serif, "Hoefler Text", "Baskerville Old Face", Garamond, Georgia, serif);font-size:clamp(1.6rem,3vw,2.2rem);letter-spacing:-0.02em;margin:0;color:var(--xc15f-ink);text-wrap:balance;} 
#session-flow .accent-rule{height:2px;background:var(--xc15f-accent);width:110px;margin:0.65rem 0 1rem;} 
#session-flow .lead{font-family:Georgia, Cambria, 'Times New Roman', serif; /* humanist feel fallback */font-size:1rem;line-height:1.6;margin:0;color:var(--xc15f-text);max-width:62ch;} 
#session-flow .flow{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;align-items:start;} 
#session-flow .flow-col{grid-column:span 6;} 
#session-flow .step{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:0;box-shadow:0 10px 25px rgba(17,18,19,0.04);} 
#session-flow .step-num{font-variant-numeric:tabular-nums;font-family:Georgia, Cambria, 'Times New Roman', serif;font-weight:700;color:var(--xc15f-accent);font-size:1.05rem;padding:18px 18px 0;} 
#session-flow .step-title{font-size:1.12rem;letter-spacing:-0.01em;margin:0;padding:10px 18px 0;color:var(--xc15f-ink);} 
#session-flow .bullets{margin:10px 0 0;padding:0 18px 18px 18px;list-style:none;} 
#session-flow .bullets li{position:relative;padding-left:18px;margin:10px 0;line-height:1.5;color:var(--xc15f-slate);} 
#session-flow .bullets li::before{content:"";position:absolute;left:0;top:0.62em;width:8px;height:2px;background:var(--xc15f-accent);} 
#session-flow .cta-strip{margin-top:22px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:18px 18px;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);} 
#session-flow .cta-copy{max-width:48ch;} 
#session-flow .cta-head{margin:0 0 6px;font-weight:700;color:var(--xc15f-ink);} 
#session-flow .cta-sub{margin:0;color:var(--xc15f-slate);line-height:1.5;} 
#session-flow .cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;} 
#session-flow .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border-radius:0;text-decoration:none;white-space:nowrap;font-family:Georgia, Cambria, 'Times New Roman', serif;font-weight:700;letter-spacing:-0.01em;transition:background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;} 
#session-flow .btn:focus-visible{outline:3px solid var(--xc15f-accent);outline-offset:2px;} 
#session-flow .btn-primary{background:var(--xc15f-primary);color:var(--xc15f-surface);border:1px solid var(--xc15f-primary);position:relative;overflow:hidden;} 
#session-flow .btn-primary::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--xc15f-accent);transition:width 180ms ease;} 
#session-flow .btn-primary:hover::after{width:100%;} 
#session-flow .btn-ghost{background:var(--xc15f-surface);color:var(--xc15f-ink);border:1px solid var(--xc15f-border);} 
#session-flow .btn-ghost:hover{border-color:var(--xc15f-accent);} 
#session-flow .btn:active{transform:translateY(1px);} 
#session-flow ::selection{background:rgba(198,59,45,0.18);} 
@media (max-width: 768px){
  #session-flow .flow-col{grid-column:span 12;}
  #session-flow .cta-strip{flex-direction:column;align-items:flex-start;}
  #session-flow .cta-actions{justify-content:flex-start;}
}
@media (prefers-reduced-motion: reduce){
  #session-flow .btn{transition:none;}
  #session-flow .btn-primary::after{transition:none;}
}

/* xc15f:progress-without-guarantees */
/* xc15f:progress-without-guarantees */
#progress-without-guarantees.section-progress{
  background: var(--xc15f-bg);
  color: var(--xc15f-text);
  padding: clamp(2.25rem, 4.5vw, 4.25rem) 0;
}
#progress-without-guarantees .container{
  width: min(72rem, calc(100% - clamp(1rem, 4vw, 3rem)*2));
  margin: 0 auto;
}
#progress-without-guarantees .section-header{
  display: flex;
  flex-direction: column;
  gap: .9rem;
  margin-bottom: 1.35rem;
}
#progress-without-guarantees .section-title{
  font-family: var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);
  font-weight: 700;
  letter-spacing: -0.02em;
  font-size: clamp(1.65rem, 2.8vw, 2.35rem);
  line-height: 1.15;
  margin: 0;
  text-wrap: balance;
}
#progress-without-guarantees .accent-divider{
  height: 2px;
  width: 6.25rem;
  background: var(--xc15f-accent);
}
#progress-without-guarantees .section-lead{
  margin: 0 0 1.85rem;
  max-width: 62ch;
  font-family: var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);
  font-size: 1.05rem;
  line-height: 1.65;
  color: var(--xc15f-text);
}
#progress-without-guarantees .milestones{
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1rem;
  margin-bottom: 1.75rem;
}
#progress-without-guarantees .milestone-card{
  grid-column: span 4;
  background: var(--xc15f-surface);
  border: 1px solid var(--xc15f-border);
  padding: 1.15rem 1.15rem 1.1rem;
  border-radius: var(--xc15f-radius-lg, 0px);
}
#progress-without-guarantees .milestone-top{
  display: flex;
  align-items: center;
  gap: .85rem;
  margin-bottom: .6rem;
}
#progress-without-guarantees .milestone-index{
  font-family: var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);
  font-weight: 800;
  color: var(--xc15f-accent);
  letter-spacing: .02em;
}
#progress-without-guarantees .milestone-title{
  margin: 0;
  font-size: 1.15rem;
  font-weight: 700;
  font-family: var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);
}
#progress-without-guarantees .milestone-body{
  margin: 0;
  max-width: 44ch;
  font-size: 1rem;
  line-height: 1.65;
  color: var(--xc15f-text);
}
#progress-without-guarantees .practice{
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1rem;
  align-items: start;
}
#progress-without-guarantees .practice-box{
  grid-column: span 7;
  background: var(--xc15f-surface);
  border: 1px solid var(--xc15f-border);
  padding: 1.25rem;
}
#progress-without-guarantees .practice-title{
  margin: 0 0 .75rem;
  font-size: 1.15rem;
  font-weight: 700;
  font-family: var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);
}
#progress-without-guarantees .practice-list{
  margin: 0;
  padding: 0;
  list-style: none;
}
#progress-without-guarantees .practice-item{
  display: flex;
  gap: .7rem;
  padding: .55rem 0;
  border-top: 1px solid var(--xc15f-border);
  font-size: 1rem;
  line-height: 1.6;
  font-family: var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);
}
#progress-without-guarantees .practice-item:first-child{ border-top: 0; }
#progress-without-guarantees .bullet{ color: var(--xc15f-accent); font-weight: 800; }
#progress-without-guarantees .practice-cta{
  grid-column: span 5;
  background: var(--xc15f-surface);
  border: 1px solid var(--xc15f-border);
  padding: 1.25rem;
}
#progress-without-guarantees .practice-cta-copy{
  margin: 0 0 .9rem;
  font-family: var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);
  font-size: 1rem;
  line-height: 1.6;
}
#progress-without-guarantees .cta-row{ display: flex; flex-wrap: wrap; gap: .75rem; }
#progress-without-guarantees .btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 0 1rem;
  border-radius: var(--xc15f-radius-md, 2px);
  text-decoration: none;
  font-family: var(--xc15f-sans, Georgia, Cambria, 'Times New Roman', serif);
  font-weight: 700;
  border: 1px solid transparent;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}
#progress-without-guarantees .btn:focus-visible{ outline: 3px solid var(--xc15f-accent); outline-offset: 2px; }
#progress-without-guarantees .btn-primary{
  background: var(--xc15f-primary);
  color: var(--xc15f-surface);
  border-color: var(--xc15f-primary);
}
#progress-without-guarantees .btn-primary:hover{ background: var(--xc15f-primary); border-color: var(--xc15f-accent); }
#progress-without-guarantees .btn-outline{
  background: var(--xc15f-surface);
  color: var(--xc15f-primary);
  border-color: var(--xc15f-border);
}
#progress-without-guarantees .btn-outline:hover{ border-color: var(--xc15f-accent); }
#progress-without-guarantees::selection{ background: rgba(198,59,45,.22); }
@media (max-width: 1024px){
  #progress-without-guarantees .milestone-card{ grid-column: span 6; }
  #progress-without-guarantees .practice-box{ grid-column: span 12; }
  #progress-without-guarantees .practice-cta{ grid-column: span 12; }
}
@media (max-width: 640px){
  #progress-without-guarantees{ padding: 2.25rem 0; }
  #progress-without-guarantees .milestones{ gap: .85rem; }
  #progress-without-guarantees .milestone-card{ grid-column: span 12; }
  #progress-without-guarantees .section-lead{ margin-bottom: 1.4rem; }
  #progress-without-guarantees .practice-box, #progress-without-guarantees .practice-cta{ padding: 1.05rem; }
  #progress-without-guarantees .btn{ width: 100%; }
}
@media (prefers-reduced-motion: reduce){
  #progress-without-guarantees .btn{ transition: none; }
}

/* xc15f:faq-preview */
/* xc15f:faq-preview */
#faq-preview{padding:clamp(2.5rem,6vw,5rem) 0;background:var(--xc15f-bg);color:var(--xc15f-text);} 
#faq-preview .faq-container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);} 
#faq-preview .faq-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;} 
#faq-preview .faq-title{font-family:var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);font-size:clamp(1.6rem,3vw,2.2rem);letter-spacing:-0.01em;margin:0;color:var(--xc15f-ink);text-wrap:balance;} 
#faq-preview .faq-divider{height:2px;width:4.5rem;background:var(--xc15f-accent);} 
#faq-preview .faq-lead{margin:0;max-width:62ch;font-family:Georgia, Cambria, 'Times New Roman', serif;font-size:1rem;line-height:1.6;color:var(--xc15f-slate);} 
#faq-preview .faq-list{display:flex;flex-direction:column;gap:0.75rem;} 
#faq-preview .accordion-item{border:1px solid var(--xc15f-border);background:var(--xc15f-surface);border-radius:2px;overflow:hidden;} 
#faq-preview .accordion-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1rem;cursor:pointer;background:transparent;border:0;text-align:left;font-family:Georgia, Cambria, 'Times New Roman', serif;color:var(--xc15f-ink);} 
#faq-preview .accordion-question{font-size:1rem;line-height:1.35;color:var(--xc15f-ink);font-weight:700;} 
#faq-preview .accordion-icon{flex:0 0 auto;width:2rem;height:2rem;border-radius:50%;border:1px solid var(--xc15f-border);display:flex;align-items:center;justify-content:center;color:var(--xc15f-ink);font-size:1.2rem;line-height:1;} 
#faq-preview .accordion-trigger:focus-visible{outline:3px solid var(--xc15f-accent);outline-offset:-3px;} 
#faq-preview .accordion-panel{transition:max-height 220ms ease-out, opacity 220ms ease-out;} 
#faq-preview .accordion-panel-inner{padding:0.2rem 1rem 1rem;} 
#faq-preview .accordion-answer{margin:0;max-width:62ch;color:var(--xc15f-slate);line-height:1.65;font-size:1rem;font-family:Georgia, Cambria, 'Times New Roman', serif;} 
#faq-preview .accordion-item[data-open="true"] .accordion-icon{border-color:var(--xc15f-accent);} 
#faq-preview .faq-cta{margin-top:1.5rem;display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap;} 
#faq-preview .faq-link{color:var(--xc15f-ink);text-decoration:none;border-bottom:1px solid transparent;line-height:1.4;font-family:Georgia, Cambria, 'Times New Roman', serif;} 
#faq-preview .faq-link:hover{border-bottom-color:var(--xc15f-accent);} 
#faq-preview .faq-link:focus-visible{outline:3px solid var(--xc15f-accent);outline-offset:3px;border-bottom-color:transparent;} 
#faq-preview .faq-dot{color:var(--xc15f-border);} 
#faq-preview::selection{background:var(--xc15f-accent);color:#fff;} 
@media (max-width:640px){#faq-preview .faq-cta{gap:0.5rem;} #faq-preview .accordion-trigger{padding:0.95rem 0.9rem;} #faq-preview .accordion-panel-inner{padding-left:0.9rem;padding-right:0.9rem;}}
@media (prefers-reduced-motion:reduce){#faq-preview .accordion-panel{transition:none;}}
/* xc15f:contacts */
/* xc15f:contacts */
#contacts.contacts-section{
  background: var(--xc15f-bg);
  color: var(--xc15f-text);
  padding: clamp(2.5rem, 5vw, 4.5rem) 0;
}
#contacts .contacts-shell{
  max-width: 72rem;
  margin: 0 auto;
  padding: 0 clamp(1rem, 4vw, 3rem);
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: clamp(1.25rem, 3vw, 2.5rem);
  align-items: start;
}
#contacts .contacts-h2{
  font-family: var(--font-serif, Georgia, Cambria, 'Times New Roman', serif);
  font-size: clamp(1.6rem, 2.5vw, 2.25rem);
  line-height: 1.12;
  letter-spacing: -0.02em;
  margin: 0 0 0.75rem;
}
#contacts .contacts-divider{
  width: 3.25rem;
  height: 2px;
  background: var(--xc15f-accent);
  margin: 0 0 1.1rem;
}
#contacts .contacts-lead{
  font-family: var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);
  font-size: 1rem;
  line-height: 1.65;
  max-width: 62ch;
  margin: 0 0 0.9rem;
}
#contacts .contacts-reassure{
  margin: 0;
  color: var(--xc15f-slate);
  font-size: 0.95rem;
  line-height: 1.6;
}
#contacts .contacts-right{
  background: var(--xc15f-surface);
  border: 1px solid var(--xc15f-border);
  border-radius: var(--radius-lg, 0px);
  padding: clamp(1rem, 2.2vw, 1.4rem);
  box-shadow: 0 10px 24px rgba(17,18,19,0.06);
}
#contacts .trial-form{
  display: block;
}
#contacts .field-row{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.9rem;
  margin-bottom: 0.9rem;
}
#contacts .field{
  display: grid;
  gap: 0.45rem;
}
#contacts .label-text{
  font-family: var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);
  font-size: 0.9rem;
  color: var(--xc15f-text);
}
#contacts input,
#contacts select{
  width: 100%;
  border: 1px solid var(--xc15f-border);
  border-radius: var(--radius-md, 2px);
  background: var(--xc15f-surface);
  color: var(--xc15f-text);
  padding: 0.72rem 0.75rem;
  font-family: var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);
  font-size: 1rem;
  line-height: 1.3;
  outline: none;
}
#contacts input::placeholder{
  color: #7a7f88;
}
#contacts input:focus-visible,
#contacts select:focus-visible{
  border-color: var(--xc15f-accent);
  box-shadow: 0 0 0 3px rgba(198,59,45,0.18);
}
#contacts .form-cta{
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  margin-top: 1rem;
  margin-bottom: 0.85rem;
}
#contacts .primary-btn{
  appearance: none;
  border: 1px solid var(--xc15f-primary);
  background: var(--xc15f-primary);
  color: var(--xc15f-surface);
  border-radius: 0px;
  padding: 0.8rem 1rem;
  font-family: var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  min-height: 44px;
  position: relative;
  overflow: hidden;
  text-align: center;
}
#contacts .primary-btn::after{
  content: "";
  position: absolute;
  left: -20%;
  top: 0;
  width: 60%;
  height: 100%;
  background: rgba(198,59,45,0.35);
  transform: skewX(-18deg) translateX(-120%);
  transition: transform 260ms ease-out;
}
#contacts .primary-btn:hover::after{ transform: skewX(-18deg) translateX(230%); }
#contacts .primary-btn:active{ transform: translateY(1px); }
#contacts .primary-btn:focus-visible{
  box-shadow: 0 0 0 3px rgba(198,59,45,0.22);
}
#contacts .secondary-link{
  color: var(--xc15f-text);
  text-decoration: underline;
  text-decoration-color: rgba(198,59,45,0.7);
  text-underline-offset: 3px;
  font-family: var(--font-sans, Georgia, Cambria, 'Times New Roman', serif);
  font-size: 0.98rem;
  font-weight: 600;
}
#contacts .secondary-link:focus-visible{
  outline: 2px solid rgba(198,59,45,0.45);
  outline-offset: 3px;
}
#contacts .form-footnote{
  margin: 0;
  color: var(--xc15f-slate);
  font-size: 0.9rem;
  line-height: 1.6;
}
#contacts ::selection{ background: rgba(198,59,45,0.25); }
@media (max-width: 860px){
  #contacts .contacts-shell{ grid-template-columns: 1fr; }
  #contacts .field-row{ grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce){
  #contacts .primary-btn::after{ transition: none; }
}

/* xc15f:pricing-anchor */
/* xc15f:pricing-anchor */
#pricing-anchor{padding:var(--section-pad,clamp(2.5rem,6vw,5.5rem)) 0;background:var(--xc15f-bg);color:var(--xc15f-text)}
#pricing-anchor .pricing-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
#pricing-anchor .pricing-header{max-width:62ch;margin-bottom:clamp(1.5rem,3.5vw,3rem)}
#pricing-anchor .pricing-kicker{font-family:Georgia,Cambria,'Times New Roman',serif;font-size:0.875rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--xc15f-secondary);margin-bottom:0.75rem}
#pricing-anchor .pricing-title{font-family:Georgia,Cambria,'Times New Roman',serif;font-size:clamp(1.6rem,2.6vw,2.2rem);letter-spacing:-0.01em;line-height:1.15;margin:0 0 0.75rem}
#pricing-anchor .pricing-lead{font-family:Georgia,Cambria,'Times New Roman',serif;font-size:1rem;line-height:1.65;margin:0;max-width:62ch;color:var(--xc15f-ink)}
#pricing-anchor .pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:stretch}
#pricing-anchor .price-card{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);padding:1.35rem 1.25rem;border-radius:0;position:relative;display:flex;flex-direction:column;min-height:100%}
#pricing-anchor .price-card.featured{border-color:var(--xc15f-secondary);box-shadow:0 10px 30px rgba(198,59,45,0.10)}
#pricing-anchor .ribbon{position:absolute;top:0;right:0;background:var(--xc15f-secondary);color:#fff;padding:0.55rem 0.8rem;font-size:0.875rem;font-family:Georgia,Cambria,'Times New Roman',serif;letter-spacing:0.01em}
#pricing-anchor .price-top{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:0.75rem}
#pricing-anchor .price-plan{margin:0;font-size:1.25rem;line-height:1.2;font-family:Georgia,Cambria,'Times New Roman',serif}
#pricing-anchor .price-badge{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.875rem;color:var(--xc15f-secondary);border:1px solid rgba(198,59,45,0.35);padding:0.35rem 0.6rem;width:max-content;font-family:Georgia,Cambria,'Times New Roman',serif}
#pricing-anchor .price-value{margin-top:0.2rem;font-family:Georgia,Cambria,'Times New Roman',serif;font-size:2.25rem;letter-spacing:-0.02em}
#pricing-anchor .price-amount{font-variant-numeric:tabular-nums;white-space:nowrap}
#pricing-anchor .price-meta{margin:0.25rem 0 1rem;color:var(--xc15f-slate);font-family:Georgia,Cambria,'Times New Roman',serif;font-size:0.95rem;line-height:1.45}
#pricing-anchor .price-includes{list-style:none;padding:0;margin:0 0 1.2rem;display:flex;flex-direction:column;gap:0.75rem}
#pricing-anchor .price-includes li{display:flex;gap:0.6rem;align-items:flex-start;line-height:1.45;font-family:Georgia,Cambria,'Times New Roman',serif;color:var(--xc15f-ink)}
#pricing-anchor .check{color:var(--xc15f-secondary);font-weight:700;flex:0 0 auto;line-height:1.1}
#pricing-anchor .price-cta-row{margin-top:auto;display:flex;gap:0.75rem;flex-wrap:wrap}
#pricing-anchor .button{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;min-height:44px;padding:0.75rem 1rem;border-radius:0;text-decoration:none;font-family:Georgia,Cambria,'Times New Roman',serif;font-size:0.98rem;line-height:1.2;cursor:pointer;white-space:nowrap;outline:none}
#pricing-anchor .button-primary{background:var(--xc15f-secondary);color:#fff;border:1px solid var(--xc15f-secondary);transition:background 160ms ease, border-color 160ms ease}
#pricing-anchor .button-primary:hover{background:#b7352a;border-color:#b7352a}
#pricing-anchor .button-primary:focus-visible{box-shadow:0 0 0 3px rgba(198,59,45,0.25)}
#pricing-anchor .button-ghost{background:var(--xc15f-surface);color:var(--xc15f-ink);border:1px solid var(--xc15f-border);transition:border-color 160ms ease, background 160ms ease}
#pricing-anchor .button-ghost:hover{border-color:var(--xc15f-secondary);background:rgba(198,59,45,0.03)}
#pricing-anchor .button-ghost:focus-visible{box-shadow:0 0 0 3px rgba(17,18,19,0.18)}
#pricing-anchor .pricing-disclaimer{margin-top:1.75rem;display:flex;gap:0.9rem;align-items:flex-start;padding-top:1.25rem;border-top:1px solid var(--xc15f-border)}
#pricing-anchor .pricing-disclaimer-mark{color:var(--xc15f-secondary);font-family:Georgia,Cambria,'Times New Roman',serif;font-size:1.5rem;line-height:1}
#pricing-anchor .pricing-disclaimer-text{margin:0;font-family:Georgia,Cambria,'Times New Roman',serif;line-height:1.65;max-width:62ch}
#pricing-anchor ::selection{background:rgba(198,59,45,0.22)}
@media (max-width:1024px){#pricing-anchor .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:768px){#pricing-anchor .pricing-grid{grid-template-columns:1fr}#pricing-anchor .price-cta-row{flex-direction:column;align-items:stretch}.button{width:100%}}
@media (prefers-reduced-motion:reduce){#pricing-anchor .button{transition:none}}

/* xc15f:what-included */
/* xc15f:what-included */
#what-included.what-included{background:var(--xc15f-bg);padding:clamp(2.5rem,6vw,5.5rem) 0;}
#what-included .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#what-included .section-title{font-family:var(--xc15f-serif, Georgia, Cambria, 'Times New Roman', serif);font-size:clamp(1.5rem,3vw,2.5rem);letter-spacing:-0.01em;margin:0 0 0.75rem 0;color:var(--xc15f-ink);text-wrap:balance;}
#what-included .section-title{position:relative;padding-bottom:0.9rem;}
#what-included .section-title::after{content:"";position:absolute;left:0;bottom:0;width:84px;height:2px;background:var(--xc15f-accent);}
#what-included .lead{margin:0 0 1.8rem 0;max-width:62ch;line-height:1.65;color:var(--xc15f-text);font-size:1rem;font-family:Georgia, Cambria, 'Times New Roman', serif;}
#what-included .deliverables{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;align-items:start;}
#what-included .deliverable{grid-column:span 4;display:flex;flex-direction:column;gap:0.55rem;padding:1rem 1.05rem;background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:2px;}
#what-included .deliverable-icon{width:34px;height:34px;border:2px solid var(--xc15f-accent);color:var(--xc15f-accent);border-radius:2px;display:flex;align-items:center;justify-content:center;font-family:Georgia, Cambria, 'Times New Roman', serif;font-weight:700;line-height:1;}
#what-included .deliverable-title{margin:0;font-size:1.05rem;color:var(--xc15f-ink);letter-spacing:-0.01em;}
#what-included .deliverable-body{margin:0;color:var(--xc15f-text);line-height:1.6;max-width:44ch;font-size:1rem;}
#what-included .coaching-note{grid-column:span 12;padding:1rem 1.05rem;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);border-radius:2px;}
#what-included .coaching-note-text{margin:0;color:var(--xc15f-slate);line-height:1.6;font-size:0.95rem;max-width:62ch;}
#what-included a{color:var(--xc15f-secondary);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;}
#what-included a:focus-visible{outline:3px solid var(--xc15f-accent);outline-offset:3px;}
::selection{background:rgba(198,59,45,.18);}
@media (max-width: 1024px){#what-included .deliverable{grid-column:span 6;}}
@media (max-width: 640px){#what-included .deliverables{gap:12px;}#what-included .deliverable{grid-column:span 12;}#what-included .lead{margin-bottom:1.25rem;}}
@media (prefers-reduced-motion: reduce){#what-included *{scroll-behavior:auto;}}
/* xc15f:schedule-policy */
/* xc15f:schedule-policy */
#schedule-policy.schedule-policy{background:var(--xc15f-bg);color:var(--xc15f-text);padding:clamp(2.5rem,6vw,5.5rem) 0;}
#schedule-policy.schedule-policy .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#schedule-policy.schedule-policy .section-head{max-width:62ch;margin-bottom:clamp(1.5rem,3vw,2.5rem);}
#schedule-policy.schedule-policy .h2{font-family:var(--ds-serif, 'Hoefler Text');font-weight:700;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;letter-spacing:-0.02em;margin:0;}
#schedule-policy.schedule-policy .accent-rule{height:2px;background:var(--xc15f-accent);width:5.5rem;margin:0.75rem 0 1.05rem;}
#schedule-policy.schedule-policy .lead{margin:0;font-size:1rem;line-height:1.7;color:var(--xc15f-text);max-width:62ch;}
#schedule-policy.schedule-policy .policy-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;align-items:start;}
#schedule-policy.schedule-policy .policy-card{grid-column:span 6;background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:var(--ds-radius-lg, 0px);padding:1.25rem 1.25rem;}
#schedule-policy.schedule-policy .policy-note{grid-column:span 12;background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:var(--ds-radius-lg, 0px);padding:1.25rem 1.25rem;}
#schedule-policy.schedule-policy .policy-cta{grid-column:span 12;background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:var(--ds-radius-lg, 0px);padding:1.5rem 1.25rem;}
#schedule-policy.schedule-policy .h3{margin:0 0 0.5rem 0;font-size:1.05rem;line-height:1.3;font-weight:700;letter-spacing:-0.01em;}
#schedule-policy.schedule-policy .p{margin:0;font-size:1rem;line-height:1.7;max-width:44ch;}
#schedule-policy.schedule-policy .small{margin:0.9rem 0 0 0;font-size:0.875rem;line-height:1.5;color:var(--xc15f-slate);max-width:62ch;}
#schedule-policy.schedule-policy .cta-row{display:flex;gap:0.75rem;flex-wrap:wrap;margin-top:0.9rem;}
#schedule-policy.schedule-policy .btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:0px;min-height:44px;padding:0.75rem 1rem;font-weight:700;letter-spacing:-0.01em;font-size:1rem;gap:0.5rem;}
#schedule-policy.schedule-policy .btn-primary{background:var(--xc15f-secondary);color:var(--xc15f-surface);border:1px solid var(--xc15f-secondary);}
#schedule-policy.schedule-policy .btn-primary:hover{filter:brightness(1.02);}
#schedule-policy.schedule-policy .btn-ghost{background:transparent;color:var(--xc15f-ink);border:1px solid var(--xc15f-border);}
#schedule-policy.schedule-policy .btn-ghost:hover{background:var(--xc15f-bg);}
#schedule-policy.schedule-policy a:focus-visible,.schedule-policy button:focus-visible{outline:3px solid var(--xc15f-accent);outline-offset:2px;}
#schedule-policy.schedule-policy ::selection{background:var(--xc15f-secondary);color:var(--xc15f-surface);}
@media (max-width: 768px){
  #schedule-policy.schedule-policy .policy-card{grid-column:span 12;}
}
@media (prefers-reduced-motion: reduce){
  #schedule-policy.schedule-policy *{scroll-behavior:auto;}
}

/* xc15f:contacts */
/* xc15f:contacts */
#contacts.section-contacts{--pad:clamp(1rem,3vw,2.5rem); background:var(--xc15f-bg); color:var(--xc15f-ink); padding:clamp(2.5rem,6vw,5rem) 0;}
#contacts .contacts-shell{max-width:72rem; margin:0 auto; padding:0 var(--pad);}
#contacts .contacts-header{max-width:62ch;}
#contacts .contacts-title{font-family:var(--font-serif, Georgia, serif); font-size:clamp(1.75rem,3vw,2.25rem); line-height:1.15; margin:0; letter-spacing:-0.02em;}
#contacts .contacts-divider{height:1px; width:6.25rem; background:var(--xc15f-secondary); margin:0.9rem 0 1.1rem 0;}
#contacts .contacts-lead{margin:0; font-size:1rem; line-height:1.65; color:var(--xc15f-text); max-width:62ch;}
#contacts .contacts-grid{display:grid; grid-template-columns:1fr; gap:1.25rem; margin-top:1.8rem;}
#contacts .form-panel{background:var(--xc15f-surface); border:1px solid var(--xc15f-border); padding:1.25rem;}
#contacts .booking-form{display:block;}
#contacts .form-row{display:flex; flex-direction:column; gap:0.5rem; margin-bottom:0.95rem;}
#contacts .field-label{font-size:0.875rem; color:var(--xc15f-slate);}
#contacts .field-input{font:inherit; font-family:Georgia, Cambria, 'Times New Roman', serif; background:var(--xc15f-bg); border:1px solid var(--xc15f-border); border-radius:0px; padding:0.85rem 0.9rem; color:var(--xc15f-ink); outline:none; min-height:44px;}
#contacts .field-input:focus{border-color:var(--xc15f-secondary); box-shadow:0 0 0 3px rgba(198,59,45,0.22); background:var(--xc15f-surface);}
#contacts .field-input::placeholder{color:#6b727c; opacity:1;}
#contacts .form-actions{display:flex; flex-direction:column; gap:0.75rem; margin-top:1rem;}
#contacts .primary-button{appearance:none; border:1px solid var(--xc15f-secondary); background:var(--xc15f-secondary); color:var(--xc15f-surface); border-radius:0px; padding:0.95rem 1rem; min-height:44px; font-weight:700; cursor:pointer; letter-spacing:0.01em;}
#contacts .primary-button:hover{background:#b9352b;}
#contacts .primary-button:active{transform:translateY(1px);}
#contacts .primary-button:focus-visible{outline:3px solid rgba(198,59,45,0.35); outline-offset:2px;}
#contacts .primary-button:disabled{opacity:0.65; cursor:not-allowed;}
#contacts .form-note{margin:0; color:var(--xc15f-slate); font-size:0.875rem; line-height:1.5;}
#contacts .trust-panel{display:flex; flex-direction:column; gap:1rem;}
#contacts .trust-card{background:var(--xc15f-surface); border:1px solid var(--xc15f-border); padding:1.1rem;}
#contacts .trust-card-secondary{background:var(--xc15f-bg);}
#contacts .trust-eyebrow{margin:0 0 0.75rem 0; font-size:0.875rem; color:var(--xc15f-slate); font-weight:700; letter-spacing:0.02em;}
#contacts .trust-list{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:0.6rem;}
#contacts .trust-item{display:flex; gap:0.75rem; align-items:flex-start;}
#contacts .trust-bullet{width:1.6rem; height:1.6rem; display:inline-flex; align-items:center; justify-content:center; background:rgba(198,59,45,0.12); border:1px solid rgba(198,59,45,0.35); color:var(--xc15f-secondary); font-weight:800; border-radius:0px; flex:0 0 auto; font-variant-numeric:tabular-nums;}
#contacts .trust-text{color:var(--xc15f-text); line-height:1.5;}
#contacts .trust-links{display:flex; flex-direction:column; gap:0.55rem;}
#contacts .link-button{display:inline-flex; align-items:center; justify-content:flex-start; text-decoration:none; border:1px solid var(--xc15f-border); background:var(--xc15f-surface); color:var(--xc15f-ink); padding:0.8rem 0.9rem; min-height:44px; font-weight:700;}
#contacts .link-button:hover{border-color:var(--xc15f-secondary);}
#contacts .link-button:focus-visible{outline:3px solid rgba(198,59,45,0.35); outline-offset:2px;}
#contacts .contact-lines{margin-top:0.2rem; padding:0.25rem 0.25rem 0.1rem 0.25rem;}
#contacts .contact-line{display:flex; flex-direction:column; gap:0.25rem; padding:0.7rem 0; border-top:1px solid var(--xc15f-border);}
#contacts .contact-line:first-child{border-top:none;}
#contacts .contact-label{color:var(--xc15f-slate); font-size:0.875rem;}
#contacts .contact-value{color:var(--xc15f-ink); text-decoration:none; font-weight:700;}
#contacts .contact-value:hover{text-decoration:underline; text-decoration-color:var(--xc15f-secondary); text-underline-offset:0.2rem;}
#contacts .contact-value:focus-visible{outline:3px solid rgba(198,59,45,0.35); outline-offset:2px;}
#contacts .contact-disclaimer{margin:0.75rem 0 0 0; color:var(--xc15f-slate); font-size:0.875rem; line-height:1.5; max-width:44ch;}
#contacts ::selection{background:rgba(198,59,45,0.18);}
@media (min-width: 768px){
  #contacts .contacts-grid{grid-template-columns:1.35fr 0.95fr; align-items:start; gap:1.35rem;}
  #contacts .form-panel{padding:1.35rem;}
}
@media (prefers-reduced-motion: reduce){
  #contacts .primary-button{transition:none;}
  #contacts .link-button{transition:none;}
}

/* Design-system based CSS (no external libraries) */
.policy-page{background:var(--xc15f-bg);color:var(--xc15f-text);font-family:var(--xc15f-font);line-height:1.45;}
.policy-container{max-width:920px;margin:0 auto;padding:24px 16px 48px;}
.policy-header{padding:18px 18px 10px;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);}
.policy-title{margin:0 0 10px;font-family:var(--xc15f-font-display);font-size:34px;letter-spacing:-0.01em;color:var(--xc15f-ink);}
.policy-lead{margin:0;color:var(--xc15f-slate);font-size:16px;}
.policy-section{margin-top:18px;padding:18px;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);}
.policy-section-title{margin:0 0 10px;font-size:18px;color:var(--xc15f-ink);}
.policy-paragraph{margin:0 0 10px;color:var(--xc15f-text);font-size:15.5px;}
.policy-muted{color:var(--xc15f-slate);}
.policy-list{margin:0;padding-left:18px;}
.policy-li{margin:6px 0;color:var(--xc15f-text);font-size:15.5px;}
.policy-footer{margin-top:18px;padding:18px;border:1px solid var(--xc15f-border);background:var(--xc15f-surface);}
.policy-footer-title{margin:0 0 12px;font-size:18px;color:var(--xc15f-ink);}
.policy-contact-grid{display:block;}
.policy-contact-item{margin:10px 0;padding:10px 12px;border:1px solid var(--xc15f-border);background:var(--xc15f-bg);}
.policy-contact-label{font-size:12.5px;letter-spacing:0.02em;text-transform:uppercase;color:var(--xc15f-slate);margin-bottom:6px;}
.policy-contact-value{font-size:15.5px;color:var(--xc15f-text);}
.policy-link{color:var(--xc15f-secondary);text-decoration:none;border-bottom:1px solid rgba(198,59,45,0.35)}
.policy-link:hover{border-bottom-color:rgba(198,59,45,0.9)}
.policy-footer-note{margin-top:12px;font-size:14.5px;color:var(--xc15f-text);}
@media (max-width:520px){.policy-title{font-size:28px}.policy-container{padding:18px 12px 36px}.policy-section{padding:14px}.policy-header{padding:14px 14px 10px}}
/* Design-system base */
:root{
  --xc15f-primary:#111213;
  --xc15f-secondary:#C63B2D;
  --xc15f-accent:#C63B2D;
  --xc15f-ink:#111213;
  --xc15f-slate:#535962;
  --xc15f-mist:#DDE0E4;
  --xc15f-border:#E3E4E6;
  --xc15f-surface:#FFFFFF;
  --xc15f-bg:#F6F6F4;
  --xc15f-text:#111213;
  --xc15f-font:Georgia, Cambria, 'Times New Roman', serif;
  --xc15f-font-display:'Hoefler Text', 'Baskerville Old Face', Garamond, Georgia, serif;
}

.policy-page{
  background:var(--xc15f-bg);
  color:var(--xc15f-text);
  font-family:var(--xc15f-font);
  line-height:1.5;
  min-height:100vh;
  padding:24px 12px;
}
.policy-content{
  max-width:920px;
  margin:0 auto;
  background:var(--xc15f-surface);
  border:1px solid var(--xc15f-border);
  border-radius:0px;
  padding:24px;
}
.policy-header{padding:8px 0 18px 0;border-bottom:1px solid var(--xc15f-border);}
.policy-title{
  font-family:var(--xc15f-font-display);
  font-size:30px;
  margin:0 0 8px 0;
  color:var(--xc15f-ink);
  letter-spacing:-0.01em;
}
.policy-lead{margin:0;color:var(--xc15f-slate);font-size:16px;}
.policy-section{padding:18px 0;border-bottom:1px solid var(--xc15f-border);}
.policy-section:last-child{border-bottom:none;}
.policy-h2{margin:0 0 10px 0;font-size:18px;color:var(--xc15f-ink);}
.policy-p{margin:0 0 12px 0;color:var(--xc15f-text);}
.policy-list{margin:0 0 0 18px;padding:0;}
.policy-li{margin:6px 0;}
.policy-contact{margin-top:8px;border:1px solid var(--xc15f-border);border-radius:0px;padding:12px;background:var(--xc15f-bg);}
.policy-contact-item{display:block;padding:8px 0;border-bottom:1px solid var(--xc15f-border);}
.policy-contact-item:last-child{border-bottom:none;}
.policy-contact-label{display:inline-block;width:110px;color:var(--xc15f-slate);font-weight:700;}
.policy-contact-value{display:inline-block;color:var(--xc15f-text);}
.policy-footer{padding-top:16px;}
.policy-footer-p{margin:0;color:var(--xc15f-slate);font-size:13.5px;}
@media (max-width:600px){
  .policy-content{padding:16px;}
  .policy-title{font-size:26px;}
  .policy-contact-label{width:96px;}
}

/* Design-system variables */
:root{
  --xc15f-primary:#111213;
  --xc15f-secondary:#C63B2D;
  --xc15f-accent:#C63B2D;
  --xc15f-ink:#111213;
  --xc15f-slate:#535962;
  --xc15f-mist:#DDE0E4;
  --xc15f-border:#E3E4E6;
  --xc15f-surface:#FFFFFF;
  --xc15f-bg:#F6F6F4;
  --xc15f-text:#111213;
  --xc15f-font:Georgia, Cambria, 'Times New Roman', serif;
  --xc15f-font-display:'Hoefler Text', 'Baskerville Old Face', Garamond, Georgia, serif;
}
.policy-page{background:var(--xc15f-bg);color:var(--xc15f-text);font-family:var(--xc15f-font);line-height:1.55;}
.policy-wrapper{max-width:920px;margin:0 auto;padding:18px;}
.policy-title{font-family:var(--xc15f-font-display);font-size:34px;line-height:1.15;margin:10px 0 14px 0;color:var(--xc15f-ink);}
.policy-lead{margin:0 0 18px 0;color:var(--xc15f-ink);font-size:15.5px;}
.policy-section{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);border-radius:0px;padding:16px 16px;margin:0 0 14px 0;}
.policy-heading{font-size:18px;margin:0 0 10px 0;color:var(--xc15f-ink);}
.policy-paragraph{margin:0 0 10px 0;font-size:14.8px;color:var(--xc15f-text);}
.policy-citations{border-top:1px solid var(--xc15f-mist);padding-top:10px;margin-top:12px;color:var(--xc15f-slate);font-size:13.6px;}
.policy-list{margin:0;padding-left:20px;color:var(--xc15f-text);}
.policy-list li{margin:6px 0;font-size:14.8px;}
.policy-contact{border:1px solid var(--xc15f-border);background:var(--xc15f-bg);padding:12px;border-radius:0px;}
.policy-contact-line{margin:8px 0;color:var(--xc15f-text);font-size:14.6px;}
.policy-contact-label{color:var(--xc15f-slate);font-weight:700;}
.policy-contact-note{color:var(--xc15f-slate);font-size:13.4px;}
.policy-link{color:var(--xc15f-accent);text-decoration:underline;}
.policy-link:focus{outline:2px solid var(--xc15f-accent);outline-offset:2px;}
.policy-footer{margin:18px 0 24px 0;}
.policy-footer-inner{background:var(--xc15f-surface);border:1px solid var(--xc15f-border);padding:14px 16px;border-radius:0px;}
.policy-footer-text{margin:8px 0;color:var(--xc15f-text);font-size:13.8px;}
.policy-footer-small{color:var(--xc15f-slate);font-size:13.2px;}

/* Design-system tokens */
:root{
  --xc15f-primary:#111213;
  --xc15f-secondary:#C63B2D;
  --xc15f-accent:#C63B2D;
  --xc15f-ink:#111213;
  --xc15f-slate:#535962;
  --xc15f-mist:#DDE0E4;
  --xc15f-border:#E3E4E6;
  --xc15f-surface:#FFFFFF;
  --xc15f-bg:#F6F6F4;
  --xc15f-text:#111213;
  --xc15f-font: Georgia, Cambria, 'Times New Roman', serif;
  --xc15f-font-display: 'Hoefler Text', 'Baskerville Old Face', Garamond, Georgia, serif;
}

.policy-page{
  background: var(--xc15f-bg);
  color: var(--xc15f-text);
  font-family: var(--xc15f-font);
  line-height: 1.45;
  margin: 0;
  padding: 0;
}
.policy-wrapper{
  box-sizing: border-box;
  max-width: 960px;
  margin: 0 auto;
  padding: 24px 16px 32px;
}
.policy-card{
  background: var(--xc15f-surface);
  border: 1px solid var(--xc15f-border);
  border-radius: 2px;
  padding: 22px 18px;
}
.policy-heading{
  margin: 0 0 10px 0;
  font-family: var(--xc15f-font-display);
  font-size: 34px;
  letter-spacing: -0.02em;
  color: var(--xc15f-ink);
}
.policy-lead{
  margin: 0 0 14px 0;
  color: var(--xc15f-slate);
  font-size: 16px;
}
.policy-separator{
  height: 1px;
  background: var(--xc15f-border);
  margin: 18px 0;
}
.policy-subheading{
  margin: 0 0 8px 0;
  font-size: 18px;
  color: var(--xc15f-ink);
}
.policy-text{
  margin: 0 0 10px 0;
  color: var(--xc15f-slate);
  font-size: 15px;
}
.policy-list{
  margin: 10px 0 14px 18px;
  padding: 0;
  color: var(--xc15f-slate);
}
.policy-list li{
  margin: 8px 0;
  font-size: 15px;
}
.policy-list-label{
  display: inline-block;
  min-width: 105px;
  font-weight: 600;
  color: var(--xc15f-ink);
}
.policy-link{
  color: var(--xc15f-secondary);
  text-decoration: underline;
}
.policy-link:hover{
  color: var(--xc15f-accent);
}
.policy-small{
  margin: 12px 0 0 0;
  font-size: 13px;
  color: var(--xc15f-slate);
}
.policy-legal{
  margin: 10px 0 0 18px;
  padding: 0;
  color: var(--xc15f-slate);
}
.policy-legal li{
  margin: 10px 0;
  font-size: 14px;
}
.policy-footer{
  margin-top: 14px;
  background: transparent;
}
.policy-footer-inner{
  border: 1px solid var(--xc15f-border);
  border-radius: 2px;
  background: var(--xc15f-surface);
  padding: 16px 14px;
}
.policy-footer-title{
  margin: 0 0 8px 0;
  font-weight: 700;
  color: var(--xc15f-ink);
}
.policy-footer-text{
  margin: 6px 0;
  font-size: 14px;
  color: var(--xc15f-slate);
}
.policy-footer-legal{
  margin: 8px 0 0 0;
  font-size: 13px;
  color: var(--xc15f-slate);
}

@media (max-width: 520px){
  .policy-wrapper{ padding: 18px 12px 28px; }
  .policy-card{ padding: 18px 14px; }
  .policy-heading{ font-size: 28px; }
  .policy-list-label{ min-width: 95px; }
}

section[data-xc15f-nou]:not([data-xc15f-nou='header']):not([data-xc15f-nou='footer']) { position: relative; }
section[data-xc15f-nou]:not([data-xc15f-nou='header']):not([data-xc15f-nou='footer']) { border-top: 1px solid var(--xc15f-border); }
section[data-xc15f-nou]:not([data-xc15f-nou='header']) h1,section[data-xc15f-nou]:not([data-xc15f-nou='header']) h2 { max-width: 20ch; letter-spacing: -0.035em; }
section[data-xc15f-nou]:nth-of-type(even)::before { content: ''; position: absolute; top: 0; left: 0; width: 5rem; border-top: 3px solid var(--xc15f-accent); }
:root {
  --xc15f-c-content-width: 72rem;
  --xc15f-c-gutter: clamp(1rem, 4vw, 3rem);
  --xc15f-c-measure: 65ch;
  --xc15f-c-heading-display: clamp(2.5rem, 6vw, 5.5rem);
}
[data-xc15f-dr] { scroll-margin-top: 1.5rem; }
main > section, main [data-xc15f-nou] { padding-inline: var(--xc15f-c-gutter); }
[data-xc15f-dr*='article'], [data-xc15f-dr*='review'] { max-width: var(--xc15f-c-measure); }
h1 { font-size: var(--xc15f-c-heading-display); }
@media (max-width: 768px) { [data-xc15f-dr] { min-width: 0; } }