/* Couples coaching page */
    .couples-hero{
      background:var(--bg);
      padding:84px 0 88px;
      overflow:hidden;
    }
    .couples-hero-grid{
      display:grid;
      grid-template-columns:1.06fr .94fr;
      gap:72px;
      align-items:center;
    }
    .couples-hero-copy .lead{
      font-size:clamp(1.18rem,1.8vw,1.48rem);
      color:#47544e;
      max-width:730px;
    }
    .couples-hero-media{
      position:relative;
      min-height:620px;
    }
    .couples-hero-media:before{
      content:"";
      position:absolute;
      inset:5% -10% 8% 10%;
      background:var(--rose);
      border-radius:48% 52% 44% 56% / 52% 45% 55% 48%;
    }
    .couples-hero-media img{
      position:absolute;
      inset:0 0 0 auto;
      width:92%;
      height:100%;
      object-fit:cover;
      border-radius:40% 40% 36% 36% / 28% 28% 44% 44%;
      box-shadow:var(--shadow);
    }

    .fit-section{background:#fff}
    .fit-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:14px;
      margin-top:34px;
    }
    .fit-item{
      padding:18px 20px;
      border:1px solid var(--line);
      border-radius:18px;
      background:var(--bg);
      line-height:1.4;
    }

    .pattern-section{background:#eef1ec}
    .pattern-grid{
      display:grid;
      grid-template-columns:.85fr 1.15fr;
      gap:78px;
      align-items:start;
    }
    .pattern-example{
      display:grid;
      gap:12px;
      margin-top:24px;
    }
    .pattern-row{
      padding:18px 20px;
      border-radius:18px;
      background:var(--paper);
      border:1px solid var(--line);
    }
    .pattern-row strong{
      font-family:"Montserrat",sans-serif;
      display:block;
      margin-bottom:5px;
    }
    .pattern-row span{color:var(--muted)}

    .support-section{background:#26332e;color:#edf0ed}
    .support-section .eyebrow{color:#bdc9c0}
    .support-section p{color:#cfd6d1}
    .support-grid{
      display:grid;
      grid-template-columns:.9fr 1.1fr;
      gap:72px;
      align-items:start;
    }
    .support-cards{
      display:grid;
      gap:14px;
    }
    .support-card{
      padding:22px;
      border:1px solid rgba(255,255,255,.12);
      border-radius:20px;
      background:rgba(255,255,255,.04);
    }
    .support-card h3{margin-bottom:8px}
    .support-card p{margin:0}

    .outcomes-grid{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:12px;
      margin-top:30px;
    }
    .outcome-item{
      padding:17px 18px;
      border-radius:16px;
      border:1px solid var(--line);
      background:var(--bg);
      font-size:.96rem;
    }

    .process-shell{margin-top:18px}
    .process-track{
      display:flex;
      gap:18px;
      overflow-x:auto;
      scroll-snap-type:x mandatory;
      scrollbar-width:none;
      scroll-behavior:smooth;
      padding-bottom:8px;
    }
    .process-track::-webkit-scrollbar{display:none}
    .process-card{
      flex:0 0 calc(33.333% - 12px);
      min-height:220px;
      scroll-snap-align:start;
      padding:24px;
      border:1px solid var(--line);
      border-radius:22px;
      background:var(--paper);
    }
    .process-heading{
      display:flex;
      align-items:center;
      gap:13px;
      margin-bottom:16px;
    }
    .process-no{
      width:44px;height:44px;
      display:flex;align-items:center;justify-content:center;
      border-radius:999px;
      background:#d8e1d4;
      color:#44544b;
      font-family:"Montserrat",sans-serif;
      font-size:.82rem;
      flex:0 0 auto;
    }
    .process-heading h3{margin:0}
    .process-card p{margin:0;color:var(--muted);font-size:.96rem}

    .personal-trust{
      background:#f6f2e9;
    }
    .personal-trust-grid{
      display:grid;
      grid-template-columns:.82fr 1.18fr;
      gap:74px;
      align-items:center;
    }
    .personal-trust img{
      width:100%;
      min-height:520px;
      object-fit:cover;
      border-radius:var(--radius);
    }

    .practical-band{
      padding:34px 0;
      border-top:1px solid var(--line);
      border-bottom:1px solid var(--line);
      background:white;
    }
    .practical-grid{
      display:grid;
      grid-template-columns:1.15fr repeat(3,.8fr);
      gap:26px;
      align-items:center;
    }
    .practical-grid strong{
      display:block;
      font-family:"Montserrat",sans-serif;
      font-size:.98rem;
    }
    .practical-grid span{
      color:var(--muted);
      font-size:.9rem;
    }

    .couples-cta{
      background:var(--sage);
      padding:82px 0;
    }
    .couples-cta-inner{
      display:grid;
      grid-template-columns:1.2fr .8fr;
      gap:50px;
      align-items:end;
    }

    @media(max-width:900px){
      .couples-hero-grid,.pattern-grid,.support-grid,.personal-trust-grid,.couples-cta-inner{
        grid-template-columns:1fr;
      }
      .couples-hero-grid{display:flex;flex-direction:column}
      .couples-hero-copy{order:1}
      .couples-hero-media{order:2;width:100%;min-height:500px}
      .fit-grid{grid-template-columns:1fr 1fr}
      .outcomes-grid{grid-template-columns:1fr}
      .process-card{flex-basis:78%}
      .practical-grid{grid-template-columns:1fr 1fr}
      .practical-grid > div:first-child{grid-column:1/-1}
    }
    @media(max-width:600px){
      .couples-hero{padding:58px 0 64px}
      .couples-hero-media{min-height:420px}
      .fit-grid{grid-template-columns:1fr}
      .process-card{flex-basis:88%}
      .practical-grid{grid-template-columns:1fr}
      .practical-grid > div:first-child{grid-column:auto}
    }

  
    .compact-intro{margin-bottom:28px}
    .compact-five{
      grid-template-columns:repeat(5,1fr);
      gap:10px;
    }
    .compact-five .fit-item,
    .compact-five .outcome-item{
      padding:15px 16px;
      font-size:.92rem;
      line-height:1.35;
    }

    .conflict-layout{
      display:grid;
      grid-template-columns:.9fr 1.1fr;
      gap:56px;
      align-items:start;
    }
    .conflict-copy p{
      color:#4f5b55;
      font-size:1rem;
    }
    .conflict-note{
      margin:24px 0 20px;
      padding:18px 20px;
      border-left:3px solid var(--sage-dark);
      background:rgba(255,255,255,.52);
      border-radius:0 14px 14px 0;
      color:#46534d;
    }
    .conflict-patterns{
      display:grid;
      gap:12px;
    }
    .conflict-card{
      background:var(--paper);
      border:1px solid var(--line);
      border-radius:20px;
      padding:20px;
    }
    .conflict-pair{
      display:grid;
      grid-template-columns:1fr 46px 1fr;
      gap:12px;
      align-items:center;
      font-family:"Montserrat",sans-serif;
      font-weight:600;
      font-size:.96rem;
      text-align:center;
      margin-bottom:10px;
    }
    .pair-divider{
      position:relative;
      width:46px;
      height:1px;
      background:var(--line);
    }
    .pair-divider:before,
    .pair-divider:after{
      content:"";
      position:absolute;
      top:50%;
      width:5px;
      height:5px;
      border-radius:50%;
      background:var(--sage-dark);
      transform:translateY(-50%);
    }
    .pair-divider:before{left:0}
    .pair-divider:after{right:0}
    .conflict-card p{
      margin:0;
      color:var(--muted);
      font-size:.92rem;
      text-align:center;
    }

    @media(max-width:1100px){
      .compact-five{grid-template-columns:repeat(3,1fr)}
    }
    @media(max-width:900px){
      .conflict-layout{grid-template-columns:1fr;gap:30px}
      .compact-five{grid-template-columns:1fr 1fr}
    }
    @media(max-width:600px){
      .compact-five{grid-template-columns:1fr}
      .conflict-pair{grid-template-columns:1fr 34px 1fr;font-size:.9rem}
      .pair-divider{width:34px}
    }

  
    .support-card{
      padding:22px 22px 20px;
    }
    .support-card h3{
      margin:0 0 10px;
      font-size:1rem;
      line-height:1.25;
      letter-spacing:-.015em;
      font-weight:500;
    }
    .support-card p{
      margin:0;
      color:#cfd6d1;
      font-size:.96rem;
      line-height:1.6;
    }

  
    .support-principles{
      border-top:1px solid rgba(255,255,255,.16);
    }
    .support-principle{
      display:grid;
      grid-template-columns:64px 1fr;
      gap:22px;
      padding:24px 0;
      border-bottom:1px solid rgba(255,255,255,.16);
      align-items:start;
    }
    .support-number{
      font-family:"Montserrat",sans-serif;
      font-size:.78rem;
      letter-spacing:.08em;
      color:#aebbb3;
      padding-top:4px;
    }
    .support-principle-copy h3{
      margin:0 0 8px;
      font-size:1.08rem;
      line-height:1.3;
      font-weight:500;
      letter-spacing:-.015em;
    }
    .support-principle-copy p{
      margin:0;
      max-width:720px;
      color:#cfd6d1;
      font-size:.96rem;
      line-height:1.65;
    }

    @media(max-width:600px){
      .support-principle{
        grid-template-columns:42px 1fr;
        gap:14px;
        padding:20px 0;
      }
    }
