:root{
    --paper:#EEF7F6;
    --paper-2:#DDECEA;
    --ink:#14213A;
    --ink-soft:#526175;
    --dusk:#10203F;
    --dusk-2:#071127;
    --spark:#6EE7D7;
    --spark-ink:#126D70;
    --sage:#BDE6DF;
    --sage-ink:#174C55;
    --violet:#8D83F2;
    --blue:#45BDEB;
    --white:#FBFEFD;
    --line:rgba(20,33,58,0.13);
    --line-soft:rgba(20,33,58,0.07);
    --line-on-dusk:rgba(220,250,247,0.17);
    --font-display:'Fraunces', serif;
    --font-body:'IBM Plex Sans', sans-serif;
    --font-mono:'IBM Plex Mono', monospace;
    --maxw:1180px;
  }
  *{ box-sizing:border-box; }
  html{ scroll-behavior:smooth; }
  body{
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:var(--font-body);
    font-size:16px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    -webkit-user-select:none;
    user-select:none;
  }
  input, textarea, select, [contenteditable="true"], .allow-selection{
    -webkit-user-select:text;
    user-select:text;
  }
  img{ max-width:100%; display:block; -webkit-user-drag:none; }
  a{ color:inherit; }
  .wrap{ max-width:var(--maxw); margin:0 auto; padding:0 32px; }
  .eyebrow{
    font-family:var(--font-mono); font-size:12.5px; letter-spacing:0.06em;
    color:var(--ink-soft); display:flex; align-items:center; gap:10px; margin:0 0 18px;
  }
  .eyebrow::before{ content:''; width:16px; height:1px; background:var(--spark); display:inline-block; }
  .eyebrow.on-dark{ color:rgba(251,250,246,0.7); }
  h1,h2,h3{ font-family:var(--font-display); font-weight:460; margin:0; color:inherit; }
  em{ font-style:italic; font-weight:500; color:var(--spark-ink); }
  .btn{
    font-family:var(--font-mono); font-size:13px; letter-spacing:0.02em;
    display:inline-flex; align-items:center; gap:8px; padding:13px 22px; border-radius:2px;
    border:1px solid var(--ink); background:transparent; color:var(--ink); cursor:pointer;
    text-decoration:none; transition:transform .15s ease, background .15s ease, color .15s ease;
    white-space:nowrap; flex:0 0 auto;
  }
  .btn:hover{ transform:translateY(-1px); }
  .btn-primary{ background:var(--ink); color:var(--white); border-color:var(--ink); }
  .btn-primary:hover{ background:var(--dusk); }
  .btn-spark{ background:var(--spark); color:var(--spark-ink); border-color:var(--spark); }
  .btn-spark:hover{ background:#F0B75A; }
  .hero-ctas{ display:flex; gap:16px; align-items:center; flex-wrap:wrap; }

  header.site-nav{
    position:sticky; top:0; z-index:50;
    background:rgba(238,240,234,0.9); backdrop-filter:blur(6px);
    border-bottom:1px solid var(--line-soft);
    transition:background .28s ease, box-shadow .28s ease;
  }
  header.site-nav.is-compact{ background:rgba(238,240,234,0.96); box-shadow:0 10px 28px rgba(23,28,24,0.07); }
  .nav-row{ position:relative; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:18px 32px; max-width:var(--maxw); margin:0 auto; transition:padding .28s ease; }
  header.site-nav.is-compact .nav-row{ padding-top:8px; padding-bottom:8px; }
  .wordmark{ display:inline-flex; align-items:center; gap:9px; font-family:var(--font-display); font-style:italic; font-weight:500; font-size:22px; text-decoration:none; color:var(--ink); flex:0 1 auto; min-width:0; transition:font-size .28s ease; }
  header.site-nav.is-compact .wordmark{ font-size:20px; }
  .wordmark-logo{ width:72px; height:72px; object-fit:contain; flex:0 0 auto; transition:width .28s ease, height .28s ease; }
  header.site-nav.is-compact .wordmark-logo{ width:52px; height:52px; }
  .wordmark span{ font-style:normal; font-family:var(--font-mono); font-size:11px; color:var(--ink-soft); margin-left:6px; vertical-align:middle; letter-spacing:0.04em; }
  nav.nav-links{ display:flex; align-items:center; gap:18px; }
  nav.nav-links a:not(.btn){
    position:relative; display:inline-flex; align-items:center; font-family:var(--font-mono); font-size:12.5px;
    text-decoration:none; color:var(--ink-soft); transition:color .18s ease, transform .18s ease;
  }
  nav.nav-links a:not(.btn)::after{
    content:''; position:absolute; left:0; right:0; bottom:-7px; height:1px; background:var(--spark);
    transform:scaleX(0); transform-origin:var(--underline-origin, left); transition:transform .24s ease;
  }
  nav.nav-links a:not(.btn):hover{ color:var(--ink); transform:translateY(-2px); }
  nav.nav-links a:not(.btn):hover::after{ transform:scaleX(1); }
  .account-mobile-link{ display:none !important; }
  .nav-menu-cta{ display:none; }
  .language-switcher{
    position:relative; display:inline-flex; align-items:center; justify-content:space-between;
    min-width:118px; height:38px; border:1px solid var(--line); background:rgba(251,250,246,0.55);
    padding:0 36px 0 14px; cursor:pointer; user-select:none; z-index:60; overflow:visible;
  }
  .language-switcher:hover, .language-switcher.is-open{ z-index:90; }
  .language-switcher::before{
    content:attr(data-language-label); font-family:var(--font-mono); font-size:11.5px;
    color:var(--ink-soft); letter-spacing:0.02em; pointer-events:none;
  }
  .language-switcher::after{
    content:'⌄'; position:absolute; right:13px; top:50%; transform:translateY(-52%);
    color:var(--spark-ink); font-family:var(--font-mono); font-size:14px; transition:transform .22s ease;
    pointer-events:none;
  }
  .language-switcher:hover::after,
  .language-switcher.is-open::after{ transform:translateY(-38%) rotate(180deg); }
  .language-switcher button{
    position:absolute; left:-1px; right:-1px; top:100%; width:calc(100% + 2px); display:flex; align-items:center;
    border:1px solid var(--line); border-top:0; border-bottom:0; background:var(--white); color:var(--ink-soft);
    height:38px; box-sizing:border-box; font-family:var(--font-mono); font-size:0; padding:0 13px; cursor:pointer; opacity:0; pointer-events:none;
    transform:translateY(-4px); transition:opacity .18s ease, transform .2s ease, background .18s ease, color .18s ease;
    text-align:left;
  }
  .language-switcher button:nth-child(2){ top:calc(100% + 37px); }
  .language-switcher button:nth-child(3){ top:calc(100% + 74px); border-bottom:1px solid var(--line); }
  .language-switcher:hover button,
  .language-switcher.is-open button{ opacity:1; pointer-events:auto; transform:translateY(0); }
  .language-switcher button::before{ font-size:12px; line-height:1; }
  .language-switcher button[data-lang-option="it"]::before{ content:'🇮🇹 Italiano'; }
  .language-switcher button[data-lang-option="fr"]::before{ content:'🇫🇷 Français'; }
  .language-switcher button[data-lang-option="es"]::before{ content:'🇪🇸 Español'; }
  .language-switcher button:hover{ background:var(--paper); color:var(--ink); }
  .language-switcher button.is-active{ background:var(--ink); color:var(--white); }
  .mobile-language-switcher{ display:none; }
  .nav-cta{ display:flex; align-items:center; gap:18px; }
  .nav-toggle{ display:none; position:relative; width:36px; height:36px; background:none; border:none; cursor:pointer; padding:6px; }
  .nav-toggle span{ position:absolute; left:7px; display:block; width:22px; height:1.5px; background:var(--ink); transition:transform .34s ease, opacity .28s ease, top .34s ease; }
  .nav-toggle span:nth-child(1){ top:11px; }
  .nav-toggle span:nth-child(2){ top:17px; }
  .nav-toggle span:nth-child(3){ top:23px; }
  .nav-toggle.is-open span:nth-child(1){ top:17px; transform:rotate(45deg); }
  .nav-toggle.is-open span:nth-child(2){ opacity:0; transform:scaleX(0); }
  .nav-toggle.is-open span:nth-child(3){ top:17px; transform:rotate(-45deg); }

  .page-main{ padding:90px 0 110px; }
  .page-hero{ padding:86px 0 64px; border-bottom:1px solid var(--line); }
  .page-hero h1{ font-size:clamp(36px,5vw,62px); line-height:1.05; max-width:760px; }
  .page-hero p{ color:var(--ink-soft); max-width:620px; margin-top:20px; font-size:17px; }
  .page-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:46px; }
  .page-card{ border:1px solid var(--line); background:var(--white); padding:28px; min-height:190px; }
  .page-card h2, .page-card h3{ font-size:24px; margin-bottom:12px; }
  .page-card p{ color:var(--ink-soft); margin:0 0 18px; }
  .page-card a{ font-family:var(--font-mono); font-size:12px; color:var(--spark-ink); text-decoration:none; }
  .page-list{ display:grid; gap:12px; margin-top:44px; }
  .page-list article{ border-top:1px solid var(--line); padding:24px 0; }
  .page-list h2{ font-size:26px; margin-bottom:8px; }
  .page-list p{ color:var(--ink-soft); max-width:760px; margin:0; }
  .legal-content{ display:grid; grid-template-columns:repeat(2,1fr); gap:2px; margin-top:46px; background:var(--line); border:1px solid var(--line); }
  .legal-content article{ background:var(--white); padding:30px; min-height:220px; }
  .legal-content h2{ font-size:25px; margin-bottom:12px; }
  .legal-content p{ color:var(--ink-soft); margin:0; line-height:1.68; }
  .legal-content a{ color:var(--spark-ink); text-decoration:none; }
  .contact-layout{ display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:16px; margin-top:46px; }
  .contact-card{ border:1px solid var(--line); background:var(--white); padding:30px; min-height:270px; display:flex; flex-direction:column; align-items:flex-start; }
  .contact-card span{ font-family:var(--font-mono); font-size:11.5px; color:var(--spark-ink); text-transform:uppercase; letter-spacing:0.05em; margin-bottom:16px; }
  .contact-card h2{ font-size:clamp(23px,2.6vw,34px); line-height:1.12; margin-bottom:14px; overflow-wrap:anywhere; }
  .contact-card p{ color:var(--ink-soft); margin:0 0 24px; line-height:1.6; }
  .contact-card .btn{ margin-top:auto; }

  #brain-experience{ position:relative; background:var(--dusk-2); }
  .be-track{ position:relative; height:520vh; }
  .be-sticky{ position:sticky; top:0; height:100vh; overflow:hidden; background:var(--dusk-2); }
  #brain-canvas{ position:absolute; inset:0; z-index:2; width:100%; height:100%; display:block; }
  .be-overlay{ position:absolute; inset:0; z-index:3; pointer-events:none; }
  .be-overlay .wrap{ position:relative; height:100%; }

  .be-hero-copy{ position:absolute; left:32px; top:38%; transform:translateY(-50%); max-width:560px; pointer-events:auto; }
  .be-hero-copy h1{ color:var(--white); font-size:clamp(32px,4.2vw,54px); line-height:1.14; letter-spacing:-0.01em; }
  .be-hero-copy em{ color:var(--spark); }
  .be-hero-copy p.lede{ color:rgba(251,250,246,0.66); font-size:16.5px; max-width:460px; margin:22px 0 30px; }

  .be-scroll-hint{ position:absolute; left:32px; bottom:44px; display:flex; align-items:center; gap:10px; font-family:var(--font-mono); font-size:11.5px; color:rgba(251,250,246,0.45); }
  .be-scroll-hint i{ width:1px; height:26px; background:rgba(251,250,246,0.3); position:relative; overflow:hidden; display:block; }
  .be-scroll-hint i::after{ content:''; position:absolute; left:0; top:-100%; width:100%; height:100%; background:var(--spark); animation:scrollhint 1.7s ease-in-out infinite; }
  @keyframes scrollhint{ 0%{ top:-100%; } 60%{ top:100%; } 100%{ top:100%; } }

  .step-rail{ position:absolute; left:32px; top:50%; transform:translateY(-50%); display:flex; flex-direction:column; gap:26px; opacity:0; }
  .step-item{ font-family:var(--font-mono); font-size:12.5px; color:rgba(251,250,246,0.38); display:flex; gap:12px; align-items:flex-start; max-width:220px; transition:color .3s ease; }
  .step-item .dot{ width:6px; height:6px; border-radius:50%; margin-top:5px; flex:none; background:rgba(251,250,246,0.3); transition:background .3s ease, box-shadow .3s ease; }
  .step-item.is-active{ color:rgba(251,250,246,0.92); }
  .step-item.is-active .dot{ background:var(--spark); box-shadow:0 0 0 3px rgba(232,166,61,0.2); }
  .step-item .step-text{ display:none; }
  .step-item.is-active .step-text{ display:block; margin-top:2px; color:rgba(251,250,246,0.6); font-family:var(--font-body); font-size:13px; line-height:1.5; }

  .coach-links{ position:absolute; inset:0; z-index:1; width:100%; height:100%; pointer-events:none; overflow:visible; }
  .coach-links path{ fill:none; stroke:var(--spark); stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; opacity:0; transition:opacity .18s ease; filter:drop-shadow(0 0 7px rgba(232,166,61,0.26)); }

  .coach-node{ position:absolute; left:0; top:0; z-index:3; display:flex; align-items:center; gap:12px; width:220px; opacity:0; }
  .coach-node img{ width:50px; height:50px; border-radius:50%; object-fit:cover; border:2px solid rgba(232,166,61,0.55); flex:none; }
  .coach-node .cn-name{ font-family:var(--font-body); font-weight:500; font-size:14.5px; margin:0 0 3px; color:var(--white); }
  .coach-node .cn-phrase{ font-size:12.5px; color:rgba(251,250,246,0.62); margin:0; line-height:1.4; }

  .be-caption{ position:absolute; right:32px; bottom:44px; max-width:260px; font-family:var(--font-mono); font-size:11.5px; color:rgba(251,250,246,0.4); opacity:0; text-align:right; }

  .section{ padding:110px 0; }
  .section-head{ max-width:560px; margin-bottom:56px; }
  .section-head h2{ font-size:clamp(28px,3.4vw,42px); line-height:1.15; }
  .section-head p{ color:var(--ink-soft); margin-top:16px; font-size:16px; max-width:480px; }

  .coach-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
  .coach-card{ background:var(--white); border:1px solid var(--line); padding:32px 28px; text-align:left; display:flex; flex-direction:column; gap:16px; opacity:0; transform:translateY(28px); transition:opacity .62s ease, transform .62s ease; transition-delay:calc(var(--card-index, 0) * 90ms); }
  .coach-card:nth-child(4):last-child{ grid-column:2; }
  .coach-card.is-visible{ opacity:1; transform:translateY(0); }
  .coach-card .cc-top{ display:flex; align-items:center; gap:14px; }
  .coach-card img{ width:56px; height:56px; border-radius:50%; object-fit:cover; }
  .coach-card .cc-name{ font-weight:500; font-size:16px; margin:0 0 4px; }
  .coach-card .cc-tag{ font-family:var(--font-mono); font-size:11px; color:var(--sage-ink); background:rgba(110,143,107,0.14); padding:3px 8px; border-radius:2px; display:inline-block; }
  .coach-card .cc-phrase{ font-family:var(--font-display); font-style:italic; font-size:16.5px; line-height:1.4; color:var(--ink); flex:1; }
  .coach-open{ font-family:var(--font-mono); font-size:12.5px; color:var(--ink); background:none; border:none; padding:0; text-align:left; cursor:pointer; display:flex; align-items:center; gap:6px; border-top:1px solid var(--line-soft); padding-top:14px; }
  .coach-open:hover{ color:var(--spark-ink); }
  .coach-open .arrow{ transition:transform .15s ease; }
  .coach-open:hover .arrow{ transform:translateX(3px); }

  .modal-backdrop{ position:fixed; inset:0; background:rgba(22,26,34,0.55); display:none; align-items:flex-start; justify-content:center; padding:60px 20px; overflow-y:auto; z-index:100; }
  .modal-backdrop.is-open{ display:flex; }
  .coach-modal{ background:var(--white); max-width:640px; width:100%; border-radius:2px; padding:0; overflow:hidden; }
  .cm-head{ background:var(--dusk); color:var(--white); padding:36px 40px; display:flex; gap:20px; align-items:center; }
  .cm-head img{ width:76px; height:76px; border-radius:50%; object-fit:cover; border:2px solid var(--spark); flex:none; }
  .cm-head .cm-name{ font-family:var(--font-display); font-size:24px; margin:0 0 6px; }
  .cm-head .cm-tag{ font-family:var(--font-mono); font-size:11.5px; color:rgba(251,250,246,0.65); }
  .cm-close{ margin-left:auto; background:none; border:1px solid var(--line-on-dusk); color:var(--white); width:32px; height:32px; border-radius:50%; cursor:pointer; font-family:var(--font-mono); font-size:15px; flex:none; align-self:flex-start; }
  .cm-body{ padding:32px 40px 40px; }
  .cm-body .cm-phrase{ font-family:var(--font-display); font-style:italic; font-size:19px; line-height:1.4; margin:0 0 20px; }
  .cm-body .cm-bio{ color:var(--ink-soft); font-size:15px; line-height:1.65; margin:0 0 28px; }
  .cm-meta{ display:flex; gap:28px; margin-bottom:28px; flex-wrap:wrap; }
  .cm-meta div{ font-family:var(--font-mono); font-size:11.5px; color:var(--ink-soft); }
  .cm-meta strong{ display:block; font-family:var(--font-body); font-weight:500; font-size:14px; color:var(--ink); margin-top:4px; }
  .cm-foot{ display:flex; gap:14px; align-items:center; flex-wrap:wrap; }
  .cm-foot .note{ font-family:var(--font-mono); font-size:11.5px; color:var(--ink-soft); }

  .steps-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--line); border:1px solid var(--line); }
  .step-3-card{ background:var(--paper); padding:36px 30px; }
  .step-3-card .num{ font-family:var(--font-mono); font-size:12px; color:var(--sage-ink); }
  .step-3-card h3{ font-size:21px; margin:16px 0 10px; }
  .step-3-card p{ color:var(--ink-soft); font-size:14.5px; line-height:1.6; margin:0; }

  .stats-band{ background:var(--dusk); color:var(--white); padding:80px 0; }
  .stats-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
  .stat .n{ font-family:var(--font-display); font-size:44px; color:var(--spark); font-variant-numeric:tabular-nums; }
  .stat .l{ font-family:var(--font-mono); font-size:12.5px; color:rgba(251,250,246,0.6); margin-top:10px; line-height:1.5; }

  .info-section{ padding-bottom:90px; }
  .need-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
  .need-grid article{ border:1px solid var(--line); background:rgba(251,250,246,0.5); padding:26px 24px; min-height:190px; }
  .need-grid span, .price-grid p, .guided-steps span{ font-family:var(--font-mono); font-size:11.5px; color:var(--sage-ink); }
  .need-grid h3{ font-size:21px; margin:22px 0 10px; }
  .need-grid p{ color:var(--ink-soft); font-size:14.5px; margin:0; }

  .guided-band{ background:var(--dusk-2); color:var(--white); padding:92px 0; }
  .guided-row{ display:grid; grid-template-columns:0.95fr 1.05fr; gap:70px; align-items:start; }
  .guided-row h2{ font-size:clamp(28px,3vw,40px); line-height:1.16; max-width:520px; }
  .guided-row p{ color:rgba(251,250,246,0.64); max-width:500px; }
  .guided-steps{ display:grid; gap:12px; }
  .guided-steps div{ display:grid; grid-template-columns:38px 1fr; column-gap:18px; row-gap:4px; border:1px solid var(--line-on-dusk); padding:22px; background:rgba(251,250,246,0.035); }
  .guided-steps span{ grid-row:1 / span 2; width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--line-on-dusk); color:var(--spark); }
  .guided-steps strong{ font-size:16px; color:var(--white); }
  .guided-steps p{ margin:0; font-size:14px; }

  .pricing-section{ padding-bottom:80px; }
  .price-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--line); border:1px solid var(--line); }
  .price-grid article{ background:var(--white); padding:30px 28px; min-height:180px; }
  .price-grid p{ margin:0 0 18px; }
  .price-grid strong{ display:block; font-family:var(--font-display); font-size:clamp(25px,2.8vw,36px); line-height:1.08; color:var(--ink); margin-bottom:12px; }
  .price-grid span{ display:block; color:var(--ink-soft); font-size:14.5px; line-height:1.55; }

  .assurance-section{ padding-top:40px; }
  .assurance-grid{ display:grid; grid-template-columns:1.2fr repeat(3,1fr); gap:26px; align-items:start; }
  .assurance-grid h2{ font-size:clamp(26px,2.6vw,36px); line-height:1.16; }
  .assurance-grid article{ border-top:1px solid var(--line); padding-top:24px; }
  .assurance-grid h3{ font-size:20px; margin-bottom:10px; }
  .assurance-grid p{ color:var(--ink-soft); margin:0; font-size:14.5px; }

  .faq-section{ padding-top:80px; }
  .faq-list{ border-top:1px solid var(--line); }
  .faq-list details{ border-bottom:1px solid var(--line); padding:22px 0; }
  .faq-list summary{ cursor:pointer; font-family:var(--font-display); font-size:21px; list-style:none; transition:color .22s ease; }
  .faq-list summary::-webkit-details-marker{ display:none; }
  .faq-list summary::after{ content:'+'; float:right; font-family:var(--font-mono); color:var(--spark-ink); transition:transform .32s cubic-bezier(.2,.8,.2,1); }
  .faq-list details[open] summary{ color:var(--spark-ink); }
  .faq-list details[open] summary::after{ transform:rotate(45deg); }
  .faq-list details.is-closing summary{ color:var(--ink); }
  .faq-list details.is-closing summary::after{ transform:rotate(0); }
  .faq-list p{ color:var(--ink-soft); max-width:720px; margin:0; overflow:hidden; max-height:0; opacity:0; transform:translateY(-4px); transition:max-height .46s cubic-bezier(.2,.8,.2,1), opacity .26s ease, transform .46s cubic-bezier(.2,.8,.2,1), margin-top .46s cubic-bezier(.2,.8,.2,1); }
  .faq-list details[open] p{ max-height:var(--faq-height, 720px); opacity:1; transform:translateY(0); margin-top:14px; }
  .faq-list details.is-closing p{ opacity:0; transform:translateY(-4px); margin-top:0; }
  .faq-list p strong{ color:var(--ink); font-weight:600; }

  .coach-cta{ background:var(--sage); color:var(--sage-ink); padding:90px 0; }
  .coach-cta-row{ display:flex; justify-content:space-between; align-items:flex-end; gap:40px; flex-wrap:wrap; }
  .coach-cta h2{ font-size:clamp(26px,3.2vw,38px); max-width:520px; color:var(--sage-ink); }
  .coach-cta p{ max-width:420px; margin-top:14px; color:rgba(44,59,41,0.75); }
  .coach-cta .btn{ border-color:var(--sage-ink); color:var(--sage-ink); }
  .coach-cta .btn:hover{ background:var(--sage-ink); color:var(--white); }
  .coach-eyebrow{ color:rgba(44,59,41,0.6); }

  footer{ background:var(--ink); color:rgba(251,250,246,0.7); padding:70px 0 30px; }
  .foot-top{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:50px; border-bottom:1px solid rgba(251,250,246,0.12); }
  .foot-top .wordmark{ color:var(--white); }
  .foot-top p{ font-size:14px; color:rgba(251,250,246,0.5); margin-top:16px; max-width:260px; line-height:1.6; }
  .foot-col h4{ font-family:var(--font-mono); font-size:11.5px; letter-spacing:0.05em; color:rgba(251,250,246,0.4); margin:0 0 16px; font-weight:400; }
  .foot-col a{ display:block; font-size:14px; color:rgba(251,250,246,0.75); text-decoration:none; margin-bottom:12px; }
  .foot-col a:hover{ color:var(--spark); }
  .foot-bottom{ display:flex; justify-content:space-between; padding-top:26px; font-family:var(--font-mono); font-size:11.5px; color:rgba(251,250,246,0.4); flex-wrap:wrap; gap:10px; }
  .foot-bottom .disclaimer{ max-width:560px; }

  @media (max-width:980px){
    .coach-grid{ grid-template-columns:repeat(2,1fr); }
    .coach-card:nth-child(4):last-child{ grid-column:auto; }
    .coach-node{ width:190px; gap:10px; }
    .coach-node img{ width:44px; height:44px; }
    .coach-node .cn-name{ font-size:13.5px; }
    .coach-node .cn-phrase{ font-size:11.5px; }
    .steps-3{ grid-template-columns:1fr; }
    .need-grid, .price-grid{ grid-template-columns:1fr 1fr; }
    .guided-row, .assurance-grid{ grid-template-columns:1fr; gap:34px; }
    .legal-content, .contact-layout{ grid-template-columns:1fr; }
    .stats-row{ grid-template-columns:1fr; gap:30px; }
    .foot-top{ grid-template-columns:1fr 1fr; }
  }
  @media (max-width:760px){
    .wrap, .nav-row{ padding-left:20px; padding-right:20px; }
    nav.nav-links{
      position:absolute; top:100%; left:0; right:0; display:flex; flex-direction:column; align-items:stretch;
      gap:0; background:var(--paper); border-bottom:1px solid var(--line); padding:0 20px;
      max-height:0; overflow:hidden; opacity:0; transform:translateY(-8px); pointer-events:none;
      transition:max-height .46s ease, opacity .38s ease, transform .46s ease, padding .46s ease;
    }
    nav.nav-links.is-open{ max-height:520px; opacity:1; transform:translateY(0); pointer-events:auto; padding:14px 20px 20px; }
    nav.nav-links a{ padding:12px 0; }
    nav.nav-links .account-mobile-link{ display:inline-flex !important; font-weight:600; color:var(--ink); }
    .nav-row > .language-switcher{ display:none; }
    nav.nav-links .mobile-language-switcher{
      display:flex; align-self:flex-start; min-width:150px; margin:10px 0 4px; background:rgba(251,250,246,0.78);
    }
    nav.nav-links .mobile-language-switcher button{ padding:11px 13px; }
    nav.nav-links .nav-menu-cta{ display:inline-flex; justify-content:center; width:100%; margin-top:8px; color:var(--white); padding:12px 18px; }
    .nav-desktop-cta{ display:none; }
    .nav-toggle{ display:block; }
    .coach-grid{ grid-template-columns:1fr; }
    .coach-card:nth-child(4):last-child{ grid-column:auto; }
    .need-grid, .price-grid{ grid-template-columns:1fr; }
    .page-grid{ grid-template-columns:1fr; }
    .need-grid article, .price-grid article{ min-height:auto; }
    .foot-top{ grid-template-columns:1fr; }
    .coach-cta-row{ align-items:flex-start; }
    .cm-head{ flex-wrap:wrap; padding:28px; }
    .cm-body{ padding:26px 28px 32px; }
    .be-track{ height:auto; }
    .be-sticky{ position:relative; height:82vh; min-height:520px; }
    #brain-canvas{ transform:scale(0.86); transform-origin:center 46%; }
    .step-rail, .coach-node, .coach-links, .be-caption, .be-scroll-hint{ display:none; }
    .be-hero-copy{ left:20px; right:20px; top:42%; max-width:none; }
  }
  @media (max-width:420px){
    .nav-row{ gap:10px; }
    .wordmark{ font-size:18px; }
    .wordmark span{ display:none; }
    .language-switcher{ min-width:128px; height:38px; }
    .language-switcher button{ font-size:0; padding:11px 13px; }
    .language-switcher button::before{ font-size:12px; }
    .nav-cta{ gap:10px; }
    .nav-cta .btn{ font-size:11.5px; padding:11px 14px; }
    .hero-ctas .btn{ font-size:12px; padding:12px 16px; }
  }
  @media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }

  /* ---------- calm technology direction ---------- */
  body{
    background:
      radial-gradient(circle at 12% 18%, rgba(110,231,215,0.12), transparent 26rem),
      linear-gradient(180deg, var(--paper), #f7fbfb 52%, var(--paper));
  }
  .btn{ border-radius:999px; padding:13px 23px; }
  .btn-primary,
  .btn-spark{
    color:#071127;
    border-color:transparent;
    background:linear-gradient(115deg, var(--spark), #7bd5f2 55%, #a89df7);
    box-shadow:0 12px 34px rgba(69,189,235,0.2), inset 0 1px rgba(255,255,255,0.55);
  }
  .btn-primary:hover,
  .btn-spark:hover{ color:#071127; background:linear-gradient(115deg, #8ff2e4, #91dcf6 55%, #b7aef8); box-shadow:0 16px 42px rgba(69,189,235,0.28); }

  header.site-nav{
    color:var(--white);
    background:rgba(7,17,39,0.84);
    border-bottom:1px solid rgba(220,250,247,0.11);
    backdrop-filter:blur(18px) saturate(1.2);
  }
  header.site-nav.is-compact{ background:rgba(7,17,39,0.95); box-shadow:0 16px 42px rgba(4,10,25,0.22); }
  .nav-row{ padding-top:12px; padding-bottom:12px; }
  .wordmark{ color:var(--white); }
  .wordmark-logo{ width:54px; height:54px; }
  header.site-nav.is-compact .wordmark-logo{ width:44px; height:44px; }
  nav.nav-links a:not(.btn){ color:rgba(236,251,250,0.7); }
  nav.nav-links a:not(.btn):hover{ color:var(--white); }
  nav.nav-links a:not(.btn)::after{ background:var(--spark); }
  .language-switcher{ border-color:rgba(220,250,247,0.18); background:rgba(255,255,255,0.055); }
  .language-switcher::before{ color:rgba(236,251,250,0.72); }
  .language-switcher::after{ color:var(--spark); }
  .language-switcher button{ color:rgba(236,251,250,0.72); border-color:rgba(220,250,247,0.16); background:#10203f; }
  .language-switcher button:hover{ color:var(--white); background:#162b51; }
  .language-switcher button.is-active{ color:#071127; background:var(--spark); }
  .nav-toggle span{ background:var(--white); }

  #brain-experience{ background:var(--dusk-2); }
  .be-sticky{
    background:
      radial-gradient(ellipse 62% 54% at 78% 48%, rgba(69,189,235,0.22), transparent 58%),
      radial-gradient(ellipse 46% 44% at 16% 28%, rgba(141,131,242,0.18), transparent 64%),
      linear-gradient(145deg, #071127, #0b1934 52%, #07172d);
  }
  .be-sticky::before{
    content:""; position:absolute; inset:0; z-index:1; pointer-events:none; opacity:.38;
    background-image:
      linear-gradient(rgba(110,231,215,.055) 1px, transparent 1px),
      linear-gradient(90deg, rgba(110,231,215,.055) 1px, transparent 1px);
    background-size:72px 72px;
    mask-image:linear-gradient(to bottom, black, transparent 92%);
  }
  .be-sticky::after{
    content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
    background:
      radial-gradient(circle at 74% 34%, rgba(255,255,255,.78) 0 1px, transparent 2px),
      radial-gradient(circle at 83% 61%, rgba(110,231,215,.85) 0 1px, transparent 2px),
      radial-gradient(circle at 61% 72%, rgba(141,131,242,.9) 0 1px, transparent 2px),
      radial-gradient(circle at 47% 22%, rgba(255,255,255,.68) 0 1px, transparent 2px);
    background-size:190px 170px, 260px 240px, 220px 210px, 290px 250px;
    opacity:.54;
  }
  #brain-canvas{ filter:saturate(1.18) drop-shadow(0 0 28px rgba(69,189,235,.16)); }
  .be-hero-copy{
    max-width:610px; padding:30px 32px; border:1px solid rgba(220,250,247,.16); border-radius:28px;
    background:linear-gradient(135deg, rgba(9,24,49,.72), rgba(11,31,58,.42));
    box-shadow:0 30px 90px rgba(0,5,18,.25); backdrop-filter:blur(14px);
  }
  .be-hero-copy h1{ font-size:clamp(38px,4.7vw,62px); line-height:1.06; letter-spacing:-.03em; }
  .be-hero-copy em{
    color:transparent; font-style:normal;
    background:linear-gradient(90deg, #8cf2e4, #72cff0 54%, #b0a7fb);
    -webkit-background-clip:text; background-clip:text;
  }
  .be-hero-copy p.lede{ color:rgba(236,251,250,.74); font-size:17px; max-width:520px; }
  .trust-points{ display:flex; gap:9px; flex-wrap:wrap; margin-top:21px; }
  .trust-points span{
    padding:7px 10px; border:1px solid rgba(220,250,247,.15); border-radius:999px;
    color:rgba(236,251,250,.76); background:rgba(255,255,255,.035); font-size:11.5px;
  }
  .be-scroll-hint i::after{ background:var(--spark); }
  .step-item.is-active .dot{ background:var(--spark); box-shadow:0 0 0 4px rgba(110,231,215,.14), 0 0 22px rgba(110,231,215,.72); }
  .coach-links path{ stroke:var(--spark); filter:drop-shadow(0 0 9px rgba(110,231,215,.42)); }
  .coach-node{ padding:9px; border:1px solid rgba(220,250,247,.13); border-radius:18px; background:rgba(8,24,49,.66); backdrop-filter:blur(10px); }
  .coach-node img{ border-color:rgba(110,231,215,.72); box-shadow:0 0 22px rgba(110,231,215,.16); }

  .trust-strip{ position:relative; z-index:5; padding:0 0 44px; margin-top:-46px; }
  .trust-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
  .trust-grid article{
    min-height:190px; padding:28px; border:1px solid rgba(220,250,247,.13); border-radius:24px;
    background:linear-gradient(145deg, rgba(16,32,63,.98), rgba(10,27,53,.98));
    color:var(--white); box-shadow:0 24px 60px rgba(5,16,38,.2);
  }
  .trust-grid span{ color:var(--spark); font-family:var(--font-mono); font-size:11px; letter-spacing:.1em; }
  .trust-grid h2{ margin:22px 0 10px; font-size:21px; }
  .trust-grid p{ margin:0; color:rgba(236,251,250,.64); font-size:14px; }

  .section{ padding:100px 0; }
  .section-head{ max-width:620px; }
  .section-head h2{ letter-spacing:-.025em; }
  .coach-grid{ gap:16px; background:transparent; }
  .coach-card{
    border-radius:24px; padding:30px; overflow:hidden;
    background:rgba(251,254,253,.84); box-shadow:0 18px 48px rgba(20,33,58,.07);
    backdrop-filter:blur(8px);
  }
  .coach-card:nth-child(4):last-child{ grid-column:auto; }
  .coach-card img{ box-shadow:0 0 0 5px rgba(110,231,215,.16); }
  .coach-card .cc-tag{ color:var(--spark-ink); background:rgba(110,231,215,.16); border-radius:999px; }
  .coach-open:hover{ color:var(--spark-ink); }
  .steps-3, .price-grid{ gap:14px; border:0; background:transparent; }
  .step-3-card, .price-grid article, .need-grid article, .page-card, .contact-card{
    border:1px solid var(--line); border-radius:22px; background:rgba(251,254,253,.82);
    box-shadow:0 16px 44px rgba(20,33,58,.055);
  }
  .stats-band{
    background:
      radial-gradient(circle at 15% 15%, rgba(110,231,215,.17), transparent 24rem),
      radial-gradient(circle at 86% 80%, rgba(141,131,242,.16), transparent 26rem),
      linear-gradient(135deg, #0a1730, #10254a);
  }
  .stat{ padding:26px; border:1px solid rgba(220,250,247,.14); border-radius:22px; background:rgba(255,255,255,.035); }
  .stat .n{ color:var(--white); font-size:clamp(23px,2.8vw,35px); line-height:1.05; }
  .stat .l{ color:rgba(236,251,250,.64); max-width:300px; }
  .need-grid article{ background:rgba(251,254,253,.7); }
  .need-grid span, .price-grid p, .guided-steps span{ color:var(--spark-ink); }
  .guided-band{
    background:
      radial-gradient(circle at 78% 28%, rgba(69,189,235,.16), transparent 24rem),
      radial-gradient(circle at 12% 80%, rgba(141,131,242,.13), transparent 26rem),
      var(--dusk-2);
  }
  .guided-steps div{ border-radius:20px; background:rgba(255,255,255,.04); }
  .guided-steps span{ border-radius:50%; color:var(--spark); }
  .price-grid strong{ font-size:clamp(23px,2.4vw,31px); }
  .assurance-grid article{ border-color:rgba(18,109,112,.24); }
  .faq-list summary::after, .faq-list details[open] summary{ color:var(--spark-ink); }
  .coach-cta{
    color:var(--white);
    background:
      radial-gradient(circle at 78% 25%, rgba(110,231,215,.23), transparent 22rem),
      linear-gradient(125deg, #10203f, #15345a 55%, #23365f);
  }
  .coach-cta h2{ color:var(--white); }
  .coach-cta p, .coach-eyebrow{ color:rgba(236,251,250,.68); }
  .coach-cta .btn{ border-color:rgba(220,250,247,.32); color:var(--white); background:rgba(255,255,255,.04); }
  .coach-cta .btn:hover{ border-color:var(--spark); color:#071127; background:var(--spark); }
  footer{ background:#071127; }

  .page-hero{
    color:var(--white); border-bottom-color:rgba(220,250,247,.12);
    background:
      radial-gradient(circle at 80% 18%, rgba(110,231,215,.18), transparent 22rem),
      radial-gradient(circle at 20% 85%, rgba(141,131,242,.14), transparent 24rem),
      linear-gradient(135deg, #071127, #10203f);
  }
  .page-hero p{ color:rgba(236,251,250,.68); }
  .page-hero .eyebrow{ color:rgba(236,251,250,.72); }
  .page-main{ background:linear-gradient(180deg, #f5fbfa, var(--paper)); }
  .legal-content{ gap:14px; border:0; background:transparent; }
  .legal-content article{ border:1px solid var(--line); border-radius:22px; background:rgba(251,254,253,.85); }
  .contact-layout{ gap:14px; }
  .page-card a, .legal-content a{ color:var(--spark-ink); }
  .coach-modal{ border-radius:26px; box-shadow:0 35px 100px rgba(4,12,30,.34); }
  .cm-head{ background:linear-gradient(135deg, #10203f, #17365e); }
  .cm-head img{ border-color:var(--spark); box-shadow:0 0 30px rgba(110,231,215,.22); }

  @media(max-width:980px){
    .trust-grid{ grid-template-columns:1fr; }
    .trust-grid article{ min-height:0; }
  }
  @media(max-width:760px){
    nav.nav-links{ background:#0b1934; border-bottom-color:rgba(220,250,247,.13); }
    nav.nav-links .account-mobile-link{ color:var(--white); }
    .be-hero-copy{ left:20px; right:20px; top:45%; padding:25px 22px; border-radius:22px; }
    .be-hero-copy h1{ font-size:clamp(31px,9vw,43px); }
    .be-hero-copy p.lede{ font-size:15px; }
    .trust-points span{ font-size:10.5px; }
    .trust-strip{ margin-top:-24px; padding-bottom:20px; }
    .trust-grid{ padding-left:14px; padding-right:14px; }
    .coach-grid, .steps-3, .price-grid{ gap:12px; }
    .stat{ padding:22px; }
  }
  @media(max-width:1120px){
    nav.nav-links{
      position:absolute; top:100%; left:0; right:0; display:flex; flex-direction:column; align-items:stretch;
      gap:0; padding:0 20px; max-height:0; overflow:hidden; opacity:0; transform:translateY(-8px);
      pointer-events:none; background:#0b1934; border-bottom:1px solid rgba(220,250,247,.13);
      transition:max-height .46s ease, opacity .38s ease, transform .46s ease, padding .46s ease;
    }
    nav.nav-links.is-open{ max-height:680px; opacity:1; transform:translateY(0); pointer-events:auto; padding:14px 20px 20px; }
    nav.nav-links a{ padding:12px 0; }
    nav.nav-links .account-mobile-link{ display:inline-flex !important; font-weight:600; color:var(--white); }
    .nav-row > .language-switcher{ display:none; }
    nav.nav-links .mobile-language-switcher{ display:flex; align-self:flex-start; min-width:150px; margin:10px 0 4px; background:rgba(255,255,255,.055); }
    nav.nav-links .nav-menu-cta{ display:inline-flex; justify-content:center; width:100%; margin-top:8px; color:#071127; padding:12px 18px; }
    .nav-desktop-cta{ display:none; }
    .nav-toggle{ display:block; }
  }

  @media(min-width:1121px){
    .be-hero-copy{ top:43%; padding-top:27px; padding-bottom:26px; }
    .be-hero-copy p.lede{ margin-top:18px; margin-bottom:24px; }
    .trust-points{ margin-top:17px; }
  }

  @media(min-width:761px){
    .trust-strip{ margin-top:28px; }
  }

  /* Mobile-first refinement */
  @media(max-width:760px){
    html, body{ overflow-x:hidden; }
    body{ font-size:15px; }
    .wrap{ width:100%; padding-left:18px; padding-right:18px; }

    header.site-nav{ position:sticky; backdrop-filter:blur(14px); }
    .nav-row,
    header.site-nav.is-compact .nav-row{ min-height:64px; padding:8px 16px; }
    .wordmark{ gap:7px; font-size:18px; }
    header.site-nav.is-compact .wordmark{ font-size:18px; }
    .wordmark-logo,
    header.site-nav.is-compact .wordmark-logo{ width:46px; height:46px; }
    .wordmark span{ display:none; }
    .nav-toggle{ width:44px; height:44px; padding:10px; border:1px solid rgba(220,250,247,.13); border-radius:12px; }
    .nav-toggle span{ left:10px; width:22px; }
    .nav-toggle span:nth-child(1){ top:14px; }
    .nav-toggle span:nth-child(2){ top:21px; }
    .nav-toggle span:nth-child(3){ top:28px; }
    .nav-toggle.is-open span:nth-child(1),
    .nav-toggle.is-open span:nth-child(3){ top:21px; }
    nav.nav-links,
    nav.nav-links.is-open{ left:10px; right:10px; width:auto; border:1px solid rgba(220,250,247,.13); border-top:0; border-radius:0 0 18px 18px; box-shadow:0 24px 55px rgba(2,9,22,.34); }
    nav.nav-links.is-open{ max-height:calc(100vh - 76px); overflow-y:auto; padding:10px 18px 18px; }
    nav.nav-links a{ min-height:44px; padding:10px 2px; }
    nav.nav-links .mobile-language-switcher{ width:100%; min-width:0; }
    nav.nav-links .nav-menu-cta{ min-height:46px; border-radius:999px; }

    #brain-experience{ min-height:0; }
    .be-track{ height:auto; }
    .be-sticky{ position:relative; top:auto; height:auto; min-height:0; overflow:hidden; }
    #brain-canvas{ opacity:.52; transform:scale(1.1); transform-origin:64% 54%; }
    .be-overlay{ position:relative; min-height:0; display:flex; align-items:flex-start; padding:20px 0 34px; }
    .be-overlay .wrap{ height:auto; }
    .be-hero-copy{ position:relative; inset:auto; top:auto; left:auto; right:auto; transform:none; max-width:none; margin:0; padding:24px 20px; border-radius:20px; backdrop-filter:blur(9px); }
    .be-hero-copy h1{ font-size:clamp(30px,9.2vw,42px); line-height:1.04; }
    .be-hero-copy p.lede{ margin:17px 0 22px; font-size:14.5px; line-height:1.58; }
    .hero-ctas{ display:grid; grid-template-columns:1fr; gap:10px; }
    .hero-ctas .btn{ width:100%; min-height:46px; justify-content:center; white-space:normal; text-align:center; border-radius:999px; }
    .trust-points{ gap:7px; margin-top:17px; }
    .trust-points span{ padding:6px 8px; font-size:9.5px; }
    .be-scroll-hint, .step-rail, .coach-links, .coach-node, .be-caption{ display:none !important; }

    .trust-strip{ margin:0; padding:18px 0 12px; background:var(--dusk-2); }
    .trust-grid{ gap:10px; padding-left:18px; padding-right:18px; }
    .trust-grid article{ min-height:0; padding:20px; border-radius:18px; }
    .trust-grid h2{ margin:12px 0 6px; font-size:19px; }
    .trust-grid p{ font-size:13px; }

    .section{ padding:64px 0; }
    .section-head{ margin-bottom:30px; }
    .section-head h2{ font-size:clamp(27px,8vw,36px); line-height:1.08; }
    .section-head p{ margin-top:12px; font-size:14.5px; }
    .eyebrow{ margin-bottom:12px; font-size:11px; }
    .coach-grid, .steps-3, .need-grid, .price-grid, .page-grid{ gap:10px; }
    .coach-card, .step-3-card, .need-grid article, .price-grid article, .page-card{ padding:21px 19px; border-radius:18px; }
    .coach-card{ gap:13px; }
    .coach-card .cc-top{ align-items:flex-start; }
    .coach-card img{ width:50px; height:50px; }
    .coach-card .cc-phrase{ font-size:16px; }
    .coach-open{ min-height:42px; }
    .need-grid h3{ margin:12px 0 7px; }

    .stats-band{ padding:54px 0; }
    .stats-row{ gap:10px; }
    .stat{ padding:20px; border-radius:18px; }
    .stat .n{ font-size:25px; }
    .stat .l{ margin-top:6px; }
    .guided-band{ padding:64px 0; }
    .guided-row{ gap:28px; }
    .guided-row h2{ font-size:30px; }
    .guided-steps{ gap:9px; }
    .guided-steps div{ grid-template-columns:34px 1fr; column-gap:13px; padding:18px 16px; border-radius:17px; }
    .guided-steps span{ width:32px; height:32px; }
    .assurance-grid{ gap:22px; }
    .faq-section{ padding-top:54px; }
    .faq-list details{ padding:18px 0; }
    .faq-list summary{ display:grid; grid-template-columns:1fr auto; gap:14px; font-size:18px; line-height:1.35; }
    .faq-list summary::after{ float:none; }

    .page-main{ padding:0 0 72px; }
    .page-hero{ padding:58px 0 44px; }
    .page-hero h1{ font-size:clamp(34px,10vw,46px); }
    .page-hero p{ margin-top:15px; font-size:15px; }
    .page-grid, .page-list, .legal-content, .contact-layout{ margin-top:28px; }
    .page-card, .legal-content article, .contact-card{ min-height:0; padding:21px 19px; border-radius:18px; }
    .page-card h2, .page-card h3, .legal-content h2{ font-size:22px; }
    .page-list article{ padding:19px 0; }
    .page-list h2{ font-size:22px; }
    .contact-card .btn{ width:100%; justify-content:center; white-space:normal; text-align:center; }

    .modal-backdrop{ align-items:flex-end; padding:10px; }
    .coach-modal{ max-height:calc(100dvh - 20px); overflow-y:auto; border-radius:22px; }
    .cm-head{ align-items:flex-start; gap:13px; padding:20px 17px; }
    .cm-head img{ width:58px; height:58px; }
    .cm-head .cm-name{ font-size:20px; line-height:1.12; }
    .cm-body{ padding:20px 17px 24px; }
    .cm-meta{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
    .cm-foot{ align-items:stretch; flex-direction:column; }
    .cm-foot .btn{ width:100%; justify-content:center; }

    .coach-cta{ padding:56px 0; }
    footer{ padding:52px 0 24px; }
    .foot-top{ gap:26px; padding-bottom:34px; }
    .foot-bottom{ align-items:flex-start; flex-direction:column; gap:12px; }
  }

  @media(max-width:380px){
    .wrap{ padding-left:14px; padding-right:14px; }
    .wordmark-logo, header.site-nav.is-compact .wordmark-logo{ width:42px; height:42px; }
    .wordmark{ font-size:17px; }
    .be-hero-copy{ margin-top:0; padding:21px 17px; }
    .be-hero-copy h1{ font-size:29px; }
    .trust-points span{ font-size:9px; }
    .cm-meta{ grid-template-columns:1fr; }
  }
