:root{
    --cream:#fffbf3;          /* page background */
    --cream-deep:#f7f0e0;     /* alt section bg */
    --beige:#f1e8d6;          /* cards / bands */
    --green:#4f633a;          /* primary deep green */
    --green-soft:#878f60;     /* muted green */
    --green-btn:#4f633a;      /* filled button */
    --gold:#b67a16;           /* gold accent */
    --gold-soft:#c7994a;
    --ink:#5f584c;            /* body text */
    --ink-soft:#7d7566;       /* secondary text */
    --line:#e2d8c3;
    --serif:'Cormorant Garamond', Georgia, serif;
    --sans:'Karla', 'Helvetica Neue', Arial, sans-serif;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--sans);
    color:var(--ink);
    background:var(--cream);
    font-weight:300;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:1240px;margin:0 auto;padding:0 32px;}
  .serif{font-family:var(--serif);}
  .eyebrow{
    font-size:12px;letter-spacing:.18em;text-transform:uppercase;
    color:var(--gold);font-weight:400;
  }

  /* ---------- placeholder images ---------- */
  .ph{
    background:linear-gradient(135deg,#e6ddcb,#d5c9b0);
    background-size:cover;background-position:center;
    position:relative;overflow:hidden;
  }
  .ph::after{
    content:attr(data-label);
    position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    text-align:center;padding:12px;
    font-family:var(--sans);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
    color:#8c8069;opacity:.65;
  }
  /* When a real background-image url is set inline, hide the label */
  .ph[style*="url"]::after{content:"";}

  /* ---------- buttons ---------- */
  .btn{
    display:inline-block;font-family:var(--sans);font-weight:400;
    font-size:14px;letter-spacing:.04em;padding:14px 26px;cursor:pointer;
    border:1px solid var(--green);color:var(--green);background:transparent;
    transition:all .25s ease;border-radius:2px;
  }
  .btn:hover{background:var(--green);color:#fff;}
  .btn-fill{background:var(--green-btn);border-color:var(--green-btn);color:#fff;}
  .btn-fill:hover{background:#455923;color:#fff;}
  .btn-pill{border-radius:40px;padding:12px 30px;letter-spacing:.12em;
    text-transform:uppercase;font-size:12px;}
  .btn-outline-sm{font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:11px 22px;}

  /* ---------- header ---------- */
  header{position:sticky;top:0;z-index:50;background:var(--cream);
    border-bottom:1px solid rgba(0,0,0,.04);}
  .nav{display:flex;align-items:center;justify-content:space-between;
    gap:24px;padding:14px 0;}
  .brand{display:flex;align-items:center;gap:14px;}
  .brand .mark{width:58px;height:58px;flex:none;object-fit:contain;}
  .foot-brand .mark{object-fit:contain;}
  .brand .name{font-family:var(--serif);line-height:1.05;}
  .brand .name .l1{font-size:26px;letter-spacing:.06em;color:var(--green);}
  .brand .name .l2{font-family:var(--sans);font-weight:400;font-size:18px;letter-spacing:.30em;color:var(--gold);}
  nav ul{display:flex;list-style:none;gap:24px;align-items:center;flex-wrap:wrap;}
  nav a{font-size:15px;color:var(--ink);font-weight:300;letter-spacing:.01em;}
  nav a:hover,nav a.active{color:var(--green);}
  .nav-toggle{display:none;background:none;border:0;cursor:pointer;
    font-size:26px;color:var(--green);line-height:1;}

  /* ---------- hero ---------- */
  .hero{display:grid;grid-template-columns:0.95fr 1.05fr;align-items:stretch;}
  .hero-img{min-height:640px;position:relative;}
  .hero-img .caption{
    position:absolute;left:34px;bottom:70px;max-width:365px;background:#fff;
    padding:20px 24px;font-family:var(--serif);font-size:22px;line-height:1.35;
    color:var(--ink);box-shadow:0 8px 30px rgba(0,0,0,.08);
  }
  .hero-copy{padding:70px 60px;display:flex;flex-direction:column;justify-content:center;}
  .hero-copy .lead{font-family:var(--serif);font-style:italic;font-size:30px;
    color:var(--gold);line-height:1.25;margin-bottom:26px;}
  .hero-copy h1{font-family:var(--serif);font-weight:500;font-size:56px;
    line-height:1.08;color:var(--green);margin-bottom:28px;}
  .hero-copy p{max-width:560px;color:var(--ink-soft);font-size:17px;margin-bottom:22px;}
  .sprig{width:190px;opacity:.85;margin:6px 0 30px;}
  .hero-btns{display:flex;gap:20px;flex-wrap:wrap;margin-top:6px;}

  /* ---------- section basics ---------- */
  section{padding:96px 0;}
  .section-head{text-align:center;margin-bottom:56px;}
  .section-head h2{font-family:var(--serif);font-weight:500;font-size:46px;
    color:var(--green);margin-top:8px;line-height:1.1;}
  .section-head p{max-width:760px;margin:22px auto 0;color:var(--ink-soft);font-size:17px;}

  /* personal approach cards */
  .approach{background:var(--cream);}
  .cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
  .card-soft{background:var(--beige);padding:44px 36px;text-align:center;}
  .card-soft h3{font-family:var(--serif);font-size:30px;font-weight:500;
    color:var(--green-soft);margin-bottom:10px;}
  .card-soft .ic{color:var(--gold);margin:10px 0 22px;}
  .card-soft .ic svg{width:42px;height:42px;}
  .reason .circle svg{width:38px;height:38px;}
  .reason .circle img{width:46px;height:46px;object-fit:contain;}
  .journey .badge svg{width:24px;height:24px;}
  .card-soft p{color:var(--ink-soft);font-size:15px;line-height:1.7;}
  .approach .closing{text-align:center;max-width:900px;margin:52px auto 0;
    color:var(--ink-soft);font-size:17px;}

  /* reasons */
  .reasons{background:var(--cream);padding-top:20px;}
  .reasons4{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:20px;}
  .reason{text-align:center;}
  .reason .circle{width:88px;height:88px;border:1px solid var(--line);border-radius:50%;
    display:flex;align-items:center;justify-content:center;margin:0 auto 20px;
    font-size:30px;color:var(--green-soft);}
  .reason p{color:var(--ink-soft);font-size:15px;max-width:230px;margin:0 auto;}

  /* about linda */
  .about{background:var(--cream);}
  .about-grid{display:grid;grid-template-columns:1.05fr .9fr .85fr;gap:48px;align-items:start;}
  .about h2{font-family:var(--serif);font-size:40px;color:var(--green);font-weight:500;}
  .about .role{color:var(--gold);font-size:15px;margin:4px 0 22px;}
  .about p{color:var(--ink-soft);font-size:15.5px;margin-bottom:14px;}
  .about-photo{min-height:360px;}
  .about .side h3{font-family:var(--serif);font-size:32px;color:var(--green);
    font-weight:500;line-height:1.2;}
  .about .side p{margin-top:24px;}
  .socials{display:flex;gap:12px;margin:22px 0;}
  .socials a{width:34px;height:34px;border-radius:50%;background:#2b2b2b;color:#fff;
    display:flex;align-items:center;justify-content:center;font-size:14px;transition:.2s;}
  .socials a:hover{background:var(--green);}

  /* journeys */
  .journeys{background:var(--cream);}
  .cards5{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;}
  .journey{text-align:center;}
  .journey .thumb{height:210px;margin-bottom:22px;}
  .journey h3{font-family:var(--serif);font-size:26px;color:var(--green-soft);
    font-weight:500;margin-bottom:14px;}
  .journey .badge{width:44px;height:44px;border-radius:50%;background:var(--green-soft);
    color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;
    font-size:18px;}
  .journey p{color:var(--ink-soft);font-size:14px;margin-bottom:20px;min-height:60px;}
  .journey.help{background:var(--beige);padding:28px 20px;display:flex;
    flex-direction:column;align-items:center;justify-content:center;}
  .journey.help .badge{background:var(--green-soft);}
  .journey.help h3{color:var(--green-soft);}

  /* testimonials */
  .testimonials{background:var(--cream-deep);}
  .quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:0;}
  .quote{padding:40px 46px;text-align:center;}
  .quote:nth-child(2){background:var(--beige);}
  .quote .mark{color:var(--gold);height:42px;margin-bottom:6px;}
  .quote .mark svg{width:52px;height:38px;display:inline-block;}
  .quote p{color:var(--ink-soft);font-size:15.5px;margin:18px 0 20px;font-style:normal;}
  .quote .who{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--gold);}

  /* branch divider / title flourish (reusable botanical motif) */
  .branch-divider{display:block;margin:24px auto;width:260px;max-width:62%;height:auto;}
  .title-flourish{display:block;margin:18px auto 0;width:220px;max-width:56%;height:auto;}

  /* quote cards (client stories — no photos) */
  .qgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:12px;}
  .qcard{background:var(--cream);border:1px solid rgba(79,99,58,.14);border-radius:14px;
    padding:34px 30px 30px;display:flex;flex-direction:column;
    box-shadow:0 6px 22px rgba(0,0,0,.04);}
  .qcard .mark{color:var(--gold);height:34px;margin-bottom:8px;}
  .qcard .mark svg{width:42px;height:32px;display:inline-block;}
  .qcard .qh{font-family:var(--serif);font-size:22px;line-height:1.22;color:var(--green);
    font-weight:500;margin-bottom:14px;}
  .qcard p{color:var(--ink-soft);font-size:15.5px;line-height:1.72;margin-bottom:18px;}
  .qcard .who{font-family:var(--serif);font-style:italic;font-size:20px;color:var(--gold);
    margin-top:auto;}
  @media(max-width:900px){.qgrid{grid-template-columns:1fr;max-width:560px;margin:12px auto 0;}}

  /* rotating stories carousel */
  .qwrap{position:relative;margin-top:12px;}
  .qcarousel{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;
    scroll-behavior:smooth;padding:6px 2px;scrollbar-width:none;-ms-overflow-style:none;}
  .qcarousel::-webkit-scrollbar{display:none;}
  .qcarousel .qcard{flex:0 0 calc((100% - 52px)/3);scroll-snap-align:start;}
  @media(max-width:1080px){.qcarousel .qcard{flex:0 0 calc((100% - 26px)/2);}}
  @media(max-width:760px){.qcarousel .qcard{flex:0 0 100%;}}
  .qnav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;
    width:44px;height:44px;border-radius:50%;background:var(--cream);
    border:1px solid var(--line);color:var(--green);font-size:24px;line-height:1;
    display:flex;align-items:center;justify-content:center;cursor:pointer;
    box-shadow:0 4px 16px rgba(0,0,0,.08);transition:background .2s,color .2s;}
  .qnav:hover{background:var(--green);color:#fff;}
  .qnav.prev{left:-20px;} .qnav.next{right:-20px;}
  @media(max-width:1180px){.qnav.prev{left:2px;} .qnav.next{right:2px;}}
  @media(max-width:760px){.qnav{display:none;}}

  /* articles */
  .articles{background:var(--cream);}
  .cards3b{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;}
  .article{text-align:center;}
  .article .thumb{height:230px;margin-bottom:22px;}
  .article h3{font-family:var(--serif);font-size:24px;color:var(--green);
    font-weight:500;line-height:1.3;margin-bottom:22px;text-align:left;}

  /* footer */
  footer{background:var(--cream);border-top:1px solid rgba(0,0,0,.04);padding:64px 0 40px;}
  .foot-grid{display:grid;grid-template-columns:1fr 1.1fr 1fr 1.1fr;gap:40px;
    background:var(--beige);padding:48px;align-items:start;}
  .foot-brand .name .l1{font-family:var(--serif);font-size:24px;color:var(--green);
    letter-spacing:.04em;}
  .foot-brand .name .l2{font-family:var(--serif);font-size:20px;color:var(--gold);
    letter-spacing:.2em;}
  .foot-brand .mark{width:64px;height:64px;margin-bottom:8px;}
  .foot h4{font-family:var(--serif);font-size:24px;color:var(--gold-soft);
    font-weight:500;margin-bottom:22px;}
  .foot .row{display:flex;align-items:center;gap:12px;color:var(--ink-soft);
    font-size:14.5px;margin-bottom:14px;}
  .foot .row .ic{color:var(--green-soft);}
  .qlinks{list-style:none;}
  .qlinks li{margin-bottom:12px;color:var(--ink-soft);font-size:14.5px;}
  .qlinks a:hover{color:var(--green);}
  .subscribe input{width:100%;padding:13px 14px;border:1px solid var(--line);
    background:#fff;font-family:var(--sans);font-size:14px;margin-bottom:14px;}
  .subscribe button{width:100%;}
  .portal{margin-top:22px;}
  .portal a{display:inline-block;border:1px solid var(--line);padding:10px 16px;
    font-size:13px;color:var(--ink-soft);background:#fff;}
  .copyright{text-align:center;color:var(--ink-soft);font-size:13px;margin-top:34px;
    letter-spacing:.03em;}

  /* the practice — wellness plan cards */
  .practice{background:var(--cream);}
  .practice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
  .pcard{text-align:center;}
  .pcard h3{font-family:var(--serif);font-size:26px;color:var(--green-soft);
    font-weight:500;line-height:1.2;margin-bottom:18px;min-height:66px;
    display:flex;align-items:flex-end;justify-content:center;}
  .pcard .pimg{position:relative;height:340px;background-size:cover;
    background-position:center;background-color:#d9cfb8;
    display:flex;flex-direction:column;justify-content:flex-end;
    align-items:center;padding:0 0 22px;}
  .pcard .pcap{background:var(--cream);max-width:72%;padding:13px 15px;
    font-size:13px;color:var(--ink-soft);line-height:1.5;}
  .pcard .pbtn{font-size:13px;letter-spacing:.04em;padding:11px 26px;margin-top:20px;}

  /* the steps to wholeness */
  .steps{background:var(--cream);}
  .steps-grid{display:grid;grid-template-columns:repeat(5,1fr);}
  .step{text-align:center;padding:36px 22px 42px;}
  .step.alt{background:var(--beige);}
  .step .num{width:76px;height:76px;border-radius:50%;background:var(--beige);
    color:var(--ink);font-family:var(--serif);font-size:34px;
    display:flex;align-items:center;justify-content:center;margin:0 auto 22px;}
  .step.alt .num{background:var(--cream);}
  .step h4{font-family:var(--serif);font-size:17px;letter-spacing:.06em;
    color:var(--ink);font-weight:600;text-transform:uppercase;margin-bottom:16px;}
  .step p{font-size:14px;color:var(--ink-soft);margin-bottom:26px;min-height:120px;}
  .step .arrow{width:54px;height:27px;border:1px solid var(--line);border-radius:40px;
    display:flex;align-items:center;justify-content:center;margin:0 auto;
    color:var(--green-soft);font-size:16px;}

  /* mobile nav panel */
  #mobileMenu{display:none;}

  /* ---------- responsive ---------- */
  @media(max-width:1080px){
    .hero-copy h1{font-size:46px;}
    .about-grid{grid-template-columns:1fr;gap:40px;}
    .about-photo{max-width:420px;}
    .cards5{grid-template-columns:repeat(2,1fr);}
    .practice-grid{grid-template-columns:repeat(2,1fr);}
    .steps-grid{grid-template-columns:repeat(1,1fr);max-width:520px;margin:0 auto;}
    .step p{min-height:0;}
    .foot-grid{grid-template-columns:1fr 1fr;}
  }
  @media(max-width:820px){
    .wrap{padding:0 22px;}
    nav ul{display:none;}
    .nav-toggle{display:block;}
    #mobileMenu.open{display:block;background:var(--cream);border-top:1px solid var(--line);}
    #mobileMenu ul{list-style:none;padding:14px 22px 22px;}
    #mobileMenu li{padding:11px 0;border-bottom:1px solid rgba(0,0,0,.05);}
    #mobileMenu a{font-size:16px;}
    .hero{grid-template-columns:1fr;}
    .hero-img{min-height:420px;}
    .hero-img .caption{left:16px;bottom:16px;max-width:290px;
      font-size:16px;line-height:1.32;padding:12px 15px;}
    .hero-copy{padding:48px 22px;}
    .hero-copy h1{font-size:40px;}
    .hero-copy .lead{font-size:25px;}
    section{padding:64px 0;}
    .section-head h2{font-size:36px;}
    .cards3,.reasons4,.cards3b{grid-template-columns:1fr;gap:26px;}
    .cards5{grid-template-columns:1fr;}
    .practice-grid{grid-template-columns:1fr;}
    .pcard .pimg{height:300px;}
    .quotes{grid-template-columns:1fr;}
    .quote:nth-child(2){background:transparent;border-top:1px solid var(--line);
      border-bottom:1px solid var(--line);}
    .foot-grid{grid-template-columns:1fr;padding:32px;}
    .banner{height:260px;}
    .banner .q{font-size:27px;}
  }

/* ============================================================
   MEET LINDA PAGE
   ============================================================ */
.mhero{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;background:var(--cream);}
.mhero .mimg{min-height:600px;background-size:cover;background-position:center;background-color:#d9cfb8;}
.mhero .mcopy{padding:80px 60px;display:flex;flex-direction:column;justify-content:center;}
.mhero .eyebrow{margin-bottom:14px;}
.mhero h1{font-family:var(--serif);font-weight:500;font-size:56px;line-height:1.06;color:var(--green);margin-bottom:26px;}
.mhero p{color:var(--ink-soft);font-size:17px;max-width:520px;margin-bottom:16px;}

/* narrative prose */
.prose{max-width:780px;margin:0 auto;}
.prose h3{font-family:var(--serif);font-weight:500;font-size:30px;color:var(--green-soft);margin:38px 0 14px;}
.prose h3:first-child{margin-top:0;}
.prose p{color:var(--ink);font-size:16.5px;line-height:1.75;margin-bottom:16px;}

/* turning point band */
.turning{background:var(--beige);text-align:center;}
.turning .q{font-family:var(--serif);font-style:italic;font-weight:500;font-size:34px;line-height:1.35;color:var(--green);max-width:900px;margin:0 auto;}
.turning .q strong{font-weight:600;font-style:normal;}

/* the method (5 steps) */
.method-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;}
.method-step{text-align:center;}
.method-step .badge{width:70px;height:70px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--green-soft);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;}
.method-step .badge svg{width:34px;height:34px;}
.method-step .badge img{width:40px;height:40px;object-fit:contain;}
.method-step h3{font-family:var(--serif);font-size:25px;font-weight:500;color:var(--green);margin-bottom:8px;}
.method-step p{color:var(--ink-soft);font-size:14.5px;}

/* beliefs checklist */
.beliefs{max-width:640px;margin:0 auto;}
.beliefs li{list-style:none;display:flex;align-items:flex-start;gap:14px;font-size:18px;color:var(--ink);padding:14px 0;border-bottom:1px solid var(--line);font-family:var(--serif);}
.beliefs li:last-child{border-bottom:0;}
.beliefs .ck{color:var(--gold);flex:none;margin-top:2px;}
.beliefs .ck svg{width:22px;height:22px;}

/* credentials */
.creds-wrap{background:var(--beige);}
.creds{max-width:760px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:14px 40px;}
.creds li{list-style:none;display:flex;align-items:center;gap:12px;color:var(--ink);font-size:16px;}
.creds .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);flex:none;}

