
    /* Nav font consistency */
    .navmenu a,
    .navmenu .active,
    .btn-primary,
    .btn-secondary{
      font-family: var(--nav-font) !important;
    }

    /* -----------------------------
      HERO: Jim photo (namespaced)
    ------------------------------ */
    .hero .ps-hero-jim{
      position:relative !important;
      isolation:isolate !important;
      border-radius:1rem !important;
      overflow:hidden !important;
      aspect-ratio:1/1 !important;
      background:transparent !important;
      border:0 !important;
      box-shadow:inset 0 0 0 1px rgba(11,38,48,.03) !important;
    }
    .hero .ps-hero-jim::after{
      content:"" !important;
      position:absolute !important;
      inset:0 !important;
      pointer-events:none !important;
      z-index:2 !important;
      background:
        radial-gradient(circle at 50% 40%, rgba(255,255,255,0) 60%, rgba(11,38,48,.08) 100%),
        linear-gradient(135deg, rgba(11,38,48,.06) 0, rgba(42,120,166,.04) 100%) !important;
      mix-blend-mode:multiply !important;
      opacity:.75 !important;
    }
    .hero .ps-hero-jim picture > img{
      position:relative !important;
      z-index:1 !important;
      width:100% !important;
      height:100% !important;
      display:block !important;
      border:0 !important;
      outline:0 !important;
      object-fit:cover !important;
      object-position:45% 20% !important;
      filter:brightness(.92) contrast(1.06) saturate(.92) !important;
    }

    /* -----------------------------
      HERO: thinner outer frame
      (This is what was causing “thick border” feel)
    ------------------------------ */
    .hero-jim-frame{
      position:relative !important;
      z-index:1 !important;
      padding:.22rem !important;                /* was .55rem */
      border-radius:1.35rem !important;         /* was 1.55rem */
      background:color-mix(in srgb,var(--surface-alt),transparent 55%) !important; /* was 30% */
      border:1px solid color-mix(in srgb,var(--accent-alt),transparent 85%) !important; /* was 72% */
      backdrop-filter:blur(.45rem) !important;  /* was .6rem */
      box-shadow:
        0 18px 46px rgba(6,30,37,.14) !important,
        0 1px 0 rgba(255,255,255,.18) inset !important;
      transform:rotate(-.6deg) !important;
    }

    /* -----------------------------
      ABOUT: photo wrap styling
    ------------------------------ */
    .about-photo-wrap{
      position:relative;
      isolation:isolate;
      overflow:hidden;
      border-radius:1.15rem;
    }
    .about-photo-wrap::after{
      content:"";
      position:absolute;
      inset:0;
      pointer-events:none;
      z-index:2;
      background:
        radial-gradient(circle at 50% 40%, rgba(255,255,255,0) 45%, rgba(11,38,48,.14) 100%),
        linear-gradient(135deg, rgba(11,38,48,.10) 0%, rgba(42,120,166,.06) 100%);
      mix-blend-mode:multiply;
      opacity:.9;
    }
    .about-photo-wrap img{
      position:relative;
      z-index:1;
      width:100%;
      height:100%;
      display:block;
      object-fit:cover;
      filter:brightness(.92) contrast(1.06) saturate(.92);
    }

    /* About intro line (this replaces your invalid nested SCSS-style block) */
    .about .about-content .about-intro{
      font-size: clamp(1.08rem, 1rem + 0.35vw, 1.25rem);
      line-height: 1.6;
      color: color-mix(in srgb, var(--heading-color), transparent 10%);
      font-weight: 700;
      letter-spacing: .01em;
      padding-left: .75rem;
      border-left: 3px solid color-mix(in srgb, var(--accent-color), transparent 35%);
      margin-bottom: 1rem;
    }

    /* Service area “stamp” */
    .about-service-area-stamp{
      display:flex;
      width:fit-content;
      align-items:center;
      justify-content:center;
      gap:.6rem;
      padding:.85rem 1rem;
      border-radius:999px;
      background:color-mix(in srgb,var(--surface-alt),var(--accent-color) 12%);
      border:1px solid color-mix(in srgb,var(--accent-color),transparent 55%);
      color:var(--default-color);
      font-weight:800;
      box-shadow:0 10px 22px rgba(11,38,48,.07);
      margin:1rem auto 0;
      position:relative;
      top:18px;
    }
    .about-service-area-stamp .asa-dot{
      width:.65rem;height:.65rem;border-radius:999px;
      background:var(--accent-color);
      box-shadow:0 0 0 .25rem color-mix(in srgb,var(--accent-color),transparent 82%);
    }

    /* -----------------------------
      PROCESS: background sizing
    ------------------------------ */
    #process .section-bg{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      z-index:0;
      pointer-events:none;
    }
    #process .section-bg img{
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:left center;
      display:block;
    }
    #process .container{
      position:relative;
      z-index:1;
    }

    /* Process icons (clip corners, ring) */
    :root{
      --ps-process-icon-size: clamp(52px, 2.2vw + 34px, 68px);
      --ps-process-ring: 2.5px;
      --ps-process-icon-scale: 92%;
      --ps-process-icon-bg: var(--surface-alt);
    }
    .ps-process-icon{
      width:var(--ps-process-icon-size);
      height:var(--ps-process-icon-size);
      flex:0 0 auto;
      display:grid;
      place-items:center;
      border-radius:999px;
      overflow:hidden;
      background:var(--ps-process-icon-bg);
      border:var(--ps-process-ring) solid var(--heading-color);
      margin-top:.1rem;
    }
    .ps-process-icon__img{
      width:var(--ps-process-icon-scale);
      height:var(--ps-process-icon-scale);
      display:block;
      object-fit:cover;
      border-radius:999px;
      background:transparent;
    }

    /* -----------------------------
      TESTIMONIALS: section bg
    ------------------------------ */
    #testimonials.testimonials{
      position:relative;
      overflow:hidden;
      isolation:isolate;
      padding-top:clamp(5rem,8vw,7.5rem);
      padding-bottom:clamp(5rem,9vw,9rem);
      min-height:clamp(38rem,70vh,52rem);
    }
    #testimonials.testimonials > .section-bg{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center bottom;
      transform:scale(1.05);
      z-index:0;
      pointer-events:none;
      display:block;
      opacity:.55;
    }
    #testimonials.testimonials > .container{
      position:relative;
      z-index:1;
    }

    /* -----------------------------
      CTA benefits icons
    ------------------------------ */
    .benefit-icon{
      width:clamp(44px, 3.2vw + 22px, 64px);
      height:clamp(44px, 3.2vw + 22px, 64px);
      display:grid;
      place-items:center;
      border-radius:14px;
      background:var(--surface-alt);
      border:1px solid color-mix(in srgb, var(--default-color), transparent 86%);
      box-shadow:0 10px 22px rgba(11, 38, 48, 0.10);
      flex:0 0 auto;
      overflow:hidden;
    }
    .benefit-icon > img,
    .benefit-icon > svg,
    .benefit-icon > i{
      width:72%;
      height:72%;
      display:block;
    }
    .benefit-icon > img{
      object-fit:contain;
      image-rendering:auto;
      transform:translateZ(0);
    }
    .benefit-icon > i{
      width:auto;height:auto;
      font-size:clamp(22px, 1.2vw + 18px, 30px);
      line-height:1;
      color:var(--default-color);
    }
    .benefit-icon--lg > img,
    .benefit-icon--lg > svg{
      width:84%;
      height:84%;
    }
  