    :root{
      --espresso:#2f2823;
      --espresso-soft:#4a4038;
      --ivory:#f8f3eb;
      --cream:#efe5d8;
      --sand:#dfd0bf;
      --taupe:#aa9787;
      --champagne:#c5a36d;
      --champagne-soft:#ddc8a4;
      --denim:#72808a;
      --berry:#7d456b;
      --berry-deep:#5f3151;
      --paper:#fffaf4;
      --line:rgba(47,40,35,.13);
      --shadow:0 18px 50px rgba(47,40,35,.08);
      --maxw:1120px;
    }

    *{box-sizing:border-box;}
    html{scroll-behavior:smooth;}
    body{
      margin:0;
      background:var(--ivory);
      color:var(--espresso);
      font-family:'DM Sans',sans-serif;
      -webkit-font-smoothing:antialiased;
      line-height:1.6;
    }
    h1,h2,h3{font-family:'Outfit',sans-serif;font-weight:500;margin:0;letter-spacing:-0.02em;}
    p{margin:0;}
    a{color:inherit;text-decoration:none;}
    button{font:inherit;cursor:pointer;}
    :focus-visible{outline:2px solid var(--champagne);outline-offset:3px;}

    .wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
    section{padding:90px 0;}

    /* Header */
    header{
      position:fixed;top:0;left:0;right:0;z-index:50;
      display:flex;align-items:center;justify-content:space-between;
      padding:20px 32px;
      border-bottom:1px solid transparent;
      transition:.25s ease;
    }
    header.solid{
      background:rgba(248,243,235,.92);
      backdrop-filter:blur(8px);
      border-color:var(--line);
    }
    .brand{
      font-family:'Outfit',sans-serif;
      font-size:19px;
      letter-spacing:.01em;
      color:var(--berry);
    }
    .brand strong{font-weight:600;}
    nav{display:flex;gap:24px;align-items:center;}
    .nav-link{
      border:0;background:none;padding:5px 0;
      font-family:'DM Sans',sans-serif;
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:11px;
      color:var(--berry);
      position:relative;
    }
    .nav-link::after{
      content:'';position:absolute;left:0;right:0;bottom:0;height:1px;
      background:var(--champagne);transform:scaleX(0);transform-origin:left;transition:.2s ease;
    }
    .nav-link:hover,.nav-link.active{color:var(--berry-deep);}
    .nav-link:hover::after,.nav-link.active::after{transform:scaleX(1);}

    /* Generic */
    .eyebrow{
      font-family:'DM Sans',sans-serif;
      text-transform:uppercase;
      letter-spacing:.16em;
      font-size:11px;
      color:var(--denim);
      margin-bottom:14px;
    }
    .section-title{font-size:clamp(31px,4vw,48px);line-height:1.08;}
    .section-copy{max-width:62ch;color:var(--espresso-soft);font-size:16px;}
    .divider{height:1px;background:var(--line);max-width:var(--maxw);margin:0 auto;}
    .page{display:none;}
    .page.active{display:block;}

    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:9px;
      padding:13px 22px;
      border-radius:999px;
      border:1px solid transparent;
      font-weight:600;font-size:13.5px;
      transition:.2s ease;
    }
    .btn-primary{background:var(--espresso);color:var(--paper);}
    .btn-primary:hover{transform:translateY(-1px);background:#201b17;}
    .btn-ghost{border-color:var(--line);background:transparent;color:var(--espresso);}
    .btn-ghost:hover{border-color:var(--taupe);background:rgba(255,255,255,.35);}
    .btn-text{padding:0;border:0;background:none;color:var(--espresso);font-weight:600;}
    .btn-text span{color:var(--champagne);}

    /* Hero */
    .hero{
      min-height:92vh;
      display:flex;align-items:center;
      padding:150px 0 90px;
      position:relative;overflow:hidden;
      background:
        radial-gradient(circle at 18% 10%, rgba(221,200,164,.24), transparent 33%),
        radial-gradient(circle at 86% 28%, rgba(114,128,138,.09), transparent 28%),
        linear-gradient(135deg, #fbf7f1 0%, #f6eee4 52%, #f8f3eb 100%);
    }
    .hero::after{
      content:'';position:absolute;inset:auto -10% 11% auto;width:55%;height:1px;
      background:linear-gradient(90deg, transparent, var(--champagne), transparent);
      transform:rotate(-10deg);opacity:.7;
    }
    .hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;position:relative;z-index:2;}
    .hero h1{font-size:clamp(49px,7vw,88px);line-height:.98;max-width:9.5ch;}
    .hero h1 em{font-weight:500;color:var(--espresso-soft);}
    .hero .sub{font-size:18px;color:var(--espresso-soft);max-width:50ch;margin-top:26px;}
    .hero .cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px;}
    .hero-note{
      padding:12px 0 12px 24px;
      border-left:2px solid var(--champagne);
    }
    .hero-note .script{font-family:'Outfit',sans-serif;font-style:italic;font-size:27px;line-height:1.25;}
    .hero-note p{margin-top:18px;color:var(--espresso-soft);font-size:14.5px;}

    /* Premise */
    .premise{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:start;}
    .premise .statement{font-size:clamp(29px,3.2vw,42px);line-height:1.12;}
    .premise .body{display:grid;gap:18px;color:var(--espresso-soft);}
    .lab-cycle{
      margin-top:46px;
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:10px;
      padding:8px 0 0;
    }
    .cycle-step{
      flex:1 1 0;
      position:relative;
      text-align:center;
      padding:0 20px 0 0;
    }
    .cycle-step:not(:last-child)::after{
      content:'→';
      position:absolute;
      right:-3px;
      top:0;
      color:var(--berry);
      font-family:'Outfit',sans-serif;
      font-size:22px;
      font-weight:400;
      opacity:.8;
    }
    .cycle-step strong{
      display:block;
      font-family:'Outfit',sans-serif;
      font-size:15px;
      font-weight:500;
      line-height:1.35;
      color:var(--espresso);
    }

    /* Inside the Lab */
    .soft-section{background:var(--paper);}
    .cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:40px;}
    .card{
      border:1px solid var(--line);
      background:var(--ivory);
      padding:30px;
      min-height:220px;
    }
    .card .kicker{font-family:'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:10.5px;color:var(--denim);}
    .card h3{font-size:26px;margin:10px 0 12px;}
    .card p{font-size:14.5px;color:var(--espresso-soft);}
    .card .tiny-link{display:inline-block;margin-top:18px;font-size:12px;font-weight:600;color:var(--espresso);border-bottom:1px solid var(--champagne-soft);padding-bottom:2px;}

    /* Areas */
    .areas{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:40px;}
    .area{
      background:linear-gradient(180deg,var(--paper),#f4eadf);
      border:1px solid var(--line);
      padding:24px 18px;
      min-height:205px;
    }
    .area .cap{width:28px;height:2px;background:var(--champagne);margin-bottom:16px;}
    .area h3{font-size:18px;line-height:1.2;margin-bottom:10px;}
    .area p{font-size:13.5px;color:var(--espresso-soft);}

    /* About */
    .about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:68px;align-items:start;}
    .about-note{
      background:var(--espresso);
      color:var(--paper);
      padding:36px;
      position:relative;
    }
    .about-note::before{content:'';display:block;width:42px;height:1px;background:var(--champagne);margin-bottom:20px;}
    .about-note p{font-family:'Outfit',sans-serif;font-size:25px;line-height:1.35;}
    .about-copy{display:grid;gap:16px;color:var(--espresso-soft);}

    /* CTA */
    .cta-band{
      background:var(--espresso);
      color:var(--paper);
      text-align:center;
    }
    .cta-band h2{font-size:clamp(34px,4.4vw,56px);max-width:14ch;margin:0 auto;line-height:1.05;}
    .cta-band p{color:#e6ddd4;max-width:55ch;margin:18px auto 28px;}
    .cta-band .btn-primary{background:var(--paper);color:var(--espresso);}
    .cta-band .btn-primary:hover{background:#fff;}

    /* Work with me */
    .work-hero,.inquiry-hero{padding:150px 0 55px;background:var(--paper);}
    .work-hero h1,.inquiry-hero h1{font-size:clamp(42px,6vw,72px);line-height:1;max-width:13ch;}
    .work-hero p,.inquiry-hero p{margin-top:22px;color:var(--espresso-soft);max-width:56ch;font-size:17px;}
    .ways{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px;}
    .way{border:1px solid var(--line);background:var(--paper);padding:30px;}
    .way h3{font-size:24px;margin-bottom:10px;}
    .way p{font-size:14px;color:var(--espresso-soft);}
    .way ul{margin:18px 0 0;padding-left:18px;color:var(--espresso-soft);font-size:13.5px;display:grid;gap:7px;}
    .method-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:36px;}
    .method-item{border-top:1px solid var(--line);padding:20px 0;}
    .method-item strong{display:block;margin-bottom:5px;}
    .method-item p{color:var(--espresso-soft);font-size:14px;}

    /* Inquiry */
    .inquiry-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:56px;align-items:start;}
    .inquiry-hero .eyebrow{font-family:'DM Sans',sans-serif;font-weight:600;letter-spacing:.08em;font-size:11px;color:var(--denim);}
    .inquiry-info{position:sticky;top:120px;}
    .inquiry-info h2{font-size:36px;line-height:1.1;margin-bottom:16px;}
    .inquiry-info p{color:var(--espresso-soft);}
    .steps{display:grid;gap:18px;margin-top:28px;}
    .step{display:flex;gap:14px;align-items:flex-start;}
    .step .n{font-family:'Outfit',sans-serif;font-size:16px;color:var(--champagne);padding-top:0;}
    .step strong{display:block;font-size:14px;margin-bottom:2px;}
    .step p{font-size:13.5px;}

    form{background:var(--paper);border:1px solid var(--line);padding:34px;box-shadow:var(--shadow);}
    .field{margin-bottom:20px;}
    .row-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
    label{display:block;font-family:'DM Sans',sans-serif;font-weight:600;letter-spacing:.01em;font-size:12px;color:var(--espresso-soft);margin-bottom:7px;}
    input,select,textarea{
      width:100%;border:1px solid var(--line);background:#fffdf9;color:var(--espresso);
      padding:12px 13px;font:inherit;font-size:14px;border-radius:4px;
    }
    input:focus,select:focus,textarea:focus{outline:none;border-color:var(--champagne);box-shadow:0 0 0 2px rgba(197,163,109,.12);}
    textarea{min-height:112px;resize:vertical;}
    .hint{font-size:11.5px;color:var(--taupe);margin-top:6px;}
    .confirm{display:none;text-align:center;padding:54px 20px;}
    .confirm.show{display:block;}
    .confirm .mark{width:48px;height:48px;border-radius:50%;border:1px solid var(--champagne);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;color:var(--champagne);font-size:19px;}
    .confirm h3{font-size:26px;margin-bottom:9px;}
    .confirm p{color:var(--espresso-soft);max-width:38ch;margin:0 auto;}

    /* Footer */
    footer{border-top:1px solid var(--line);padding:38px 0;background:var(--ivory);}
    .footer-row{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap;}
    .footer-row .small{font-size:12px;color:var(--taupe);}
    .footer-links{display:flex;gap:18px;flex-wrap:wrap;}
    .footer-links a{font-family:'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.07em;font-size:10px;color:var(--espresso-soft);}
    .disclaimer{margin-top:16px;font-size:11px;color:var(--taupe);max-width:90ch;}

    @media(max-width:900px){
      .hero-grid,.premise,.about-grid,.inquiry-grid{grid-template-columns:1fr;}
      .hero{min-height:auto;}
      .lab-cycle{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 24px;}
      .cycle-step{padding-right:22px;}
      .cycle-step:nth-child(3)::after,.cycle-step:last-child::after{display:none;}
      .areas{grid-template-columns:repeat(2,1fr);}
      .ways{grid-template-columns:1fr;}
      .cards{grid-template-columns:1fr;}
      .method-grid{grid-template-columns:1fr;}
      .inquiry-info{position:static;}
      nav{gap:12px;}
    }
    @media(max-width:620px){
      .wrap{padding:0 20px;}
      header{padding:16px 20px;}
      .brand{font-size:17px;}
      nav .nav-link{font-size:9.5px;}
      .hero{padding-top:125px;}
      .hero-note{padding:26px;}
      .lab-cycle{display:block;padding-left:0;}
      .cycle-step{text-align:left;padding:0 0 26px 0;min-height:auto;}
      .cycle-step:not(:last-child)::after{
        content:'↓';
        position:static;
        display:block;
        margin-top:8px;
        color:var(--berry);
        font-size:20px;
        line-height:1;
      }
      .cycle-step strong{font-size:16px;}
      .areas{grid-template-columns:1fr;}
      .row-2{grid-template-columns:1fr;}
      form{padding:24px;}
    }
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
  
:root{--berry:#963c7f;--berry-deep:#752b63;--line:rgba(47,40,35,.18);--taupe:#75665b;--denim:#71556b}
body{font-size:17px}p{max-width:65ch}a{text-underline-offset:5px}a:hover{text-decoration:underline}a.btn:hover{text-decoration:none}
.wrap{width:100%}header{position:sticky;background:rgba(248,243,235,.97);border-bottom:1px solid var(--line);gap:24px;padding:18px 32px}nav{gap:24px}.nav-link{font-family:'DM Sans',sans-serif;font-size:13px;text-transform:none;letter-spacing:0;min-height:44px;display:inline-flex;align-items:center}.brand{white-space:nowrap}.brand:hover{text-decoration:none}.nav-link[aria-current=page]{border-bottom:2px solid var(--berry)}
.skip{position:fixed;top:-100px;left:20px;z-index:99;background:var(--paper);padding:12px}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--berry);outline-offset:5px}
.hero{min-height:650px;padding:95px 0;background:radial-gradient(ellipse at 88% 40%,#ecdae6 0,transparent 46%),linear-gradient(120deg,#fbf7f1,#f8f3eb)}.hero::after{background:linear-gradient(90deg,transparent,var(--berry),transparent)}.hero h1{font-size:clamp(50px,6.5vw,82px);max-width:11ch;line-height:1.03}.hero h1 em{color:var(--berry)}.hero-grid{gap:70px;grid-template-columns:1.2fr .8fr}.hero-note{border-left:2px solid var(--berry);padding:14px 0 14px 30px}.hero-note .script{font-size:33px}.hero-note p{font-size:16px}.hero .sub{max-width:43ch;font-size:18px}.eyebrow{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;letter-spacing:.15em;color:var(--berry)}
.btn{min-height:48px;font-size:14px}.btn-primary{background:var(--berry)}.btn-primary:hover{background:var(--berry-deep)}.btn-text{min-height:44px;display:inline-flex;align-items:center;gap:14px;color:var(--berry)}.btn-text span{color:var(--berry)}.section-title{line-height:1.14;max-width:20ch}.section-copy{font-size:17px}.body,.about-copy{font-size:17px}.body p+p{margin-top:18px}
.lab-cycle{margin-top:48px;gap:12px}.cycle-step strong{font-size:17px}.cycle-step:not(:last-child)::after{opacity:1;color:var(--berry)}.cycle-note{font-size:14px;color:var(--espresso-soft);margin-top:22px}.editorial{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.thread-lines{margin:25px 0;padding:0;list-style:none}.thread-lines li{border-bottom:1px solid var(--line);padding:18px 0;display:flex;gap:18px}.thread-lines li::before{content:'↗';color:var(--berry);font-size:24px}.resource{border-top:1px solid var(--line);padding-top:26px;margin-top:32px}.resource h3{font-size:26px;margin-bottom:10px}.resource p{font-size:15px}.about-note{background:#eadde5;color:var(--espresso);padding:38px}.about-note::before{background:var(--berry)}.about-note p{font-size:32px}.about-grid{align-items:center}.credential{font-size:13px;border-top:1px solid var(--line);padding-top:16px}.cta-band{background:#593449}.cta-band p{font-size:17px}
.work-hero,.inquiry-hero{padding:75px 0 60px}.work-hero h1,.inquiry-hero h1{max-width:17ch;line-height:1.06}.way{border:0;border-top:2px solid var(--berry);padding:25px 0;background:transparent}.ways{gap:40px}.way p,.way ul{font-size:16px}.way .eyebrow{margin-bottom:16px}.method-item p{font-size:16px}.faq{max-width:800px}.faq details{padding:22px 0;border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:20px;font-family:'Outfit',sans-serif}.faq details p{margin-top:15px;font-size:16px}.inquiry-info{top:110px}.step .n{color:var(--berry)}.step p{font-size:15px}.step strong{font-size:16px}label{font-size:15px}input,select,textarea{font-size:16px;min-height:48px;border-color:#b4a497}input:focus,select:focus,textarea:focus{outline:2px solid var(--berry);outline-offset:2px;box-shadow:none}textarea{min-height:145px}.hint{font-size:13px;color:#63564d}.field-help{font-size:14px;margin-bottom:24px}.form-note{font-size:13px;color:var(--espresso-soft);margin-top:18px}.status{margin-top:18px;font-size:16px}.status:empty{display:none}.status.error{color:#9b253e;border-left:3px solid currentColor;padding-left:14px}button:disabled{opacity:.65;cursor:wait}.confirm{background:var(--paper);border:1px solid var(--line)}.confirm .mark{color:var(--berry);border-color:var(--berry)}[hidden]{display:none!important}.hp{position:absolute;left:-9999px}.footer-links a{font-family:'DM Sans',sans-serif;font-size:13px;text-transform:none;letter-spacing:0;min-height:44px;display:inline-flex;align-items:center}.disclaimer{font-size:12px;color:#716257}.footer-row .small{color:#716257}.footer-row p{font-size:13px}section[id]{scroll-margin-top:100px}
@media(max-width:900px){.hero-grid,.editorial{grid-template-columns:1fr;gap:38px}.hero{min-height:auto;padding:65px 0}.hero h1{max-width:16ch}.hero-note{max-width:580px}.lab-cycle{grid-template-columns:repeat(3,1fr)}.premise,.about-grid,.inquiry-grid{gap:38px}.inquiry-info{position:static}.ways{gap:25px}.section-title{max-width:24ch}}
@media(max-width:620px){header{padding:10px 20px;display:block}.brand{font-size:20px;display:inline-block}nav{justify-content:space-between;gap:12px;margin-top:4px}nav .nav-link{font-size:13px}.hero{padding:48px 0 60px}.hero h1{font-size:50px;max-width:11ch}.hero .sub{font-size:17px}.hero-note{padding:5px 0 5px 22px}.hero-note .script{font-size:27px}.hero-grid{gap:38px}section{padding:60px 0}.lab-cycle{display:block;max-width:380px;margin-top:32px}.cycle-step{padding-bottom:12px}.cycle-step:not(:last-child)::after{display:block;margin:9px 0}.cycle-step:last-child{padding:0}.work-hero,.inquiry-hero{padding:48px 0 40px}.work-hero h1,.inquiry-hero h1{font-size:43px}.about-note{padding:28px}.about-note p{font-size:27px}.row-2{display:block}.cta-row .btn{width:100%}form{padding:24px 20px}.footer-row{align-items:flex-start}.section-title{font-size:34px}.section-copy{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}


/* ---- Courage brand update, 2026-10: fonts, colors and new pages ---- */
:root {
  --espresso: #302B31;
  --espresso-soft: #473C45;
  --ivory: #FBF6F2;
  --paper: #FFFAF7;
  --cream: #EEE1E8;
  --berry: #81466C;
  --berry-deep: #48283F;
  --denim: #6D5064;
  --champagne: #B87993;
  --champagne-soft: #EEE1E8;
  --line: rgba(72,40,63,.16);
}
body {font-family:'DM Sans',sans-serif;background:var(--ivory);color:var(--espresso);}
h1,h2,h3,.brand,.hero-note .script,.about-note p,.cycle-step strong,.faq summary {font-family:'Outfit',sans-serif;font-style:normal;}
.nav-link,.eyebrow,.footer-links a,.step .n {font-family:'DM Sans',sans-serif;}
.brand {font-weight:600;}
header {background:rgba(251,246,242,.97);}
:focus-visible{outline-color:#81466C;outline-offset:4px;}

/* Single-column, conversational homepage hero */
.hero {
  min-height:min(720px,85vh);
  padding:100px 0 92px;
  background:radial-gradient(ellipse at 15% 20%,rgba(197,142,176,.18),transparent 45%),
             radial-gradient(ellipse at 85% 75%,rgba(197,142,176,.15),transparent 48%),
             #48283F;
  color:#FFF8F3;
  text-align:center;
}
.hero::after {display:none;}
.hero-content {max-width:880px;margin:auto;}
.hero .eyebrow {color:#F2D9E5;}
.hero h1 {
  font-family:'Outfit',sans-serif;font-style:normal;font-size:clamp(43px,6.3vw,80px);
  font-weight:600;max-width:none;line-height:1.08;letter-spacing:-.04em;
}
.hero-rotator {margin:20px auto 0;min-height:160px;max-width:780px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;}
.hero .rotating-line {max-width:24ch;color:#FFE7F2;font-family:'Outfit',sans-serif;font-size:clamp(25px,3.3vw,42px);font-weight:400;line-height:1.2;transition:opacity .35s ease;}
.rotating-line.is-fading {opacity:0;}
.rotation-toggle {border:1px solid rgba(255,248,243,.4);border-radius:999px;color:#FFF8F3;background:transparent;padding:6px 14px;font-size:12px;line-height:1.3;min-height:34px;}
.rotation-toggle:hover {background:rgba(255,255,255,.1);}
.hero .sub {color:#F3E5ED;margin:23px auto 0;max-width:57ch;font-size:18px;}
.hero-actions {display:flex;flex-wrap:wrap;justify-content:center;gap:18px 32px;margin-top:32px;}
.hero-link {font-size:15px;font-weight:600;color:#FFF9FC;text-decoration:underline;text-underline-offset:6px;}
.hero-link:hover {color:#F1CEDF;text-decoration-thickness:2px;}
.hero-link.secondary {color:#EBCFDB;}
.hero-link span,.text-link span {display:inline-block;margin-left:3px;}
.gut-teaser {background:#EEE1E8;padding:70px 0;}
.gut-teaser-inner {display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start;}
.gut-teaser h2 {font-size:clamp(30px,4vw,48px);line-height:1.13;}
.gut-teaser-inner>div:last-child {display:grid;gap:17px;}
.gut-teaser p {color:#473C45;}
.text-link {display:inline-flex;align-items:center;gap:7px;width:fit-content;color:#623657;text-decoration:underline;text-underline-offset:6px;font-weight:700;min-height:44px;}
.text-link:hover {color:#48283F;}
.cta-band {background:#48283F;}
.cta-band .btn-primary {border-radius:999px;background:#FFF8F3;color:#48283F;}

/* Three-question Gut Check standalone page */
.gut-page .intro {padding:70px 0 40px;background:#EEE1E8;text-align:center;}
.gut-page .intro .eyebrow {margin-bottom:12px;}
.gut-page .intro h1 {font-size:clamp(36px,5vw,62px);line-height:1.08;}
.gut-page .intro p:last-child {margin:18px auto 0;max-width:52ch;color:var(--espresso-soft);}
.gut-page .exercise-area {padding:58px 0 84px;}
.exercise-shell {max-width:760px;margin:0 auto;}
.gut-privacy {font-size:13px;color:var(--espresso-soft);margin:0 0 24px;line-height:1.6;}
.gut-progress {font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--berry-deep);text-transform:uppercase;}
.gut-meter {display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0 30px;}
.gut-meter span {height:5px;border-radius:12px;background:#E7D6DF;}
.gut-meter span.active {background:var(--berry);}
.gut-card {background:#FFFDFB;border:1px solid var(--line);padding:clamp(22px,4vw,38px);box-shadow:0 12px 40px rgba(48,43,49,.04);border-radius:14px;}
.gut-step,.gut-result {padding:0;}
.gut-step h2,.gut-result h2 {font-size:clamp(27px,4vw,38px);line-height:1.2;max-width:23ch;}
.gut-hint {color:var(--espresso-soft);margin:14px 0 22px;}
.gut-example {background:#F7EEF3;border-left:3px solid #B87993;border-radius:0 7px 7px 0;padding:16px 19px;margin:0 0 22px;}
.gut-example-label {font-size:11px;font-weight:700;letter-spacing:.12em;color:#67415B;text-transform:uppercase;}
.gut-example-quote {font-size:15px;color:var(--espresso);font-style:italic;margin:8px 0 10px;max-width:none;}
.gut-example-next {font-size:13px;background:none;border:0;padding:8px 0;color:var(--berry-deep);text-decoration:underline;text-underline-offset:4px;font-weight:700;min-height:38px;}
.gut-step label {font-size:16px;font-weight:700;letter-spacing:0;margin-bottom:10px;}
.gut-step textarea {font-size:16px;min-height:145px;line-height:1.55;background:white;}
.gut-controls {display:flex;justify-content:space-between;gap:12px;margin-top:24px;}
.gut-button {display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:11px 20px;border-radius:999px;min-height:46px;font-weight:700;font-size:15px;border:1px solid var(--berry-deep);}
.gut-button.primary {background:var(--berry-deep);color:#FFF8F3;}
.gut-button.primary:hover {background:#663B5B;}
.gut-button.secondary {background:transparent;color:var(--berry-deep);}
.gut-button.secondary:hover {background:#F7EEF3;}
.gut-button[disabled] {opacity:.5;cursor:default;}
.gut-reflections {display:grid;gap:16px;margin:24px 0 28px;}
.gut-reflection {border-bottom:1px solid var(--line);padding-bottom:17px;}
.gut-reflection h3 {font-size:16px;margin:0 0 8px;color:var(--berry-deep);}
.gut-reflection p {font-size:16px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;}
.gut-heart-card {background:#F6EDF2;border-radius:14px;padding:30px 24px;text-align:center;margin:32px 0;animation:heart-rise .75s ease both;}
.gut-heart-card svg {display:block;margin:0 auto 12px;width:43px;height:41px;}
.gut-heart-card h3 {font-size:29px;font-weight:500;margin:0 0 12px;color:#48283F;}
.gut-heart-card p {max-width:46ch;margin:8px auto 0;color:#48283F;}
.gut-followup {border-top:1px solid var(--line);padding-top:25px;margin-top:24px;}
.gut-followup h3 {font-size:24px;margin-bottom:8px;}
.gut-followup .text-link {margin-top:12px;}
.gut-footer-actions {display:flex;gap:14px;flex-wrap:wrap;margin-top:24px;}
@keyframes heart-rise {from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
@media(max-width:900px){.gut-teaser-inner{grid-template-columns:1fr;gap:20px;}}
@media(max-width:620px){
  header {padding:12px 20px;}
  nav {flex-wrap:wrap;justify-content:flex-start;gap:4px 16px;}
  nav .nav-link {font-size:12px;min-height:38px;}
  .hero{min-height:0;padding:72px 0 74px;}
  .hero h1 {font-size:clamp(42px,10vw,58px);}
  .hero-rotator {min-height:172px;margin-top:18px;}
  .hero .rotating-line {font-size:clamp(26px,6.1vw,34px);max-width:21ch;}
  .hero .sub {font-size:16px;}
  .hero-actions {flex-direction:column;gap:18px;align-items:center;}
  .gut-teaser {padding:52px 0;}
  .gut-page .intro {padding:55px 0 30px;}
  .gut-page .exercise-area {padding:30px 0 60px;}
  .gut-controls {flex-wrap:wrap;}
  .gut-footer-actions {flex-direction:column;}
  .gut-footer-actions .gut-button {width:100%;}
}
@media(prefers-reduced-motion:reduce){
  .rotating-line {transition:none!important;}
  .gut-heart-card {animation:none!important;}
}
