/* Global navigation v2 */
    .nav-dropdown{position:relative}
    .nav-dropdown-toggle{
      display:flex;
      align-items:center;
      gap:6px;
      border:0;
      background:none;
      font:inherit;
      color:inherit;
      cursor:pointer;
      padding:8px 0;
    }
    .nav-chevron{
      font-size:.9rem;
      transform:translateY(-1px);
    }
    .nav-dropdown-menu{
      position:absolute;
      top:calc(100% + 12px);
      left:-18px;
      width:330px;
      padding:10px;
      border:1px solid var(--line);
      border-radius:18px;
      background:var(--paper);
      box-shadow:var(--shadow);
      opacity:0;
      visibility:hidden;
      transform:translateY(-6px);
      transition:.18s ease;
      z-index:40;
    }
    .nav-dropdown:hover .nav-dropdown-menu,
    .nav-dropdown:focus-within .nav-dropdown-menu{
      opacity:1;
      visibility:visible;
      transform:translateY(0);
    }
    .nav-dropdown-menu a{
      display:block;
      padding:12px 13px;
      border-radius:12px;
    }
    .nav-dropdown-menu a:hover{
      background:var(--bg);
    }
    .nav-dropdown-menu strong{
      display:block;
      font-family:"Montserrat",sans-serif;
      font-size:.9rem;
      margin-bottom:3px;
    }
    .nav-dropdown-menu span{
      display:block;
      color:var(--muted);
      font-size:.8rem;
      line-height:1.35;
    }
    .nav-cta{padding:10px 16px!important}
    .mobile-menu-group{
      display:grid;
      gap:4px;
      padding-bottom:10px;
      margin-bottom:8px;
      border-bottom:1px solid var(--line);
    }
    .mobile-menu-label{
      font-family:"Montserrat",sans-serif;
      font-size:.72rem;
      letter-spacing:.08em;
      text-transform:uppercase;
      color:var(--muted);
      margin-bottom:4px;
    }

    /* Simplified homepage */
    .home-services{background:#fff}
    .home-service-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:16px;
    }
    .home-service-card{
      min-height:310px;
      padding:28px;
      border-radius:26px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      border:1px solid var(--line);
      color:var(--ink);
      text-decoration:none;
      transition:transform .18s ease, box-shadow .18s ease;
    }
    .home-service-card:hover{
      transform:translateY(-3px);
      box-shadow:var(--shadow);
    }
    .service-individual{background:#eef1ec}
    .service-couples{background:#f3e7e3}
    .service-separation{background:#eee4d5}
    .service-topline{
      font-family:"Montserrat",sans-serif;
      font-size:.75rem;
      color:var(--sage-dark);
      letter-spacing:.08em;
    }
    .home-service-card h3{
      font-size:1.35rem;
      margin-bottom:8px;
    }
    .home-service-card p{
      margin:0;
      color:#55615b;
    }
    .service-link{
      font-family:"Montserrat",sans-serif;
      font-size:.86rem;
    }

    .recognition-section{background:#eef1ec}
    .recognition-grid{
      display:grid;
      grid-template-columns:.85fr 1.15fr;
      gap:78px;
      align-items:start;
    }
    .recognition-list{
      border-top:1px solid var(--line);
    }
    .recognition-item{
      padding:16px 0;
      border-bottom:1px solid var(--line);
      color:#48554f;
    }

    .testimonial-feature{
      background:#26332e;
      color:#edf0ed;
      padding:72px 0;
    }
    .testimonial-feature-inner{
      max-width:880px;
      display:grid;
      grid-template-columns:70px 1fr;
      gap:22px;
      align-items:start;
    }
    .testimonial-mark{
      font-family:Georgia,serif;
      font-size:5rem;
      line-height:.9;
      color:#bac7bf;
    }
    .testimonial-feature blockquote{
      margin:0;
    }
    .testimonial-feature blockquote p{
      margin:0 0 18px;
      font-family:"Montserrat",sans-serif;
      font-size:clamp(1.3rem,2.5vw,2rem);
      line-height:1.45;
      letter-spacing:-.02em;
    }
    .testimonial-feature blockquote footer{
      color:#c5cec8;
      font-size:.9rem;
    }

    .home-approach{background:#f6f2e9}
    .home-approach-grid,
    .home-about-grid{
      display:grid;
      grid-template-columns:.9fr 1.1fr;
      gap:74px;
      align-items:center;
    }
    .home-approach-image img,
    .home-about-image img{
      width:100%;
      min-height:520px;
      object-fit:cover;
      border-radius:var(--radius);
    }

    .home-about{background:#fff}
    .home-organisations{
      display:flex;
      flex-wrap:wrap;
      gap:8px 18px;
      margin-top:28px;
      padding-top:20px;
      border-top:1px solid var(--line);
      color:var(--muted);
      font-family:"Montserrat",sans-serif;
      font-size:.78rem;
    }

    .home-books{background:#eef1ec}
    .home-books-head{
      display:grid;
      grid-template-columns:1fr .9fr;
      gap:64px;
      align-items:end;
      margin-bottom:30px;
    }
    .home-books-head p{
      color:var(--muted);
      margin:0 0 4px;
    }
    .home-book-row{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:14px;
    }
    .home-book-feature{
      background:var(--paper);
      border:1px solid var(--line);
      border-radius:22px;
      padding:20px;
      display:grid;
      grid-template-columns:90px 1fr;
      gap:18px;
      align-items:center;
      min-height:170px;
    }
    .home-book-feature img{
      width:100%;
      max-height:130px;
      object-fit:contain;
    }
    .home-book-feature h3{
      margin-bottom:7px;
      font-size:1rem;
    }
    .home-book-feature p{
      margin:0;
      color:var(--muted);
      font-size:.88rem;
    }
    .children-books-mini{
      display:flex;
      align-items:flex-end;
      justify-content:center;
      gap:5px;
      height:118px;
    }
    .children-books-mini span{
      width:23px;
      border-radius:4px 4px 2px 2px;
      box-shadow:0 8px 18px rgba(0,0,0,.08);
    }
    .children-books-mini span:nth-child(1){height:84px;background:#d9b66d}
    .children-books-mini span:nth-child(2){height:104px;background:#9eb7b0}
    .children-books-mini span:nth-child(3){height:92px;background:#c9a9a2}

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

    @media(max-width:900px){
      .desktop-nav{display:none}
      .home-service-grid,
      .recognition-grid,
      .home-approach-grid,
      .home-about-grid,
      .home-books-head,
      .home-final-cta-inner{
        grid-template-columns:1fr;
      }
      .home-book-row{grid-template-columns:1fr}
      .home-service-card{min-height:230px}
      .testimonial-feature-inner{grid-template-columns:48px 1fr}
    }
    @media(min-width:901px){
      .mobile-menu{display:none!important}
    }

  
    /* Universal hamburger overlay */
    .desktop-nav,
    .mobile-menu,
    .nav-dropdown{display:none!important}

    .nav-inner{
      display:flex;
      align-items:center;
      justify-content:space-between;
    }
    .global-menu-toggle{
      display:flex!important;
      width:44px;
      height:44px;
      border:0;
      background:transparent;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:5px;
      cursor:pointer;
      padding:0;
    }
    .global-menu-toggle span{
      display:block;
      width:24px;
      height:2px;
      background:var(--ink);
      border-radius:2px;
    }

    .menu-overlay{
      position:fixed;
      inset:0;
      z-index:999;
      background:rgba(26,34,30,.42);
      backdrop-filter:blur(8px);
      -webkit-backdrop-filter:blur(8px);
      opacity:0;
      visibility:hidden;
      transition:opacity .2s ease, visibility .2s ease;
    }
    .menu-overlay.open{
      opacity:1;
      visibility:visible;
    }
    .menu-overlay-panel{
      position:absolute;
      top:0;
      right:0;
      width:min(440px,92vw);
      height:100%;
      background:var(--paper);
      padding:34px 34px 42px;
      box-shadow:-20px 0 60px rgba(20,28,24,.14);
      transform:translateX(100%);
      transition:transform .25s ease;
      overflow-y:auto;
    }
    .menu-overlay.open .menu-overlay-panel{
      transform:translateX(0);
    }
    .menu-close{
      margin-left:auto;
      display:flex;
      align-items:center;
      justify-content:center;
      width:42px;
      height:42px;
      border:0;
      background:transparent;
      font-size:2rem;
      line-height:1;
      color:var(--ink);
      cursor:pointer;
    }
    .overlay-nav{
      display:grid;
      gap:2px;
      margin-top:34px;
    }
    .overlay-nav a,
    .overlay-label{
      display:block;
      text-decoration:none!important;
      border:0!important;
    }
    .overlay-nav > a,
    .overlay-group > a{
      padding:12px 0;
      color:var(--ink);
      font-family:"Montserrat",sans-serif;
      font-size:1.08rem;
      font-weight:500;
    }
    .overlay-nav > a:hover,
    .overlay-group > a:hover{
      color:var(--sage-dark);
    }
    .overlay-group{
      padding-bottom:18px;
      margin-bottom:10px;
      border-bottom:1px solid var(--line);
    }
    .overlay-label{
      margin-bottom:6px;
      color:var(--muted);
      font-family:"Montserrat",sans-serif;
      font-size:.72rem;
      letter-spacing:.09em;
      text-transform:uppercase;
    }

    /* Testimonial with portrait */
    .testimonial-feature-inner{
      max-width:920px;
      display:grid;
      grid-template-columns:110px 1fr;
      gap:30px;
      align-items:center;
    }
    .testimonial-client img{
      width:96px;
      height:96px;
      border-radius:50%;
      object-fit:cover;
      border:3px solid rgba(255,255,255,.18);
    }
    .testimonial-mark{
      font-size:3.8rem;
      margin-bottom:-10px;
    }

    /* Organisation moving carousel */
    .org-carousel{
      margin-top:30px;
      padding-top:20px;
      border-top:1px solid var(--line);
      overflow:hidden;
      mask-image:linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);
      -webkit-mask-image:linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);
    }
    .org-track{
      display:flex;
      align-items:center;
      width:max-content;
      gap:48px;
      animation:orgScrollRight 24s linear infinite;
    }
    .org-item{
      width:150px;
      height:46px;
      display:flex;
      align-items:center;
      justify-content:center;
      flex:0 0 auto;
      opacity:.72;
    }
    .org-item img{
      max-width:100%;
      max-height:34px;
      object-fit:contain;
      filter:grayscale(1);
    }
    @keyframes orgScrollRight{
      from{transform:translateX(-50%)}
      to{transform:translateX(0)}
    }

    @media(max-width:700px){
      .menu-overlay-panel{
        width:100%;
        padding:24px 24px 36px;
      }
      .testimonial-feature-inner{
        grid-template-columns:72px 1fr;
        gap:18px;
      }
      .testimonial-client img{
        width:64px;
        height:64px;
      }
      .testimonial-mark{
        font-size:3rem;
      }
      .org-item{width:125px}
      .org-track{gap:34px}
    }

  
    /* Fix About section overflow caused by carousel */
    .home-about-grid,
    .home-about-grid > *,
    .home-about,
    .home-organisations,
    .org-carousel{
      min-width:0;
      max-width:100%;
    }
    .home-about{
      overflow:hidden;
    }
    .org-carousel{
      width:100%;
      overflow:hidden;
    }
    .org-track{
      max-width:none;
    }

    /* Refined service colours */
    .service-couples{
      background:#e4edf0;
    }
    .service-separation{
      background:#e8ece3;
    }

    /* More spacious testimonial layout */
    .testimonial-feature{
      padding:64px 0;
    }
    .testimonial-feature-inner{
      max-width:980px;
      grid-template-columns:88px minmax(0,1fr);
      gap:34px;
      align-items:start;
    }
    .testimonial-client{
      padding-top:10px;
    }
    .testimonial-client img{
      width:76px;
      height:76px;
    }
    .testimonial-mark{
      font-size:3rem;
      line-height:.8;
      margin-bottom:2px;
    }
    .testimonial-feature blockquote p{
      font-size:clamp(1.08rem,1.8vw,1.45rem);
      line-height:1.55;
      max-width:760px;
      letter-spacing:-.012em;
    }
    .testimonial-feature blockquote footer{
      margin-top:14px;
      font-size:.86rem;
    }

    @media(max-width:700px){
      .testimonial-feature{
        padding:52px 0;
      }
      .testimonial-feature-inner{
        grid-template-columns:1fr;
        gap:18px;
      }
      .testimonial-client{
        padding-top:0;
      }
      .testimonial-client img{
        width:68px;
        height:68px;
      }
      .testimonial-feature blockquote p{
        font-size:1.08rem;
      }
    }

  
    /* Testimonial slider */
    .testimonials-slider-section{
      background:#26332e;
      color:#edf0ed;
      overflow:hidden;
      padding:76px 0;
    }
    .testimonials-slider-section .eyebrow{
      color:#bdc9c0;
    }
    .testimonials-slider-head{
      display:flex;
      justify-content:space-between;
      gap:30px;
      align-items:end;
      margin-bottom:34px;
    }
    .testimonials-slider-head h2{
      max-width:680px;
      margin-bottom:0;
    }
    .testimonial-slider-controls{
      display:flex;
      gap:8px;
      flex:0 0 auto;
    }
    .testimonial-slider-btn{
      width:42px;
      height:42px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.18);
      background:transparent;
      color:#edf0ed;
      font-size:1.1rem;
      cursor:pointer;
    }
    .testimonial-slider-btn:hover{
      background:rgba(255,255,255,.08);
    }

    .testimonial-slider-viewport{
      overflow:hidden;
    }
    .testimonial-slider-track{
      display:flex;
      gap:22px;
      transition:transform .35s ease;
      will-change:transform;
      touch-action:pan-y;
    }
    .testimonial-slide{
      flex:0 0 calc(50% - 11px);
      min-width:0;
      display:grid;
      grid-template-columns:90px minmax(0,1fr);
      gap:24px;
      align-items:center;
      padding:8px 0;
    }
    .testimonial-person{
      display:grid;
      justify-items:center;
      gap:10px;
      align-self:center;
    }
    .testimonial-person img,
    .testimonial-photo-placeholder{
      width:72px;
      height:72px;
      border-radius:50%;
      object-fit:cover;
      border:2px solid rgba(255,255,255,.16);
    }
    .testimonial-photo-placeholder{
      display:flex;
      align-items:center;
      justify-content:center;
      font-family:"Montserrat",sans-serif;
      font-size:1.5rem;
      color:#8d9992;
      background:#e9ede9;
      border-color:transparent;
    }
    .testimonial-name{
      font-family:"Montserrat",sans-serif;
      font-size:.86rem;
      color:#d7ded9;
      text-align:center;
    }

    .testimonial-heart{
      position:relative;
      min-height:230px;
      padding:42px 44px 40px;
      display:flex;
      align-items:center;
      justify-content:center;
      text-align:center;
      background:#f3eee8;
      color:#2f3c36;
      clip-path:path("M 220 225 C 180 180 22 120 22 68 C 22 18 78 0 112 34 C 146 0 202 18 202 68 C 202 120 160 180 112 225 Z");
    }
    @supports not (clip-path:path("M 0 0 L 1 1")){
      .testimonial-heart{
        clip-path:polygon(50% 100%, 8% 60%, 5% 35%, 10% 15%, 25% 5%, 40% 8%, 50% 20%, 60% 8%, 75% 5%, 90% 15%, 95% 35%, 92% 60%);
      }
    }
    .testimonial-heart p{
      margin:0;
      max-width:360px;
      font-size:.98rem;
      line-height:1.55;
    }

    .testimonial-dots{
      display:flex;
      justify-content:center;
      gap:8px;
      margin-top:26px;
    }
    .testimonial-dot{
      width:8px;
      height:8px;
      border-radius:50%;
      border:0;
      background:rgba(255,255,255,.28);
      padding:0;
      cursor:pointer;
    }
    .testimonial-dot.active{
      background:#edf0ed;
    }

    @media(max-width:900px){
      .testimonial-slide{
        flex-basis:100%;
      }
    }
    @media(max-width:700px){
      .testimonials-slider-section{padding:60px 0}
      .testimonials-slider-head{
        align-items:flex-start;
      }
      .testimonial-slide{
        grid-template-columns:1fr;
        gap:16px;
        text-align:center;
      }
      .testimonial-person{
        grid-auto-flow:column;
        justify-content:start;
        justify-items:start;
        align-items:center;
      }
      .testimonial-person img,
      .testimonial-photo-placeholder{
        width:58px;
        height:58px;
      }
      .testimonial-heart{
        min-height:220px;
        padding:42px 34px 38px;
      }
      .testimonial-heart p{
        font-size:.94rem;
      }
    }

  
    /* Footer v2 */
    .site-footer{
      background:#26332e;
      color:#edf0ed;
      padding:58px 0 24px;
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.35fr 1fr .8fr .7fr;
      gap:48px;
      align-items:start;
    }
    .footer-brand .brand{
      color:#edf0ed;
      text-decoration:none;
    }
    .footer-brand p{
      max-width:280px;
      margin:14px 0 20px;
      color:#c9d1cc;
      font-size:.93rem;
      line-height:1.55;
    }
    .footer-contact{
      display:flex;
      flex-wrap:wrap;
      gap:10px 18px;
    }
    .footer-contact a{
      color:#edf0ed;
      text-decoration:none;
      font-family:"Montserrat",sans-serif;
      font-size:.84rem;
    }
    .footer-column h3{
      margin:0 0 14px;
      color:#aeb9b2;
      font-size:.75rem;
      line-height:1.2;
      letter-spacing:.09em;
      text-transform:uppercase;
      font-weight:600;
    }
    .footer-links{
      display:grid;
      gap:10px;
    }
    .footer-links a{
      color:#edf0ed;
      text-decoration:none;
      font-size:.92rem;
      line-height:1.4;
    }
    .footer-links a:hover,
    .footer-contact a:hover{
      color:#bdc9c0;
    }
    .footer-bottom{
      margin-top:42px;
      padding-top:18px;
      border-top:1px solid rgba(255,255,255,.12);
      color:#9eaaa3;
      font-size:.8rem;
    }

    @media(max-width:900px){
      .footer-grid{
        grid-template-columns:1.2fr 1fr 1fr;
      }
      .footer-brand{
        grid-column:1/-1;
      }
    }
    @media(max-width:620px){
      .footer-grid{
        grid-template-columns:1fr 1fr;
        gap:34px 24px;
      }
      .footer-brand{
        grid-column:1/-1;
      }
      .footer-column:last-child{
        grid-column:1/-1;
      }
    }

  
    /* Clean testimonial slider */
    .testimonial-heart{display:none!important}

    .testimonial-slider-track{
      display:flex;
      gap:20px;
      transition:transform .35s ease;
      will-change:transform;
      touch-action:pan-y;
    }

    .clean-testimonial-card{
      flex:0 0 calc(50% - 10px);
      min-width:0;
      display:grid;
      grid-template-columns:92px minmax(0,1fr);
      gap:24px;
      align-items:center;
      padding:28px;
      background:#f3f0e9;
      border-radius:24px;
      border:1px solid rgba(255,255,255,.08);
      color:var(--ink);
    }

    .testimonial-person{
      display:grid;
      justify-items:center;
      gap:10px;
    }

    .testimonial-person img,
    .testimonial-photo-placeholder{
      width:74px;
      height:74px;
      border-radius:50%;
      object-fit:cover;
      border:0;
    }

    .testimonial-photo-placeholder{
      display:flex;
      align-items:center;
      justify-content:center;
      background:#dde3de;
      color:#728078;
      font-family:"Montserrat",sans-serif;
      font-size:1.4rem;
    }

    .testimonial-name{
      font-family:"Montserrat",sans-serif;
      font-size:.86rem;
      color:#4b5852;
      text-align:center;
      font-weight:500;
    }

    .testimonial-copy{
      min-width:0;
    }

    .testimonial-copy p{
      margin:0;
      font-size:1rem;
      line-height:1.62;
      color:#35413b;
    }

    @media(max-width:900px){
      .clean-testimonial-card{
        flex-basis:100%;
      }
    }

    @media(max-width:700px){
      .testimonial-slider-controls{
        display:none;
      }
      .clean-testimonial-card{
        grid-template-columns:1fr;
        gap:16px;
        padding:24px;
      }
      .testimonial-person{
        grid-auto-flow:column;
        justify-content:start;
        justify-items:start;
        align-items:center;
      }
      .testimonial-person img,
      .testimonial-photo-placeholder{
        width:60px;
        height:60px;
      }
      .testimonial-name{
        text-align:left;
      }
      .testimonial-copy p{
        font-size:.96rem;
      }
      .testimonial-slider-viewport{
        overflow:hidden;
      }
    }
