
  :root{
    --sand:#f5efe2;
    --sand-deep:#ece2ca;
    --forest:#2f4a3d;
    --forest-deep:#1e332a;
    --brick:#bd5b3a;
    --butter:#e8b65a;
    --teal:#1f5c63;
    --ink:#26251f;
    --ink-soft:#5c5a4e;
    --maxw:1140px;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;background:var(--sand);color:var(--ink);}
  body{font-family:'Karla',system-ui,sans-serif;font-size:16.5px;line-height:1.6;}
  h1,h2,h3{font-family:'Newsreader',serif;font-weight:500;margin:0;color:var(--forest-deep);}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}

  header{padding:26px 0;position:relative;z-index:20;width:100%;}
  .nav{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1400px;margin:0 auto;padding:0 40px;}
  .brand{display:flex;align-items:center;margin-right:24px;}
  .brand img{height:54px;width:auto;display:block;}
  nav.links{display:flex;gap:6px;font-size:16px;font-weight:600;color:var(--ink);align-items:center;}
  nav.links a{padding:9px 18px;border-radius:22px;transition:background 0.15s ease, color 0.15s ease;}
  nav.links a:hover{color:var(--forest-deep);background:rgba(47,74,61,0.08);}
  .nav-cta{background:var(--forest);color:var(--sand);padding:12px 24px;border-radius:26px;font-size:15px;font-weight:600;}
  .nav-cta:hover{background:var(--forest-deep);}
  .nav-right{display:flex;align-items:center;gap:20px;}

  /* mobile nav (checkbox toggle, no JS) */
  #nav-toggle{display:none;}
  .nav-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;}
  .nav-burger span{width:22px;height:2px;background:var(--ink);display:block;}
  .mobile-panel{display:none;}

  /* HERO — full-bleed wash shared with header + trust strip below,
     so the whole top of the page reads as one continuous band */
  header, .hero, .trust-strip, .page-hero{
    background:
      radial-gradient(ellipse 62vw 60vh at 14% -8%, rgba(232,182,90,0.38), rgba(232,182,90,0) 62%),
      radial-gradient(ellipse 58vw 55vh at 90% 22%, rgba(189,91,58,0.22), rgba(189,91,58,0) 65%),
      radial-gradient(ellipse 70vw 60vh at 46% 55%, rgba(31,92,99,0.10), rgba(31,92,99,0) 68%),
      var(--sand);
    background-attachment:fixed,fixed,fixed,scroll;
    background-repeat:no-repeat;
  }
  .hero{padding:72px 0 96px;text-align:center;position:relative;}
  .blob{display:none;}
  .hero-inner{position:relative;z-index:1;max-width:760px;margin:0 auto;}
  .kicker{font-size:15px;color:var(--brick);margin-bottom:18px;}
  .hero h1{font-size:clamp(34px,5.4vw,54px);line-height:1.15;}
  .hero p.lede{margin:24px auto 0;font-size:18px;color:var(--ink-soft);max-width:44ch;}
  .hero-actions{margin-top:34px;display:flex;gap:16px;justify-content:center;}
  .btn-primary{background:var(--brick);color:#fff8ee;padding:14px 28px;border-radius:28px;font-size:15px;font-weight:500;box-shadow:0 6px 18px rgba(189,91,58,0.28);transition:transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;}
  .btn-primary:hover{background:#a2492c;transform:translateY(-1px);box-shadow:0 8px 22px rgba(189,91,58,0.34);}
  .btn-ghost{border:1px solid var(--ink-soft);color:var(--ink);padding:14px 26px;border-radius:28px;font-size:15px;}
  .btn-ghost:hover{border-color:var(--ink);}

  .trust-strip{padding:46px 0;border-top:1px solid rgba(38,37,31,0.12);border-bottom:1px solid rgba(38,37,31,0.12);}
  .trust-strip .wrap{max-width:1400px;display:flex;justify-content:space-evenly;align-items:center;gap:20px;flex-wrap:wrap;font-size:14.5px;color:var(--ink-soft);text-align:center;}
  .trust-strip .wrap>div{padding:0 32px;position:relative;flex:1 1 160px;}
  .trust-strip .wrap>div+div::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1px;height:38px;background:rgba(38,37,31,0.16);}
  .trust-strip strong{color:var(--forest-deep);font-family:'Newsreader',serif;font-size:28px;display:block;margin-bottom:4px;}

  .services{padding:84px 0;text-align:center;}
  .section-head{max-width:560px;margin:0 auto 50px;}
  .section-head h2{font-size:clamp(28px,3.6vw,38px);}
  .section-head h2::after{content:"";display:block;width:44px;height:3px;background:var(--butter);margin:16px auto 0;border-radius:2px;}
  .section-head p{color:var(--ink-soft);margin-top:14px;font-size:16px;}
  .service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;text-align:left;}
  .service-card{background:var(--sand-deep);border-radius:20px;padding:32px 28px;}
  .service-card .icon{width:42px;height:42px;border-radius:50%;background:var(--forest);margin-bottom:18px;display:flex;align-items:center;justify-content:center;}
  .service-card .icon svg{width:20px;height:20px;stroke:var(--butter);fill:none;stroke-width:1.8;}
  .service-card h3{font-size:19px;margin-bottom:10px;}
  .service-card p{margin:0;color:var(--ink-soft);font-size:14.5px;}

  .work{padding:84px 0;background:var(--forest-deep);color:#e9e4d5;}
  .work .section-head h2{color:#fdf9ee;}
  .work .section-head p{color:#b9c2b6;}
  .work .kicker{color:var(--butter);}
  .work-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;}
  .work-card{background:rgba(255,255,255,0.06);border-radius:18px;overflow:hidden;}
  .work-thumb{height:140px;overflow:hidden;}
  .work-thumb img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;transition:transform 0.25s ease;}
  .work-card:hover .work-thumb img{transform:scale(1.05);}
  .work-card .tag,.work-card h4,.work-card p{padding-left:22px;padding-right:22px;}
  .work-card .tag{font-size:12.5px;color:var(--butter);display:block;margin-top:20px;}
  .work-card h4{font-family:'Newsreader',serif;font-size:18px;margin-top:12px;color:#fdf9ee;font-weight:500;}
  .work-card p{margin-top:10px;padding-bottom:22px;font-size:13.5px;color:#c3cbc0;}

  .quote-section{padding:88px 0;text-align:center;background:var(--sand-deep);position:relative;}
  .quote-section .wrap{position:relative;}
  .quote-section .wrap::before{content:"\201C";position:absolute;top:-38px;left:50%;transform:translateX(-50%);
    font-family:'Newsreader',serif;font-size:120px;color:var(--teal);opacity:0.18;line-height:1;pointer-events:none;}
  .quote-section blockquote{font-family:'Newsreader',serif;font-style:italic;font-size:clamp(22px,3vw,30px);color:var(--forest-deep);max-width:680px;margin:0 auto;line-height:1.5;position:relative;}
  .quote-section cite{display:block;margin-top:24px;font-style:normal;font-size:14.5px;color:var(--brick);font-weight:500;}

  .cta{padding:96px 0 104px;text-align:center;background:var(--brick);position:relative;overflow:hidden;}
  .cta::before{content:"";position:absolute;top:-120px;right:-100px;width:340px;height:340px;border-radius:50%;
    background:radial-gradient(circle, var(--teal) 0%, rgba(31,92,99,0) 70%);opacity:0.45;pointer-events:none;}
  .cta::after{content:"";position:absolute;bottom:-140px;left:-90px;width:300px;height:300px;border-radius:50%;
    background:radial-gradient(circle, var(--butter) 0%, rgba(232,182,90,0) 70%);opacity:0.4;pointer-events:none;}
  .cta .wrap{position:relative;z-index:1;}
  .cta h2{font-size:clamp(28px,4vw,40px);max-width:22ch;margin:0 auto;color:#fff8ee;}
  .cta .btn-primary{margin-top:30px;display:inline-block;background:var(--butter);color:var(--forest-deep);font-weight:600;box-shadow:0 6px 18px rgba(0,0,0,0.18);}
  .cta .btn-primary:hover{background:#fff8ee;box-shadow:0 8px 22px rgba(0,0,0,0.22);}

  footer{padding:64px 0 32px;border-top:1px solid rgba(38,37,31,0.12);font-size:16px;color:var(--ink);background:var(--sand-deep);}
  .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:36px;padding-bottom:40px;}
  .foot-brand{height:38px;width:auto;display:block;margin-bottom:14px;}
  .foot-col h5{font-size:15px;color:var(--forest-deep);text-transform:none;font-weight:700;margin-bottom:14px;font-family:'Karla',sans-serif;}
  .foot-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;}
  .foot-col a{color:var(--ink);}
  .foot-col a:hover{color:var(--forest-deep);}
  .foot-bottom{border-top:1px solid rgba(38,37,31,0.12);padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;font-size:14.5px;color:var(--ink);}

  @media (max-width:860px){
    nav.links{display:none;}
    .nav-burger{display:flex;}
    #nav-toggle:checked ~ .mobile-panel{display:block;}
    .mobile-panel{position:absolute;top:100%;left:0;right:0;background:var(--sand);border-bottom:1px solid rgba(22,33,58,0.12);padding:20px 28px 26px;}
    .mobile-panel a{display:block;padding:10px 0;font-size:16px;color:var(--ink);border-bottom:1px solid rgba(22,33,58,0.08);}
    .service-grid{grid-template-columns:1fr;}
    .trust-strip .wrap{justify-content:center;gap:0;}
    .trust-strip .wrap>div{flex:0 0 46%;padding:14px 10px;}
    .trust-strip .wrap>div+div::before{display:none;}
    .blob{width:340px;height:340px;}
    .foot-grid{grid-template-columns:1fr 1fr;gap:28px;}
    .work{padding:56px 0;}
    .work-strip{grid-template-columns:repeat(2,1fr);gap:16px;}
    .work-thumb{height:150px;}
    .nav{padding:0 20px;}
    .nav-right{gap:12px;}
    .nav-cta{padding:10px 16px;font-size:14px;}
  }
  @media (max-width:420px){
    .nav{padding:0 16px;}
    .nav-right{gap:8px;}
    .brand{margin-right:12px;}
    .brand img{height:40px;}
    .nav-cta{padding:9px 13px;font-size:13.5px;}
  }
  @media (max-width:560px){
    .work-strip{grid-template-columns:1fr;}
    .work-thumb{height:190px;}
  }
  @media (min-width:861px) and (max-width:1080px){
    .work-strip{grid-template-columns:repeat(3,1fr);}
  }
  @media (max-width:500px){
    .foot-grid{grid-template-columns:1fr;}
  }


  /* nav active state */
  nav.links a.active{color:#fff8ee;background:var(--forest);font-weight:600;}
  .mobile-panel a.active{color:var(--forest-deep);font-weight:600;}

  /* inner page hero (breadcrumb style) */
  .page-hero{padding:68px 0 58px;border-bottom:1px solid rgba(38,37,31,0.12);}
  .page-hero .crumb{font-size:14px;color:var(--brick);margin-bottom:14px;}
  .page-hero .crumb a{color:var(--ink-soft);}
  .page-hero .crumb a:hover{color:var(--forest-deep);}
  .page-hero h1{font-size:clamp(32px,4.6vw,48px);line-height:1.14;max-width:24ch;}
  .page-hero p.lede{margin-top:18px;font-size:17px;color:var(--ink-soft);max-width:56ch;}

  /* generic section spacing reuse */
  .section{padding:76px 0;}
  .section.tight{padding:56px 0;}
  .section.alt{background:var(--sand-deep);}

  /* two-column content block (about) */
  .split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
  .split h3{font-size:19px;margin-bottom:10px;}
  .split p{margin:0;color:var(--ink-soft);font-size:15px;}

  /* team */
  .team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
  .team-card{text-align:center;}
  .team-card .avatar{width:88px;height:88px;border-radius:50%;background:var(--forest);margin:0 auto 16px;display:flex;align-items:center;justify-content:center;font-family:'Newsreader',serif;font-style:italic;font-size:26px;color:var(--butter);}
  .team-card h4{font-size:17px;font-family:'Newsreader',serif;font-weight:500;color:var(--forest-deep);}
  .team-card span{display:block;font-size:13.5px;color:var(--brick);margin-top:4px;}

  .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
  .why-card{background:var(--sand-deep);border-radius:20px;padding:32px 28px;text-align:left;}
  .why-card .icon{width:42px;height:42px;border-radius:50%;background:var(--forest);margin-bottom:18px;display:flex;align-items:center;justify-content:center;}
  .why-card .icon svg{width:20px;height:20px;stroke:var(--butter);fill:none;stroke-width:1.8;}
  .why-card h4{font-size:18px;font-family:'Newsreader',serif;font-weight:500;color:var(--forest-deep);margin-bottom:10px;}
  .why-card p{margin:0;color:var(--ink-soft);font-size:14.5px;}

  /* process steps (sequential — numbering is legitimate here) */
  .process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(38,37,31,0.14);border-radius:16px;overflow:hidden;}
  .process-step{padding:30px 26px;border-right:1px solid rgba(38,37,31,0.14);}
  .process-step:last-child{border-right:none;}
  .process-step .idx{font-family:'Newsreader',serif;font-style:italic;font-size:26px;color:var(--brick);margin-bottom:10px;}
  .process-step h3{font-size:16.5px;margin-bottom:8px;}
  .process-step p{margin:0;font-size:14px;color:var(--ink-soft);}

  /* services detail list */
  .service-detail{display:grid;grid-template-columns:1fr;gap:16px;}
  .service-detail-row{display:grid;grid-template-columns:56px 1fr auto;gap:24px;align-items:center;background:#fff;border:1px solid rgba(38,37,31,0.1);border-radius:18px;padding:24px 28px;transition:transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;}
  .service-detail-row:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(38,37,31,0.09);border-color:rgba(38,37,31,0.16);}
  .service-detail-row .icon{width:52px;height:52px;border-radius:50%;background:var(--forest);display:flex;align-items:center;justify-content:center;flex:none;}
  .service-detail-row .icon svg{width:24px;height:24px;stroke:var(--butter);fill:none;stroke-width:1.8;}
  .service-detail-row h3{font-size:19px;}
  .service-detail-row .sdr-body p{margin:6px 0 0;color:var(--ink-soft);font-size:14.5px;max-width:48ch;}
  .service-detail-row .cta-link{font-size:14px;color:var(--brick);white-space:nowrap;font-weight:600;padding:8px 0;}
  .service-detail-row .cta-link:hover{color:var(--forest-deep);}

  /* portfolio grid */
  .filter-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:40px;}
  .filter-chip{border:1px solid rgba(38,37,31,0.2);border-radius:20px;padding:8px 16px;font-size:13.5px;color:var(--ink-soft);cursor:pointer;user-select:none;}
  .filter-chip.active{background:var(--forest);color:var(--sand);border-color:var(--forest);}
  .portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
  .portfolio-card{border-radius:18px;overflow:hidden;background:var(--sand-deep);}
  .portfolio-thumb{height:180px;overflow:hidden;background:var(--sand-deep);}
  .portfolio-thumb img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;transition:transform 0.25s ease;}
  .portfolio-card:hover .portfolio-thumb img{transform:scale(1.04);}
  .portfolio-card .body{padding:22px 24px;}
  .portfolio-card .tag{font-size:12px;color:var(--brick);}
  .portfolio-card h4{font-size:16.5px;margin-top:8px;font-family:'Newsreader',serif;font-weight:500;}

  /* forms */
  .form-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:start;}
  .form-card{background:var(--sand-deep);border-radius:20px;padding:36px;}
  .field{margin-bottom:18px;}
  .field label{display:block;font-size:13.5px;color:var(--ink-soft);margin-bottom:7px;}
  .field input, .field textarea, .field select{width:100%;border:1px solid rgba(38,37,31,0.22);background:#fff;border-radius:10px;padding:12px 14px;font-family:'Karla',sans-serif;font-size:15px;color:var(--ink);}
  .field textarea{resize:vertical;min-height:110px;}
  .field input:focus, .field textarea:focus, .field select:focus{outline:2px solid var(--forest);outline-offset:1px;}
  .field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .contact-info-card{padding:6px 0;}
  .contact-info-card h3{font-size:19px;margin-bottom:14px;}
  .contact-info-card p{margin:0 0 22px;color:var(--ink-soft);font-size:15px;}
  .contact-line{display:flex;align-items:center;gap:12px;margin-bottom:14px;font-size:15px;}
  .contact-line .dot{width:8px;height:8px;border-radius:50%;background:var(--brick);flex:none;}
  .privacy-note{font-size:13px;color:var(--ink-soft);margin-top:22px;border-top:1px solid rgba(38,37,31,0.12);padding-top:18px;}

  /* legal doc typography */
  .legal{max-width:720px;}
  .legal p{color:var(--ink-soft);font-size:15.5px;margin:0 0 18px;}
  .legal h2{font-size:22px;margin:38px 0 12px;}
  .legal h2:first-child{margin-top:0;}
  .legal .updated{font-size:13.5px;color:var(--brick);margin-bottom:30px;}

  @media (max-width:860px){
    .split{grid-template-columns:1fr;}
    .team-grid{grid-template-columns:1fr;}
    .why-grid{grid-template-columns:1fr;}
    .process-grid{grid-template-columns:1fr;}
    .process-step{border-right:none;border-bottom:1px solid rgba(38,37,31,0.14);}
    .process-step:last-child{border-bottom:none;}
    .service-detail-row{grid-template-columns:1fr;text-align:left;gap:14px;}
    .service-detail-row .icon{margin-bottom:2px;}
    .portfolio-grid{grid-template-columns:1fr 1fr;}
    .form-grid{grid-template-columns:1fr;}
    .field-row{grid-template-columns:1fr;}
  }
  @media (max-width:540px){
    .portfolio-grid{grid-template-columns:1fr;}
  }


/* Utility classes (previously inline styles) */
.foot-desc{margin:0;max-width:32ch;font-size:15.5px;color:var(--ink);}
.btn-reset{border:none;cursor:pointer;}
.link-forest{color:var(--forest-deep);}
.portfolio-desc{margin-top:8px;font-size:13.5px;color:var(--ink-soft);}
