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

/* design tokens */
:root {
  --sxt35-primary: #2F6B55;
  --sxt35-secondary: #7BAE8F;
  --sxt35-accent: #7BAE8F;
  --sxt35-ink: #123226;
  --sxt35-slate: #2B3A36;
  --sxt35-mist: #D3D9D6;
  --sxt35-border: #D3D9D6;
  --sxt35-surface: #FFFFFF;
  --sxt35-bg: #F7F2E8;
  --sxt35-text: #1F2E29;
  --sxt35-font: 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif;
  --sxt35-font-display: 'Optima', 'Segoe UI', Candara, 'Gill Sans', 'Gill Sans MT', sans-serif;
}

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

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

/* sections */
/* sxt35:header */
/* sxt35:header */
#header{background:var(--sxt35-surface);border-bottom:1px solid var(--sxt35-border);font-family:var(--sxt35-sans, "Segoe UI", Candara, "Gill Sans", "Trebuchet MS", sans-serif);color:var(--sxt35-text)}
#header *{box-sizing:border-box}
#header .header-inner{max-width:72rem;margin:0 auto;padding:14px clamp(16px,4vw,28px);display:flex;align-items:center;justify-content:space-between;gap:16px}
#header .brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--sxt35-ink);min-height:44px}
#header .brand-mark{width:28px;height:28px;border:1px solid var(--sxt35-border);border-radius:var(--sxt35-radius-md,12px);display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;background:var(--sxt35-bg)}
#header .brand-name{font-weight:760;letter-spacing:-0.01em}
#header .nav{display:flex;gap:18px;align-items:center}
#header .nav-link{color:var(--sxt35-text);text-decoration:none;font-size:0.98rem;padding:10px 8px;border-radius:10px;outline:none}
#header .nav-link:focus-visible{box-shadow:0 0 0 3px rgba(47,107,85,0.25);background:rgba(123,174,143,0.18)}
#header .header-cta{display:flex;gap:10px;align-items:center}
#header .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border-radius:12px;font-weight:700;text-decoration:none;cursor:pointer;transition:background 120ms ease,border-color 120ms ease,color 120ms ease,transform 120ms ease}
#header .btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(47,107,85,0.25)}
#header .btn:active{transform:translateY(1px)}
#header .btn-primary{background:var(--sxt35-primary);color:var(--sxt35-surface);border:1px solid var(--sxt35-primary)}
#header .btn-primary:hover{background:#2a5d4e}
#header .btn-ghost{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);color:var(--sxt35-ink)}
#header .btn-ghost:hover{border-color:var(--sxt35-primary);background:rgba(47,107,85,0.06)}
#header .menu-toggle{display:none;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 12px;border-radius:12px;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-ink);font-weight:700;cursor:pointer}
#header .menu-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(47,107,85,0.25)}
#header .menu-toggle-label{font-size:0.95rem}
#header .menu-toggle-icon{font-size:18px}
#header .mobile-menu{display:none;border-top:1px solid var(--sxt35-border);background:var(--sxt35-surface)}
#header .mobile-menu-inner{max-width:72rem;margin:0 auto;padding:14px clamp(16px,4vw,28px);display:flex;flex-direction:column;gap:6px}
#header .mobile-cta{margin-top:8px}
#header .mobile-menu .nav-link{padding:12px 10px}

@media (max-width: 768px){
  #header .nav{display:none}
  #header .header-cta{display:none}
  #header .menu-toggle{display:inline-flex}
  #header .mobile-menu{display:block;max-height:0;overflow:hidden;transition:max-height 180ms ease}
  #header[data-menu-open="true"] .mobile-menu{max-height:520px}
}

@media (prefers-reduced-motion: reduce){
  #header .btn{transition:none}
  #header .mobile-menu{transition:none}
}

