/* ==========================================================================
   FITIVA PRO — Apple-style presentation layer (loads after styles.css)
   White / #f5f5f7 rhythm, Apple greys for text, Fitiva indigo as the accent,
   the brand gradient only for key words and the primary button.
   ========================================================================== */

:root{
  --slate-900:#1d1d1f; --slate-700:#424245; --slate-600:#6e6e73; --slate-500:#86868b;
  --slate-400:#a1a1a6; --slate-200:#d2d2d7; --slate-100:#e8e8ed; --slate-50:#f5f5f7;
  --card-shadow:0 2px 14px rgba(0,0,0,.06); --soft-shadow:0 24px 48px -24px rgba(0,0,0,.14);
  --ap-ink:#1d1d1f; --ap-ink-2:#6e6e73; --ap-grey:#f5f5f7; --ap-grey-2:#e8e8ed;
  --ap-accent:#4f46e5; --ap-accent-hover:#4338ca;
  --ap-grad:linear-gradient(92deg,#4f46e5 0%,#7c3aed 48%,#06b6d4 100%);
  --ap-radius:28px;
}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
body{color:var(--ap-ink);font-size:17px;line-height:1.47;}
.grad,.accent{background:var(--ap-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}

/* ---------- Navigation: thin, translucent, quiet ---------- */
.nav{background:rgba(255,255,255,.78);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);
  border-bottom:1px solid rgba(0,0,0,.08);box-shadow:none;}
.nav-inner{height:48px;}
.nav-links{gap:30px;}
.nav-links a{font-size:12px;color:rgba(29,29,31,.85);font-weight:400;}
.nav-links a:hover{opacity:1;color:#000;}
.nav-links a.current{color:var(--ap-accent);font-weight:500;}
.nav-cta{background:var(--ap-accent);padding:5px 13px;font-size:12px;font-weight:500;}
.nav-cta:hover{opacity:1;background:var(--ap-accent-hover);}
.nav-actions a[data-nav-signin]{font-size:12px;color:rgba(29,29,31,.85);}
.beta-badge{background:var(--ap-grey);color:var(--ap-ink-2);border:none;font-weight:500;letter-spacing:.02em;}
.lang-switch{background:var(--ap-grey);}
.nav-brand{color:var(--ap-ink);}

/* ---------- Buttons ---------- */
.btn{padding:13px 26px;font-size:17px;font-weight:500;letter-spacing:-.01em;transition:background .2s,color .2s,transform .2s,box-shadow .2s;}
.btn-primary,.btn-gradient{background:var(--ap-accent);color:#fff;box-shadow:none;}
.btn-primary:hover,.btn-gradient:hover{background:var(--ap-accent-hover);transform:none;box-shadow:none;}
.btn-secondary{background:var(--ap-grey-2);color:var(--ap-ink);border:none;-webkit-backdrop-filter:none;backdrop-filter:none;}
.btn-secondary:hover{background:#dededf;}
.btn-dark{background:var(--ap-ink);}
.btn-outline{border:1.5px solid var(--ap-accent);color:var(--ap-accent);}
.hero-ctas{gap:14px;}

/* ---------- Section typography ---------- */
section{padding:112px 24px;}
.section-eyebrow{font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ap-accent);margin-bottom:14px;}
.section-title{font-size:clamp(38px,5vw,56px);font-weight:600;letter-spacing:-.025em;line-height:1.07;color:var(--ap-ink);margin-bottom:16px;text-wrap:balance;}
.section-sub{font-size:21px;color:var(--ap-ink-2);line-height:1.4;max-width:640px;}
.section-head{margin-bottom:56px;}
h3{letter-spacing:-.015em;}

/* ---------- Subpage heroes: light, big, centred ---------- */
.hero,.hero--dark,.hero--photo{
  background:#fff!important;background-image:none!important;color:var(--ap-ink);padding:150px 24px 88px;}
.hero::before,.hero::after,.hero--dark::before{display:none!important;content:none!important;}
.hero h1{font-weight:600;letter-spacing:-.03em;line-height:1.05;color:var(--ap-ink);font-size:clamp(44px,6.4vw,76px);}
.hero h1.small{font-size:clamp(40px,5.6vw,68px);}
.hero-eyebrow,.hero--dark .hero-eyebrow{background:none;border:none;padding:0;color:var(--ap-accent);font-size:17px;font-weight:600;letter-spacing:0;text-transform:none;-webkit-backdrop-filter:none;backdrop-filter:none;margin-bottom:18px;}
.hero-sub,.hero--dark .hero-sub{color:var(--ap-ink-2);font-size:clamp(19px,2.2vw,24px);line-height:1.38;}
.hero-trust,.hero--dark .hero-trust,.hero--dark .hero-trust span,.hero--dark .hero-trust svg{color:var(--ap-ink-2);margin-top:44px;}
.hero-trust a{color:var(--ap-accent)!important;opacity:1!important;}
.hero-freenote{color:var(--ap-ink-2);}
.hero--dark .btn-primary,.hero .btn-primary{background:var(--ap-accent);color:#fff;box-shadow:none;}
.hero--dark .btn-primary:hover,.hero .btn-primary:hover{background:var(--ap-accent-hover);transform:none;box-shadow:none;}
.hero--dark .btn-secondary,.hero .btn-secondary{background:var(--ap-grey-2);color:var(--ap-ink);border:none;}
.hero--dark .btn-secondary:hover,.hero .btn-secondary:hover{background:#dededf;}

/* page headers (about/blog/contact/events/legal) */
.page-header,.page-header--dark{background:#fff!important;background-image:none!important;padding:150px 24px 72px;color:var(--ap-ink);}
.page-header h1{font-weight:600;letter-spacing:-.03em;color:var(--ap-ink)!important;}
.page-header .page-sub{color:var(--ap-ink-2)!important;font-size:21px;}
.page-header--dark .section-eyebrow{color:var(--ap-accent)!important;}
.page-header::before,.page-header::after{display:none!important;}

/* ---------- Trust rows ---------- */
.trust{background:#fff;border-top:1px solid var(--ap-grey-2);border-bottom:1px solid var(--ap-grey-2);}
.trust-item{color:var(--ap-ink-2);font-size:14px;}
.trust-item svg{color:var(--ap-accent);}
.trust-strip{background:#fff;border:none;}
.trust-badge-text strong{color:var(--ap-ink);} .trust-badge-text span{color:var(--ap-ink-2);}
.trust-badge-icon{background:var(--ap-grey);color:var(--ap-accent);border:none;border-radius:12px;}

/* ---------- Cards & tiles (Apple bento feel) ---------- */
.feature,.benefit-card,.price-card,.faq-item,.testimonial,.replace-card,.step,.team-card,.plan-cta,.contact-card{
  border:none!important;border-radius:var(--ap-radius);box-shadow:none;}
.feature,.benefit-card,.testimonial,.step,.team-card{background:var(--ap-grey);padding:36px 32px;}
section[style*="slate-50"] .feature,section[style*="slate-50"] .benefit-card,section[style*="slate-50"] .testimonial,
section[style*="slate-50"] .team-card,section[style*="slate-50"] .step{background:#fff;box-shadow:var(--card-shadow);}
.feature:hover,.benefit-card:hover{transform:none;box-shadow:var(--card-shadow);}
.feature h3,.benefit-card h3{color:var(--ap-ink);font-weight:600;font-size:21px;}
.feature p,.benefit-card p{color:var(--ap-ink-2);font-size:15px;line-height:1.5;}
.feature-icon,.benefit-icon{border-radius:14px;}
.replace-card{box-shadow:var(--card-shadow);}
.price-card{background:var(--ap-grey);}
.price-card.featured{background:var(--ap-ink);color:#fff;}
.price-card:not(.featured) .price-btn{background:var(--ap-accent);color:#fff;border-radius:980px;}
.price-card:not(.featured) .price-btn:hover{background:var(--ap-accent-hover);}
.price-card.featured .price-btn{background:#fff;color:var(--ap-ink);border-radius:980px;}
.faq-item{background:var(--ap-grey);padding:6px 28px;margin-bottom:10px;}
.faq-q{color:var(--ap-ink);font-weight:600;}
.faq-a{color:var(--ap-ink-2);}
.faq-toggle{background:#fff;color:var(--ap-ink);}
.contact-grid .form{background:var(--ap-grey);border-radius:var(--ap-radius);padding:36px;}
.form-row input,.form-row select,.form-row textarea{border-radius:12px;border:1px solid var(--ap-grey-2);background:#fff;}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--ap-accent);box-shadow:0 0 0 4px rgba(79,70,229,.12);}

/* ---------- Stats ---------- */
.stats{background:#fff;}
.stat-num{background:var(--ap-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;font-weight:600;letter-spacing:-.03em;}
.stat-label{color:var(--ap-ink-2);font-size:15px;}

/* ---------- Closing CTA bands: Apple black, white primary ---------- */
.final-cta,.cta--dark{background:#0a0f1e!important;background-image:radial-gradient(90% 70% at 50% 0%,#151b36 0%,#0a0f1e 60%)!important;isolation:isolate;padding:120px 24px;}
.final-cta::before,.cta--dark::before{display:none!important;}
.final-cta .section-title,.cta--dark .section-title{background:none;-webkit-text-fill-color:#fff;color:#fff;text-shadow:none;font-weight:600;}
.final-cta .section-sub,.cta--dark .section-sub{color:#a1a1a6;}
.cta--dark .btn-primary,.final-cta .btn-primary{background:#fff;color:var(--ap-ink);box-shadow:none;}
.cta--dark .btn-primary:hover,.final-cta .btn-primary:hover{background:#e8e8ed;transform:none;box-shadow:none;}
.cta--dark .btn-secondary,.final-cta .btn-secondary{background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff;}
.cta--dark .btn-secondary:hover,.final-cta .btn-secondary:hover{background:rgba(255,255,255,.1);}

/* ---------- Footer: light grey, small ---------- */
footer{background:var(--ap-grey);color:var(--ap-ink-2);padding:56px 24px 28px;font-size:12px;border-top:1px solid var(--ap-grey-2);}
.footer-brand{color:var(--ap-ink);} .footer-brand span{color:var(--ap-ink-2)!important;}
.footer-tag{color:var(--ap-ink-2);font-size:12px;}
.footer-col h4{color:var(--ap-ink);font-size:12px;}
.footer-col a{color:var(--ap-ink-2);} .footer-col a:hover{color:var(--ap-ink);}
.footer-bottom{border-top:1px solid var(--ap-grey-2);color:var(--ap-ink-2);font-size:12px;}

/* ---------- Floating "Fragen?" bubble + consent banner ---------- */
.chat-fab,.help-fab{background:var(--ap-ink);color:#fff;}
#consent-banner{border-radius:20px;box-shadow:0 20px 50px -20px rgba(0,0,0,.25);}

/* ---------- Mobile nav drawer stays white ---------- */
@media (max-width:1100px){ .nav .nav-collapse{background:#fff;} }

/* ==========================================================================
   HOME — Apple storytelling on white
   ========================================================================== */
/* hero: keep the film, clean the type */
.hero-x-grid,.hero-x-aura,.hero-x-orbit,#hero-canvas{display:none!important;}
.hero-x-scrim{background:linear-gradient(180deg,rgba(5,7,15,.55) 0%,rgba(5,7,15,.42) 40%,rgba(5,7,15,.78) 100%)!important;}
.hero-x-eyebrow{background:none!important;border:none!important;padding:0!important;color:#c7d2fe!important;font-size:15px!important;font-weight:600!important;letter-spacing:.02em!important;text-transform:none!important;}
.hero-x-title{font-weight:700!important;letter-spacing:-.035em!important;line-height:1.02!important;}
.hero-x-sub{color:rgba(255,255,255,.78)!important;font-size:clamp(18px,2vw,22px)!important;}
.hero-x-cta{font-size:17px;padding:13px 26px;}
.hero-x-cta-primary{background:var(--ap-grad)!important;background-size:100% 100%!important;box-shadow:none!important;}
.hero-x-cta-primary:hover{transform:none!important;filter:brightness(1.08);}
.hero-x-cta-ghost{background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.28)!important;color:#fff!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
.hero-x-meta{color:rgba(255,255,255,.55)!important;}
.hero-x-mark{width:72px!important;height:72px!important;margin-bottom:22px!important;opacity:1!important;}
.hero-x-mark svg{width:72px!important;height:72px!important;}
.hero-x-mark::before{display:none!important;}

/* light story sections */
.ap-section{padding:120px 24px;text-align:center;}
.ap-section.alt{background:var(--ap-grey);}
.ap-inner{max-width:860px;margin:0 auto;}
.ap-kicker{display:block;font-size:15px;font-weight:600;color:var(--ap-accent);margin-bottom:18px;letter-spacing:0;}
.ap-lines{display:flex;flex-direction:column;gap:14px;}
.ap-line{font-size:clamp(32px,4.4vw,52px);font-weight:600;letter-spacing:-.028em;line-height:1.08;color:var(--ap-ink);margin:0;text-wrap:balance;}
.ap-line .accent{font-weight:700;}
.ap-note{font-size:21px;line-height:1.42;color:var(--ap-ink-2);max-width:640px;margin:26px auto 0;}
.ap-manifesto .manifesto-line{color:var(--ap-ink);font-size:clamp(34px,4.6vw,54px);font-weight:600;letter-spacing:-.028em;line-height:1.1;max-width:22ch;margin:0 auto 28px;}
.ap-manifesto .manifesto-tags span{background:#fff;color:var(--ap-ink);border:none;font-size:14px;font-weight:500;padding:9px 16px;border-radius:980px;box-shadow:var(--card-shadow);}
.ap-section.alt .manifesto-tags span{background:#fff;}
.ap-section:not(.alt) .manifesto-tags span{background:var(--ap-grey);box-shadow:none;}

/* trust badges as one white panel */
.ap-trustwrap{padding:0 24px 8px;}
.ap-trustwrap .trust-strip{max-width:1060px;margin:-60px auto 0;background:#fff;border-radius:var(--ap-radius);box-shadow:var(--soft-shadow);padding:26px 32px;position:relative;z-index:2;}
.ap-trustwrap .trust-strip-inner{gap:18px 24px;}

/* stats */
.ap-stats{padding:24px 24px 120px;}
.ap-stats .stats-grid{max-width:1000px;}
.ap-stats .stat-num{font-size:clamp(44px,5vw,64px);}

/* product proof inside chapter 03 */
.home-proof{margin:56px auto 0;padding:56px 24px 0;border-radius:var(--ap-radius);background:var(--ap-grey);overflow:hidden;max-width:820px;height:520px;}
.home-proof::before{display:none;}
.ap-section.alt .home-proof{background:#fff;box-shadow:var(--card-shadow);}
.home-proof-item{height:auto;}
.home-proof-item--l{margin-top:26px;}
@media (max-width:700px){ .home-proof{height:470px;padding:40px 16px 0;} .home-proof-item--l{margin-top:0;} }

/* the fork: two tiles */
.ap-fork{padding:120px 24px;}
.ap-fork .journey-title{color:var(--ap-ink);font-size:clamp(34px,4.6vw,52px);font-weight:600;letter-spacing:-.028em;margin-bottom:44px;}
.ap-fork .journey-cards{max-width:1000px;gap:20px;}
.ap-fork .journey-card{background:#fff;border:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:40px 36px;border-radius:var(--ap-radius);box-shadow:var(--card-shadow);}
.ap-fork .journey-card::before{display:none;}
.ap-fork .journey-cards:hover .journey-card{opacity:1;}
.ap-fork .journey-card:hover{transform:translateY(-3px);box-shadow:var(--soft-shadow);border-color:transparent;}
.ap-fork .journey-tag{color:var(--ap-accent);font-size:14px;letter-spacing:0;text-transform:none;font-weight:600;}
.ap-fork .journey-card h3{color:var(--ap-ink);font-size:28px;font-weight:600;letter-spacing:-.02em;}
.ap-fork .journey-card p{color:var(--ap-ink-2);font-size:17px;line-height:1.45;}
.ap-fork .journey-cta{background:var(--ap-accent)!important;color:#fff!important;box-shadow:none!important;font-size:15px;padding:11px 20px;}
.ap-fork .journey-card:hover .journey-cta{background:var(--ap-accent-hover)!important;}

/* story band stays cinematic; only the type gets Apple weight */
.story-band-line{font-weight:600;letter-spacing:-.03em;}

/* closing band */
.ap-close{background:#0a0f1e;color:#fff;text-align:center;padding:128px 24px;position:relative;isolation:isolate;}
.ap-close::before{content:'';position:absolute;inset:0;background:radial-gradient(70% 60% at 50% 0%,rgba(79,70,229,.28),transparent 70%);z-index:-1;}
.ap-close .close-title{background:none;-webkit-text-fill-color:#fff;color:#fff;text-shadow:none;font-weight:600;letter-spacing:-.03em;font-size:clamp(36px,5vw,60px);max-width:16ch;}
.ap-close .close-sub{color:#a1a1a6;font-size:21px;}
.ap-close .close-btn--primary{background:#fff;color:var(--ap-ink);box-shadow:none;}
.ap-close .close-btn--primary:hover{background:#e8e8ed;transform:none;box-shadow:none;}
.ap-close .close-btn--ghost{background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff;}
.ap-close .close-btn--ghost:hover{background:rgba(255,255,255,.1);}

@media (max-width:600px){
  .ap-section{padding:80px 20px;} .ap-line{font-size:clamp(28px,8vw,36px);} .ap-note{font-size:18px;}
  .ap-trustwrap .trust-strip{margin-top:-30px;padding:18px 16px;}
  .ap-fork{padding:80px 20px;} .ap-close{padding:88px 20px;}
  section{padding:80px 20px;}
}

/* ==========================================================================
   Apple global nav: dark translucent on every page
   ========================================================================== */
.nav{background:rgba(29,29,31,.82);border-bottom:1px solid rgba(255,255,255,.08);}
.nav-brand{color:#f5f5f7;} .nav-brand-pro{color:#a5b4fc;}
.nav-links a{color:rgba(245,245,247,.85);} .nav-links a:hover{color:#fff;}
.nav-links a.current{color:#fff;font-weight:600;}
.nav-actions a[data-nav-signin]{color:rgba(245,245,247,.85);}
.beta-badge{background:rgba(255,255,255,.12);color:#d2d2d7;}
.lang-switch{background:rgba(255,255,255,.12);}
.lang-pill{color:rgba(245,245,247,.6);} .lang-pill:hover{color:#fff;}
.lang-pill.active{background:#fff;color:#1d1d1f;}
.menu-toggle-btn:hover{background:rgba(255,255,255,.1);}
.menu-toggle-bar{background:#f5f5f7!important;}
@media (max-width:1100px){
  .nav .nav-collapse{background:#1d1d1f!important;}
  .nav .nav-collapse a{color:#f5f5f7;}
  .nav .nav-collapse a:hover,.nav .nav-collapse a:focus{background:rgba(255,255,255,.08);color:#fff;}
  .nav .nav-collapse .nav-cta{background:var(--ap-accent);color:#fff!important;}
}

/* page-header eyebrows: no pills, plain indigo kicker */
.page-header .section-eyebrow,.page-header--dark .section-eyebrow{
  background:none!important;border:none!important;padding:0!important;text-transform:none!important;letter-spacing:0!important;
  font-size:15px!important;font-weight:600!important;color:var(--ap-accent)!important;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none!important;}

/* manifesto gradient words = brand gradient */
.manifesto-line .grad{background:var(--ap-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}

/* ==========================================================================
   Blog: listing links + article pages
   ========================================================================== */
.blog-card a.blog-title-link,.blog-featured a.blog-title-link{color:inherit;text-decoration:none;}
.blog-card a.blog-title-link:hover,.blog-featured a.blog-title-link:hover{color:var(--ap-accent);}
.blog-more{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-size:15px;font-weight:600;color:var(--ap-accent);text-decoration:none;}
.blog-more:hover{text-decoration:underline;}
.blog-card,.blog-featured{border:none!important;border-radius:var(--ap-radius);box-shadow:var(--card-shadow);}
.cat-pill{border-radius:980px;background:var(--ap-grey);color:var(--ap-ink);border:none;}
.cat-pill.active{background:var(--ap-ink);color:#fff;border-color:transparent;}
.article-head{padding:150px 24px 40px;text-align:center;}
.article-head .section-eyebrow{margin-bottom:14px;}
.article-head h1{font-size:clamp(34px,4.6vw,54px);font-weight:600;letter-spacing:-.03em;line-height:1.08;color:var(--ap-ink);max-width:20ch;margin:0 auto 18px;text-wrap:balance;}
.article-meta{font-size:15px;color:var(--ap-ink-2);display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.article-body{max-width:720px;margin:0 auto;padding:24px 24px 96px;font-size:19px;line-height:1.62;color:#333336;}
.article-body p{margin:0 0 22px;}
.article-body h2{font-size:27px;font-weight:600;letter-spacing:-.02em;color:var(--ap-ink);margin:46px 0 14px;line-height:1.2;}
.article-body h3{font-size:21px;font-weight:600;color:var(--ap-ink);margin:32px 0 10px;}
.article-body ul,.article-body ol{margin:0 0 22px 22px;}
.article-body li{margin-bottom:8px;}
.article-body blockquote{margin:32px 0;padding:22px 28px;border-radius:20px;background:var(--ap-grey);font-size:21px;font-weight:500;color:var(--ap-ink);line-height:1.45;}
.article-body .lead{font-size:22px;color:var(--ap-ink);line-height:1.5;}
.article-body a{color:var(--ap-accent);}
.article-author{display:flex;align-items:center;gap:14px;margin-top:48px;padding:22px 24px;border-radius:20px;background:var(--ap-grey);}
.article-author .av{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex:none;}
.article-author b{display:block;color:var(--ap-ink);font-size:16px;}
.article-author span{font-size:14px;color:var(--ap-ink-2);}
.article-back{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:600;color:var(--ap-accent);text-decoration:none;margin-top:28px;}
.article-body .lang-note{font-size:14px;color:var(--ap-ink-2);background:var(--ap-grey);border-radius:12px;padding:10px 14px;margin:0 0 28px;}
@media (max-width:600px){ .article-head{padding:120px 20px 28px;} .article-body{font-size:17px;padding-bottom:72px;} }

/* ---------- Live marketplace blocks (coaches / events from the app) ---------- */
.mk-section { padding: 72px 24px; background: #f5f5f7; }
.mk-section .section-head { margin-bottom: 32px; }
.mk-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; max-width: 1120px; margin: 0 auto; }
.mk-card { display: flex; gap: 16px; align-items: flex-start; background: #fff; border-radius: 22px; padding: 22px; text-decoration: none; color: #1d1d1f; box-shadow: 0 1px 2px rgba(0,0,0,.04), 0 8px 24px rgba(0,0,0,.06); transition: transform .25s ease, box-shadow .25s ease; }
.mk-card:hover { transform: translateY(-3px); box-shadow: 0 2px 4px rgba(0,0,0,.05), 0 16px 36px rgba(0,0,0,.10); }
.mk-avatar { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; flex-shrink: 0; background: #e8e8ed; }
.mk-avatar--txt { display: inline-flex; align-items: center; justify-content: center; font-weight: 700; color: #4f46e5; background: #eef2ff; font-size: 22px; }
.mk-body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.mk-name { font-weight: 700; font-size: 17px; letter-spacing: -.01em; }
.mk-verified { color: #16a34a; font-size: 14px; }
.mk-meta { font-size: 14px; color: #6e6e73; }
.mk-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 2px; }
.mk-tag { font-size: 12px; font-weight: 600; color: #4f46e5; background: #eef2ff; border-radius: 999px; padding: 4px 10px; }
.mk-rating { font-size: 13px; color: #1d1d1f; font-weight: 600; }
.mk-cta { margin-top: 6px; font-size: 14px; font-weight: 600; color: #4f46e5; }
.mk-more { text-align: center; margin-top: 28px; }
.mk-card--event .mk-body { width: 100%; }
.mk-notify { max-width: 640px; margin: 0 auto; text-align: center; }
.mk-notify form { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-top: 24px; }
.mk-notify input[type="email"] { flex: 1; min-width: 240px; padding: 14px 18px; border: 1.5px solid #d2d2d7; border-radius: 999px; font-size: 15px; font-family: inherit; }
.mk-notify .mk-note { font-size: 12px; color: #6e6e73; margin-top: 14px; }
@media (max-width: 900px) { .mk-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .mk-grid { grid-template-columns: 1fr; } .mk-section { padding: 56px 20px; } }

/* ---------- Mobile: no horizontal overflow (white bar on the right when zooming out) ---------- */
html, body { overflow-x: clip; }
@supports not (overflow-x: clip) { html, body { overflow-x: hidden; } }
.hero-x, .hero, .ap-fork, .ap-section, .final-cta, .stats { overflow-x: clip; }
.calc-tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 40px; }
.price-grid--2 { grid-template-columns: 1fr 1fr; max-width: 840px; margin-left: auto; margin-right: auto; }
@media (max-width: 900px) {
  .calc-tiles { grid-template-columns: 1fr; }
  .price-grid--2 { grid-template-columns: 1fr; }
}
img, video, svg, iframe { max-width: 100%; }
.grid-stats-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-bottom: 32px; }
.grid-2-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; max-width: 1000px; margin: 0 auto; }
@media (max-width: 900px) { .grid-2-cols { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .grid-stats-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } }
@media (max-width: 360px) {
  .price-card { padding: 28px 18px; min-width: 0; }
  .price-btn, .btn, .journey-cta { white-space: normal; }
  .price-features li, .price-note, .price-desc { overflow-wrap: anywhere; }
  .price-amount { font-size: 40px; }
  .container, section, .section-head { min-width: 0; }
}

/* Coach dashboard mock: calendar rows that survive small screens */
.dash-card { max-width: 1000px; margin: 0 auto; background: #fff; border-radius: 20px; padding: 32px; color: var(--slate-900); box-shadow: 0 40px 80px rgba(0,0,0,0.4); }
.cal-row { display: flex; gap: 16px; align-items: center; padding: 14px 16px; background: var(--slate-50); border-radius: 12px; min-width: 0; }
.cal-time { flex: 0 0 auto; width: 60px; font-weight: 600; color: var(--slate-900); font-variant-numeric: tabular-nums; }
.cal-main { flex: 1 1 auto; min-width: 0; }
.cal-main > div { overflow-wrap: anywhere; }
.cal-badge { flex: 0 0 auto; padding: 4px 10px; border-radius: 999px; font-size: 11px; font-weight: 600; white-space: nowrap; }
@media (max-width: 600px) {
  .dash-card { padding: 20px; }
  .cal-row { gap: 10px; padding: 12px; }
  .cal-time { width: 42px; font-size: 13px; }
  .cal-badge { padding: 3px 8px; font-size: 10px; }
}
.mk-tags--center { justify-content: center; margin: 18px 0 0; }
.mk-tag--label { background: transparent; color: #6e6e73; padding-left: 0; }