/* FAQ */
.faq{max-width:820px;margin:0 auto;}
.faq details{border-bottom:1px solid var(--line);padding:6px 0;}
.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;position:relative;font-family:var(--serif);font-size:22px;color:var(--green);}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";position:absolute;right:6px;top:18px;font-size:26px;color:var(--gold);font-family:var(--sans);font-weight:300;}
.faq details[open] summary::after{content:"\2013";}
.faq p{color:var(--ink-soft);font-size:15.5px;line-height:1.7;padding:0 40px 22px 0;margin:0;}

/* beyond the office */
.beyond{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.beyond .bimg{min-height:420px;background-size:cover;background-position:center;background-color:#d9cfb8;}
.beyond h2{font-family:var(--serif);font-weight:500;font-size:40px;color:var(--green);margin-bottom:20px;line-height:1.1;}
.beyond p{color:var(--ink-soft);font-size:16.5px;margin-bottom:18px;}
.beyond ul{list-style:none;}
.beyond li{display:flex;align-items:center;gap:12px;color:var(--ink);font-size:16px;padding:9px 0;}
.beyond .leaf{color:var(--green-soft);flex:none;}
.beyond .leaf svg{width:18px;height:18px;}
.beyond .leaf img{width:20px;height:20px;object-fit:contain;vertical-align:middle;}

/* personal note */
.note-wrap{background:var(--cream-deep);}
.note{max-width:760px;margin:0 auto;background:var(--cream);padding:56px 60px;box-shadow:0 10px 40px rgba(0,0,0,.05);text-align:center;}
.note .eyebrow{margin-bottom:24px;}
.note p{font-family:'Parisienne',cursive;font-size:28px;line-height:1.5;color:var(--ink);margin-bottom:18px;}
.note .sig{font-family:'Parisienne',cursive;font-size:38px;color:var(--green);margin-top:12px;}

/* invitation */
.invite{text-align:center;background:var(--green);}
.invite h2{font-family:var(--serif);font-weight:500;font-size:42px;color:var(--cream);margin-bottom:22px;line-height:1.15;}
.invite p{color:#e7e5d5;font-size:18px;max-width:720px;margin:0 auto 34px;}
.invite .btn{border-color:var(--cream);color:var(--cream);}
.invite .btn:hover{background:var(--cream);color:var(--green);}

@media(max-width:1080px){
  .mhero h1{font-size:46px;}
  .method-grid{grid-template-columns:repeat(3,1fr);row-gap:38px;}
}
@media(max-width:820px){
  .mhero{grid-template-columns:1fr;}
  .mhero .mimg{min-height:380px;}
  .mhero .mcopy{padding:48px 22px;}
  .mhero h1{font-size:38px;}
  .turning .q{font-size:26px;}
  .method-grid{grid-template-columns:1fr;}
  .beliefs li{font-size:16px;}
  .creds{grid-template-columns:1fr;}
  .beyond{grid-template-columns:1fr;gap:32px;}
  .beyond .bimg{min-height:300px;}
  .note{padding:40px 24px;}
  .invite h2{font-size:32px;}
}

/* ============================================================
   SERVICES PAGE
   ============================================================ */
/* pathway cards (Start Where You Are) */
.path-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.pathcard{background:var(--cream);border:1px solid var(--line);display:flex;flex-direction:column;}
.pathcard .pthumb{height:180px;background-size:cover;background-position:center;background-color:#d9cfb8;}
.pathcard .pbody{padding:26px 24px 28px;display:flex;flex-direction:column;flex:1;}
.pathcard h3{font-family:var(--serif);font-size:27px;color:var(--green-soft);font-weight:500;margin-bottom:10px;}
.pathcard .desc{color:var(--ink-soft);font-size:14.5px;margin-bottom:18px;}
.pathcard .ideal{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.pathcard ul{list-style:none;margin-bottom:24px;}
.pathcard li{color:var(--ink);font-size:14.5px;padding:5px 0 5px 18px;position:relative;}
.pathcard li::before{content:"";position:absolute;left:0;top:12px;width:6px;height:6px;border-radius:50%;background:var(--green-soft);}
.pathcard .btn{margin-top:auto;align-self:flex-start;}

/* discover cards */
.disc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;}
.disc{text-align:center;padding:0 6px;}
.disc .ic{color:var(--gold);margin-bottom:16px;}
.disc .ic svg{width:42px;height:42px;}
.disc .ic img{width:52px;height:52px;object-fit:contain;}
.disc h3{font-family:var(--serif);font-size:23px;color:var(--green);font-weight:500;margin-bottom:10px;line-height:1.2;}
.disc p{color:var(--ink-soft);font-size:14.5px;line-height:1.6;}

/* additional therapies list */
.therapy-list{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;max-width:980px;margin:0 auto;}
.therapy{padding:22px 0;border-bottom:1px solid var(--line);}
.therapy h3{font-family:var(--serif);font-size:21px;color:var(--green);font-weight:500;margin-bottom:6px;}
.therapy p{color:var(--ink-soft);font-size:14px;line-height:1.55;margin-bottom:9px;}
.therapy a{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:2px;}
.therapy a:hover{color:var(--green);border-color:var(--green);}

/* 4-column steps variant */
.steps-grid.four{grid-template-columns:repeat(4,1fr);}

@media(max-width:1080px){
  .path-grid{grid-template-columns:repeat(2,1fr);}
  .disc-grid{grid-template-columns:repeat(2,1fr);row-gap:36px;}
  .steps-grid.four{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:820px){
  .path-grid{grid-template-columns:1fr;}
  .disc-grid{grid-template-columns:1fr;}
  .therapy-list{grid-template-columns:1fr;}
  .steps-grid.four{grid-template-columns:1fr;max-width:520px;margin:0 auto;}
}

/* ============================================================
   THE ROOTS & RESONANCE METHOD PAGE
   ============================================================ */
.thero{background:var(--cream);text-align:center;padding:100px 0 84px;}
.thero .eyebrow{display:block;margin-bottom:16px;}
.thero h1{font-family:var(--serif);font-weight:500;font-size:56px;line-height:1.08;color:var(--green);margin-bottom:20px;}
.thero .sub{font-family:var(--serif);font-style:italic;font-size:24px;line-height:1.35;color:var(--gold);max-width:740px;margin:0 auto 30px;}
.thero .intro{max-width:720px;margin:0 auto;}
.thero .intro p{color:var(--ink-soft);font-size:17px;line-height:1.75;margin-bottom:14px;}

/* full-width nature band (no text) */
.fullimg{height:460px;background-size:cover;background-position:center;background-color:#d9cfb8;}

/* large centered icon */
.bigicon{color:var(--gold);margin-bottom:24px;text-align:center;}
.bigicon svg{width:58px;height:58px;}

/* philosophy */
.philosophy{background:var(--cream-deep);text-align:center;}
.philosophy .inner{max-width:860px;margin:0 auto;}
.philosophy p{font-family:var(--serif);font-size:23px;line-height:1.6;color:var(--green);margin-bottom:22px;}
.philosophy p:first-of-type{font-style:italic;font-size:27px;color:var(--gold);}
.philosophy p:last-child{margin-bottom:0;}

/* faq bridge */
.faq-bridge{max-width:760px;margin:0 auto 40px;}
.faq-bridge .qrow{display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:20px 2px;border-bottom:1px solid var(--line);font-family:var(--serif);
  font-size:22px;color:var(--green);}
.faq-bridge .qrow:hover{color:var(--gold);}
.faq-bridge .qrow::after{content:"\2192";color:var(--gold);font-family:var(--sans);flex:none;}
.faq-bridge-btn{text-align:center;}

@media(max-width:820px){
  .thero{padding:64px 0 56px;}
  .thero h1{font-size:38px;}
  .thero .sub{font-size:20px;}
  .fullimg{height:280px;}
  .philosophy p{font-size:20px;}
  .philosophy p:first-of-type{font-size:23px;}
  .faq-bridge .qrow{font-size:18px;}
}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.connect-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.connect{text-align:center;padding:36px 22px;background:var(--cream-deep);}
.connect .ic{color:var(--gold);margin-bottom:14px;}
.connect .ic svg{width:32px;height:32px;}
.connect .ic img{width:44px;height:44px;object-fit:contain;}
.connect h3{font-family:var(--serif);font-size:22px;color:var(--green);font-weight:500;margin-bottom:10px;}
.connect p{color:var(--ink-soft);font-size:15px;line-height:1.5;margin-bottom:12px;}
.connect a.clink{color:var(--green);font-size:15px;border-bottom:1px solid var(--line);padding-bottom:2px;}
.connect a.clink:hover{border-color:var(--green);}

.hours{max-width:520px;margin:0 auto;}
.hours .row{display:flex;justify-content:space-between;align-items:center;padding:13px 4px;border-bottom:1px solid var(--line);}
.hours .row .day{font-family:var(--serif);font-size:19px;color:var(--green);}
.hours .row .time{color:var(--ink-soft);font-size:15px;}
.hours .hnote{text-align:center;color:var(--ink-soft);font-size:14px;margin-top:22px;font-style:italic;}

.center-narrow{max-width:660px;margin:0 auto;text-align:center;}
.center-narrow p{color:var(--ink-soft);font-size:16.5px;line-height:1.7;margin-bottom:18px;}
.portal-list{max-width:420px;margin:0 auto 30px;list-style:none;text-align:left;}
.portal-list li{display:flex;align-items:center;gap:12px;color:var(--ink);font-size:16px;padding:8px 0;}
.portal-list .leaf{color:var(--green-soft);flex:none;}
.portal-list .leaf svg{width:18px;height:18px;}
.portal-list .leaf img{width:20px;height:20px;object-fit:contain;vertical-align:middle;}

.cform{max-width:640px;margin:0 auto;}
.cform .field{margin-bottom:20px;}
.cform label{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;}
.cform input,.cform select,.cform textarea{width:100%;padding:14px 15px;border:1px solid var(--line);background:var(--cream);font-family:var(--sans);font-size:15px;color:var(--ink);}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:none;border-color:var(--green-soft);}
.cform textarea{min-height:150px;resize:vertical;}
.cform .cform-btn{text-align:center;margin-top:10px;}

.maparea{height:380px;background:var(--beige);display:flex;align-items:center;justify-content:center;text-align:center;color:var(--ink-soft);font-size:13px;letter-spacing:.1em;text-transform:uppercase;padding:20px;}
.maparea iframe{width:100%;height:100%;border:0;display:block;}

@media(max-width:1080px){
  .connect-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:820px){
  .connect-grid{grid-template-columns:1fr;}
  .maparea{height:280px;}
}

/* ============================================================
   NAV CTA BUTTON + EXPANDED FOOTER (shared via site.js)
   ============================================================ */
.nav-cta{display:inline-block;background:var(--green-btn);color:#fff !important;
  border:1px solid var(--green-btn);padding:10px 18px;border-radius:2px;
  font-size:14px;letter-spacing:.02em;transition:.2s;}
.nav-cta:hover{background:#455923;color:#fff !important;}

.site-footer{background:var(--cream);border-top:1px solid rgba(0,0,0,.05);padding:64px 0 30px;}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr;gap:48px;padding-bottom:38px;
  border-bottom:1px solid var(--line);align-items:start;}
.footer-brand .fb-logo{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.footer-brand .fb-logo img{width:56px;height:56px;object-fit:contain;}
.footer-brand .fb-name .l1{font-family:var(--serif);font-size:22px;color:var(--green);letter-spacing:.04em;}
.footer-brand .fb-name .l2{font-family:var(--sans);font-weight:400;font-size:14px;color:var(--gold);letter-spacing:.28em;}
.footer-brand .frow{display:flex;align-items:center;gap:10px;color:var(--ink-soft);font-size:14px;margin-bottom:10px;}
.footer-brand .frow .ic{color:var(--green-soft);}
.footer-brand .socials{margin-top:16px;}
.footer-news h4{font-family:var(--serif);font-size:22px;color:var(--gold-soft);font-weight:500;margin-bottom:14px;}
.footer-news p{color:var(--ink-soft);font-size:14px;margin-bottom:14px;}
.footer-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding:40px 0;}
.fcol h4{font-family:var(--serif);font-size:19px;color:var(--green);font-weight:500;margin-bottom:16px;}
.fcol ul{list-style:none;}
.fcol li{margin-bottom:10px;}
.fcol a{color:var(--ink-soft);font-size:14.5px;}
.fcol a:hover{color:var(--green);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding-top:22px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:13px;}
.footer-bottom a{color:var(--ink-soft);}
.footer-bottom a:hover{color:var(--green);}
@media(max-width:820px){
  .footer-top{grid-template-columns:1fr;gap:32px;}
  .footer-cols{grid-template-columns:1fr 1fr;gap:26px;}
  .footer-bottom{flex-direction:column;text-align:center;}
}

/* ============================================================
   CLIENT STORIES PAGE
   ============================================================ */
.story{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;}
.story + .story{margin-top:80px;}
.story .simg{min-height:420px;background-size:cover;background-position:center;background-color:#d9cfb8;}
.story.flip .simg{order:2;}
.story h3{font-family:var(--serif);font-weight:500;font-size:34px;line-height:1.15;color:var(--green);margin:8px 0 18px;}
.story .stext{color:var(--ink);font-size:16.5px;line-height:1.75;margin-bottom:18px;}
.story .stext.quote{font-style:italic;font-family:var(--serif);font-size:21px;color:var(--ink);line-height:1.55;}
.story .sname{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--gold);margin-bottom:22px;}

/* perspective shifts */
.shifts{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:900px;margin:0 auto;}
.shift{background:var(--cream);border:1px solid var(--line);padding:28px 30px;text-align:center;}
.shift .from{color:var(--ink-soft);font-size:15px;letter-spacing:.04em;text-transform:uppercase;}
.shift .sarrow{color:var(--gold);font-size:22px;margin:10px 0;}
.shift .to{font-family:var(--serif);font-size:23px;color:var(--green);line-height:1.25;}

/* share your story questions */
.share-q{max-width:600px;margin:0 auto 30px;list-style:none;}
.share-q li{font-family:var(--serif);font-style:italic;font-size:21px;color:var(--green);text-align:center;padding:10px 0;}

/* legal disclaimer */
.disclaimer{max-width:760px;margin:0 auto;text-align:center;color:var(--ink-soft);font-size:13.5px;line-height:1.6;font-style:italic;}

@media(max-width:820px){
  .story{grid-template-columns:1fr;gap:28px;}
  .story.flip .simg{order:0;}
  .story .simg{min-height:280px;}
  .story h3{font-size:28px;}
  .shifts{grid-template-columns:1fr;}
}

/* ============================================================
   WELLNESS RESOURCE LIBRARY PAGE
   ============================================================ */
.lib-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.libcard{background:var(--cream-deep);padding:34px 26px;display:flex;flex-direction:column;text-align:center;}
.libcard .ic{color:var(--gold);margin-bottom:14px;}
.libcard .ic svg{width:36px;height:36px;}
.libcard .ic img{width:48px;height:48px;object-fit:contain;}
.libcard h3{font-family:var(--serif);font-size:22px;color:var(--green);font-weight:500;margin-bottom:10px;line-height:1.2;}
.libcard p{color:var(--ink-soft);font-size:14px;line-height:1.55;margin-bottom:20px;flex:1;}
.libcard .btn{align-self:center;}

.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.topic{background:var(--cream);border:1px solid var(--line);padding:30px 30px;}
.topic h3{font-family:var(--serif);font-size:24px;color:var(--green);font-weight:500;margin-bottom:16px;display:flex;align-items:center;gap:10px;}
.topic h3 .lf{color:var(--green-soft);display:inline-flex;}
.topic h3 .lf svg{width:20px;height:20px;}
.topic h3 .lf img{width:22px;height:22px;object-fit:contain;}
.topic ul{list-style:none;}
.topic li{color:var(--ink-soft);font-size:14.5px;padding:5px 0 5px 16px;position:relative;}
.topic li::before{content:"";position:absolute;left:0;top:12px;width:5px;height:5px;border-radius:50%;background:var(--gold-soft);}
.topic .soon{display:inline-block;margin-top:10px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);}

.artlist{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;}
.artcard h3{font-family:var(--serif);font-size:23px;color:var(--green);font-weight:500;line-height:1.25;margin-bottom:12px;}
.artcard p{color:var(--ink-soft);font-size:14px;line-height:1.6;margin-bottom:14px;}
.artcard a.more{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:2px;}
.artcard a.more:hover{color:var(--green);border-color:var(--green);}

.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.guide{background:var(--cream-deep);padding:28px 26px;display:flex;flex-direction:column;gap:16px;}
.guide h3{font-family:var(--serif);font-size:20px;color:var(--green);font-weight:500;line-height:1.3;}
.guide .btn{align-self:flex-start;margin-top:auto;}

.fullscript{background:var(--beige);text-align:center;}
.fullscript .inner{max-width:760px;margin:0 auto;}
.fullscript p{color:var(--ink-soft);font-size:16.5px;line-height:1.7;margin-bottom:16px;}

.reslists{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1000px;margin:0 auto;}
.reslist h3{font-family:var(--serif);font-size:23px;color:var(--green);font-weight:500;margin-bottom:14px;}
.reslist ul{list-style:none;}
.reslist li{color:var(--ink-soft);font-size:15px;padding:9px 0;border-bottom:1px solid var(--line);}
.reslist li:last-child{border-bottom:0;}
.reslist li em{color:var(--ink);font-style:italic;}

.video-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:920px;margin:0 auto;}
.video{display:flex;align-items:center;gap:16px;background:var(--cream);border:1px solid var(--line);padding:20px 22px;}
.video .play{width:40px;height:40px;border-radius:50%;background:var(--green-soft);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;}
.video .play svg{width:15px;height:15px;margin-left:2px;}
.video h3{font-family:var(--serif);font-size:19px;color:var(--green);font-weight:500;}

.news-band{background:var(--green);text-align:center;}
.news-band .eyebrow{color:var(--gold-soft);}
.news-band h2{color:var(--cream);}
.news-band .nb-intro{color:#e7e5d5;max-width:640px;margin:16px auto 28px;font-size:16.5px;}
.news-band form{max-width:470px;margin:0 auto;display:flex;gap:10px;}
.news-band input{flex:1;padding:14px 15px;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.12);color:#fff;font-family:var(--sans);font-size:15px;}
.news-band input::placeholder{color:#dfe0d0;}
.news-band .btn{border-color:var(--cream);color:var(--cream);white-space:nowrap;}
.news-band .btn:hover{background:var(--cream);color:var(--green);}

@media(max-width:1080px){
  .lib-grid{grid-template-columns:repeat(2,1fr);}
  .topic-grid{grid-template-columns:repeat(2,1fr);}
  .artlist{grid-template-columns:repeat(2,1fr);}
  .guide-grid{grid-template-columns:repeat(2,1fr);}
  .reslists{grid-template-columns:1fr;max-width:560px;gap:28px;}
}
@media(max-width:820px){
  .lib-grid,.topic-grid,.artlist,.guide-grid,.video-list{grid-template-columns:1fr;}
  .news-band form{flex-direction:column;}
}

/* button row helper (portal quick links) */
.btn-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}
.powered{text-align:center;color:var(--ink-soft);font-size:13px;font-style:italic;margin-top:26px;}

/* ============================================================
   FAQ PAGE
   ============================================================ */
.faq-search{max-width:560px;margin:0 auto 8px;}
.faq-search input{width:100%;padding:15px 18px;border:1px solid var(--line);background:var(--cream);font-family:var(--sans);font-size:15px;color:var(--ink);}
.faq-search input:focus{outline:none;border-color:var(--green-soft);}
.faq-cat{max-width:820px;margin:0 auto;}
.faq-cat h3{font-family:var(--serif);font-size:27px;color:var(--green-soft);font-weight:500;margin:40px 0 4px;}
.faq-noresults{max-width:820px;margin:20px auto 0;text-align:center;color:var(--ink-soft);font-style:italic;display:none;}

/* ============================================================
   SERVICES — CLARITY COMPONENTS
   (Is this for you · What you receive · Packages & pricing)
   ============================================================ */

/* Is this right for you — two columns */
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:960px;margin:0 auto;}
.fit-col{background:var(--cream);border:1px solid var(--line);padding:34px 32px;}
.fit-col.yes{background:var(--beige);}
.fit-col h3{font-family:var(--serif);font-size:24px;font-weight:500;margin-bottom:6px;display:flex;align-items:center;gap:10px;}
.fit-col.yes h3{color:var(--green);}
.fit-col.no h3{color:var(--green-soft);}
.fit-col .sub{color:var(--ink-soft);font-size:14px;margin-bottom:18px;}
.fit-col ul{list-style:none;}
.fit-col li{color:var(--ink);font-size:15.5px;line-height:1.5;padding:9px 0 9px 28px;position:relative;border-bottom:1px solid var(--line);}
.fit-col li:last-child{border-bottom:0;}
.fit-col li .m{position:absolute;left:0;top:11px;width:18px;height:18px;color:var(--gold);display:inline-flex;}
.fit-col li .m svg{width:18px;height:18px;}
.fit-col.no li .m{color:var(--green-soft);}
.fit-note{max-width:820px;margin:26px auto 0;text-align:center;color:var(--ink-soft);font-size:15px;font-style:italic;}

/* What you actually receive */
.receive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1040px;margin:0 auto;}
.receive{background:var(--cream-deep);padding:30px 28px;display:flex;flex-direction:column;}
.receive .rn{font-family:var(--serif);font-size:15px;letter-spacing:.04em;color:var(--gold);margin-bottom:12px;}
.receive h3{font-family:var(--serif);font-size:21px;color:var(--green);font-weight:500;margin-bottom:10px;line-height:1.25;}
.receive p{color:var(--ink-soft);font-size:14.5px;line-height:1.6;}
.receive-grid.four{grid-template-columns:repeat(4,1fr);max-width:1180px;}
@media(max-width:1080px){.receive-grid.four{grid-template-columns:repeat(2,1fr);max-width:760px;}}
@media(max-width:640px){.receive-grid.four{grid-template-columns:1fr;max-width:560px;}}

/* Packages with concrete inclusions + pricing */
.pkg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;align-items:stretch;}
.pkg{background:var(--cream);border:1px solid var(--line);display:flex;flex-direction:column;padding:30px 26px 28px;}
.pkg.featured{background:var(--green);border-color:var(--green);}
.pkg .tier{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.pkg.featured .tier{color:var(--gold-soft);}
.pkg h3{font-family:var(--serif);font-size:26px;color:var(--green-soft);font-weight:500;margin-bottom:8px;}
.pkg.featured h3{color:var(--cream);}
.pkg .best{display:inline-block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--cream);background:var(--gold);padding:3px 10px;border-radius:100px;margin-bottom:12px;}
.pkg .desc{color:var(--ink-soft);font-size:14px;line-height:1.55;margin-bottom:18px;}
.pkg.featured .desc{color:#e7e5d5;}
.pkg ul{list-style:none;margin-bottom:22px;flex:1;}
.pkg li{color:var(--ink);font-size:14px;line-height:1.5;padding:8px 0 8px 22px;position:relative;border-top:1px solid var(--line);}
.pkg li:first-child{border-top:0;}
.pkg.featured li{color:#eef0e6;border-color:rgba(255,255,255,.16);}
.pkg li::before{content:"";position:absolute;left:0;top:14px;width:6px;height:6px;border-radius:50%;background:var(--gold);}
.pkg .price{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--ink-soft);margin-bottom:18px;}
.pkg.featured .price{color:var(--gold-soft);}
.pkg .btn{align-self:stretch;text-align:center;margin-top:auto;}
.pkg.featured .btn{border-color:var(--cream);color:var(--cream);}
.pkg.featured .btn:hover{background:var(--cream);color:var(--green);}

/* small credibility line under a hero */
.credline{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:14px;}

/* article citations / references list */
.refs{max-width:780px;margin:0 auto;list-style:none;counter-reset:ref;}
.refs li{counter-increment:ref;position:relative;padding:12px 0 12px 34px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.55;color:var(--ink-soft);}
.refs li:last-child{border-bottom:0;}
.refs li::before{content:counter(ref);position:absolute;left:0;top:12px;width:22px;height:22px;border-radius:50%;background:var(--beige);color:var(--green);font-size:12px;display:flex;align-items:center;justify-content:center;}
.refs a{color:var(--green);border-bottom:1px solid var(--gold-soft);word-break:break-word;}
.refs a:hover{color:var(--gold);}

/* contained device / feature photo */
.devfig{max-width:540px;margin:0 auto;text-align:center;}
.devfig img{width:100%;height:auto;display:block;border-radius:8px;box-shadow:0 16px 44px rgba(59,68,41,.18);}
.devfig figcaption{margin-top:14px;font-size:13px;color:var(--ink-soft);font-style:italic;}

/* single-column instruction list where items contain inline text/bold */
.creds.flow{grid-template-columns:1fr;max-width:720px;}
.creds.flow li{display:block;position:relative;padding:7px 0 7px 24px;border-bottom:0;font-size:16px;line-height:1.6;}
.creds.flow li .dot{position:absolute;left:0;top:14px;margin:0;}

/* rotating hero slideshow (crossfade) */
.hero-slides{position:relative;overflow:hidden;}
.hero-slides .hslide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.2s ease;}
.hero-slides .hslide.active{opacity:1;}
@media(prefers-reduced-motion:reduce){
  .hero-slides .hslide{transition:none;}
}

@media(max-width:1080px){
  .receive-grid{grid-template-columns:1fr;max-width:560px;}
  .pkg-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:820px){
  .fit-grid{grid-template-columns:1fr;}
  .pkg-grid{grid-template-columns:1fr;max-width:440px;margin:0 auto;}
}