#header::selection{background:rgba(123,174,143,0.35)}
/* sxt35:footer */
/* sxt35:footer */
#footer.footer{background:var(--sxt35-bg);color:var(--sxt35-text);border-top:1px solid var(--sxt35-border)}
#footer .footer-inner{max-width:72rem;margin:0 auto;padding:3rem var(--gutter,clamp(1rem,4vw,3rem)) 2.25rem}
#footer .footer-top{display:flex;gap:2.25rem;align-items:flex-start;justify-content:space-between}
#footer .footer-brand{display:flex;gap:0.9rem;align-items:flex-start;min-width:16rem}
#footer .brand-mark{width:38px;height:38px;border-radius:50%;background:var(--sxt35-surface);border:1px solid var(--sxt35-border);display:flex;align-items:center;justify-content:center;color:var(--sxt35-primary);font-size:18px;line-height:1}
#footer .footer-sxt35-b-name{font-family:var(--font-serif, 'Optima, Segoe UI, Candara, Gill Sans');font-size:1.25rem;margin:0;letter-spacing:-0.02em}
#footer .footer-sxt35-b-tag{margin:0.35rem 0 0;font-size:0.95rem;color:var(--sxt35-slate)}
#footer .footer-nav{flex:1;max-width:22rem}
#footer .footer-linklist{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:0.85rem 1.1rem}
#footer .footer-link{color:var(--sxt35-text);text-decoration:none;font-weight:600}
#footer .footer-link:hover{color:var(--sxt35-primary);text-decoration:underline}
#footer .footer-link:focus-visible{outline:3px solid var(--sxt35-secondary);outline-offset:3px;border-radius:8px}
#footer .footer-quick{min-width:18rem}
#footer .footer-quick-title{margin:0 0 0.75rem;font-size:0.95rem;color:var(--sxt35-slate);font-weight:700}
#footer .footer-meta{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.55rem}
#footer .footer-meta-link{color:var(--sxt35-text);text-decoration:underline;text-decoration-color:var(--sxt35-border);text-underline-offset:3px}
#footer .footer-meta-link:hover{color:var(--sxt35-primary);text-decoration-color:var(--sxt35-primary)}
#footer .footer-meta-link:focus-visible{outline:3px solid var(--sxt35-secondary);outline-offset:3px;border-radius:8px}
#footer .footer-meta-text{margin:0;color:var(--sxt35-slate);line-height:1.35}
#footer .footer-bottom{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--sxt35-border);display:flex;gap:1.5rem;justify-content:space-between;align-items:flex-end;flex-wrap:wrap}
#footer .footer-copy{margin:0;color:var(--sxt35-slate);font-size:0.95rem}
#footer .footer-policy{list-style:none;padding:0;margin:0.85rem 0 0;display:flex;gap:1.1rem;flex-wrap:wrap}
#footer .footer-policy-link{color:var(--sxt35-slate);text-decoration:none;font-weight:600}
#footer .footer-policy-link:hover{color:var(--sxt35-primary);text-decoration:underline}
#footer .footer-policy-link:focus-visible{outline:3px solid var(--sxt35-secondary);outline-offset:3px;border-radius:8px}
#footer .footer-dev-copy{margin:0;color:var(--sxt35-slate);font-size:0.95rem}
#footer ::selection{background:rgba(123,174,143,0.35)}
@media (max-width: 900px){#footer .footer-top{flex-direction:column;gap:1.5rem}#footer .footer-quick{min-width:unset}#footer .footer-nav{max-width:unset}}
@media (prefers-reduced-motion: reduce){#footer *{scroll-behavior:auto;transition:none!important;animation:none!important}}
/* sxt35:hero */
/* sxt35:hero */
#hero.hero{background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(2.5rem,6vw,4.5rem) 0;}
#hero.hero *{box-sizing:border-box;}
#hero.hero .hero__container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,4vw,2.5rem);}
#hero.hero .hero__left{align-self:start;}
#hero.hero .hero__title{font-family:var(--sxt35-font-serif, 'Optima, Segoe UI, Candara, Gill Sans, Gill Sans MT, sans-serif');font-size:clamp(2.1rem,4.2vw,4.1rem);line-height:1.05;margin:0 0 0.9rem;letter-spacing:-0.02em;text-wrap:balance;}
#hero.hero .hero__lead{margin:0 0 1.4rem;font-size:1rem;line-height:1.6;max-width:34rem;}
#hero.hero .hero__checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.6rem;}
#hero.hero .hero__check-item{display:flex;gap:0.6rem;align-items:flex-start;}
#hero.hero .hero__checkmark{width:22px;height:22px;border-radius:999px;background:var(--sxt35-primary);color:var(--sxt35-surface);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:0.9rem;flex:0 0 auto;}
#hero.hero .hero__check-text{line-height:1.45;font-size:0.98rem;}
#hero.hero .hero__cta-row{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:1.7rem;}
#hero.hero .btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;border-radius:12px;padding:0.85rem 1.1rem;text-decoration:none;font-weight:650;letter-spacing:0.01em;min-height:44px;}
#hero.hero .btn--primary{background:var(--sxt35-primary);color:var(--sxt35-surface);border:1px solid var(--sxt35-primary);}
#hero.hero .btn--primary:hover{filter:brightness(1.02);}
#hero.hero .btn--primary:active{transform:translateY(1px);}
#hero.hero .btn--ghost{background:transparent;color:var(--sxt35-primary);border:1px solid var(--sxt35-border);}
#hero.hero .btn--ghost:hover{border-color:var(--sxt35-primary);background:rgba(47,107,85,0.06);}
#hero.hero .btn--small{padding:0.6rem 0.85rem;border-radius:12px;font-size:0.95rem;}
#hero.hero .hero__micro{margin:1rem 0 0;font-size:0.9rem;color:var(--sxt35-text);opacity:0.9;}
#hero.hero .schedule-card{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;overflow:hidden;}
#hero.hero .schedule-card__header{padding:1.4rem 1.5rem 1rem;border-bottom:1px solid var(--sxt35-border);}
#hero.hero .schedule-card__title{margin:0;font-size:1.25rem;letter-spacing:-0.01em;}
#hero.hero .schedule-card__sub{margin:0.35rem 0 0;color:var(--sxt35-text);opacity:0.85;font-size:0.95rem;}
#hero.hero .schedule-card__rows{padding:0.6rem 0.3rem 0.2rem;}
#hero.hero .class-row{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:0.95rem 0.9rem;border-top:1px solid var(--sxt35-border);}
#hero.hero .class-row:first-child{border-top:none;}
#hero.hero .class-row__meta{min-width:0;}
#hero.hero .class-row__time{font-variant-numeric:tabular-nums;font-size:0.95rem;color:var(--sxt35-text);opacity:0.95;margin-bottom:0.15rem;}
#hero.hero .class-row__name{font-size:1.05rem;line-height:1.25;max-width:18rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
#hero.hero .class-row__bottom{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center;margin-top:0.45rem;}
#hero.hero .pill{display:inline-flex;align-items:center;border-radius:999px;padding:0.25rem 0.55rem;border:1px solid var(--sxt35-border);font-size:0.85rem;color:var(--sxt35-ink);background:rgba(211,217,214,0.35);}
#hero.hero .pill--level{background:rgba(123,174,143,0.18);border-color:rgba(123,174,143,0.55);color:var(--sxt35-ink);}
#hero.hero .class-row__instructor{font-size:0.88rem;color:var(--sxt35-text);opacity:0.85;}
#hero.hero .schedule-card__footer{padding:1rem 1.1rem 1.2rem;}
#hero.hero .link{color:var(--sxt35-primary);text-decoration:underline;text-underline-offset:3px;}
#hero.hero .link:focus-visible{outline:3px solid rgba(47,107,85,0.35);outline-offset:3px;border-radius:8px;}
#hero.hero .btn:focus-visible{outline:3px solid rgba(47,107,85,0.35);outline-offset:3px;}
#hero.hero .btn[disabled]{opacity:0.6;cursor:not-allowed;}
@media (min-width:768px){#hero.hero .hero__container{grid-template-columns:1.05fr 0.95fr;gap:clamp(2rem,4vw,3.2rem);}#hero.hero .schedule-card__header{padding:1.55rem 1.6rem 1.1rem;}#hero.hero .schedule-card__rows{padding:0.65rem 0.35rem 0.3rem;}}
@media (prefers-reduced-motion:reduce){#hero.hero .btn{transition:none;}#hero.hero .class-row{scroll-behavior:auto;}}
#hero.hero::selection{background:rgba(123,174,143,0.35);}

/* sxt35:schedule */
/* sxt35:schedule */
#schedule{--radius-sm:var(--sxt35-radius-sm,10px);--radius-md:12px;--radius-lg:14px;--focus:rgba(47,107,85,.35);background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(1.5rem,3.2vw,2.5rem) 0;}
#schedule .schedule-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#schedule .schedule-head{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;justify-content:space-between;margin-bottom:1.25rem;}
#schedule .schedule-titleblock{min-width:18rem;flex:1 1 22rem;}
#schedule .schedule-h2{font-family:var(--sxt35-serif, 'Optima, Segoe UI, Candara, Gill Sans, Gill Sans MT, sans-serif');font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.15;margin:0 0 .35rem;letter-spacing:-.02em;text-wrap:balance;}
#schedule .schedule-sub{margin:0;color:var(--sxt35-slate);font-size:1rem;}
#schedule .schedule-tabs{display:flex;gap:.5rem;flex:0 0 auto;}
#schedule .tab{appearance:none;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-text);padding:.7rem 1rem;border-radius:var(--sxt35-radius-md,12px);font-weight:600;cursor:pointer;min-height:44px;position:relative;transition:background-color .18s ease,border-color .18s ease,transform .12s ease;}
#schedule .tab:focus-visible{outline:3px solid var(--focus);outline-offset:2px;}
#schedule .tab:hover{border-color:rgba(123,174,143,.9);transform:translateY(-2px);}
#schedule .tab.is-active{border-color:var(--sxt35-primary);background:color-mix(in srgb, var(--sxt35-primary) 10%, var(--sxt35-surface));}
#schedule .tab.is-active::after{content:"";position:absolute;left:1rem;right:1rem;bottom:-1px;height:2px;background:var(--sxt35-primary);border-radius:2px;}
#schedule .schedule-pills{display:flex;gap:.5rem;flex:0 1 auto;}
#schedule .chip{appearance:none;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-text);padding:.55rem .85rem;border-radius:999px;font-weight:600;cursor:pointer;min-height:44px;transition:background-color .18s ease,border-color .18s ease,transform .12s ease;}
#schedule .chip:focus-visible{outline:3px solid var(--focus);outline-offset:2px;}
#schedule .chip:hover{transform:translateY(-2px);border-color:rgba(123,174,143,.95);}
#schedule .chip.is-active{border-color:var(--sxt35-primary);background:color-mix(in srgb, var(--sxt35-primary) 12%, var(--sxt35-surface));}
#schedule .schedule-panels{display:block;}
#schedule .day-group{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-radius-lg,14px);overflow:hidden;}
#schedule .day-group.is-hidden{display:none;}
#schedule .day-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--sxt35-border);background:color-mix(in srgb, var(--sxt35-bg) 65%, var(--sxt35-surface));}
#schedule .day-meta{display:flex;flex-direction:column;gap:.2rem;}
#schedule .day-label{font-weight:800;letter-spacing:-.01em;color:var(--sxt35-ink);font-size:1.05rem;}
#schedule .day-note{font-size:.9rem;color:var(--sxt35-slate);}
#schedule .day-toggle{appearance:none;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-text);border-radius:12px;padding:.55rem .75rem;min-height:44px;display:flex;align-items:center;gap:.55rem;cursor:pointer;transition:transform .12s ease,border-color .18s ease;}
#schedule .day-toggle:hover{transform:translateY(-2px);border-color:rgba(123,174,143,.95);}
#schedule .day-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:2px;}
#schedule .day-toggle-icon{font-size:1.2rem;line-height:1;transform:translateY(-1px);color:var(--sxt35-primary);}
#schedule .day-rows{padding:1rem 0;}
#schedule .day-rows.is-expanded{display:block;}
#schedule .day-rows.is-collapsed{display:none;}
#schedule .day-separator{height:1px;background:var(--sxt35-border);}
#schedule .class-row{display:grid;grid-template-columns:140px 1fr 120px 140px;gap:1rem;align-items:center;padding:.95rem 1.25rem;border-top:1px solid var(--sxt35-border);background:var(--sxt35-surface);}
#schedule .class-row:first-child{border-top:0;}
#schedule .class-row:focus-visible{outline:3px solid var(--focus);outline-offset:-3px;}
#schedule .class-row:hover .book-btn{border-color:rgba(47,107,85,.65);}
#schedule .class-time{font-variant-numeric:tabular-nums;font-weight:800;color:var(--sxt35-ink);}
#schedule .class-name{font-weight:900;color:var(--sxt35-ink);letter-spacing:-.01em;line-height:1.1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
#schedule .class-sub{font-size:.9rem;color:var(--sxt35-slate);margin-top:.25rem;line-height:1.25;}
#schedule .class-level{display:flex;justify-content:flex-start;}
#schedule .pill{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .65rem;border-radius:999px;border:1px solid var(--sxt35-border);background:color-mix(in srgb, var(--sxt35-secondary) 10%, var(--sxt35-surface));color:var(--sxt35-ink);font-weight:800;font-size:.9rem;}
#schedule .book-btn{appearance:none;border:1px solid var(--sxt35-primary);background:var(--sxt35-primary);color:var(--sxt35-surface);font-weight:900;border-radius:12px;padding:.7rem .85rem;min-height:44px;cursor:pointer;transition:transform .12s ease,filter .18s ease,border-color .18s ease;}
#schedule .book-btn:hover{transform:translateY(-2px);filter:brightness(1.03);}
#schedule .book-btn:focus-visible{outline:3px solid var(--focus);outline-offset:2px;}
#schedule .schedule-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0 0;}
#schedule .schedule-footnote{margin:0;color:var(--sxt35-slate);font-size:.95rem;}
#schedule .schedule-link{color:var(--sxt35-primary);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;font-weight:800;}
#schedule .schedule-link:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:8px;}
#schedule .schedule-link:hover{filter:brightness(.95);}
#schedule ::selection{background:color-mix(in srgb, var(--sxt35-primary) 25%, transparent);}
@media (max-width: 768px){
  #schedule .schedule-head{align-items:flex-start;}
  #schedule .class-row{grid-template-columns:120px 1fr;grid-template-rows:auto auto;gap:.65rem 1rem;}
  #schedule .class-level{grid-column:1 / 3;justify-content:flex-start;}
  #schedule .class-actions{grid-column:1 / 3;}
  #schedule .book-btn{width:100%;}
  #schedule .schedule-foot{flex-direction:column;align-items:flex-start;}
}
@media (prefers-reduced-motion: reduce){
  #schedule *{transition:none !important;}
  #schedule .tab:hover,#schedule .chip:hover,#schedule .day-toggle:hover,#schedule .book-btn:hover{transform:none !important;}
}

/* sxt35:first-visit */
/* sxt35:first-visit */
#first-visit.first-visit{background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(2.5rem,5vw,4.5rem) 0;}
#first-visit.first-visit .marketing-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#first-visit.first-visit .fv-grid{display:grid;grid-template-columns:1fr;gap:clamp(1.25rem,3vw,2.25rem);align-items:start;}
#first-visit.first-visit .fv-title{font-family:var(--sxt35-serif, 'Optima, Segoe UI, Candara, Gill Sans, Gill Sans MT, sans-serif');font-size:clamp(1.6rem,2.8vw,2.35rem);line-height:1.15;letter-spacing:-0.02em;margin:0 0 0.75rem 0;text-wrap:balance;}
#first-visit.first-visit .fv-lede{margin:0 0 1.25rem 0;max-width:40rem;font-size:1rem;line-height:1.65;color:var(--sxt35-text);}
#first-visit.first-visit .fv-checklist{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-radius-lg,14px);padding:1.25rem 1.25rem 1.1rem 1.25rem;box-shadow:0 10px 30px rgba(18,50,38,0.06);}
#first-visit.first-visit .fv-subtitle{margin:0 0 0.75rem 0;font-size:1.05rem;letter-spacing:-0.01em;}
#first-visit.first-visit .fv-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.75rem;}
#first-visit.first-visit .fv-step{display:flex;gap:0.75rem;align-items:flex-start;}
#first-visit.first-visit .fv-step-index{width:26px;height:26px;border-radius:999px;background:var(--sxt35-secondary);color:var(--sxt35-surface);display:flex;align-items:center;justify-content:center;font-weight:700;font-variant-numeric:tabular-nums;flex:0 0 auto;}
#first-visit.first-visit .fv-step-text{line-height:1.6;font-size:0.98rem;}
#first-visit.first-visit .fv-disclaimer{margin:1rem 0 0 0;font-size:0.95rem;color:var(--sxt35-slate);border-left:3px solid var(--sxt35-primary);padding-left:0.75rem;}
#first-visit.first-visit .fv-links{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:0.75rem;}
#first-visit.first-visit .fv-link{display:inline-flex;align-items:center;gap:0.5rem;color:var(--sxt35-primary);text-decoration:none;font-weight:600;border:1px solid var(--sxt35-border);background:rgba(255,255,255,0.65);padding:0.6rem 0.8rem;border-radius:var(--sxt35-radius-md,12px);}
#first-visit.first-visit .fv-link:focus-visible{outline:3px solid rgba(47,107,85,0.35);outline-offset:2px;}
#first-visit.first-visit .fv-link:hover{background:var(--sxt35-surface);}
#first-visit.first-visit .fv-right{display:grid;grid-template-columns:1fr;gap:1.25rem;}
#first-visit.first-visit .fv-card{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-radius-lg,14px);padding:1.25rem;}
#first-visit.first-visit .fv-card-title{margin:0 0 0.9rem 0;font-size:1.05rem;letter-spacing:-0.01em;}
#first-visit.first-visit .fv-bullets{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:0.65rem;line-height:1.6;}
#first-visit.first-visit .fv-bullets strong{color:var(--sxt35-ink);}
#first-visit.first-visit .fv-divider{height:1px;background:var(--sxt35-border);margin:1rem 0;}
#first-visit.first-visit .fv-map-row{display:flex;flex-direction:column;gap:0.4rem;}
#first-visit.first-visit .fv-map-label{font-weight:700;color:var(--sxt35-ink);}
#first-visit.first-visit .fv-map-text{color:var(--sxt35-text);line-height:1.6;}
#first-visit.first-visit .fv-timeline-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.9rem;}
#first-visit.first-visit .fv-timeline-step{display:grid;grid-template-columns:14px 1fr;gap:0.75rem;align-items:flex-start;}
#first-visit.first-visit .fv-dot{width:12px;height:12px;border-radius:999px;background:var(--sxt35-secondary);margin-top:0.3rem;box-shadow:0 0 0 4px rgba(123,174,143,0.22);}
#first-visit.first-visit .fv-timeline-title{font-weight:800;color:var(--sxt35-ink);margin-bottom:0.25rem;}
#first-visit.first-visit .fv-timeline-body{color:var(--sxt35-text);line-height:1.6;}
#first-visit.first-visit ::selection{background:rgba(123,174,143,0.35);}
@media (min-width: 768px){
  #first-visit.first-visit .fv-grid{grid-template-columns:1.15fr 0.85fr;gap:clamp(1.5rem,3.5vw,2.75rem);}
  #first-visit.first-visit .fv-right{grid-template-columns:1fr;}
}
@media (min-width: 1024px){
  #first-visit.first-visit .fv-grid{grid-template-columns:1.25fr 0.75fr;}
}
@media (prefers-reduced-motion: reduce){
  #first-visit.first-visit *{scroll-behavior:auto;transition:none !important;animation:none !important;}
}

/* sxt35:pricing */
/* sxt35:pricing */
#pricing.pricing-shell{background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(2.5rem,5vw,4.5rem) 0;}
#pricing .pricing-container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#pricing .pricing-header{margin-bottom:clamp(1.75rem,4vw,2.5rem);}
#pricing .pricing-kicker{display:inline-block;font:600 0.875rem/1.2 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);letter-spacing:0.02em;color:var(--sxt35-secondary);text-transform:none;}
#pricing .pricing-title{margin:0.6rem 0 0;font:700 clamp(1.6rem,3vw,2.2rem)/1.1 var(--font-serif, 'Optima', 'Segoe UI', Candara, 'Gill Sans', 'Gill Sans MT', sans-serif);letter-spacing:-0.02em;text-wrap:balance;color:var(--sxt35-ink);}
#pricing .pricing-subtitle{margin:0.8rem 0 0;max-width:58ch;font:400 1rem/1.6 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-text);}

#pricing .pricing-tiers{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(0.9rem,2.2vw,1.25rem);align-items:stretch;}
#pricing .pricing-tier{grid-column:span 4;background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;box-shadow:0 8px 24px rgba(18,50,38,0.06);padding:clamp(1.25rem,2.4vw,1.5rem);display:flex;flex-direction:column;}
#pricing .tier-top{padding-bottom:1rem;border-bottom:1px solid var(--sxt35-border);}
#pricing .tier-name{margin:0;font:700 1.25rem/1.2 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-ink);}
#pricing .tier-tag{margin-top:0.6rem;display:inline-flex;align-items:center;gap:0.5rem;background:rgba(123,174,143,0.18);border:1px solid rgba(123,174,143,0.35);color:var(--sxt35-ink);border-radius:999px;font:700 0.8rem/1.2 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);padding:0.38rem 0.7rem;}
#pricing .tier-price{margin-top:0.9rem;font:800 clamp(2rem,3vw,2.6rem)/1.05 var(--font-serif, 'Optima', 'Segoe UI', Candara, 'Gill Sans', 'Gill Sans MT', sans-serif);color:var(--sxt35-ink);font-variant-numeric:tabular-nums;}
#pricing .tier-period{margin-top:0.2rem;font:600 0.95rem/1.3 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-slate);}
#pricing .tier-features{list-style:none;margin:1.1rem 0 0;padding:0;display:flex;flex-direction:column;gap:0.7rem;}
#pricing .tier-feature{position:relative;padding-left:1.2rem;font:500 0.98rem/1.45 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-text);}
#pricing .tier-feature::before{content:"";position:absolute;left:0;top:0.55em;width:0.55rem;height:0.55rem;border-radius:50%;background:var(--sxt35-secondary);box-shadow:0 0 0 3px rgba(123,174,143,0.18);}
#pricing .tier-cta{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0.85rem 1rem;border-radius:12px;background:var(--sxt35-primary);color:var(--sxt35-surface);text-decoration:none;font:800 0.98rem/1 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);border:1px solid rgba(47,107,85,0.35);}
#pricing .tier-cta:focus-visible{outline:3px solid rgba(123,174,143,0.6);outline-offset:2px;}
#pricing .tier-cta:hover{background:#2a5f4f;}

#pricing .mat-policy{margin-top:clamp(1.7rem,4vw,2.6rem);background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;padding:clamp(1.25rem,2.6vw,1.6rem);}
#pricing .mat-policy-top{display:flex;flex-direction:column;gap:0.55rem;}
#pricing .mat-title{margin:0;font:800 1.4rem/1.25 var(--font-serif, 'Optima', 'Segoe UI', Candara, 'Gill Sans', 'Gill Sans MT', sans-serif);color:var(--sxt35-ink);}
#pricing .mat-subtitle{margin:0;font:400 1rem/1.6 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-text);max-width:65ch;}
#pricing .mat-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(0.9rem,2vw,1.4rem);margin-top:1.2rem;}
#pricing .mat-col{grid-column:span 6;background:rgba(247,242,232,0.35);border:1px solid var(--sxt35-border);border-radius:12px;padding:1.05rem 1.05rem;}
#pricing .mat-subhead{margin:0 0 0.6rem;font:800 1.05rem/1.25 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-ink);}
#pricing .mat-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.65rem;}
#pricing .mat-item{font:500 0.98rem/1.45 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-text);}
#pricing .mat-item strong{color:var(--sxt35-ink);}
#pricing .mat-link{display:inline-flex;margin-top:1.2rem;color:var(--sxt35-ink);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;font:800 0.98rem/1.2 var(--font-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);}
#pricing .mat-link:focus-visible{outline:3px solid rgba(123,174,143,0.6);outline-offset:4px;border-radius:8px;}

::selection{background:rgba(123,174,143,0.35);}
@media (max-width: 900px){
  #pricing .pricing-tier{grid-column:span 12;}
  #pricing .mat-col{grid-column:span 12;}
}
@media (prefers-reduced-motion: reduce){
  #pricing *{scroll-behavior:auto;}
}

/* sxt35:contact */
/* sxt35:contact */
#contact.contact-section{background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(2.5rem,6vw,4.5rem) 0;}
#contact .contact-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;}
#contact .contact-title{font-family:var(--font-serif, 'Optima, Segoe UI, Candara, Gill Sans, Gill Sans MT, sans-serif');font-size:clamp(1.6rem,3vw,2.25rem);letter-spacing:-0.02em;margin:0 0 0.75rem;line-height:1.1;}
#contact .contact-lead{margin:0 0 1.25rem;max-width:34rem;font-size:1rem;line-height:1.6;color:var(--sxt35-text);}
#contact .contact-points{list-style:none;margin:0;padding:0;display:grid;gap:0.75rem;}
#contact .contact-point{position:relative;padding-left:1.35rem;line-height:1.4;}
#contact .contact-point:before{content:"";position:absolute;left:0.05rem;top:0.45rem;width:0.75rem;height:0.75rem;border-radius:50%;background:var(--sxt35-secondary);}
#contact .contact-alt-links{margin-top:1.35rem;display:flex;gap:0.9rem;flex-wrap:wrap;}
#contact .contact-link{color:var(--sxt35-ink);text-decoration:none;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);padding:0.7rem 0.9rem;border-radius:var(--radius-md);font-size:0.95rem;line-height:1;}
#contact .contact-link:hover{border-color:var(--sxt35-secondary);}
#contact .contact-link:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-primary) 35%, transparent);outline-offset:2px;}
#contact .contact-form-wrap{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;padding:1.5rem;}
#contact .contact-form{display:grid;gap:0.95rem;}
#contact .field{display:grid;gap:0.4rem;}
#contact .label{font-size:0.875rem;color:var(--sxt35-ink);}
#contact .input,#contact .textarea{width:100%;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-text);border-radius:var(--radius-md);padding:0.75rem 0.85rem;font-size:1rem;line-height:1.4;}
#contact .textarea{resize:vertical;min-height:7.5rem;}
#contact .input:focus-visible,#contact .textarea:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-primary) 35%, transparent);border-color:var(--sxt35-primary);}
#contact .submit{margin-top:0.25rem;justify-self:start;min-height:44px;display:inline-flex;align-items:center;gap:0.6rem;padding:0.85rem 1.05rem;border-radius:var(--radius-md);border:1px solid var(--sxt35-primary);background:var(--sxt35-primary);color:var(--sxt35-surface);font-weight:700;letter-spacing:0.01em;cursor:pointer;}
#contact .submit:hover{background:color-mix(in srgb, var(--sxt35-primary) 90%, var(--sxt35-secondary) 10%);}
#contact .submit:active{background:color-mix(in srgb, var(--sxt35-primary) 85%, #000 15%);}
#contact .submit:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-primary) 35%, transparent);outline-offset:3px;}
#contact .submit:disabled{opacity:0.7;cursor:not-allowed;}
#contact .form-note{margin:0;color:var(--sxt35-ink);font-size:0.875rem;line-height:1.5;}
#contact ::selection{background:color-mix(in srgb, var(--sxt35-secondary) 35%, transparent);}
@media (max-width: 900px){#contact .contact-shell{grid-template-columns:1fr;}}
@media (prefers-reduced-motion: reduce){#contact *{scroll-behavior:auto;transition:none !important;animation:none !important;}}

/* sxt35:class-overview */
/* sxt35:class-overview */
#class-overview{background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(2.5rem,5vw,4.5rem) 0;}
#class-overview .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#class-overview .section-header{margin-bottom:clamp(1.5rem,3vw,2.25rem);max-width:58rem;}
#class-overview .section-title{font-family:var(--font-serif, 'Optima, Segoe UI, Candara, Gill Sans, Gill Sans MT, sans-serif');font-size:clamp(1.8rem,3vw,2.4rem);letter-spacing:-0.02em;line-height:1.15;margin:0 0 0.75rem 0;}
#class-overview .section-lede{margin:0;max-width:60ch;font-size:1rem;line-height:1.6;color:var(--sxt35-text);}
#class-overview .compare-grid{display:grid;grid-template-columns:1fr;gap:clamp(1rem,2.5vw,1.5rem);align-items:start;}
#class-overview .compare-card{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;padding:clamp(1.25rem,2.2vw,1.5rem);box-shadow:0 10px 25px rgba(18,50,38,0.05);}
#class-overview .card-top{display:flex;flex-direction:column;gap:0.55rem;margin-bottom:1rem;}
#class-overview .card-badge{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.875rem;font-weight:700;color:var(--sxt35-primary);}
#class-overview .card-badge.secondary{color:var(--sxt35-secondary);}
#class-overview .card-title{margin:0;font-size:1.25rem;letter-spacing:-0.01em;}
#class-overview .list{margin:0;padding-left:1.1rem;}
#class-overview .list-item{margin:0.55rem 0;font-size:1rem;line-height:1.55;}
#class-overview .divider{height:1px;background:var(--sxt35-border);margin:1.15rem 0;}
#class-overview .card-bottom{display:flex;flex-direction:column;gap:0.75rem;}
#class-overview .steps{margin:0;padding:0;list-style:none;display:grid;gap:0.65rem;}
#class-overview .step{display:flex;gap:0.75rem;align-items:flex-start;}
#class-overview .step-num{min-width:30px;height:30px;border-radius:10px;background:rgba(47,107,85,0.10);color:var(--sxt35-primary);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-variant-numeric:tabular-nums;}
#class-overview .step-text{line-height:1.45;}
#class-overview .soft-note{margin-top:clamp(1rem,2.5vw,1.75rem);padding:0.95rem 1rem;border-radius:12px;border:1px solid var(--sxt35-border);background:rgba(255,255,255,0.55);}
#class-overview .soft-note-text{margin:0;font-size:0.95rem;line-height:1.6;color:var(--sxt35-slate);}
#class-overview .next-actions{display:flex;gap:0.75rem;flex-wrap:wrap;margin-top:clamp(1.25rem,2.5vw,2rem);}
#class-overview .link-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 1.05rem;border-radius:12px;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-primary);text-decoration:none;font-weight:800;letter-spacing:0.01em;}
#class-overview .link-button.ghost{background:transparent;color:var(--sxt35-primary);}
#class-overview .link-button:focus-visible{outline:3px solid rgba(47,107,85,0.35);outline-offset:2px;}
#class-overview .link-button:hover{border-color:rgba(47,107,85,0.35);}
@media (min-width: 768px){#class-overview .compare-grid{grid-template-columns:1fr 1fr;gap:clamp(1.25rem,3vw,1.9rem);} }
@media (prefers-reduced-motion: reduce){#class-overview *{scroll-behavior:auto;transition:none !important;animation:none !important;}}
::selection{background:rgba(123,174,143,0.35);}
/* sxt35:instructor-approach */
/* sxt35:instructor-approach */
#instructor-approach.instructor-approach{background:var(--sxt35-bg);color:var(--sxt35-text);padding:var(--section-pad,clamp(2.5rem,6vw,5.5rem)) 0;}
#instructor-approach .shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#instructor-approach .section-header{margin-bottom:clamp(1.5rem,3vw,2.25rem);}
#instructor-approach .section-title{font-family:var(--font-serif, 'Optima, Segoe UI, Candara, Gill Sans, Gill Sans MT, sans-serif');font-size:clamp(1.6rem,3.2vw,2.4rem);line-height:1.12;margin:0 0 .75rem 0;letter-spacing:-0.02em;text-wrap:balance;}
#instructor-approach .section-subtitle{margin:0;max-width:58ch;color:var(--sxt35-text);font-size:1rem;line-height:1.6;}
#instructor-approach .approach-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(1.25rem,3vw,2rem);align-items:start;}
#instructor-approach .steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem;}
#instructor-approach .step{display:grid;grid-template-columns:44px 1fr;gap:.9rem;align-items:start;padding:1rem 1rem;border-radius:var(--sxt35-radius-md,12px);background:var(--sxt35-surface);border:1px solid var(--sxt35-border);position:relative;}
#instructor-approach .step + .step{border-top:1px solid transparent;}
#instructor-approach .step::after{content:"";position:absolute;left:14px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom, transparent, rgba(18,50,38,.15), transparent);opacity:.75;pointer-events:none;}
#instructor-approach .step-index{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(123,174,143,.16);border:1px solid rgba(123,174,143,.35);color:var(--sxt35-ink);font-weight:700;font-variant-numeric:tabular-nums;position:relative;z-index:1;}
#instructor-approach .step-title{margin:0 0 .35rem 0;font-size:1.05rem;line-height:1.25;letter-spacing:-0.01em;}
#instructor-approach .step-text{margin:0;color:var(--sxt35-text);font-size:1rem;line-height:1.6;}
#instructor-approach .proof-rail{display:flex;flex-direction:column;gap:1rem;}
#instructor-approach .proof-card{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-radius-lg,14px);padding:1.25rem 1.25rem;position:relative;}
#instructor-approach .proof-card::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(43,58,54,.25);}
#instructor-approach .proof-title{margin:.25rem 0 .75rem 0;font-size:1.15rem;letter-spacing:-0.01em;}
#instructor-approach .proof-text{margin:0 0 .6rem 0;line-height:1.6;color:var(--sxt35-text);}
#instructor-approach .proof-text-last{margin-bottom:0;}
#instructor-approach .next-links{background:rgba(255,255,255,.65);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-radius-lg,14px);padding:1rem 1.1rem;}
#instructor-approach .next-links-title{font-size:.875rem;letter-spacing:.02em;text-transform:none;color:var(--sxt35-ink);font-weight:700;margin-bottom:.65rem;}
#instructor-approach .link-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;}
#instructor-approach .link{display:inline-flex;align-items:center;gap:.5rem;color:var(--sxt35-ink);text-decoration:none;border-radius:10px;padding:.35rem .45rem;outline:none;border:1px solid transparent;}
#instructor-approach .link:hover{background:rgba(123,174,143,.12);border-color:rgba(123,174,143,.35);}
#instructor-approach .link:focus-visible{border-color:rgba(123,174,143,.7);box-shadow:0 0 0 3px rgba(123,174,143,.25);}
#instructor-approach ::selection{background:rgba(123,174,143,.28);color:var(--sxt35-ink);}
@media (max-width: 900px){#instructor-approach .approach-layout{grid-template-columns:1fr;}}
@media (prefers-reduced-motion: reduce){#instructor-approach .link{transition:none;}#instructor-approach .step{transition:none;}}

/* sxt35:booking-cta */
/* sxt35:booking-cta */
#booking-cta.booking-cta{--pad-sm:16px;--pad-md:24px;--shadow:0 10px 30px rgba(18,50,38,.10);background:var(--sxt35-bg);padding:clamp(1.75rem,4vw,3.25rem) 0;}
#booking-cta .booking-cta__inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);display:grid;grid-template-columns:1fr;gap:clamp(1rem,3.2vw,2rem);align-items:start;}
#booking-cta .booking-cta__copy{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-radius,14px);padding:var(--pad-md);box-shadow:0 1px 0 rgba(18,50,38,.06);position:relative;}
#booking-cta .booking-cta__copy:before{content:"";position:absolute;left:var(--pad-md);top:0;width:calc(100% - (var(--pad-md) * 2));height:1px;background:rgba(18,50,38,.14);} 
#booking-cta .booking-cta__eyebrow{margin:0 0 .5rem 0;font:600 .95rem/1.3 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);letter-spacing:.02em;color:var(--sxt35-secondary);}
#booking-cta .booking-cta__title{margin:0 0 .75rem 0;font:800 clamp(1.6rem,3.2vw,2.35rem)/1.1 var(--font-family-serif, 'Optima', 'Segoe UI', Candara, 'Gill Sans', 'Gill Sans MT', sans-serif);letter-spacing:-.02em;text-wrap:balance;color:var(--sxt35-ink);}
#booking-cta .booking-cta__desc{margin:0 0 1rem 0;color:var(--sxt35-text);font:500 1rem/1.6 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);max-width:38rem;}
#booking-cta .booking-cta__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0 .9rem 0;}
#booking-cta .booking-cta__primary{appearance:none;border:1px solid var(--sxt35-primary);background:var(--sxt35-primary);color:var(--sxt35-surface);border-radius:var(--sxt35-radius,12px);padding:.95rem 1.05rem;font:800 1rem/1 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);min-height:44px;cursor:pointer;}
#booking-cta .booking-cta__primary:focus-visible{outline:3px solid rgba(47,107,85,.35);outline-offset:3px;}
#booking-cta .booking-cta__primary:hover{background:#2a5f4f;}
#booking-cta .booking-cta__secondary{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-ink);border-radius:var(--sxt35-radius,12px);padding:.85rem 1rem;font:700 .98rem/1.1 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);min-height:44px;text-decoration:none;}
#booking-cta .booking-cta__secondary:focus-visible{outline:3px solid rgba(123,174,143,.45);outline-offset:3px;}
#booking-cta .booking-cta__secondary:hover{border-color:rgba(18,50,38,.35);}
#booking-cta .booking-cta__trust{display:flex;gap:.6rem;align-items:flex-start;margin-top:.8rem;padding-top:.75rem;border-top:1px solid rgba(18,50,38,.14);} 
#booking-cta .booking-cta__trust-dot{width:.55rem;height:.55rem;border-radius:999px;background:var(--sxt35-secondary);margin-top:.45rem;flex:0 0 auto;}
#booking-cta .booking-cta__trust-text{margin:0;color:var(--sxt35-text);font:500 .95rem/1.5 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);}
#booking-cta .booking-cta__panel{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;padding:var(--pad-md);box-shadow:0 1px 0 rgba(18,50,38,.06);}
#booking-cta .booking-cta__panel-title{margin:.2rem 0 .35rem 0;font:800 1.25rem/1.2 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-ink);}
#booking-cta .booking-cta__panel-sub{margin:0 0 1rem 0;color:var(--sxt35-text);font:600 .98rem/1.55 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);} 
#booking-cta .booking-cta__rows{display:flex;flex-direction:column;gap:.6rem;border-top:1px solid rgba(18,50,38,.10);padding-top:.75rem;}
#booking-cta .booking-cta__row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .7rem;border:1px solid rgba(43,58,54,.14);border-radius:12px;background:rgba(247,242,232,.55);}
#booking-cta .booking-cta__row:hover{transform:translateY(-2px);} 
#booking-cta .booking-cta__row-left{display:flex;flex-direction:column;gap:.35rem;min-width:0;}
#booking-cta .booking-cta__row-time{font:800 .92rem/1.1 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-secondary);letter-spacing:.01em;}
#booking-cta .booking-cta__row-main{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;}
#booking-cta .booking-cta__row-class{font:800 1rem/1.2 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-ink);max-width:18rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
#booking-cta .booking-cta__row-level{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(123,174,143,.55);background:rgba(123,174,143,.16);color:var(--sxt35-ink);border-radius:999px;padding:.25rem .55rem;font:800 .78rem/1 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);} 
#booking-cta .booking-cta__row-book{appearance:none;border:1px solid var(--sxt35-primary);background:var(--sxt35-surface);color:var(--sxt35-primary);border-radius:12px;padding:.65rem .8rem;font:900 .95rem/1 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);min-height:40px;cursor:pointer;white-space:nowrap;}
#booking-cta .booking-cta__row-book:focus-visible{outline:3px solid rgba(47,107,85,.35);outline-offset:3px;}
#booking-cta .booking-cta__row-book:hover{background:rgba(47,107,85,.10);} 
#booking-cta .booking-cta__modal{position:fixed;inset:0;z-index:50;}
#booking-cta .booking-cta__modal[hidden]{display:none;}
#booking-cta .booking-cta__modal-backdrop{position:absolute;inset:0;background:rgba(18,50,38,.55);} 
#booking-cta .booking-cta__modal-card{position:relative;max-width:38rem;margin:8vh auto 0 auto;background:var(--sxt35-surface);border:1px solid rgba(211,217,214,.9);border-radius:14px;box-shadow:var(--shadow);padding:clamp(1rem,3vw,1.5rem);}
#booking-cta .booking-cta__modal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgba(18,50,38,.12);} 
#booking-cta .booking-cta__modal-title{margin:0;font:900 1.3rem/1.2 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-ink);} 
#booking-cta .booking-cta__modal-close{appearance:none;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-ink);width:40px;height:40px;border-radius:12px;font:900 1.05rem/1 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);cursor:pointer;}
#booking-cta .booking-cta__modal-close:focus-visible{outline:3px solid rgba(123,174,143,.45);outline-offset:3px;}
#booking-cta .booking-cta__modal-desc{margin:.2rem 0 1rem 0;color:var(--sxt35-text);font:600 1rem/1.55 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);} 
#booking-cta .booking-cta__modal-pick{margin:0 0 .85rem 0;}
#booking-cta .booking-cta__label{display:block;margin:0 0 .35rem 0;color:var(--sxt35-text);font:800 .9rem/1.3 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);} 
#booking-cta .booking-cta__select{width:100%;appearance:none;border:1px solid rgba(211,217,214,.95);background:var(--sxt35-bg);border-radius:12px;padding:.8rem .85rem;font:800 1rem/1.2 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);color:var(--sxt35-ink);} 
#booking-cta .booking-cta__select:focus-visible{outline:3px solid rgba(47,107,85,.35);outline-offset:3px;} 
#booking-cta .booking-cta__modal-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;}
#booking-cta .booking-cta__primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:12px;padding:.95rem 1.05rem;background:var(--sxt35-primary);border:1px solid var(--sxt35-primary);color:var(--sxt35-surface);font:900 1rem/1 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);text-decoration:none;}
#booking-cta .booking-cta__primary-link:focus-visible{outline:3px solid rgba(47,107,85,.35);outline-offset:3px;} 
#booking-cta .booking-cta__secondary-button{appearance:none;border:1px solid rgba(43,58,54,.20);background:var(--sxt35-surface);color:var(--sxt35-ink);border-radius:12px;padding:.85rem 1rem;min-height:44px;font:900 .98rem/1 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);cursor:pointer;}
#booking-cta .booking-cta__secondary-button:focus-visible{outline:3px solid rgba(123,174,143,.45);outline-offset:3px;}
#booking-cta .booking-cta__modal-fineprint{margin:.9rem 0 0 0;color:rgba(18,50,38,.75);font:600 .92rem/1.55 var(--font-family-sans, 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif);} 
#booking-cta .booking-cta__primary,#booking-cta .booking-cta__row-book,#booking-cta .booking-cta__secondary-button,#booking-cta .booking-cta__primary-link,#booking-cta .booking-cta__secondary{transition:background-color .12s ease, transform .12s ease, border-color .12s ease;}
#booking-cta .booking-cta__row{transition:transform .18s ease;}
#booking-cta ::selection{background:rgba(123,174,143,.35);}
@media (min-width:768px){#booking-cta .booking-cta__inner{grid-template-columns:7fr 5fr;align-items:stretch;}#booking-cta .booking-cta__copy{padding:24px;}#booking-cta .booking-cta__panel{padding:24px;}}
@media (prefers-reduced-motion:reduce){#booking-cta .booking-cta__row,#booking-cta .booking-cta__primary,#booking-cta .booking-cta__row-book,#booking-cta .booking-cta__secondary-button,#booking-cta .booking-cta__primary-link{transition:none!important;}}

/* sxt35:faq-preview */
/* sxt35:faq-preview */
#faq-preview.faq-preview{background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(2rem,5vw,4rem) var(--sxt35-gutter,clamp(1rem,4vw,3rem));}
#faq-preview .faq-shell{max-width:72rem;margin:0 auto;}
#faq-preview .faq-header{margin-bottom:1.5rem;}
#faq-preview .faq-title{font-family:var(--font-serif, 'Optima');font-size:clamp(1.6rem,2.6vw,2.25rem);line-height:1.1;letter-spacing:-0.02em;margin:0 0 0.6rem 0;text-wrap:balance;}
#faq-preview .faq-lead{margin:0;max-width:60ch;font-size:1rem;line-height:1.6;color:var(--sxt35-text);}
#faq-preview .faq-list{display:grid;gap:0.75rem;}
#faq-preview .faq-item{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-radius-lg,14px);}
#faq-preview .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:transparent;border:0;padding:1rem 1rem;cursor:pointer;color:var(--sxt35-ink);font-family:var(--font-sans,'Segoe UI');font-size:1rem;line-height:1.4;}
#faq-preview .faq-q-text{text-align:left;font-weight:650;}
#faq-preview .faq-icon{flex:0 0 auto;width:2rem;height:2rem;border-radius:10px;border:1px solid var(--sxt35-border);display:inline-flex;align-items:center;justify-content:center;background:var(--sxt35-bg);color:var(--sxt35-ink);font-weight:700;}
#faq-preview .faq-a{padding:0 1rem 1rem 1rem;}
#faq-preview .faq-a-p{margin:0.55rem 0 0 0;font-size:0.98rem;line-height:1.6;color:var(--sxt35-text);}
#faq-preview .faq-link{color:var(--sxt35-primary);text-decoration:underline;text-underline-offset:0.18em;}
#faq-preview .faq-link:focus-visible{outline:3px solid var(--sxt35-secondary);outline-offset:2px;border-radius:8px;}
#faq-preview .faq-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 1rem;border-radius:var(--sxt35-radius-md,12px);background:var(--sxt35-primary);color:var(--sxt35-surface);text-decoration:none;font-weight:700;letter-spacing:0.01em;border:1px solid var(--sxt35-primary);}
#faq-preview .faq-btn:focus-visible{outline:3px solid var(--sxt35-secondary);outline-offset:2px;}
#faq-preview .faq-btn:hover{filter:brightness(1.03);} 
#faq-preview .faq-q:focus-visible{outline:3px solid var(--sxt35-secondary);outline-offset:2px;border-radius:12px;}
@media (prefers-reduced-motion: reduce){#faq-preview .faq-btn,#faq-preview .faq-q{transition:none !important;}}
#faq-preview .faq-cta{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--sxt35-border);display:flex;align-items:center;justify-content:space-between;gap:1rem;}
#faq-preview .faq-cta-text{margin:0;color:var(--sxt35-text);font-size:0.95rem;}
@media (max-width:640px){#faq-preview{padding-left:1rem;padding-right:1rem;}
#faq-preview .faq-q{padding:0.95rem 0.9rem;}
#faq-preview .faq-a{padding-left:0.9rem;padding-right:0.9rem;}
#faq-preview .faq-cta{flex-direction:column;align-items:flex-start;}}
/* icon state (best-effort without relying on JS) */
#faq-preview .faq-item[data-sxt35-ui-state="open"] .faq-icon{background:var(--sxt35-secondary);border-color:var(--sxt35-secondary);color:var(--sxt35-ink);} 
/* end section */
/* sxt35:pricing-tiers */
/* sxt35:pricing-tiers */
#pricing-tiers.pricing-tiers{background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(2.5rem,6vw,5rem) 0;}
#pricing-tiers .pricing-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#pricing-tiers .pricing-header{display:flex;flex-direction:column;gap:0.75rem;margin-bottom:clamp(1.5rem,4vw,3rem);}
#pricing-tiers .pricing-title{font-family:var(--sxt35-serif, 'Optima','Segoe UI',Candara,'Gill Sans',sans-serif);font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.1;letter-spacing:-0.02em;text-wrap:balance;margin:0;}
#pricing-tiers .pricing-subtitle{margin:0;max-width:60ch;font-size:1rem;line-height:1.6;color:var(--sxt35-text);} 
#pricing-tiers .pricing-grid{display:grid;grid-template-columns:1fr;gap:1rem;}
#pricing-tiers .tier-card{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;padding:1.25rem;display:flex;flex-direction:column;min-height:100%;}
#pricing-tiers .tier-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:0.25rem;}
#pricing-tiers .tier-name{margin:0;font-size:1.25rem;line-height:1.2;font-family:var(--sxt35-sans,'Segoe UI',Candara,'Gill Sans','Trebuchet MS',sans-serif);}
#pricing-tiers .tier-tag{margin-top:0.1rem;background:rgba(123,174,143,0.18);color:var(--sxt35-ink);border:1px solid rgba(123,174,143,0.35);padding:0.35rem 0.6rem;border-radius:999px;font-size:0.875rem;font-weight:700;white-space:nowrap;}
#pricing-tiers .tier-price{font-variant-numeric:tabular-nums;font-size:2.25rem;letter-spacing:-0.02em;margin:0.25rem 0 0.5rem;font-weight:800;color:var(--sxt35-ink);}
#pricing-tiers .tier-desc{margin:0 0 0.9rem;line-height:1.6;color:var(--sxt35-text);} 
#pricing-tiers .tier-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.55rem;border-top:1px solid rgba(18,50,38,0.08);padding-top:0.85rem;margin-top:auto;}
#pricing-tiers .feature-row{display:flex;gap:0.6rem;align-items:flex-start;line-height:1.4;font-size:0.95rem;color:var(--sxt35-text);} 
#pricing-tiers .feature-dot{color:var(--sxt35-secondary);font-weight:900;font-size:1.1rem;line-height:1;transform:translateY(0.05rem);} 
#pricing-tiers .tier-cta{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;border-radius:12px;padding:0.8rem 1rem;margin-top:1rem;background:var(--sxt35-primary);color:var(--sxt35-surface);font-weight:800;letter-spacing:0.01em;border:1px solid var(--sxt35-primary);}
#pricing-tiers .tier-cta:focus-visible{outline:3px solid rgba(47,107,85,0.35);outline-offset:3px;}
#pricing-tiers .tier-cta:hover{background:#2a5e4e;}
#pricing-tiers .tier-cta-secondary{background:var(--sxt35-surface);color:var(--sxt35-ink);border:1px solid var(--sxt35-primary);}
#pricing-tiers .tier-cta-secondary:hover{background:rgba(47,107,85,0.08);} 
#pricing-tiers .mat-policy{margin-top:clamp(1.75rem,4vw,3.5rem);border-top:1px solid rgba(18,50,38,0.10);padding-top:clamp(1.25rem,3vw,2rem);} 
#pricing-tiers .mat-wrap{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;padding:1.25rem;max-width:65rem;}
#pricing-tiers .mat-title{margin:0 0 0.6rem;font-size:1.25rem;line-height:1.25;color:var(--sxt35-ink);}
#pricing-tiers .mat-body{margin:0 0 1rem;line-height:1.6;color:var(--sxt35-text);max-width:70ch;}
#pricing-tiers .mat-list{display:flex;flex-direction:column;gap:0.65rem;padding:0;margin:0 0 0.9rem;}
#pricing-tiers .mat-item{display:flex;gap:0.6rem;align-items:flex-start;line-height:1.45;font-size:0.98rem;color:var(--sxt35-text);} 
#pricing-tiers .mat-bullet{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;background:rgba(123,174,143,0.18);border:1px solid rgba(123,174,143,0.35);color:var(--sxt35-primary);font-weight:900;flex:0 0 auto;}
#pricing-tiers .mat-link{display:inline-flex;align-items:center;gap:0.5rem;color:var(--sxt35-primary);font-weight:800;text-decoration:none;border-bottom:1px solid rgba(47,107,85,0.35);padding-bottom:0.1rem;}
#pricing-tiers .mat-link:focus-visible{outline:3px solid rgba(47,107,85,0.35);outline-offset:3px;border-radius:8px;}
#pricing-tiers .mat-link:hover{border-bottom-color:rgba(47,107,85,0.75);} 
#pricing-tiers ::selection{background:rgba(123,174,143,0.35);} 
@media (min-width: 640px){
  #pricing-tiers .pricing-grid{grid-template-columns:repeat(2,1fr);}
  #pricing-tiers .tier-card{padding:1.3rem;}
}
@media (min-width: 768px){
  #pricing-tiers .pricing-grid{grid-template-columns:repeat(3,1fr);}
}
@media (prefers-reduced-motion: reduce){
  #pricing-tiers .tier-cta,#pricing-tiers .mat-link{transition:none !important;}
}

/* sxt35:mat-policy */
/* sxt35:mat-policy */
#mat-policy.mat-policy{background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(2rem,4.5vw,4rem) 0;}
#mat-policy .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#mat-policy .section-header{margin-bottom:clamp(1.5rem,3.5vw,2.5rem);}
#mat-policy .section-title{font-family:'Optima','Segoe UI',Candara,'Gill Sans','Gill Sans MT',sans-serif;font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.15;margin:0 0 .5rem;letter-spacing:-0.02em;text-wrap:balance;}
#mat-policy .section-subtitle{margin:0;max-width:52ch;font-size:1rem;line-height:1.6;color:var(--sxt35-text);}
#mat-policy .policy-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(1rem,3vw,1.5rem);align-items:start;}
#mat-policy .policy-card{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-radius,14px);padding:clamp(1.25rem,2.2vw,1.75rem);box-shadow:0 1px 0 rgba(18,50,38,.08);}
#mat-policy .policy-card--alt{background:var(--sxt35-surface);position:relative;}
#mat-policy .card-title{margin:0 0 .75rem;font-size:1.05rem;letter-spacing:-0.01em;}
#mat-policy .checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem;}
#mat-policy .check-item{position:relative;padding-left:1.35rem;line-height:1.5;}
#mat-policy .check-item::before{content:"";position:absolute;left:0;top:.55rem;width:10px;height:6px;border-left:2px solid var(--sxt35-primary);border-bottom:2px solid var(--sxt35-primary);transform:rotate(-45deg);}
#mat-policy .badge{display:inline-block;vertical-align:middle;margin-right:.45rem;font-size:.8rem;line-height:1;padding:.15rem .5rem;border-radius:999px;border:1px solid color-mix(in srgb, var(--sxt35-secondary) 35%, white 65%);background:color-mix(in srgb, var(--sxt35-secondary) 20%, white 80%);color:var(--sxt35-ink);}
#mat-policy .divider{height:1px;background:color-mix(in srgb, var(--sxt35-border) 85%, transparent);margin:1.25rem 0 .95rem;}
#mat-policy .note{margin:0;font-size:.95rem;line-height:1.5;color:color-mix(in srgb, var(--sxt35-text) 85%, var(--sxt35-ink));}
#mat-policy .quick-answers{display:flex;flex-direction:column;gap:.95rem;}
#mat-policy .qa-q{margin:0;font-weight:700;font-size:.98rem;}
#mat-policy .qa-a{margin:.25rem 0 0;line-height:1.55;color:color-mix(in srgb, var(--sxt35-text) 90%, var(--sxt35-ink));}
#mat-policy .cta-row{display:flex;gap:1rem;align-items:center;justify-content:flex-start;margin-top:clamp(1.5rem,3vw,2.2rem);}
#mat-policy .link-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.85rem 1rem;border-radius:var(--sxt35-radius,12px);background:var(--sxt35-primary);color:var(--sxt35-surface);text-decoration:none;font-weight:700;letter-spacing:-0.01em;}
#mat-policy .ghost-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.85rem 1rem;border-radius:var(--sxt35-radius,12px);border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-ink);text-decoration:none;font-weight:700;letter-spacing:-0.01em;}
#mat-policy .link-cta:hover{background:color-mix(in srgb, var(--sxt35-primary) 88%, var(--sxt35-secondary) 12%);}
#mat-policy .ghost-cta:hover{border-color:color-mix(in srgb, var(--sxt35-secondary) 60%, var(--sxt35-border) 40%);}
#mat-policy a:focus-visible, #mat-policy button:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-primary) 55%, white 45%);outline-offset:3px;}
#mat-policy ::selection{background:color-mix(in srgb, var(--sxt35-secondary) 35%, white 65%);}
@media (max-width:860px){#mat-policy .policy-layout{grid-template-columns:1fr;}}
@media (max-width:640px){#mat-policy .cta-row{flex-direction:column;align-items:stretch;}#mat-policy .link-cta,#mat-policy .ghost-cta{width:100%;}}
@media (prefers-reduced-motion: reduce){#mat-policy .link-cta,#mat-policy .ghost-cta{transition:none;}}
/* sxt35:faq */
/* sxt35:faq */
.section-faq{background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(2.5rem,5vw,4.5rem) 0;}
.section-faq::selection{background:var(--sxt35-secondary);color:var(--sxt35-surface);}
#faq .faq-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#faq .faq-head{display:flex;gap:1.25rem;align-items:flex-end;justify-content:space-between;margin-bottom:1.5rem;}
#faq .faq-title{font-family:var(--font-serif, var(--sxt35-ink));font-size:clamp(1.6rem,2.6vw,2.1rem);letter-spacing:-0.02em;margin:0;color:var(--sxt35-ink);font-weight:650;text-wrap:balance;}
#faq .faq-subtitle{margin:0;color:var(--sxt35-text);opacity:0.95;font-size:1rem;max-width:30rem;}
#faq .faq-list{display:flex;flex-direction:column;gap:0.75rem;}
#faq .faq-item{border:1px solid var(--sxt35-border);background:var(--sxt35-surface);border-radius:var(--sxt35-radius-md,12px);overflow:hidden;}
#faq .faq-trigger{width:100%;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0.95rem 1rem;cursor:pointer;background:transparent;border:0;color:var(--sxt35-ink);font-family:var(--font-sans, inherit);}
#faq .faq-q{font-size:1rem;font-weight:650;letter-spacing:-0.01em;}
#faq .faq-icon{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:999px;border:1px solid var(--sxt35-border);background:var(--sxt35-bg);color:var(--sxt35-primary);font-weight:700;flex:0 0 auto;transition:transform 140ms ease, background-color 140ms ease, border-color 140ms ease;}
#faq .faq-item[data-open="true"] .faq-icon{transform:rotate(45deg);background:var(--sxt35-primary);border-color:var(--sxt35-primary);color:var(--sxt35-surface);}
#faq .faq-panel{padding:0 1rem 1rem 1rem;}
#faq .faq-a{padding-top:0.15rem;color:var(--sxt35-text);font-size:0.98rem;line-height:1.6;max-width:62ch;}
#faq .faq-trigger:focus-visible{outline:3px solid var(--sxt35-secondary);outline-offset:2px;border-radius:var(--sxt35-radius-md,12px);}
#faq .faq-cta-row{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--sxt35-border);display:flex;align-items:center;gap:1rem;flex-wrap:wrap;}
#faq .faq-cta-text{margin:0;color:var(--sxt35-text);font-size:0.95rem;}
#faq .faq-link{color:var(--sxt35-primary);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;font-weight:650;}
#faq .faq-link:focus-visible{outline:3px solid var(--sxt35-secondary);outline-offset:3px;border-radius:8px;}
@media (max-width:640px){#faq .faq-head{flex-direction:column;align-items:flex-start;gap:0.5rem;}#faq .faq-q{font-size:0.98rem;}#faq .faq-panel{padding:0 0.95rem 0.95rem 0.95rem;}}
@media (prefers-reduced-motion:reduce){#faq .faq-icon{transition:none;}}

/* sxt35:contact-and-book */
/* sxt35:contact-and-book */
#contact-and-book{--pad:clamp(16px,3vw,28px);background:var(--sxt35-bg);color:var(--sxt35-text);padding:clamp(28px,6vw,64px) 0;}
#contact-and-book .contact-book__container{max-width:72rem;margin:0 auto;padding:0 var(--pad);display:grid;grid-template-columns:1.2fr 0.8fr;gap:clamp(18px,4vw,34px);align-items:start;}
#contact-and-book .contact-book__title{font-family:var(--font-serif, 'Optima');font-size:clamp(1.6rem,2.8vw,2.2rem);margin:0 0 10px;letter-spacing:-0.02em;line-height:1.15;text-wrap:balance;}
#contact-and-book .contact-book__lead{margin:0 0 18px;max-width:40ch;font-size:1rem;line-height:1.6;color:var(--sxt35-ink);} 
#contact-and-book .contact-book__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:6px 0 18px;}
#contact-and-book .contact-book__cta{appearance:none;border:1px solid var(--sxt35-primary);background:var(--sxt35-primary);color:var(--sxt35-surface);font-weight:700;border-radius:12px;padding:12px 16px;min-height:44px;cursor:pointer;}
#contact-and-book .contact-book__cta:hover{filter:brightness(1.03);} 
#contact-and-book .contact-book__cta:active{transform:translateY(1px);} 
#contact-and-book .contact-book__cta:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-primary) 55%, white 45%);outline-offset:3px;}
#contact-and-book .contact-book__link{color:var(--sxt35-primary);text-decoration:underline;text-underline-offset:3px;font-weight:600;}
#contact-and-book .contact-book__link:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-primary) 55%, white 45%);outline-offset:3px;border-radius:10px;}
#contact-and-book .contact-book__checklist{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px;}
#contact-and-book .contact-book__check{position:relative;padding-left:20px;line-height:1.45;color:var(--sxt35-ink);font-size:0.98rem;}
#contact-and-book .contact-book__check::before{content:"";position:absolute;left:0;top:0.55em;width:10px;height:10px;border-radius:50%;background:color-mix(in srgb, var(--sxt35-secondary) 45%, var(--sxt35-primary) 55%);box-shadow:0 0 0 3px color-mix(in srgb, var(--sxt35-secondary) 20%, white 80%);}

#contact-and-book .contact-book__panel{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;padding:18px;box-shadow:0 10px 30px color-mix(in srgb, var(--sxt35-primary) 10%, transparent 90%);} 
#contact-and-book .contact-book__panel-title{margin:0 0 6px;font-size:1.15rem;letter-spacing:-0.01em;font-weight:800;color:var(--sxt35-ink);} 
#contact-and-book .contact-book__panel-sub{margin:0 0 14px;color:color-mix(in srgb, var(--sxt35-text) 72%, var(--sxt35-ink) 28%);line-height:1.5;font-size:0.95rem;}

#contact-and-book .contact-book__form{display:grid;gap:12px;}
#contact-and-book .field{display:grid;gap:6px;}
#contact-and-book .field__label{font-weight:700;color:var(--sxt35-ink);font-size:0.95rem;}
#contact-and-book .field__input,#contact-and-book .field__textarea{width:100%;border:1px solid var(--sxt35-border);border-radius:12px;padding:12px 12px;font-size:1rem;font-family:inherit;background:var(--sxt35-surface);color:var(--sxt35-text);} 
#contact-and-book .field__input::placeholder,#contact-and-book .field__textarea::placeholder{color:color-mix(in srgb, var(--sxt35-text) 55%, var(--sxt35-slate) 45%);} 
#contact-and-book .field__input:focus-visible,#contact-and-book .field__textarea:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-secondary) 45%, white 55%);outline-offset:2px;border-color:color-mix(in srgb, var(--sxt35-primary) 55%, var(--sxt35-border) 45%);} 
#contact-and-book .contact-book__submit{appearance:none;border:1px solid var(--sxt35-primary);background:var(--sxt35-primary);color:var(--sxt35-surface);border-radius:12px;padding:12px 14px;font-weight:800;cursor:pointer;min-height:44px;} 
#contact-and-book .contact-book__submit:hover{filter:brightness(1.03);} 
#contact-and-book .contact-book__submit:active{transform:translateY(1px);} 
#contact-and-book .contact-book__submit:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-primary) 55%, white 45%);outline-offset:3px;}
#contact-and-book .contact-book__fineprint{margin:2px 0 0;color:color-mix(in srgb, var(--sxt35-text) 70%, var(--sxt35-ink) 30%);font-size:0.82rem;line-height:1.45;}
#contact-and-book .contact-book__policy-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px;border-top:1px solid var(--sxt35-border);padding-top:12px;}
#contact-and-book .contact-book__smalllink{color:var(--sxt35-ink);text-decoration:underline;text-underline-offset:3px;font-weight:600;font-size:0.92rem;}
#contact-and-book .contact-book__smalllink:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-secondary) 45%, white 55%);outline-offset:3px;border-radius:10px;}

/* Modal */
#contact-and-book .booking-modal{position:fixed;inset:0;display:block;z-index:50;}
#contact-and-book .booking-modal[hidden]{display:none;}
#contact-and-book .booking-modal__backdrop{position:absolute;inset:0;background:color-mix(in srgb, var(--sxt35-ink) 35%, transparent 65%);} 
#contact-and-book .booking-modal__content{position:relative;margin:10vh auto 6vh;max-width:820px;background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:14px;box-shadow:0 30px 80px color-mix(in srgb, var(--sxt35-ink) 22%, transparent 78%);padding:18px;}
#contact-and-book .booking-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:10px;border-bottom:1px solid var(--sxt35-border);} 
#contact-and-book .booking-modal__title{margin:0;font-size:1.35rem;letter-spacing:-0.02em;font-weight:900;color:var(--sxt35-ink);} 
#contact-and-book .booking-modal__text{margin:12px 0 12px;line-height:1.6;color:var(--sxt35-ink);} 
#contact-and-book .booking-modal__close{appearance:none;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);color:var(--sxt35-ink);border-radius:12px;font-size:22px;line-height:1;min-height:44px;min-width:44px;cursor:pointer;}
#contact-and-book .booking-modal__close:hover{background:color-mix(in srgb, var(--sxt35-bg) 60%, white 40%);} 
#contact-and-book .booking-modal__close:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-secondary) 45%, white 55%);outline-offset:3px;}

#contact-and-book .booking-modal__rows{display:grid;gap:10px;margin-top:12px;}
#contact-and-book .class-row{display:grid;grid-template-columns:140px 1fr auto;gap:14px;align-items:center;background:var(--sxt35-bg);border:1px solid var(--sxt35-border);border-radius:14px;padding:14px 14px;}
#contact-and-book .class-row__time{font-weight:900;color:var(--sxt35-ink);font-variant-numeric:tabular-nums;letter-spacing:0.01em;}
#contact-and-book .class-row__name{font-weight:900;color:var(--sxt35-ink);line-height:1.2;margin-bottom:6px;max-width:28ch;text-wrap:balance;}
#contact-and-book .class-row__meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
#contact-and-book .level-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid color-mix(in srgb, var(--sxt35-primary) 35%, var(--sxt35-border) 65%);background:color-mix(in srgb, var(--sxt35-secondary) 22%, white 78%);color:var(--sxt35-ink);font-weight:800;font-size:0.88rem;}
#contact-and-book .class-row__inst{color:color-mix(in srgb, var(--sxt35-text) 70%, var(--sxt35-ink) 30%);font-weight:700;font-size:0.88rem;}
#contact-and-book .class-row__book{appearance:none;border:1px solid var(--sxt35-primary);background:var(--sxt35-primary);color:var(--sxt35-surface);border-radius:12px;padding:10px 14px;font-weight:900;cursor:pointer;min-height:44px;}
#contact-and-book .class-row__book:hover{transform:translateY(-2px);} 
#contact-and-book .class-row__book:active{transform:translateY(-1px);} 
#contact-and-book .class-row__book:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-primary) 55%, white 45%);outline-offset:3px;}

#contact-and-book .booking-modal__footer{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;border-top:1px solid var(--sxt35-border);padding-top:12px;margin-top:14px;}
#contact-and-book .booking-modal__secondary{color:var(--sxt35-ink);text-decoration:underline;text-underline-offset:3px;font-weight:700;}
#contact-and-book .booking-modal__secondary:focus-visible{outline:3px solid color-mix(in srgb, var(--sxt35-secondary) 45%, white 55%);outline-offset:3px;border-radius:10px;}

#contact-and-book *::selection{background:color-mix(in srgb, var(--sxt35-secondary) 35%, white 65%);color:var(--sxt35-ink);} 
#contact-and-book [data-sxt35-ui="close-booking-modal"]{user-select:none;}
@media (max-width: 900px){
  #contact-and-book .contact-book__container{grid-template-columns:1fr;}
  #contact-and-book .class-row{grid-template-columns:1fr;gap:8px;}
  #contact-and-book .class-row__book{justify-self:start;}
  #contact-and-book .booking-modal__content{margin:12vh 14px 6vh;}
}
@media (prefers-reduced-motion: reduce){
  #contact-and-book .class-row__book:hover{transform:none;}
  #contact-and-book .contact-book__cta:hover{filter:none;}
  #contact-and-book .contact-book__submit:hover{filter:none;}
}

.policy-page{background:var(--sxt35-bg);color:var(--sxt35-text);font-family:var(--sxt35-font);line-height:1.5;margin:0;padding:0}.policy-wrap{max-width:980px;margin:0 auto;padding:24px 16px 32px 16px}.policy-header{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-lg);padding:18px 18px}.policy-title{margin:0 0 8px 0;font-family:var(--sxt35-font-display);font-size:28px;line-height:1.2;color:var(--sxt35-ink)}.policy-lead{margin:0;font-size:15px;color:var(--sxt35-text)}.policy-content{margin-top:16px;background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-lg);padding:18px 18px}.policy-section-title{margin:18px 0 10px 0;font-size:18px;color:var(--sxt35-ink);font-weight:700}.policy-section-title:first-child{margin-top:0}.policy-paragraph{margin:0 0 12px 0;font-size:14.5px}.policy-legal{font-weight:700}.policy-footer{margin-top:16px;background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--sxt35-lg);padding:18px 18px}.policy-grid{display:grid;grid-template-columns:1fr;gap:12px}.policy-item{border:1px solid var(--sxt35-border);border-radius:var(--radius-md);padding:12px 12px;background:var(--sxt35-bg)}.policy-item-label{font-size:12px;color:var(--sxt35-slate);letter-spacing:.2px;text-transform:none;margin-bottom:6px}.policy-item-value{font-size:14px;color:var(--sxt35-text);word-break:break-word}.policy-link{color:var(--sxt35-primary);text-decoration:none}.policy-link:hover{text-decoration:underline}.policy-small{margin-top:12px;font-size:12.5px;color:var(--sxt35-slate)}@media (min-width:820px){.policy-grid{grid-template-columns:1fr 1fr}}
/* Design-system based policy styling (no external libraries) */
.policy-page{background:var(--sxt35-bg);color:var(--sxt35-text);font-family:var(--sxt35-font);line-height:1.5;}
.policy-wrapper{max-width:980px;margin:0 auto;padding:28px 18px 40px;}
.policy-header{border:1px solid var(--sxt35-border);background:var(--sxt35-surface);border-radius:var(--radius-lg);padding:18px 18px 16px;}
.policy-title{margin:0 0 6px 0;font-family:var(--sxt35-font-display);font-weight:700;color:var(--sxt35-ink);font-size:28px;letter-spacing:0.2px;}
.policy-subtitle{margin:0;color:var(--sxt35-slate);font-size:13px;}
.policy-section{margin-top:16px;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);border-radius:var(--radius-lg);padding:16px 18px;}
.policy-section-title{margin:0 0 10px 0;font-size:18px;color:var(--sxt35-ink);font-weight:700;}
.policy-text{margin:0 0 10px 0;}
.policy-strong{font-weight:700;color:var(--sxt35-ink);}
.policy-list{margin:0 0 10px 18px;padding:0;}
.policy-list-item{margin:6px 0;}
.policy-link{color:var(--sxt35-primary);text-decoration:underline;}
.policy-link:hover{color:var(--sxt35-accent);}
.policy-small{font-size:12.5px;color:var(--sxt35-slate);}
.policy-footer{margin-top:16px;border:1px solid var(--sxt35-border);background:var(--sxt35-surface);border-radius:var(--radius-lg);padding:16px 18px;}
.policy-footer-title{margin:0 0 10px 0;font-size:16px;color:var(--sxt35-ink);font-weight:800;}
.policy-date{font-weight:700;color:var(--sxt35-primary);}

 :root{--sxt35-primary:#2F6B55;--sxt35-secondary:#7BAE8F;--sxt35-accent:#7BAE8F;--sxt35-ink:#123226;--sxt35-slate:#2B3A36;--sxt35-mist:#D3D9D6;--sxt35-border:#D3D9D6;--sxt35-surface:#FFFFFF;--sxt35-bg:#F7F2E8;--sxt35-text:#1F2E29;--sxt35-font:'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif;--sxt35-font-display:'Optima', 'Segoe UI', Candara, 'Gill Sans', 'Gill Sans MT', sans-serif;}
.policy-page{background:var(--sxt35-bg);color:var(--sxt35-text);font-family:var(--sxt35-font);line-height:1.5;}
.policy-wrapper{max-width:980px;margin:0 auto;padding:32px 18px 44px;}
.policy-main{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--radius-lg,14px);box-shadow:0 10px 30px rgba(18,50,38,0.06);}
.policy-header{padding:22px 22px 10px;border-bottom:1px solid var(--sxt35-border);}
.policy-title{margin:0 0 8px;font-family:var(--sxt35-font-display);font-size:34px;letter-spacing:-0.2px;color:var(--sxt35-ink);}
.policy-lead{margin:0;font-size:16px;max-width:80ch;}
.policy-section{padding:16px 22px;}
.policy-ua-note{background:linear-gradient(180deg, rgba(123,174,143,0.10), rgba(123,174,143,0));border-top:1px solid var(--sxt35-border);}
.policy-h2{margin:0 0 10px;font-size:18px;color:var(--sxt35-slate);}
.policy-p{margin:0 0 10px;}
.policy-list{margin:0;padding-left:18px;}
.policy-li{margin:6px 0;}
.policy-quote{color:var(--sxt35-ink);font-weight:600;}
.policy-contact{border:1px solid var(--sxt35-border);border-radius:var(--radius-md,12px);background:rgba(211,217,214,0.25);padding:14px 14px;}
.policy-contact-line{margin:8px 0;}
.policy-label{display:inline-block;min-width:140px;color:var(--sxt35-slate);font-weight:600;}
.policy-value{color:var(--sxt35-text);}
.policy-link{color:var(--sxt35-primary);text-decoration:underline;text-underline-offset:2px;}
.policy-link:hover{color:var(--sxt35-secondary);}
.policy-footer{padding:14px 22px 22px;border-top:1px solid var(--sxt35-border);}
.policy-small{margin:0;color:var(--sxt35-slate);font-size:13px;}
@media (max-width:640px){.policy-title{font-size:28px;}.policy-wrapper{padding:18px 12px 26px;}.policy-header,.policy-section,.policy-footer{padding-left:14px;padding-right:14px;}}

.policy-page{background:var(--sxt35-bg);color:var(--sxt35-text);font-family:var(--sxt35-font);min-height:100vh;box-sizing:border-box}
.policy-wrapper{max-width:980px;margin:0 auto;padding:24px 16px 40px}
.policy-header{background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--radius-lg);padding:18px 18px}
.policy-title{margin:0 0 8px 0;font-family:var(--sxt35-font-display);font-size:34px;line-height:1.15;color:var(--sxt35-ink)}
.policy-lead{margin:0;color:var(--sxt35-text);font-size:15.5px;line-height:1.55}
.policy-card{margin-top:14px;background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--radius-lg);padding:18px 18px}
.policy-card-title{margin:0 0 10px 0;font-size:18px;line-height:1.35;color:var(--sxt35-slate)}
.policy-list{margin:0;padding-left:20px}
.policy-li{margin:8px 0;line-height:1.55;font-size:15.5px}
.policy-text{margin:0 0 10px 0;line-height:1.6;font-size:15.5px}
.policy-text-strong{font-weight:700}
.policy-footer{margin-top:14px;background:var(--sxt35-surface);border:1px solid var(--sxt35-border);border-radius:var(--radius-lg);padding:18px 18px}
.policy-footer-grid{display:block}
.policy-footer-col{margin-top:10px}
.policy-footer-item{margin:8px 0;line-height:1.55;font-size:15.5px}
.policy-footer-label{display:inline-block;min-width:110px;color:var(--sxt35-slate);font-weight:700}
.policy-footer-value{color:var(--sxt35-text)}
.policy-link{color:var(--sxt35-primary);text-decoration:none;border-bottom:1px solid rgba(47,107,85,0.35)}
.policy-link:hover{color:var(--sxt35-ink);border-bottom-color:rgba(18,50,38,0.35)}
.policy-footer-note{margin:14px 0 0 0;line-height:1.6;font-size:15.5px;color:var(--sxt35-text)}
@media (min-width:760px){.policy-wrapper{padding-left:24px;padding-right:24px}.policy-footer-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.policy-footer-col{margin-top:0}}
section[data-sxt35-lll]:not([data-sxt35-lll='header']):not([data-sxt35-lll='footer']) { position: relative; }
section[data-sxt35-lll]:not([data-sxt35-lll='header']):not([data-sxt35-lll='footer']) { border-top: 1px solid var(--sxt35-border); }
section[data-sxt35-lll] h1, section[data-sxt35-lll] h2 { letter-spacing: -0.03em; }
section[data-sxt35-lll] [class*='rounded'] { border-radius: var(--sxt35-radius-sm, 0.25rem); }
:root {
  --sxt35-c-content-width: 72rem;
  --sxt35-c-gutter: clamp(1rem, 4vw, 3rem);
  --sxt35-c-measure: 65ch;
  --sxt35-c-heading-display: clamp(2.5rem, 6vw, 5.5rem);
}
[data-sxt35-dr] { scroll-margin-top: 1.5rem; }
main > section, main [data-sxt35-lll] { padding-inline: var(--sxt35-c-gutter); }
[data-sxt35-dr*='article'], [data-sxt35-dr*='review'] { max-width: var(--sxt35-c-measure); }
h1 { font-size: var(--sxt35-c-heading-display); }
@media (max-width: 768px) { [data-sxt35-dr] { min-width: 0; } }