/* Home page styles — extracted from 57 inline <style> blocks in index.html on 2026-10-09 (warm-search speed pass).
   Order preserved; loaded at the top of <body> so it still cascades after the header CSS components.js injects into <head>. */
/* ---- block 1 ---- */
    #meet-our-trainer-section .what-we-do-img { position:relative; }
    /* Fancy background 2026-10-06 — matches the H1 band: ember glow + faint rattlesnake-zigzag fading in from the edges */
    #meet-our-trainer-section { border-bottom:1px solid rgba(232,140,40,0.30) !important; }
    #meet-our-trainer-section .what-we-do-copy {
      position:relative; isolation:isolate;
      background:
        radial-gradient(ellipse 70% 45% at 55% 70%, rgba(240,128,40,0.22) 0%, rgba(192,88,0,0.08) 45%, transparent 75%),
        radial-gradient(ellipse 60% 40% at 40% 15%, rgba(192,88,0,0.14) 0%, transparent 70%),
        linear-gradient(180deg,#1c0e07 0%,#110a06 55%,#0d0b09 100%);
    }
    #meet-our-trainer-section .what-we-do-copy::before {
      content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
      background-image:
        linear-gradient(135deg, rgba(232,140,40,0.09) 25%, transparent 25%),
        linear-gradient(225deg, rgba(232,140,40,0.09) 25%, transparent 25%),
        linear-gradient(315deg, rgba(232,140,40,0.09) 25%, transparent 25%),
        linear-gradient(45deg,  rgba(232,140,40,0.09) 25%, transparent 25%);
      background-size:56px 56px;
      background-position:-28px 0, -28px 0, 0 0, 0 0;
      -webkit-mask-image:radial-gradient(ellipse 70% 80% at 45% 50%, transparent 40%, #000 100%);
              mask-image:radial-gradient(ellipse 70% 80% at 45% 50%, transparent 40%, #000 100%);
    }
    #meet-our-trainer-section .what-we-do-copy::after {
      content:''; position:absolute; left:50%; bottom:0; transform:translateX(-50%); z-index:-1; pointer-events:none;
      width:80%; height:2px;
      background:linear-gradient(90deg, transparent, #f0902c 50%, transparent);
      box-shadow:0 0 18px 2px rgba(240,144,44,0.55);
    }
    #what-we-do-section .hero-next-class { max-width:none; margin:22px 0 0; text-align:left; padding:22px 24px; border-radius:18px; box-shadow:0 18px 44px rgba(0,0,0,0.45); }
    #what-we-do-section .hero-next-class .hero-ctas { justify-content:flex-start; margin-top:16px !important; gap:8px; }
    #what-we-do-section .hero-next-class .hero-ctas a { padding:12px 16px; font-size:0.72rem; }
    #meet-our-trainer-section .what-we-do-copy .what-we-do-subheading:first-of-type { margin-bottom:6px; }
    @media (max-width:760px) {
      #meet-our-trainer-section { height:auto !important; }
      #meet-our-trainer-section .what-we-do-copy { height:auto !important; overflow:visible; }
      #what-we-do-section .hero-next-class { padding:20px 18px; }
    }
    /* Now the first section on the page — keep it within the first screen under the header */
    @media (min-width:761px) { #meet-our-trainer-section { height:auto; min-height:clamp(520px, calc(100vh - 230px), 820px); } #meet-our-trainer-section .what-we-do-copy .what-we-do-subheading:first-of-type { font-size:clamp(1.7rem,2.7vw,2.4rem); } }
    .trainer-img-overlay {
      position:absolute; left:0; right:0; bottom:0; z-index:1;
      padding:60px 24px 26px;
      background:linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0) 100%);
      font-family:'Manrope',sans-serif; font-weight:700; font-size:clamp(0.82rem,1.5vw,0.96rem); line-height:1.6;
      color:#FDFBD4; text-shadow:0 1px 8px rgba(0,0,0,0.7);
    }
    .trainer-img-overlay p { margin:0; }
    .trainer-img-overlay p + p { margin-top:10px; }
    .trainer-img-overlay .tio-welcome { font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(1.7rem,3.4vw,2.6rem) !important; line-height:1.15; letter-spacing:-0.01em; }
    .trainer-img-overlay .tio-welcome em { font-style:italic; color:#ffb24d; }
    .trainer-img-overlay .tio-welcome-sub { font-family:'Manrope',sans-serif; font-size:clamp(0.68rem,1.2vw,0.8rem) !important; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:rgba(253,251,212,0.85); }
    @media (max-width:760px) {
      .trainer-img-overlay { padding:48px 16px 16px; font-size:0.9rem; line-height:1.45; }
    }
  
/* ---- block 2 ---- */
  .hp-ad { width:100vw; box-sizing:border-box; padding:clamp(40px,6vw,72px) 24px; text-align:center; position:relative; isolation:isolate;
    background:radial-gradient(ellipse 60% 50% at 50% 50%, rgba(232,128,40,0.14) 0%, transparent 70%), linear-gradient(180deg,#0d0907 0%,#130a06 50%,#0d0907 100%);
    border-bottom:1px solid rgba(232,140,40,0.25); }
  .hp-ad-kicker { display:inline-flex; align-items:center; gap:10px; margin:0 0 18px; font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:#f0902c; }
  .hp-ad-kicker::before, .hp-ad-kicker::after { content:''; width:20px; height:2px; background:#f0902c; }
  .hp-ad-frame { position:relative; margin:0 auto; border-radius:18px; overflow:hidden; background:#000;
    border:1px solid rgba(240,144,44,0.4); box-shadow:0 30px 80px rgba(0,0,0,0.6), 0 0 0 4px rgba(240,144,44,0.08); }
  .hp-ad-frame video { display:block; width:100%; height:100%; object-fit:cover; background:#000; }
  /* big play button over the bright cover (hidden once playing) — 2026-10-07 */
  .hp-ad-play { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; padding-bottom:clamp(40px,9%,90px) !important; gap:14px; border:0; padding:0; background:transparent; cursor:pointer; }
  .hp-ad-play span.btn { width:clamp(76px,9vw,104px); height:clamp(76px,9vw,104px); border-radius:50%; display:flex; align-items:center; justify-content:center;
    background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 0 0 8px rgba(255,255,255,0.35), 0 18px 40px rgba(0,0,0,0.35); transition:transform 0.2s; }
  .hp-ad-play:hover span.btn { transform:scale(1.07); }
  .hp-ad-play svg { width:38%; height:38%; fill:#FDFBD4; margin-left:7%; }
  .hp-ad-play span.lab { padding:8px 16px; border-radius:999px; background:rgba(255,255,255,0.92); color:#2a1a0b; font-family:'Manrope',sans-serif; font-size:0.78rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; box-shadow:0 8px 20px rgba(0,0,0,0.2); }
  .hp-ad-frame.playing .hp-ad-play { display:none; }
  /* silent looping preview as the cover (2026-10-07) — replaced by the real video on play */
  .hp-ad-preview { position:absolute; inset:0; z-index:1; width:100%; height:100%; object-fit:cover; pointer-events:none; }
  .hp-ad-frame.playing .hp-ad-preview { display:none; }
  .hp-ad-wide { max-width:1100px; aspect-ratio:16 / 9; }
  .hp-ad-tall { display:none; max-width:420px; aspect-ratio:9 / 16; }
  @media (max-width:700px) {
    .hp-ad-wide { display:none; }
    .hp-ad-tall { display:block; }
  }
/* ---- block 3 ---- */
  .ult { position:relative; isolation:isolate; overflow:hidden; width:100vw; box-sizing:border-box; padding:clamp(80px,11vw,140px) 24px clamp(72px,10vw,120px); text-align:center;
    background-color:#0b0806;
    background-image:linear-gradient(180deg, rgba(11,8,6,0.94) 0%, rgba(20,10,5,0.80) 40%, rgba(11,8,6,0.97) 100%), url('../images/section-bg/standard-still-26-cropped.jpg?v=2');
    background-image:linear-gradient(180deg, rgba(11,8,6,0.94) 0%, rgba(20,10,5,0.80) 40%, rgba(11,8,6,0.97) 100%), image-set(url('../images/section-bg/standard-still-26-cropped.webp?v=2') type('image/webp'), url('../images/section-bg/standard-still-26-cropped.jpg?v=2') type('image/jpeg'));
    background-size:cover; background-position:center 40%;
    border-top:1px solid rgba(240,144,44,0.4); border-bottom:1px solid rgba(240,144,44,0.4); }
  @media (min-width:1025px) and (hover:hover) { .ult { background-attachment:fixed; } }
  /* rotating ember halo behind the headline */
  .ult::before { content:''; position:absolute; left:50%; top:clamp(60px,9vw,120px); width:min(900px,120vw); aspect-ratio:1; transform:translateX(-50%); z-index:-1; pointer-events:none;
    background:conic-gradient(from 0deg, transparent 0deg, rgba(240,144,44,0.22) 40deg, transparent 90deg, transparent 180deg, rgba(192,88,0,0.18) 230deg, transparent 280deg);
    border-radius:50%; filter:blur(40px); animation:ult-spin 18s linear infinite; }
  .ult::after { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background-image:linear-gradient(135deg, rgba(232,140,40,0.07) 25%, transparent 25%), linear-gradient(225deg, rgba(232,140,40,0.07) 25%, transparent 25%), linear-gradient(315deg, rgba(232,140,40,0.07) 25%, transparent 25%), linear-gradient(45deg, rgba(232,140,40,0.07) 25%, transparent 25%);
    background-size:56px 56px; background-position:-28px 0,-28px 0,0 0,0 0;
    -webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 40%, transparent 45%, #000 100%); mask-image:radial-gradient(ellipse 70% 70% at 50% 40%, transparent 45%, #000 100%); }
  @keyframes ult-spin { to { transform:translateX(-50%) rotate(360deg); } }
  .ult-inner { max-width:1120px; margin:0 auto; }
  .ult-kicker { display:inline-flex; align-items:center; gap:12px; padding:8px 18px; border-radius:999px; border:1px solid rgba(240,144,44,0.5); background:rgba(240,144,44,0.08);
    font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:800; letter-spacing:0.24em; text-transform:uppercase; color:#ffcf8a; margin-bottom:26px; }
  .ult-kicker i { width:7px; height:7px; border-radius:50%; background:#f0902c; box-shadow:0 0 10px #f0902c; animation:heroNextClassPulse 2s ease-in-out infinite; }
  .ult-title { font-family:'Libre Baskerville',serif; font-weight:700; color:#FDFBD4; margin:0 auto; max-width:16ch; line-height:1.08; letter-spacing:-0.025em;
    font-size:clamp(2.2rem,6vw,4.8rem); text-shadow:0 6px 40px rgba(0,0,0,0.6); }
  .ult-title .ult-gold { display:block; font-style:italic; font-size:1.3em; line-height:1;
    background:linear-gradient(100deg,#f0902c 0%,#ffcf8a 30%,#fff3d6 45%,#ffcf8a 60%,#f0902c 85%); background-size:220% 100%;
    -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 6px 26px rgba(240,144,44,0.35));
    animation:ult-shine 5s ease-in-out infinite; padding:0.04em 0.1em 0.08em; }
  @keyframes ult-shine { 0%,100% { background-position:100% 0; } 50% { background-position:0% 0; } }
  .ult-loc { display:block; margin-top:0.55em; font-family:'Manrope',sans-serif; font-style:normal; font-weight:800; font-size:clamp(0.82rem,1.5vw,1.05rem); letter-spacing:0.2em; text-transform:uppercase; color:#ffcf8a; text-shadow:none; line-height:1.4; }
  .ult-sub { font-family:'Manrope',sans-serif; font-size:clamp(1.02rem,1.7vw,1.22rem) !important; line-height:1.7; color:rgba(253,251,212,0.82) !important; max-width:640px; margin:26px auto 0; }
  .ult-sub strong { color:#FDFBD4; }
  .ult-rule { width:min(520px,70%); height:2px; margin:clamp(40px,6vw,56px) auto; background:linear-gradient(90deg,transparent,#f0902c,transparent); box-shadow:0 0 16px rgba(240,144,44,0.6); }
  .ult-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; text-align:left; }
  .ult-tile { position:relative; overflow:hidden; padding:26px 24px 24px; border-radius:18px;
    background:linear-gradient(160deg, rgba(36,22,12,0.92) 0%, rgba(18,11,7,0.94) 100%); border:1px solid rgba(240,144,44,0.25);
    box-shadow:0 18px 44px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,236,200,0.06);
    -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); transition:transform 0.25s, border-color 0.25s, box-shadow 0.25s; }
  .ult-tile::after { content:''; position:absolute; top:0; left:-60%; width:40%; height:100%; background:linear-gradient(100deg,transparent,rgba(255,220,170,0.10),transparent); transform:skewX(-18deg); transition:left 0.7s; }
  .ult-tile:hover { transform:translateY(-6px); border-color:rgba(240,144,44,0.65); box-shadow:0 26px 60px rgba(0,0,0,0.6), 0 0 0 1px rgba(240,144,44,0.3); }
  .ult-tile:hover::after { left:130%; }
  .ult-ico { position:absolute; top:22px; right:22px; width:30px; height:30px; fill:none; stroke:#f0902c; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; opacity:0.85; }
  .ult-num { font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(2.4rem,4vw,3.2rem); line-height:1; letter-spacing:-0.03em;
    background:linear-gradient(180deg,#fff3d6 0%,#ffcf8a 55%,#f0902c 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
  .ult-lab { font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:800; letter-spacing:0.16em; text-transform:uppercase; color:#f0902c; margin:10px 0 8px; }
  .ult-desc { font-family:'Manrope',sans-serif; font-size:0.9rem !important; line-height:1.6; color:rgba(253,251,212,0.75) !important; margin:0; }
  .ult-ctas { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-top:clamp(40px,6vw,56px); }
  .ult-ctas a { display:inline-flex; align-items:center; gap:8px; font-family:'Manrope',sans-serif; font-size:0.88rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; padding:16px 30px; border-radius:999px; text-decoration:none; transition:transform 0.18s, filter 0.18s; }
  .ult-ctas a:hover { transform:translateY(-2px); filter:brightness(1.08); }
  .ult-cta-main { background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; box-shadow:0 14px 34px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14); }
  .ult-cta-ghost { color:#FDFBD4; border:1px solid rgba(253,251,212,0.4); background:rgba(13,11,9,0.4); }
  @media (max-width:900px) { .ult-grid { grid-template-columns:1fr 1fr; } }
  @media (max-width:560px) { .ult-grid { grid-template-columns:1fr; } .ult-title { font-size:2.1rem; } .ult-loc { font-size:0.8rem !important; letter-spacing:0.14em; } }
  @media (prefers-reduced-motion: reduce) { .ult::before, .ult-title .ult-gold, .ult-kicker i { animation:none; } }
/* ---- block 4 ---- */
  .hp-brand { position:relative; isolation:isolate; overflow:hidden; width:100vw; box-sizing:border-box; padding:clamp(56px,8vw,100px) 24px; text-align:center;
    background:
      radial-gradient(ellipse 45% 60% at 50% 50%, rgba(240,128,40,0.26) 0%, rgba(192,88,0,0.08) 45%, transparent 75%),
      linear-gradient(180deg,#140b07 0%,#1c1009 50%,#140b07 100%);
    border-top:1px solid rgba(240,144,44,0.25); border-bottom:1px solid rgba(240,144,44,0.25); }
  .hp-brand::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background-image:linear-gradient(135deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(225deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(315deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(45deg, rgba(240,144,44,0.07) 25%, transparent 25%);
    background-size:56px 56px; background-position:-28px 0,-28px 0,0 0,0 0;
    -webkit-mask-image:radial-gradient(ellipse 60% 70% at 50% 50%, transparent 40%, #000 95%); mask-image:radial-gradient(ellipse 60% 70% at 50% 50%, transparent 40%, #000 95%); }
  .hp-brand img { display:block; width:min(440px,78vw); height:auto; margin:0 auto; filter:drop-shadow(0 24px 40px rgba(0,0,0,0.6)) drop-shadow(0 0 40px rgba(240,144,44,0.25)); }
  .hp-brand-tag { font-family:'Manrope',sans-serif; font-size:clamp(0.68rem,1.3vw,0.82rem) !important; font-weight:800; letter-spacing:0.24em; text-transform:uppercase; color:#ffcf8a !important; margin:clamp(18px,3vw,26px) 0 0; }
  .hp-brand-tag span { color:#f0902c; margin:0 10px; }
  .hp-brand-btn { display:inline-flex; align-items:center; gap:8px; margin-top:22px; padding:14px 28px; border-radius:999px; text-decoration:none;
    background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; font-family:'Manrope',sans-serif; font-size:0.84rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase;
    box-shadow:0 14px 34px rgba(192,88,0,0.45), 0 0 0 4px rgba(240,144,44,0.12); transition:transform 0.18s, filter 0.18s; }
  .hp-brand-btn:hover { transform:translateY(-2px); filter:brightness(1.08); }
/* ---- block 5 ---- */
        #wotdSlider { position:relative; }
        #wotdSlider .wotd-slide { position:absolute; inset:0; opacity:0; transition:opacity 1s ease; }
        #wotdSlider .wotd-slide.active { opacity:1; position:relative; height:100%; }
        #wotdSlider .wotd-slide img { width:100%; height:100%; object-fit:cover; }
        .wotd-dots { position:absolute; left:0; right:0; bottom:16px; display:flex; justify-content:center; gap:8px; z-index:2; }
        .wotd-dots span { width:8px; height:8px; border-radius:50%; background:rgba(253,251,212,0.45); transition:background 0.3s, transform 0.3s; }
        .wotd-dots span.on { background:#f0902c; transform:scale(1.25); }
      
/* ---- block 6 ---- */
  .ss-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(20px,3vw,34px); }
  @media (max-width:760px){
    .ss-grid { display:flex; grid-template-columns:none; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; gap:14px; margin:0 -22px; padding:0 22px 6px; }
    .ss-grid::-webkit-scrollbar { display:none; }
    .ss-card { flex:0 0 82%; scroll-snap-align:center; }
  }
  .ss-card {
    display:flex; flex-direction:column;
    background:rgba(253,251,212,0.03);
    border:1px solid rgba(253,251,212,0.12);
    border-radius:18px;
    overflow:hidden;
    padding-bottom:22px;
    transition:border-color 0.2s, transform 0.2s;
  }
  .ss-card:hover { border-color:rgba(192,88,0,0.4); transform:translateY(-3px); }
  .ss-img { position:relative; line-height:0; }
  .ss-img img { width:100%; aspect-ratio:1/1; height:auto; object-fit:cover; object-position:center; display:block; }
  .ss-cap { position:absolute; left:0; right:0; bottom:0; padding:46px 24px 20px; background:linear-gradient(to top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%); text-align:left; }
  .ss-eyebrow { display:block; font-family:'Manrope',sans-serif; font-size:0.66rem; font-weight:800; letter-spacing:0.16em; line-height:1.5; text-transform:uppercase; color:#ff8a3d; margin-bottom:7px; text-shadow:0 1px 8px rgba(0,0,0,0.7); }
  .ss-title { display:block; font-family:'Libre Baskerville',serif; font-size:clamp(1.15rem,2vw,1.55rem); font-weight:700; color:#FDFBD4; line-height:1.16; text-shadow:0 2px 12px rgba(0,0,0,0.6); }
  .ss-count { position:absolute; top:12px; right:12px; z-index:2; display:inline-flex; align-items:center; gap:5px; background:rgba(13,11,9,0.82); border:1px solid rgba(192,88,0,0.5); color:#FDFBD4; font-family:'Manrope',sans-serif; font-size:0.6rem; font-weight:800; letter-spacing:0.1em; text-transform:uppercase; padding:6px 11px; border-radius:50px; line-height:1; }
  .ss-count b { color:#ff8a3d; font-size:0.78rem; }
  .ss-desc { font-family:'Manrope',sans-serif; font-size:0.95rem; line-height:1.7; color:rgba(253,251,212,0.72); margin:18px 22px 0; }
  /* Text-only card (no photo) — header reads on the card background */
  .ss-cap--plain { position:static; padding:24px 22px 0; background:none; }
  .ss-cap--plain .ss-eyebrow { color:var(--orange); text-shadow:none; }
  .ss-cap--plain .ss-title { color:#FDFBD4; text-shadow:none; }
  .ss-cap--plain + .ss-desc { margin-top:10px; }
/* ---- block 7 ---- */
  .grad-top-img {
    flex: 0 0 100%;
    width: 100%;
    height: clamp(340px, 60vh, 600px);
    object-fit: cover;
    object-position: center 30%;
    display: block;
  }
  @media (min-width:821px) {
    .grad-top-img { height: clamp(560px, 82vh, 900px); }
  }
  .hero-slide-cap {
    position: absolute; left:0; right:0; bottom:0; z-index: 2;
    text-align: center; padding: 40px 24px 40px;
    background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0) 100%);
    pointer-events: none; line-height: 1.25;
  }
  .hero-slide-cap .hero-stars { color:#FFB300; font-size:clamp(1rem,2.2vw,1.5rem); letter-spacing:0.18em; text-shadow:0 1px 5px rgba(0,0,0,0.6); }
  .hero-slide-cap .hero-slide-la-title { font-family:'Libre Baskerville',serif; font-size:clamp(1.3rem,2.8vw,2rem); font-weight:700; letter-spacing:-0.02em; color:#FDFBD4; margin:10px 0 6px; text-shadow:0 2px 12px rgba(0,0,0,0.7); }
  .hero-slide-cap .hero-slide-press { font-family:'Manrope',sans-serif; font-size:clamp(0.75rem,1.4vw,0.9rem); font-weight:700; color:rgba(253,251,212,0.75); letter-spacing:0.02em; margin-bottom:8px; text-shadow:0 1px 8px rgba(0,0,0,0.8); }
  .hero-slide-cap .hero-eyebrow { font-family:'Manrope',sans-serif; font-size:clamp(0.78rem,1.6vw,1.05rem); font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:#FDFBD4; margin-top:8px; text-shadow:0 1px 8px rgba(0,0,0,0.8); }
/* ---- block 8 ---- */
  .hp-news { position:relative; isolation:isolate; width:100vw; box-sizing:border-box; padding:clamp(48px,7vw,80px) 24px;
    background:
      radial-gradient(ellipse 50% 60% at 15% 50%, rgba(232,128,40,0.14) 0%, transparent 70%),
      linear-gradient(180deg,#120b07 0%,#0d0907 100%);
    border-top:1px solid rgba(232,140,40,0.22); border-bottom:1px solid rgba(232,140,40,0.22); }
  .hp-news-inner { max-width:980px; margin:0 auto; display:grid; grid-template-columns:auto 1fr; gap:clamp(24px,4vw,48px); align-items:center; }
  .hp-news-mast { text-align:center; padding-right:clamp(24px,4vw,48px); border-right:1px solid rgba(232,140,40,0.3); }
  .hp-news-kicker { font-family:'Manrope',sans-serif; font-size:0.66rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:var(--orange); margin:0 0 10px; }
  .hp-news-pub { font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(1.6rem,3vw,2.2rem); color:#FDFBD4; line-height:1; margin:0; white-space:nowrap; }
  .hp-news-date { font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:rgba(253,251,212,0.5); margin:10px 0 0; }
  .hp-news-head { font-family:'Manrope',sans-serif; font-size:0.78rem; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; color:rgba(253,251,212,0.6); margin:0 0 12px; }
  .hp-news-quote { font-family:'Libre Baskerville',serif; font-style:italic; font-weight:700; font-size:clamp(1.25rem,2.4vw,1.75rem); line-height:1.35; color:#FDFBD4; margin:0; }
  .hp-news-quote em { font-style:italic; color:#f0902c; }
  .hp-news-attr { font-family:'Manrope',sans-serif; font-size:0.85rem; font-weight:600; color:rgba(253,251,212,0.7) !important; margin:14px 0 0; }
  .hp-news-attr strong { color:#FDFBD4; }
  .hp-news-stat { font-family:'Manrope',sans-serif; font-size:0.95rem; line-height:1.6; color:rgba(253,251,212,0.8) !important; margin:16px 0 0; padding-left:14px; border-left:3px solid var(--orange); }
  .hp-news-link { display:inline-flex; align-items:center; gap:8px; margin-top:20px; font-family:'Manrope',sans-serif; font-size:0.8rem; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:#f0902c; text-decoration:none; border-bottom:1px solid rgba(240,144,44,0.5); padding-bottom:2px; }
  .hp-news-more { max-width:1100px; margin:clamp(28px,4vw,40px) auto 0; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
  @media (max-width:980px) and (min-width:701px) { .hp-news-more { grid-template-columns:1fr 1fr; } }
  .hp-news-card { display:flex; flex-direction:column; gap:8px; padding:20px 22px; border-radius:14px; text-decoration:none;
    background:linear-gradient(160deg,#1d120a 0%,#130c07 100%); border:1px solid rgba(232,140,40,0.22); border-top:3px solid var(--orange);
    box-shadow:0 14px 34px rgba(0,0,0,0.4); transition:transform 0.2s, border-color 0.2s; }
  .hp-news-card:hover { transform:translateY(-4px); border-color:rgba(240,144,44,0.55); }
  .hp-news-card-pub { font-family:'Libre Baskerville',serif; font-weight:700; font-size:1.15rem; color:#FDFBD4; }
  .hp-news-card-pub span { font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:rgba(253,251,212,0.5); }
  .hp-news-card-head { font-family:'Manrope',sans-serif; font-weight:800; font-size:0.95rem; line-height:1.4; color:#f0902c; }
  .hp-news-card-sum { font-family:'Manrope',sans-serif; font-size:0.86rem; line-height:1.6; color:rgba(253,251,212,0.75); }
  .hp-news-card-cta { margin-top:auto; padding-top:6px; font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:#f0902c; }
  @media (max-width:700px) {
    .hp-news-inner { grid-template-columns:1fr; text-align:left; }
    .hp-news-more { grid-template-columns:1fr; }
    .hp-news-mast { border-right:none; border-bottom:1px solid rgba(232,140,40,0.3); padding:0 0 20px; text-align:left; }
    .hp-news-pub { font-size:1.9rem !important; }
    .hp-news-quote { font-size:1.2rem !important; }
    .hp-news-stat { font-size:0.9rem !important; }
  }
/* ---- block 9 ---- */
  .home-dyk-kicker { display:flex; width:fit-content; align-items:center; gap:6px; font-family:'Manrope',sans-serif; font-size:0.66rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:var(--orange); margin:0 auto 14px; }
  .home-dyk-title { max-width:820px; margin:0 auto; text-align:center; font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(1.5rem,4vw,2.6rem); line-height:1.25; color:#FDFBD4; }
  .home-dyk-sub { max-width:680px; margin:14px auto 0; text-align:center; font-family:'Manrope',sans-serif; font-size:clamp(0.92rem,1.6vw,1.05rem); line-height:1.6; color:rgba(253,251,212,0.78); }
  .home-dyk-sub strong { color:#FDFBD4; font-weight:700; }
/* ---- block 10 ---- */
  #meetScottBioModal { position:fixed; inset:0; z-index:9999; background:rgba(0,0,0,0.75); display:none; align-items:center; justify-content:center; padding:24px; }
  #meetScottBioModal.open { display:flex; }
  #meetScottBioModal .modal-card { position:relative; max-width:560px; width:100%; max-height:80vh; overflow-y:auto; background:linear-gradient(180deg,#160a08 0%,#0d0b09 100%); border:1px solid rgba(253,251,212,0.14); border-top:3px solid var(--orange); border-radius:16px; }
  #meetScottBioModal .modal-card-img { width:100%; aspect-ratio:16/9; object-fit:cover; object-position:center top; display:block; border-radius:13px 13px 0 0; }
  #meetScottBioModal .modal-card-body { padding:32px 32px 36px; }
  #meetScottBioModal .modal-close { position:absolute; top:14px; right:14px; width:36px; height:36px; border-radius:50%; background:rgba(13,11,9,0.65); border:1px solid rgba(253,251,212,0.25); color:#FDFBD4; font-size:1.1rem; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center; }
  #meetScottBioModal .modal-close:hover { background:rgba(13,11,9,0.85); }
  #meetScottBioModal h3 { font-family:'Libre Baskerville',serif; font-size:1.3rem; font-weight:700; color:#FDFBD4; margin:0 0 16px; }
  #meetScottBioModal p { font-family:'Manrope',sans-serif; font-size:0.98rem; line-height:1.75; color:rgba(253,251,212,0.8); margin:0; }
/* ---- block 11 ---- */
      .wrp-slider { position:relative; }
      .wrp-slide { position:absolute; inset:0; opacity:0; transition:opacity 0.8s ease; }
      .wrp-slide.active { opacity:1; position:relative; }
      .wrp-slide img { width:100%; height:100%; object-fit:cover; display:block; }
    
/* ---- block 12 ---- */
  .philosophy-section {
    width:100vw; box-sizing:border-box;
    background-color:#1b140d;
    background-image:url(../"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='32'%3E%3Cpath d='M28 0L56 16L28 32L0 16Z' fill='none' stroke='rgba(253,251,212,0.05)'/%3E%3C/svg%3E");
    background-size:56px 32px;
    border-top:1px solid rgba(253,251,212,0.10); border-bottom:1px solid rgba(253,251,212,0.10);
    padding:clamp(48px,7vw,88px) 22px;
  }
  .philosophy-inner { max-width:1080px; margin:0 auto; }
  .philosophy-head { text-align:center; margin:0 auto clamp(32px,5vw,48px); max-width:720px; }
  .philosophy-eyebrow { display:inline-flex; align-items:center; gap:10px; font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:800; letter-spacing:0.2em; text-transform:uppercase; color:var(--orange); margin-bottom:14px; }
  .philosophy-eyebrow span { display:block; width:20px; height:2px; background:var(--orange); }
  .philosophy-title { font-family:'Libre Baskerville',serif; font-size:clamp(1.7rem,3.6vw,2.8rem); font-weight:700; letter-spacing:-0.02em; line-height:1.15; color:#FDFBD4; margin:0; }
  .philosophy-title em { font-style:italic; color:var(--orange); }
  .philosophy-grid { max-width:1000px; margin:0 auto; }
  .philosophy-cluster { margin-top:clamp(36px,5vw,52px); }
  .philosophy-cluster:first-child { margin-top:0; }
  .philosophy-cluster-label {
    display:flex; align-items:center; gap:14px;
    font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:800; letter-spacing:0.16em; text-transform:uppercase; color:var(--orange);
    margin-bottom:18px;
  }
  .philosophy-cluster-label::after { content:''; flex:1; height:1px; background:rgba(253,251,212,0.16); }
  .philosophy-cluster-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:18px; }
  .philosophy-card {
    position:relative;
    display:flex; flex-direction:column; gap:12px;
    background:linear-gradient(160deg, rgba(192,88,0,0.14) 0%, rgba(0,0,0,0.3) 75%), #140d08;
    border:1px solid rgba(253,251,212,0.14);
    border-left:3px solid var(--orange);
    border-radius:12px;
    padding:24px;
    box-shadow:0 10px 26px rgba(0,0,0,0.35);
    transition:border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  }
  .philosophy-card:hover { border-color:rgba(192,88,0,0.6); transform:translateY(-4px); box-shadow:0 20px 44px rgba(0,0,0,0.45); }
  .philosophy-num {
    font-family:'Libre Baskerville',serif; font-weight:700; line-height:1;
    font-size:2rem;
    color:rgba(192,88,0,0.55);
  }
  .philosophy-card-title { font-family:'Manrope',sans-serif; font-weight:800; font-size:1rem; letter-spacing:-0.01em; color:#FDFBD4; margin:0; line-height:1.3; }
  .philosophy-card-body { font-family:'Manrope',sans-serif; font-size:0.88rem; line-height:1.6; color:rgba(253,251,212,0.72); margin:0; }
  .philosophy-featured { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:18px; max-width:1000px; margin:0 auto; }
  .philosophy-more-wrap { text-align:center; margin-top:clamp(28px,4vw,40px); }
  .philosophy-more-btn {
    display:inline-flex; align-items:center; gap:8px;
    font-family:'Manrope',sans-serif; font-size:0.85rem; font-weight:700; letter-spacing:0.04em; text-transform:uppercase;
    color:#FDFBD4; background:rgba(253,251,212,0.08); border:1px solid rgba(253,251,212,0.3);
    border-radius:8px; padding:14px 28px; cursor:pointer; transition:background 0.2s ease, border-color 0.2s ease;
  }
  .philosophy-more-btn:hover { background:rgba(253,251,212,0.14); border-color:rgba(253,251,212,0.5); }
  #philosophyModal { position:fixed; inset:0; z-index:9999; background:rgba(0,0,0,0.75); display:none; align-items:center; justify-content:center; padding:24px; }
  #philosophyModal.open { display:flex; }
  #philosophyModal .modal-card { position:relative; max-width:980px; width:100%; max-height:85vh; overflow-y:auto; background:linear-gradient(180deg,#1b140d 0%,#140d08 100%); border:1px solid rgba(253,251,212,0.14); border-top:3px solid var(--orange); border-radius:16px; padding:clamp(28px,5vw,48px); }
  #philosophyModal .modal-close { position:absolute; top:14px; right:14px; width:36px; height:36px; border-radius:50%; background:rgba(13,11,9,0.65); border:1px solid rgba(253,251,212,0.25); color:#FDFBD4; font-size:1.1rem; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center; z-index:1; }
  #philosophyModal .modal-close:hover { background:rgba(13,11,9,0.85); }
  #philosophyModal .philosophy-title { font-size:clamp(1.4rem,3vw,2rem); margin-bottom:28px; }
/* ---- block 13 ---- */
  /* Hero copy — its own section below the slider */
  .hero-copy { width:100vw; box-sizing:border-box; background:#0d0b09; border-bottom:1px solid rgba(253,251,212,0.10); padding:clamp(40px,6vw,72px) 24px; text-align:center; }
  .hero-h1 { font-family:'Libre Baskerville',serif; font-size:clamp(1.7rem,4vw,3rem); font-weight:700; letter-spacing:-0.02em; line-height:1.15; color:#FDFBD4; margin:0 auto; max-width:20ch; }
  .hero-h1 em { font-style:italic; color:var(--orange); }
  .hero-sub { font-family:'Manrope',sans-serif; font-size:clamp(0.98rem,1.5vw,1.12rem); line-height:1.7; color:rgba(253,251,212,0.8); margin:18px auto 0; max-width:62ch; }
  .hero-sub strong { color:#FDFBD4; }
  .hero-ctas { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-top:28px; }
  .hero-ctas a { display:inline-flex; align-items:center; gap:8px; font-family:'Manrope',sans-serif; font-size:0.9rem; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; padding:16px 32px; border-radius:8px; text-decoration:none; }
  .hero-next-class-band {
    width:100vw; box-sizing:border-box; position:relative;
    background-color:#0d0b09;
    background-image:linear-gradient(180deg,rgba(13,11,9,0.55) 0%,rgba(13,11,9,0.88) 100%), url('../images/promo-stills-5-23-26-rounded/Snake-School-5-23-26-Promo-Still-24.jpg');
    background-image:linear-gradient(180deg,rgba(13,11,9,0.55) 0%,rgba(13,11,9,0.88) 100%), -webkit-image-set(url('../images/promo-stills-5-23-26-rounded/Snake-School-5-23-26-Promo-Still-24.webp') type('image/webp'), url('../images/promo-stills-5-23-26-rounded/Snake-School-5-23-26-Promo-Still-24.jpg') type('image/jpeg'));
    background-image:linear-gradient(180deg,rgba(13,11,9,0.55) 0%,rgba(13,11,9,0.88) 100%), image-set(url('../images/promo-stills-5-23-26-rounded/Snake-School-5-23-26-Promo-Still-24.webp') type('image/webp'), url('../images/promo-stills-5-23-26-rounded/Snake-School-5-23-26-Promo-Still-24.jpg') type('image/jpeg'));
    background-size:cover; background-position:center 40%; background-repeat:no-repeat;
    padding:clamp(36px,5.5vw,52px) 24px clamp(40px,6vw,64px);
  }
  .hero-next-class {
    position: relative;
    max-width:580px; margin:0 auto; text-align:center;
    background: linear-gradient(160deg, rgba(192,88,0,0.16) 0%, rgba(253,251,212,0.03) 55%, rgba(253,251,212,0.02) 100%);
    border: 1px solid rgba(192,88,0,0.35);
    border-radius: 22px;
    padding: clamp(28px,4vw,40px) clamp(28px,4vw,44px);
    box-shadow: 0 30px 70px rgba(0,0,0,0.55), 0 0 0 1px rgba(253,251,212,0.04) inset;
    overflow: hidden;
  }
  .hero-next-class::before {
    content: '';
    position: absolute; top:0; left:0; right:0; height:4px;
    background: linear-gradient(90deg, transparent, var(--orange), transparent);
  }
  .hero-next-class-label {
    display: inline-flex; align-items: center; gap: 8px;
    font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:800; letter-spacing:0.18em; text-transform:uppercase; color:#FDFBD4; margin-bottom:12px;
  }
  .hero-next-class-label::before {
    content: ''; display:block; width:8px; height:8px; border-radius:50%;
    background: var(--orange); box-shadow: 0 0 0 4px rgba(192,88,0,0.25);
    animation: heroNextClassPulse 2s ease-in-out infinite;
  }
  @keyframes heroNextClassPulse { 0%,100% { opacity:1; } 50% { opacity:0.4; } }
  .hero-next-class-date { font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(1.35rem,2.8vw,1.85rem); letter-spacing:-0.01em; color:#FDFBD4; }
  .hero-next-class-sub { font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:rgba(253,251,212,0.55); margin-top:8px; }
  .hero-next-class .hero-ctas { margin-top:24px; gap:10px; }
  .hero-next-class .hero-ctas a { padding:14px 22px; font-size:0.8rem; }
  .hero-next-class .hero-cta-primary { background:linear-gradient(135deg,#e06a00,var(--orange)); box-shadow:0 14px 34px rgba(192,88,0,0.45); }
  .hero-video { position:relative; max-width:340px; margin:26px auto 0; border-radius:16px; overflow:hidden; box-shadow:0 18px 44px rgba(0,0,0,0.5); border:1px solid rgba(253,251,212,0.12); line-height:0; background:#0d0b09; }
  .hero-video video { width:100%; height:auto; display:block; aspect-ratio:9 / 16; }
  .hero-video-slider { position:absolute; inset:0; z-index:1; }
  .hero-video-slider.is-hidden { display:none; }
  .hero-video-slider::after { content:''; position:absolute; inset:0; z-index:2; background:linear-gradient(160deg, rgba(192,88,0,0.28) 0%, rgba(192,88,0,0.06) 45%, rgba(56,20,0,0.22) 100%); mix-blend-mode:overlay; pointer-events:none; }
  .hero-video-slide { position:absolute; inset:0; opacity:0; transition:opacity 1.4s ease; }
  .hero-video-slide.active { opacity:1; }
  .hero-video-slide img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(1.15) sepia(0.16) contrast(1.03); }
  .hero-video-play { position:absolute; z-index:2; top:50%; left:50%; transform:translate(-50%,-50%); width:58px; height:58px; border-radius:50%; background:rgba(13,11,9,0.55); border:1.5px solid rgba(253,251,212,0.7); display:flex; align-items:center; justify-content:center; cursor:pointer; padding:0; transition:transform 0.15s, background 0.15s; }
  .hero-video-play:hover { transform:translate(-50%,-50%) scale(1.06); background:rgba(192,88,0,0.75); }
  .hero-video-play svg { width:20px; height:20px; margin-left:3px; fill:#FDFBD4; }
  .hero-video-play.is-hidden { display:none; }
  .hero-video-cap { font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:rgba(253,251,212,0.55); margin:14px 0 0; }
  .hero-cta-primary { background:var(--orange); color:#FDFBD4; box-shadow:0 10px 30px rgba(192,88,0,0.35); }
  .hero-cta-ghost { background:transparent; color:#FDFBD4; border:1px solid rgba(253,251,212,0.4); }
  @media (max-width:640px) { .hero-ctas a { padding:14px 24px; } }
  @media (min-width:821px) {
    .hero-copy { text-align:center; }
    .hero-copy-inner { max-width:820px; margin:0 auto; }
    .hero-h1 { margin:0 auto; }
    .hero-sub { margin:18px auto 0; }
    .hero-ctas { justify-content:center; }
  }
/* ---- block 14 ---- */
  .ptr-2col { display:grid; grid-template-columns:1fr 1fr; gap:clamp(10px,2.5vw,28px); max-width:1000px; margin:0 auto; align-items:stretch; }
/* ---- block 15 ---- */
  /* All-dark home: former cream sections become a warm second dark tone
     (#1b140d). Flips section bg + dark inline text to cream; orange cards and
     accents are left untouched. (No inner light cards exist in these sections.) */
  .home-darkalt { background:#1b140d !important; border-color:rgba(253,251,212,0.10) !important; }
  .home-darkalt [style*="color:#1a1008"],
  .home-darkalt [style*="color:#1f1a17"],
  .home-darkalt [style*="color:rgba(26,16,8"],
  .home-darkalt [style*="color:rgba(56,36,13"] { color:rgba(253,251,212,0.82) !important; }
  /* Stylesheet-driven dark text inside the Featured Review collapsibles */
  .home-darkalt .fr-collapse > summary { color:#FDFBD4 !important; }
  .home-darkalt .fr-collapse { border-left-color:rgba(192,88,0,0.5) !important; }

  .hero-pitch { width:100vw; background:#1b140d; padding:0 0 clamp(48px,8vw,88px); box-sizing:border-box; border-top:1px solid rgba(253,251,212,0.10); }
  .hp-hero-band {
    width:100vw; box-sizing:border-box;
    height:100vh;
    background-color:#f4ecdc;
    background-image:url('../images/station-pics/Proud-Avoidance-Graphic.png');
    background-image:-webkit-image-set(url('../images/station-pics/Proud-Avoidance-Graphic.webp') type('image/webp'), url('../images/station-pics/Proud-Avoidance-Graphic.png') type('image/png'));
    background-image:image-set(url('../images/station-pics/Proud-Avoidance-Graphic.webp') type('image/webp'), url('../images/station-pics/Proud-Avoidance-Graphic.png') type('image/png'));
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-attachment:fixed;
    border-bottom:1px solid #0a0706;
    margin-bottom:clamp(32px,6vw,56px);
  }
  @media (max-width:900px), (hover:none) {
    .hp-hero-band { background-attachment:scroll; }
  }
  @media (max-width:700px) {
    .hp-hero-band { height:auto; aspect-ratio:1 / 1; }
  }
  .hero-pitch-grid { display:flex; flex-direction:column; align-items:center; gap:clamp(24px,3.4vw,34px); max-width:1040px; margin:0 auto; text-align:center; padding:0 22px; }
  /* Big section title */
  .hp-section-title { font-family:'Libre Baskerville',serif; font-size:clamp(2.2rem,4vw,3.4rem); font-weight:700; letter-spacing:-0.02em; line-height:1.08; color:#FDFBD4; text-align:center; margin:0; }
  .hp-hero-text { display:flex; flex-direction:column; align-items:center; gap:clamp(20px,3vw,30px); min-width:0; width:100%; }
  .hp-lead { max-width:760px; }
  /* Benefits grid — replaces the tall single-column accordion */
  .hp-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; width:100%; margin-top:4px; }
  @media (max-width:860px){ .hp-benefits { grid-template-columns:repeat(2,1fr); } }
  @media (max-width:540px){ .hp-benefits { grid-template-columns:1fr; } }
  .hp-benefit { background:rgba(253,251,212,0.04); border:1px solid rgba(253,251,212,0.10); border-radius:14px; padding:18px 18px; text-align:left; }
  .hp-benefit-title { display:flex; align-items:flex-start; gap:9px; font-family:'Manrope',sans-serif; font-size:0.98rem; font-weight:800; letter-spacing:-0.01em; color:#FDFBD4; margin:0 0 7px; line-height:1.25; }
  .hp-benefit-title::before { content:'✓'; flex:0 0 auto; width:20px; height:20px; margin-top:1px; border-radius:50%; background:var(--orange); color:#FDFBD4; font-size:0.66rem; font-weight:900; display:flex; align-items:center; justify-content:center; }
  .hp-benefit-desc { font-family:'Manrope',sans-serif; font-size:0.86rem; line-height:1.55; color:rgba(253,251,212,0.68); margin:0; }
  .hp-title { margin:0; max-width:100%; font-family:'Manrope',sans-serif; font-size:clamp(1.9rem,5vw,3rem); font-weight:900; letter-spacing:-0.025em; line-height:1.15; color:#FDFBD4; }
  .hp-title em { font-style:normal; color:var(--orange); }
  .hero-bubbles { display:flex; flex-direction:column; align-items:center; gap:clamp(10px,1.6vw,14px); margin:0; max-width:100%; font-family:'Manrope',sans-serif; font-weight:800; letter-spacing:-0.01em; line-height:1.2; }
  .hero-bubble {
    display:inline-block;
    background:rgba(253,251,212,0.06);
    border:1px solid rgba(253,251,212,0.18);
    color:#FDFBD4;
    padding:clamp(9px,1.6vw,13px) clamp(18px,3vw,26px);
    border-radius:999px;
    font-size:clamp(1.1rem,2.4vw,1.45rem);
    box-shadow:0 4px 16px rgba(0,0,0,0.18);
  }
  .hero-bubble--punch {
    background:var(--orange);
    border-color:var(--orange);
    color:#FDFBD4;
    font-weight:900;
    box-shadow:0 10px 28px rgba(192,88,0,0.40);
  }
  .hp-offer { display:flex; flex-direction:column; align-items:center; gap:clamp(12px,1.8vw,16px); width:100%; }
  .hp-circ-logo { display:block; width:clamp(380px,56vw,600px); height:auto; margin:0 auto; }
  @media (max-width:700px){ .hp-circ-logo { width:100%; } }
  .hp-icon { display:block; width:clamp(72px,11vw,96px); height:auto; margin:0 auto; }
  .hp-eyebrow { font-family:'Manrope',sans-serif; font-size:clamp(0.78rem,1.4vw,0.95rem); font-weight:800; letter-spacing:0.16em; text-transform:uppercase; color:var(--orange); margin:0; }
  .hp-lead { width:100%; font-family:'Manrope',sans-serif; font-size:clamp(1.12rem,2.4vw,1.8rem); font-weight:700; letter-spacing:-0.015em; line-height:1.35; color:#FDFBD4; margin:0; }
  .hp-para { width:100%; max-width:600px; font-family:'Manrope',sans-serif; font-size:clamp(0.95rem,1.6vw,1.2rem); font-weight:500; color:rgba(253,251,212,0.82); line-height:1.6; margin:0 auto; }
  .hp-points-wrap { width:100%; }
  .hp-points { width:100%; max-width:780px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:clamp(16px,2.2vw,24px); align-items:stretch; }
  .hp-points-col { list-style:none; margin:0; display:flex; flex-direction:column; gap:clamp(13px,1.8vw,17px); padding:clamp(22px,3vw,30px); background:#16110c; border:1px solid rgba(253,251,212,0.12); border-radius:18px; box-shadow:0 16px 38px rgba(0,0,0,0.32); }
  .hp-point { position:relative; font-family:'Manrope',sans-serif; font-size:clamp(1rem,1.7vw,1.25rem); font-weight:600; line-height:1.45; color:rgba(253,251,212,0.9); margin:0; padding-left:28px; text-align:left; }
  .hp-point-label { color:#FDFBD4; font-weight:800; }
  /* What We Offer — accordion */
  .hp-acc-wrap { width:100%; max-width:760px; margin:0 auto; display:flex; flex-direction:column; gap:8px; }
  .hp-acc { background:#16110c; border:1px solid rgba(253,251,212,0.12); border-radius:12px; overflow:hidden; transition:border-color 0.2s; }
  .hp-acc[open] { border-color:rgba(192,88,0,0.5); }
  .hp-acc-sum { list-style:none; cursor:pointer; display:flex; align-items:center; gap:13px; padding:15px 18px; font-family:'Manrope',sans-serif; font-weight:800; font-size:0.98rem; color:#FDFBD4; text-align:left; -webkit-tap-highlight-color:transparent; }
  .hp-acc-sum::-webkit-details-marker { display:none; }
  .hp-acc-sum::before { content:'✓'; flex-shrink:0; width:22px; height:22px; border-radius:50%; background:var(--orange); color:#FDFBD4; display:flex; align-items:center; justify-content:center; font-size:0.7rem; font-weight:900; }
  .hp-acc-chev { margin-left:auto; flex-shrink:0; color:var(--orange); font-weight:900; font-size:1.3rem; line-height:1; transition:transform 0.2s; }
  .hp-acc[open] .hp-acc-chev { transform:rotate(45deg); }
  .hp-acc-body { padding:0 18px 16px 53px; font-family:'Manrope',sans-serif; font-size:0.92rem; line-height:1.6; color:rgba(253,251,212,0.78); text-align:left; }
  .hp-guarantee {
    position:relative; overflow:hidden;
    display:flex; align-items:center; gap:24px;
    max-width:860px; width:100%; margin:22px auto 0; box-sizing:border-box;
    background:linear-gradient(135deg, rgba(192,88,0,0.26) 0%, rgba(192,88,0,0.06) 55%, rgba(253,251,212,0.03) 100%);
    border:1px solid rgba(232,140,40,0.55);
    border-radius:18px; padding:24px 28px; text-align:left;
    box-shadow:0 14px 40px rgba(192,88,0,0.22), inset 0 1px 0 rgba(255,236,200,0.10);
  }
  /* gold seal medallion */
  .hp-guarantee-seal {
    flex-shrink:0; position:relative; z-index:1;
    width:88px; height:88px; border-radius:50%;
    background:radial-gradient(circle at 50% 32%, #ffb24d 0%, #e8742c 58%, #b45200 100%);
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    color:#fff; text-align:center; line-height:1;
    box-shadow:0 8px 22px rgba(192,88,0,0.55), 0 0 0 4px rgba(13,11,9,0.55), 0 0 0 5px rgba(255,178,77,0.55);
  }
  .hp-guarantee-seal::before {
    content:''; position:absolute; inset:7px; border-radius:50%;
    border:1.5px dashed rgba(255,255,255,0.55);
  }
  .hp-guarantee-seal-top { font-family:'Libre Baskerville',serif; font-weight:700; font-size:1.5rem; letter-spacing:0.02em; text-shadow:0 1px 2px rgba(120,50,0,0.5); }
  .hp-guarantee-seal-sub { font-family:'Manrope',sans-serif; font-weight:800; font-size:0.5rem; letter-spacing:0.2em; margin-top:3px; }
  .hp-guarantee-body { position:relative; z-index:1; }
  .hp-guarantee-kicker { display:inline-flex; align-items:center; gap:6px; font-family:'Manrope',sans-serif; font-size:0.62rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:var(--orange); margin-bottom:6px; }
  .hp-guarantee-title { display:block; font-family:'Libre Baskerville',serif; font-size:clamp(1.2rem,2.3vw,1.55rem); font-weight:700; color:#FDFBD4; line-height:1.15; }
  .hp-guarantee-title em { font-style:italic; color:var(--orange); }
  .hp-guarantee-text { display:block; font-family:'Manrope',sans-serif; font-size:0.9rem; line-height:1.55; color:rgba(253,251,212,0.82); margin-top:8px; }
  @media (max-width:560px){
    .hp-guarantee { flex-direction:column; text-align:center; gap:16px; padding:24px 20px; }
    .hp-guarantee-kicker { justify-content:center; }
  }
  @media (prefers-reduced-motion: reduce){ .hp-guarantee::after { animation:none; display:none; } }
  .hp-dots { display:none; }
  @media (max-width:700px){
    .hp-points { display:flex; grid-template-columns:none; max-width:100%; gap:16px; padding:4px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
    .hp-points::-webkit-scrollbar { display:none; }
    .hp-points-col { flex:0 0 86%; scroll-snap-align:center; box-sizing:border-box; }
    .hp-dots { display:flex; justify-content:center; gap:9px; margin-top:18px; }
    .hp-dots span { width:8px; height:8px; border-radius:50%; background:rgba(26,16,8,0.25); transition:background 0.2s, transform 0.2s; cursor:pointer; }
    .hp-dots span.active { background:var(--orange); transform:scale(1.25); }
  }
  .hp-point::before { content:'✓'; position:absolute; left:0; top:0; color:var(--orange); font-weight:900; }
  .hp-cta { display:inline-flex; align-items:center; gap:8px; background:var(--orange); color:#FDFBD4; font-family:'Manrope',sans-serif; font-size:0.9rem; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; padding:15px 34px; border-radius:8px; text-decoration:none; box-shadow:0 8px 24px rgba(192,88,0,0.35); transition:background 0.15s; }
  .hp-cta:hover { background:#8a3e00; }
  /* Scroll-reveal pop-in for the bubbles */
  .hero-bubbles.arm .hero-bubble { opacity:0; transform:translateY(30px) scale(0.5); }
  .hero-bubbles.revealed .hero-bubble { animation:bubblePop 0.5s cubic-bezier(0.34,1.56,0.64,1) both; }
  .hero-bubbles.revealed .hero-bubble:nth-child(1){ animation-delay:0.05s; }
  .hero-bubbles.revealed .hero-bubble:nth-child(2){ animation-delay:0.19s; }
  .hero-bubbles.revealed .hero-bubble:nth-child(3){ animation-delay:0.33s; }
  .hero-bubbles.revealed .hero-bubble:nth-child(4){ animation-delay:0.47s; }
  .hero-bubbles.revealed .hero-bubble--punch{ animation:bubbleBang 0.62s cubic-bezier(0.3,1.8,0.5,1) both; animation-delay:0.63s; }
  @keyframes bubblePop {
    0%   { opacity:0; transform:translateY(30px) scale(0.5); }
    60%  { opacity:1; transform:translateY(-5px) scale(1.08); }
    100% { opacity:1; transform:translateY(0) scale(1); }
  }
  @keyframes bubbleBang {
    0%   { opacity:0; transform:scale(0.3) rotate(-3deg); box-shadow:0 0 0 rgba(192,88,0,0); }
    45%  { opacity:1; transform:scale(1.3) rotate(2deg); box-shadow:0 0 40px rgba(255,140,0,0.7); }
    65%  { transform:scale(0.92) rotate(-1deg); }
    100% { opacity:1; transform:scale(1) rotate(0); box-shadow:0 10px 28px rgba(192,88,0,0.40); }
  }
  @media (prefers-reduced-motion: reduce){
    .hero-bubbles.arm .hero-bubble { opacity:1; transform:none; }
    .hero-bubbles.revealed .hero-bubble,
    .hero-bubbles.revealed .hero-bubble--punch { animation:none; }
  }
/* ---- block 16 ---- */
  .home-tm-section {
    width: 100vw;
    box-sizing: border-box;
    background: linear-gradient(180deg,#160a08 0%,#0d0b09 100%);
    border-top: 1px solid rgba(253,251,212,0.08);
    border-bottom: 1px solid rgba(253,251,212,0.08);
    padding: 96px 48px;
    --ink: #FDFBD4;
    --ink-body: rgba(253,251,212,0.75);
    --ink-muted: rgba(253,251,212,0.50);
  }
  .home-tm-inner { max-width: 1140px; margin: 0 auto; }
  .home-tm-head { max-width: 720px; margin: 0 auto 48px; text-align: center; }
  .home-tm-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange); margin-bottom: 16px;
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  }
  .home-tm-eyebrow::before,
  .home-tm-eyebrow::after { content: ''; display: block; width: 20px; height: 2px; background: var(--orange); }
  .home-tm-title {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1.8rem, 3.6vw, 2.8rem);
    font-weight: 700; letter-spacing: -0.02em; line-height: 1.15;
    color: #FDFBD4; margin: 0 0 14px;
  }
  .home-tm-title em { font-style: italic; color: var(--orange); }
  .home-tm-subtitle {
    font-size: 1rem; line-height: 1.65; color: rgba(253,251,212,0.75);
    max-width: 560px; margin: 0 auto;
  }
  .home-tm-viewport { overflow: hidden; width: 100vw; margin-left: calc(50% - 50vw); padding: 8px 0 34px; }
  @keyframes home-tm-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
  .home-tm-grid {
    display: flex;
    gap: 16px;
    width: max-content;
    animation: home-tm-marquee 400s linear infinite;
  }
  .home-tm-viewport:hover .home-tm-grid { animation-play-state: paused; }
  @media (prefers-reduced-motion: reduce) {
    .home-tm-viewport { overflow-x: auto; }
    .home-tm-grid { animation: none; }
  }
  .home-tm-card {
    flex: 0 0 340px;
    box-sizing: border-box;
    position: relative;
    background: linear-gradient(160deg, #2a1c10 0%, #1b130c 55%, #150f0a 100%);
    border: 1px solid rgba(232,140,40,0.28);
    border-top: 3px solid var(--orange);
    border-radius: 14px;
    padding: 24px 24px;
    box-shadow: 0 16px 40px rgba(0,0,0,0.45), inset 0 1px 0 rgba(255,236,200,0.06);
    transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
  }
  .home-tm-card::before {
    content: '\201C';
    position: absolute;
    top: 10px; right: 20px;
    font-family: 'Libre Baskerville', Georgia, serif;
    font-size: 4.6rem; line-height: 1;
    color: rgba(232,140,40,0.28);
    pointer-events: none;
  }
  .home-tm-card:hover {
    border-color: rgba(232,140,40,0.6);
    box-shadow: 0 22px 50px rgba(0,0,0,0.55), 0 0 0 1px rgba(232,140,40,0.25);
    transform: translateY(-5px);
  }
  .home-tm-stars {
    position: relative;
    color: #f0902c;
    font-size: 1.15rem;
    letter-spacing: 0.14em;
    line-height: 1;
    margin-bottom: 14px;
    text-shadow: 0 0 14px rgba(240,144,44,0.35);
  }
  .home-tm-quote {
    margin: 0 0 20px;
    font-size: 0.92rem;
    line-height: 1.65;
    color: rgba(253,251,212,0.9);
    max-height: 200px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(192,88,0,0.45) transparent;
  }
  .home-tm-quote::-webkit-scrollbar { width: 5px; }
  .home-tm-quote::-webkit-scrollbar-thumb { background: rgba(192,88,0,0.45); border-radius: 4px; }
  .home-tm-quote::-webkit-scrollbar-track { background: transparent; }
  .home-tm-person {
    display: flex; align-items: center; gap: 12px;
    padding-top: 16px;
    border-top: 1px solid rgba(232,140,40,0.18);
  }
  .home-tm-avatar {
    flex: none;
    width: 44px; height: 44px;
    border-radius: 50%;
    background: linear-gradient(135deg, #db6a16 0%, var(--orange) 60%, #9a4600 100%);
    color: #fff;
    font-family: 'Manrope', sans-serif;
    font-weight: 800; font-size: 1.05rem;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 12px rgba(192,88,0,0.35), inset 0 1px 0 rgba(255,255,255,0.25);
  }
  .home-tm-meta { display: flex; flex-direction: column; }
  .home-tm-name {
    font-family: 'Manrope', sans-serif;
    font-weight: 800; font-size: 0.95rem;
    letter-spacing: -0.01em; color: #FDFBD4;
  }
  .home-tm-role {
    font-family: 'Manrope', sans-serif;
    font-size: 0.62rem; font-weight: 700;
    letter-spacing: 0.16em; text-transform: uppercase;
    color: var(--orange); margin-top: 3px;
  }
  @media (max-width: 640px) {
    .home-tm-section { padding: 64px 0; }
    .home-tm-inner { max-width: none; }
    .home-tm-head { margin-bottom: 36px; padding: 0 24px; }
    .home-tm-grid { gap: 12px; animation-duration: 150s; }
    .home-tm-card {
      flex: 0 0 80vw;
      max-width: 340px;
      margin: 0;
    }
  }
/* ---- block 17 ---- */
  @media (min-width: 761px) {
    .uap-banner-img { max-height: 100vh !important; height: 100vh; }
  }
/* ---- block 18 ---- */
  .home-didyouknow-section {
    width: 100vw;
    box-sizing: border-box;
    background: var(--surface);
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
    padding: 96px 48px;
  }
  .home-didyouknow-inner {
    max-width: 1080px;
    margin: 0 auto;
    text-align: center;
  }
  .home-didyouknow-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange); margin-bottom: 18px;
    display: flex; align-items: center; justify-content: center; gap: 10px;
  }
  .home-didyouknow-eyebrow::before,
  .home-didyouknow-eyebrow::after {
    content: ''; display: block; width: 20px; height: 2px; background: var(--orange);
  }
  .home-didyouknow-title {
    font-family: 'Manrope', sans-serif;
    font-size: clamp(2.2rem, 4vw, 3.4rem);
    font-weight: 900; letter-spacing: -0.02em; line-height: 1.15;
    color: var(--ink); -webkit-text-stroke: 1px var(--ink);
  }
  .home-didyouknow-title em { font-style: normal; color: var(--orange); -webkit-text-stroke: 1px var(--orange); }
  @media (max-width: 760px) {
    .home-didyouknow-section { padding: 64px 24px; }
  }
/* ---- block 19 ---- */
  .home-cta-final {
    width: 100vw;
    background: var(--inv-bg);
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
    padding: 80px 48px 120px;
    box-sizing: border-box;
  }
  .home-cta-final-inner { max-width: 1080px; margin: 0 auto; }
  .home-cta-final .tag {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange); margin-bottom: 16px;
    display: flex; align-items: center; gap: 10px;
  }
  .home-cta-final .tag::before { content: ''; display: block; width: 20px; height: 2px; background: var(--orange); }
  .home-cta-final h2 {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(2rem, 4vw, 3rem); font-weight: 700;
    letter-spacing: -0.02em; line-height: 1.1; color: var(--inv-ink);
    margin-bottom: 16px;
  }
  .home-cta-final h2 em { font-style: italic; color: var(--orange); }
  .home-cta-final p {
    font-size: 1rem; line-height: 1.78; color: var(--inv-ink-body);
    max-width: 640px; margin-bottom: 32px;
  }
  .home-cta-actions { display: flex; gap: 12px; flex-wrap: wrap; }
  .home-cta-btn {
    display: inline-flex; align-items: center; gap: 8px;
    font-family: 'Manrope', sans-serif; font-size: 0.92rem; font-weight: 700;
    letter-spacing: 0.04em; text-decoration: none;
    padding: 15px 32px; border-radius: 8px;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
  }
  .home-cta-btn-primary { background: var(--orange); color: var(--cream); border: none; }
  .home-cta-btn-primary:hover { background: var(--orange-strong); }
  .home-cta-btn-ghost {
    background: transparent; color: var(--inv-ink-body);
    border: 1px solid var(--inv-border-strong);
  }
  .home-cta-btn-ghost:hover { background: var(--inv-surface); color: var(--inv-ink); }
  @media (max-width: 600px) { .home-cta-final { padding: 64px 24px 96px; } }
/* ---- block 20 ---- */
  .home-train-hero-band {
    width:100vw; box-sizing:border-box;
    height:clamp(320px,50vw,560px);
    background-color:#0d0b09;
    background-image:url('../images/training/dog-scenting-rattlesnake-station-avoidance-training.jpg');
    background-image:-webkit-image-set(url('../images/training/dog-scenting-rattlesnake-station-avoidance-training.webp') type('image/webp'), url('../images/training/dog-scenting-rattlesnake-station-avoidance-training.jpg') type('image/jpeg'));
    background-image:image-set(url('../images/training/dog-scenting-rattlesnake-station-avoidance-training.webp') type('image/webp'), url('../images/training/dog-scenting-rattlesnake-station-avoidance-training.jpg') type('image/jpeg'));
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-attachment:fixed;
    border-top:1px solid #0a0706; border-bottom:1px solid #0a0706;
  }
  @media (max-width:900px), (hover:none) {
    .home-train-hero-band { background-attachment:scroll; }
  }
  .tsd-section {
    width: 100vw; box-sizing: border-box;
    background: linear-gradient(180deg,#160a08 0%,#0d0b09 100%);
    border-top: 1px solid rgba(253,251,212,0.08);
    border-bottom: 1px solid rgba(253,251,212,0.08);
    padding: clamp(52px, 7vw, 84px) 24px;
  }
  .tsd-photo-wrap { max-width: 900px; margin: 0 auto clamp(30px, 4.5vw, 44px); }
  .tsd-photo { position: relative; border-radius: 16px; overflow: hidden; line-height: 0; box-shadow: 0 20px 50px rgba(0,0,0,0.4), 0 0 0 1px rgba(253,251,212,0.08); height: clamp(220px, 32vw, 380px); }
  .tsd-photo-slide {
    position: absolute; inset: 0; opacity: 0; transition: opacity 1.2s ease;
    background-size: cover; background-position: center 65%; background-repeat: no-repeat;
    background-attachment: fixed;
  }
  .tsd-photo-slide.active { opacity: 1; }
  @media (max-width: 900px), (hover: none) {
    .tsd-photo-slide { background-attachment: scroll; }
  }
  @media (min-width: 821px) {
    .tsd-photo { height: clamp(460px, 50vw, 640px); }
  }
  .tsd-inner { max-width: 1100px; margin: 0 auto; }
  .tsd-head { max-width: 780px; margin: 0 auto clamp(30px, 4.5vw, 44px); text-align: center; }
  .tsd-eyebrow {
    display: inline-flex; align-items: center; gap: 10px;
    font-family: 'Manrope', sans-serif; font-size: 0.66rem; font-weight: 800;
    letter-spacing: 0.2em; text-transform: uppercase; color: var(--orange);
    margin-bottom: 14px;
  }
  .tsd-eyebrow span { display: block; width: 20px; height: 2px; background: var(--orange); }
  .tsd-h2 {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(2.1rem, 5.2vw, 3.7rem); font-weight: 700;
    letter-spacing: -0.02em; line-height: 1.12; color: #FDFBD4; margin: 0 0 14px;
  }
  .tsd-h2 em { font-style: italic; color: var(--orange); }
  .tsd-lead {
    font-family: 'Manrope', sans-serif;
    font-size: clamp(0.98rem, 1.4vw, 1.1rem); line-height: 1.7;
    color: rgba(253,251,212,0.78); margin: 0;
  }
  .tsd-cta {
    display: inline-flex; align-items: center; gap: 8px; margin-top: auto; align-self: flex-start;
    background: var(--orange); color: #FDFBD4;
    font-family: 'Manrope', sans-serif; font-size: 0.82rem; font-weight: 700;
    letter-spacing: 0.04em; text-transform: uppercase;
    padding: 12px 22px; border-radius: 8px; text-decoration: none;
    box-shadow: 0 8px 22px rgba(192,88,0,0.25);
  }
  .tsd-cta:hover { background: #8a3e00; }
  .tsd-cta-outline { background: transparent; border: 1px solid rgba(253,251,212,0.35); box-shadow: none; color: #FDFBD4; }
  .tsd-cta-outline:hover { background: rgba(253,251,212,0.08); border-color: rgba(253,251,212,0.6); }
/* ---- block 21 ---- */
  .home-about-video {
    width: 100vw;
    box-sizing: border-box;
    background: var(--cream);
    border-top: 1px solid rgba(56,36,13,0.10);
    border-bottom: 1px solid rgba(56,36,13,0.10);
    padding: 96px 0 0;
    text-align: center;
  }
  .home-about-video-head { max-width: 960px; margin: 0 auto; padding: 64px 24px 40px; }
  .home-about-video-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 800; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange); margin-bottom: 16px;
  }
  .home-about-video-title {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(2.2rem, 4vw, 3.4rem);
    font-weight: 700; letter-spacing: -0.01em; line-height: 1.2;
    color: #1f1a17;
    margin: 0;
  }
  .home-about-video-title em { font-style: italic; color: var(--orange); }
  .home-about-video-frame {
    position: relative;
    width: 100vw;
    background: #000;
    line-height: 0;
  }
  .home-about-video-frame video { display: block; width: 100vw; height: auto; }
  @media (max-width: 760px) {
    .home-about-video { padding: 64px 0 0; }
    .home-about-video-head { margin-bottom: 32px; padding: 0 20px; }
  }
/* ---- block 22 ---- */
  .what-we-do-section {
    background: var(--cream);
    --ink: #1f1a17;
    --ink-body: rgba(56,36,13,0.65);
    padding: 0;
    border-top: 1px solid rgba(56,36,13,0.10);
    border-bottom: 1px solid rgba(56,36,13,0.10);
  }
  .what-we-do-row {
    border-bottom-color: rgba(56,36,13,0.08) !important;
  }
  .what-we-do-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    height: 100vh;
    border-bottom: 1px solid rgba(56,36,13,0.08);
  }
  .what-we-do-row:last-child { border-bottom: none; }
  .what-we-do-img {
    overflow: hidden;
  }
  .what-we-do-img img {
    width: 100%; height: 100%; object-fit: cover; display: block;
  }
  .what-we-do-img--natural {
    overflow: visible;
    display: flex;
    align-items: flex-start;
    padding: 0 !important;
  }
  .what-we-do-img--natural img {
    height: auto;
    object-fit: unset;
  }
  .what-we-do-copy {
    padding: 64px 56px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow-y: auto;
  }
  @media (max-width: 760px) {
    .what-we-do-row { grid-template-columns: 1fr; }
    .what-we-do-row.img-right .what-we-do-img { order: -1; }
    .what-we-do-img { height: 50vh; }
    #what-we-do-section .what-we-do-img .wotd-slide:first-child img { object-position: center 28% !important; }
    .what-we-do-copy { padding: 32px 24px; justify-content: flex-start; height: 50vh; }
  }
  @media (min-width: 761px) {
    .what-we-do-row.img-right .what-we-do-img { order: 1; }
  }
  .what-we-do-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange);
    margin-bottom: 16px;
    display: flex; align-items: center; gap: 10px;
  }
  .what-we-do-eyebrow span { display: block; width: 20px; height: 2px; background: var(--orange); }
  .what-we-do-heading {
    font-family: 'Manrope', sans-serif;
    font-size: clamp(1.7rem, 3vw, 2.6rem);
    font-weight: 900; letter-spacing: -0.02em; line-height: 1.15;
    color: var(--ink); margin: 0;
  }
  .what-we-do-subheading {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1.4rem, 2.5vw, 2rem);
    font-weight: 700; letter-spacing: -0.02em; line-height: 1.2;
    color: var(--ink); margin: 0 0 12px;
  }
  /* Make each row's TITLE (the first subheading) stand out more than its description */
  .what-we-do-copy .what-we-do-subheading:first-of-type {
    font-size: clamp(2rem, 3.8vw, 3.1rem);
    line-height: 1.1; letter-spacing: -0.025em;
    margin-bottom: 18px;
  }
  .what-we-do-heading { font-size: clamp(0.95rem, 1.5vw, 1.1rem); font-weight: 500; line-height: 1.65; color: var(--ink-body); margin: 0; }
  .what-we-do-heading em { font-style: normal; color: var(--orange); }
  .what-we-do-cta { margin-top: 32px; }
  @media (max-width: 760px) {
    .what-we-do-row { grid-template-columns: 1fr; }
    .what-we-do-row.img-right .what-we-do-img { order: -1; }
    .what-we-do-copy { padding: 24px 24px 28px; }
    .what-we-do-img { aspect-ratio: unset; min-height: 300px; }
    .what-we-do-copy .what-we-do-subheading:first-of-type { font-size: clamp(1.5rem, 6vw, 2rem); margin-bottom: 10px; }
    .what-we-do-copy .what-we-do-subheading:not(:first-of-type) { font-size: 0.92rem; margin-bottom: 8px; }
    .what-we-do-cta { margin-top: 18px; }
  }
/* ---- block 23 ---- */
  .home-senses-section {
    width: 100vw;
    box-sizing: border-box;
    background: var(--surface);
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
    padding: 96px 48px;
  }
  .home-senses-inner {
    max-width: 1200px;
    margin: 0 auto;
  }
  .home-senses-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange); margin-bottom: 14px;
    display: flex; align-items: center; gap: 10px;
  }
  .home-senses-eyebrow::before { content: ''; display: block; width: 20px; height: 2px; background: var(--orange); }
  .home-senses-title {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 700;
    letter-spacing: -0.02em; line-height: 1.15;
    color: var(--ink); margin-bottom: 36px;
  }
  .home-senses-title em { font-style: italic; color: var(--orange); }
  .home-senses-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
  .home-sense-card {
    position: relative;
    aspect-ratio: 4 / 5;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid var(--border-soft);
    cursor: default;
    transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  }
  .home-sense-card:hover {
    transform: translateY(-4px);
    border-color: var(--orange);
    box-shadow: 0 12px 36px rgba(0,0,0,0.45);
  }
  .home-sense-card img {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
  }
  .home-sense-card:hover img { transform: scale(1.04); }
  .home-sense-card::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(13,11,9,0.85) 0%, rgba(13,11,9,0.35) 50%, rgba(13,11,9,0.1) 100%);
  }
  .home-sense-card-content {
    position: absolute; left: 0; right: 0; bottom: 0;
    padding: 32px 28px;
    z-index: 1;
  }
  .home-sense-card-step {
    font-family: 'Manrope', sans-serif;
    font-size: 0.62rem; font-weight: 800;
    color: var(--orange);
    letter-spacing: 0.22em; text-transform: uppercase;
    margin-bottom: 10px;
  }
  .home-sense-card-label {
    font-family: 'Manrope', sans-serif;
    font-size: clamp(2.4rem, 5vw, 4rem);
    font-weight: 900;
    letter-spacing: -0.02em;
    line-height: 1;
    color: var(--cream);
    text-transform: uppercase;
  }
  @media (max-width: 760px) {
    .home-senses-section { padding: 64px 0; }
    .home-senses-inner { padding: 0 24px; overflow: visible; }
    .home-senses-grid {
      display: flex; overflow-x: auto; scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch; scrollbar-width: none;
      gap: 12px; padding: 0 24px; margin: 0 -24px;
      width: calc(100% + 48px); grid-template-columns: unset;
    }
    .home-senses-grid::-webkit-scrollbar { display: none; }
    .home-sense-card { flex: 0 0 72vw; scroll-snap-align: start; aspect-ratio: 4 / 5; }
    .home-sense-card-content { padding: 24px 22px; }
  }
/* ---- block 24 ---- */
  .rat-section-dark {
    width: 100vw;
    background: linear-gradient(to bottom, rgba(192,88,0,0.06) 0%, transparent 60%), #0d0b09;
    border-top: 0.5px solid var(--dark);
    border-bottom: 0.5px solid var(--dark);
    padding: 96px 48px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
  }
  .rat-inner {
    max-width: 1080px;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 64px;
    align-items: stretch;
  }
  .rat-text { display: flex; flex-direction: column; justify-content: center; }
  .rat-image {
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid var(--border-soft);
    min-height: 100%;
  }
  .rat-image img {
    width: 100%; height: 100%;
    object-fit: cover; display: block;
  }
  @media (max-width: 760px) {
    .rat-section-dark { padding: 64px 24px; }
    .rat-inner { grid-template-columns: 1fr; gap: 32px; }
    .rat-image { aspect-ratio: auto; min-height: 0; }
    .rat-image img { height: auto; object-fit: contain; }
  }
  .rat-section-dark.is-cream,
  body.home-cream-section .rat-section-dark.is-cream {
    background: var(--cream) !important;
    border-top: 1px solid rgba(56,36,13,0.10);
    border-bottom: 1px solid rgba(56,36,13,0.10);
    --bg: #ffffff;
    --ink: #1a1a1a;
    --ink-body: #555;
    --ink-muted: #888;
    --ink-subtle: #999;
    --border-soft: rgba(56,36,13,0.12);
    --border-strong: rgba(56,36,13,0.22);
    --rule: rgba(56,36,13,0.12);
    --surface: rgba(56,36,13,0.04);
  }
/* ---- block 25 ---- */
  .shocking-section {
    width: 100vw;
    background: #0d0b09;
    padding: 80px 48px;
    display: flex;
    justify-content: center;
    box-sizing: border-box;
  }
  @media (max-width: 480px) { .shocking-section { padding: 56px 20px; } }
  .shocking-wrap {
    width: 100%;
    max-width: 1080px;
    background: #0d0b09;
    background-image:
      radial-gradient(circle at 85% 0%, rgba(192,88,0,0.18), transparent 55%),
      radial-gradient(circle at 0% 100%, rgba(192,88,0,0.10), transparent 50%);
    border: 1px solid rgba(192,88,0,0.28);
    border-radius: 18px;
    padding: 56px 56px 48px;
    box-shadow: 0 24px 60px rgba(0,0,0,0.45);
    position: relative;
    overflow: hidden;
  }
  .shocking-wrap::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
    background: linear-gradient(90deg, #C05800, rgba(192,88,0,0.0));
  }
  .shocking-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #C05800;
    margin-bottom: 18px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 6px 12px;
    background: rgba(192,88,0,0.12);
    border: 1px solid rgba(192,88,0,0.35);
    border-radius: 50px;
  }
  .shocking-eyebrow::before {
    content: ''; display: block; width: 6px; height: 6px;
    border-radius: 50%; background: var(--orange);
    box-shadow: 0 0 10px rgba(192,88,0,0.7);
    animation: shocking-pulse 2s ease-out infinite;
  }
  @keyframes shocking-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%      { opacity: 0.55; transform: scale(1.25); }
  }
  .shocking-hook {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1.8rem, 3.2vw, 2.6rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.15;
    color: #FDFBD4;
    margin-bottom: 28px;
  }
  .shocking-hook em { font-style: italic; color: #C05800; }
  .shocking-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    background: rgba(192,88,0,0.25);
    border: 1px solid rgba(192,88,0,0.25);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 32px;
  }
  .shocking-stat {
    background: #0d0b09;
    padding: 22px 20px;
    text-align: left;
  }
  .shocking-stat-num {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 700;
    color: #FDFBD4;
    letter-spacing: -0.02em;
    line-height: 1;
    margin-bottom: 8px;
  }
  .shocking-stat-num em { font-style: italic; color: #C05800; }
  .shocking-stat-label {
    font-family: 'Manrope', sans-serif;
    font-size: 0.62rem;
    font-weight: 700;
    color: rgba(253,251,212,0.5);
    letter-spacing: 0.16em;
    text-transform: uppercase;
    line-height: 1.4;
  }
  .shocking-body p {
    font-family: 'Manrope', sans-serif;
    font-size: 1rem;
    line-height: 1.85;
    color: rgba(253,251,212,0.78);
    margin-bottom: 14px;
  }
  .shocking-body p:last-child { margin-bottom: 0; }
  .shocking-num {
    color: #FDFBD4;
    font-weight: 700;
    letter-spacing: -0.01em;
  }
  @media (max-width: 700px) {
    .shocking-wrap { padding: 36px 24px 32px; border-radius: 14px; }
    .shocking-stats { grid-template-columns: 1fr; }
    .shocking-body p { font-size: 0.95rem; line-height: 1.78; }
  }
/* ---- block 26 ---- */
  .home-grad-section {
    width: 100vw;
    box-sizing: border-box;
    background: #0d0b09;
    border-top: 1px solid rgba(253,251,212,0.10);
    border-bottom: 1px solid rgba(253,251,212,0.10);
    padding: 96px 48px;
    --ink: #FDFBD4;
    --ink-body: rgba(253,251,212,0.78);
    --ink-muted: rgba(253,251,212,0.55);
    --ink-subtle: rgba(253,251,212,0.40);
    --border-soft: rgba(253,251,212,0.10);
    --border-strong: rgba(253,251,212,0.22);
    --rule: rgba(253,251,212,0.10);
  }
  .home-grad-inner { max-width: 1200px; margin: 0 auto; }
  .home-grad-head { text-align: center; margin-bottom: 48px; }
  .home-grad-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange);
    margin-bottom: 18px;
    display: inline-flex; align-items: center; gap: 10px;
  }
  .home-grad-eyebrow::before, .home-grad-eyebrow::after {
    content: ''; display: block; width: 20px; height: 2px; background: var(--orange);
  }
  .home-grad-title {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1.8rem, 3.6vw, 2.8rem);
    font-weight: 700; letter-spacing: -0.02em; line-height: 1.15;
    color: var(--ink);
    margin: 0 0 14px;
  }
  .home-grad-title em { font-style: italic; color: var(--orange); }
  .home-grad-lead {
    font-size: 0.95rem; line-height: 1.75; color: var(--ink-body);
    max-width: 580px; margin: 0 auto;
  }
  .home-grad-viewport { overflow: hidden; width: 100vw; margin-left: calc(50% - 50vw); }
  @keyframes home-grad-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
  .home-grad-grid {
    display: flex;
    gap: 20px;
    width: max-content;
    animation: home-grad-marquee 50s linear infinite; /* 100s → 50s 2026-10-09: set is now 12 photos, was crawling */
  }
  @media (prefers-reduced-motion: reduce) {
    .home-grad-viewport { overflow-x: auto; }
    .home-grad-grid { animation: none; }
  }
  .home-grad-photo {
    position: relative;
    flex: 0 0 300px;
    width: 300px;
    max-width: 300px;
    aspect-ratio: 4 / 5;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid rgba(56,36,13,0.10);
    cursor: zoom-in;
    transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  }
  .home-grad-sticker {
    position: absolute;
    right: 4%;
    bottom: 6%;
    transform: rotate(-3deg);
    background: #FDFBD4;
    border: 2px solid #C05800;
    border-radius: 12px;
    padding: 12px 22px;
    box-shadow: 0 12px 32px rgba(56,36,13,0.30);
    text-align: center;
    max-width: 60%;
    pointer-events: none;
  }
  .home-grad-sticker-text {
    font-family: 'Libre Baskerville', serif;
    font-style: italic;
    font-weight: 700;
    font-size: clamp(0.95rem, 1.6vw, 1.3rem);
    color: #38240D;
    line-height: 1.2;
    letter-spacing: -0.01em;
  }
  .home-grad-sticker-text em {
    font-style: italic;
    color: #C05800;
  }
  .home-grad-photo:hover {
    transform: translateY(-4px);
    border-color: var(--orange);
    box-shadow: 0 4px 20px rgba(192,88,0,0.12), 0 0 0 1px var(--orange);
  }
  .home-grad-photo img {
    width: 100%; height: 100%;
    object-fit: cover; display: block;
    transition: transform 0.5s ease;
  }
  .home-grad-photo:hover img { transform: scale(1.04); }
  .home-grad-seeall {
    display: block;
    margin: 24px auto 0;
    background: transparent;
    border: 1.5px solid var(--orange);
    color: var(--orange);
    font-family: 'Manrope', sans-serif;
    font-size: 0.85rem; font-weight: 700;
    letter-spacing: 0.04em;
    padding: 13px 28px;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
  }
  .home-grad-seeall:hover { background: var(--orange); color: #FDFBD4; }
  .home-tm-seeall {
    display: block;
    margin: 32px auto 0;
    background: transparent;
    border: 1.5px solid var(--orange);
    color: var(--orange);
    font-family: 'Manrope', sans-serif;
    font-size: 0.85rem; font-weight: 700;
    letter-spacing: 0.04em;
    padding: 13px 28px;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
  }
  .home-tm-seeall:hover { background: var(--orange); color: #FDFBD4; }
  @media (max-width: 760px) {
    .home-grad-section { padding: 64px 0; }
    .home-grad-inner { max-width: none; }
    .home-grad-head { padding: 0 24px; }
    .home-grad-viewport { overflow: visible; width: auto; margin-left: 0; }
    .home-grad-grid {
      display: flex;
      gap: 16px;
      width: auto;
      animation: none;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      padding: 4px 24px 12px;
      scroll-padding-left: 24px;
    }
    .home-grad-grid::-webkit-scrollbar { display: none; }
    .home-grad-photo {
      flex: 0 0 86vw;
      width: 86vw;
      max-width: 380px;
      scroll-snap-align: start;
    }
    .home-grad-photo.home-grad-featured {
      flex: 0 0 92vw;
      width: 92vw;
      max-width: 440px;
    }
  }
/* ---- block 27 ---- */
  .home-safety-redesign {
    width: 100vw;
    background: #0d0b09;
    padding: 96px 48px;
    box-sizing: border-box;
    border-top: 1px solid rgba(253,251,212,0.10);
    border-bottom: 1px solid rgba(253,251,212,0.10);
    --ink: #FDFBD4;
    --ink-body: rgba(253,251,212,0.78);
    --ink-muted: rgba(253,251,212,0.55);
    --border-soft: rgba(253,251,212,0.10);
    --border-strong: rgba(253,251,212,0.22);
  }
  .home-safety-redesign-inner { max-width: 1200px; margin: 0 auto; }
  .home-safety-redesign-head {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 64px;
    align-items: center;
    margin-bottom: 64px;
  }
  .home-safety-redesign-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange);
    margin-bottom: 18px;
    display: flex; align-items: center; gap: 10px;
  }
  .home-safety-redesign-eyebrow::before { content: ''; display: block; width: 20px; height: 2px; background: var(--orange); }
  .home-safety-redesign h2 {
    font-family: 'Manrope', sans-serif;
    font-size: clamp(2.2rem, 4.4vw, 3.6rem);
    font-weight: 900; letter-spacing: -0.02em; line-height: 1.1;
    color: var(--ink); -webkit-text-stroke: 1px var(--ink);
    margin: 0 0 18px;
  }
  .home-safety-redesign h2 em { font-style: normal; color: var(--orange); -webkit-text-stroke: 1px var(--orange); }
  .home-safety-redesign-lead {
    font-size: 1rem; line-height: 1.78; color: var(--ink-body);
    margin: 0;
  }
  .home-safety-redesign-stat {
    background: rgba(253,251,212,0.05);
    color: var(--ink-body);
    border: 1px solid rgba(253,251,212,0.12);
    border-top: 3px solid var(--orange);
    border-radius: 14px;
    padding: 36px 32px;
    text-align: center;
    box-shadow: 0 12px 32px rgba(0,0,0,0.35);
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s, background 0.2s;
  }
  .home-safety-redesign-stat:hover {
    border-color: rgba(192,88,0,0.55);
    background: rgba(253,251,212,0.07);
    box-shadow: 0 14px 36px rgba(192,88,0,0.22), 0 0 0 1px rgba(192,88,0,0.25);
    transform: translateY(-3px);
  }
  .home-safety-redesign-stat:active {
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(192,88,0,0.18), 0 0 0 1px rgba(192,88,0,0.30);
  }
  .home-safety-redesign-stat-num {
    font-family: 'Manrope', sans-serif;
    font-size: clamp(3rem, 6vw, 4.6rem);
    font-weight: 900; letter-spacing: -0.04em; line-height: 1;
    color: var(--cream);
    margin-bottom: 10px;
  }
  .home-safety-redesign-stat-label {
    font-size: 0.78rem; font-weight: 800; letter-spacing: 0.20em;
    text-transform: uppercase; color: var(--orange);
    margin-bottom: 14px;
  }
  .home-safety-redesign-stat-sub {
    font-size: 0.92rem; line-height: 1.6; color: var(--ink-body);
  }
  .home-safety-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 8px;
  }
  .home-safety-card {
    background: rgba(253,251,212,0.04);
    border: 1px solid rgba(253,251,212,0.10);
    border-top: 3px solid var(--orange);
    border-radius: 14px;
    padding: 28px 26px;
    color: var(--ink-body);
    box-shadow: 0 12px 32px rgba(0,0,0,0.35);
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s, background 0.2s;
  }
  .home-safety-card:hover {
    border-color: rgba(192,88,0,0.55);
    background: rgba(253,251,212,0.06);
    box-shadow: 0 14px 36px rgba(192,88,0,0.22), 0 0 0 1px rgba(192,88,0,0.25);
    transform: translateY(-3px);
  }
  .home-safety-card:active {
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(192,88,0,0.18), 0 0 0 1px rgba(192,88,0,0.30);
  }
  .home-safety-card-icon {
    width: 44px; height: 44px;
    border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.1rem; font-weight: 900;
    margin-bottom: 16px;
  }
  .home-safety-card-icon.bad {
    background: rgba(253,251,212,0.06);
    border: 1px solid rgba(253,251,212,0.18);
    color: rgba(253,251,212,0.6);
  }
  .home-safety-card-icon.good {
    background: var(--orange);
    border: 1px solid var(--orange);
    color: var(--cream);
  }
  .home-safety-card-tag {
    font-size: 0.66rem; font-weight: 800; letter-spacing: 0.18em;
    text-transform: uppercase; color: var(--ink-muted);
    margin-bottom: 8px;
  }
  .home-safety-card:has(.home-safety-card-icon.bad) .home-safety-card-tag { color: var(--ink-muted); }
  .home-safety-card:has(.home-safety-card-icon.good) .home-safety-card-tag,
  .home-safety-card.featured .home-safety-card-tag { color: var(--orange); }
  .home-safety-card-title {
    font-family: 'Manrope', sans-serif;
    font-size: 1.15rem; font-weight: 800; letter-spacing: -0.01em; line-height: 1.2;
    color: var(--ink); margin-bottom: 10px;
  }
  .home-safety-card-desc {
    font-size: 0.9rem; line-height: 1.65; color: var(--ink-body);
  }
  @media (max-width: 900px) {
    .home-safety-redesign { padding: 72px 24px; }
    .home-safety-redesign-head { grid-template-columns: 1fr; gap: 32px; margin-bottom: 40px; }
    .home-safety-grid { grid-template-columns: 1fr; }
  }
  @media (max-width: 760px) {
    .home-safety-redesign { padding: 72px 0; }
    .home-safety-redesign-inner { max-width: none; }
    .home-safety-redesign-head { padding: 0 24px; }
    .home-safety-grid {
      display: flex;
      grid-template-columns: none;
      gap: 12px;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      padding: 4px 24px 12px;
      scroll-padding-left: 24px;
      margin-bottom: 0;
    }
    .home-safety-grid::-webkit-scrollbar { display: none; }
    .home-safety-card {
      flex: 0 0 86vw;
      max-width: 360px;
      box-sizing: border-box;
      scroll-snap-align: start;
    }
  }
/* ---- block 28 ---- */
  .home-gallery-section {
    width: 100vw;
    box-sizing: border-box;
    background: linear-gradient(to bottom, rgba(192,88,0,0.06) 0%, transparent 60%), #0d0b09;
    border-top: 1px solid rgba(253,251,212,0.10);
    border-bottom: 1px solid rgba(253,251,212,0.10);
    padding: 96px 48px 80px;
    --ink: var(--cream);
    --ink-body: rgba(253,251,212,0.78);
    --ink-muted: rgba(253,251,212,0.55);
  }
  .home-gallery-inner { max-width: 1080px; margin: 0 auto; }
  .home-gallery-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange); margin-bottom: 14px;
    display: flex; align-items: center; gap: 10px;
  }
  .home-gallery-eyebrow::before { content: ''; display: block; width: 20px; height: 2px; background: var(--orange); }
  .home-gallery-title {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1.8rem, 3vw, 2.6rem);
    font-weight: 700; letter-spacing: -0.02em; line-height: 1.15;
    color: var(--ink); margin-bottom: 12px;
  }
  .home-gallery-title em { font-style: italic; color: var(--orange); }
  .home-gallery-sub {
    font-size: 0.95rem; line-height: 1.7;
    color: var(--ink-body); margin-bottom: 36px; max-width: 540px;
  }
  /* Pinterest-style masonry via CSS columns. Photos keep their native
     aspect ratio and pack top-down through each column. */
  .home-gallery-track {
    column-count: 2;
    column-gap: 12px;
  }
  /* Collapsed = clip height only (do NOT hide items). Hiding items changes the
     count and makes the columns re-balance on expand, shifting seen photos. */
  .home-gallery-track.collapsed {
    max-height: 900px;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to bottom, #000 74%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 74%, transparent 100%);
  }
  .home-gallery-item {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    margin: 0 0 12px;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid rgba(253,251,212,0.10);
    background: var(--surface);
    display: block;
  }
  .home-gallery-item img {
    width: 100%; height: auto; display: block;
    transition: transform 0.4s ease;
  }
  .home-gallery-item:hover img { transform: scale(1.03); }
  /* Empty placeholder state — when src is missing */
  .home-gallery-item.placeholder {
    display: flex; align-items: center; justify-content: center;
    color: var(--ink-muted); font-size: 0.78rem; font-weight: 700;
    letter-spacing: 0.1em; text-transform: uppercase;
    aspect-ratio: 7 / 12;
  }
  @media (max-width: 900px) {
    .home-gallery-track { column-count: 3; }
  }
  @media (max-width: 520px) {
    .home-gallery-section { padding: 64px 24px 48px; }
    .home-gallery-track { column-count: 2; column-gap: 8px; }
    .home-gallery-item { margin-bottom: 8px; }
  }
/* ---- block 29 ---- */
  .risk-modal-overlay {
    position: fixed; inset: 0; z-index: 9000;
    background: rgba(13,11,9,0.75);
    backdrop-filter: blur(6px);
    display: flex; align-items: center; justify-content: center;
    padding: 24px;
    opacity: 0; pointer-events: none;
    transition: opacity 0.4s ease;
  }
  .risk-modal-overlay.open { opacity: 1; pointer-events: all; }
  .risk-modal {
    position: relative;
    background: #15110c;
    border: 1px solid rgba(232,140,40,0.35);
    border-radius: 20px;
    max-width: 560px;
    width: 100%;
    box-shadow: 0 40px 100px rgba(0,0,0,0.25);
    overflow: hidden;
    transform: translateY(20px) scale(0.98);
    transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1), opacity 0.4s ease;
    opacity: 0;
  }
  .risk-modal-overlay.open .risk-modal { transform: translateY(0) scale(1); opacity: 1; }
  .risk-modal-accent {
    background: #0d0b09;
    padding: 32px 36px 28px;
    border-bottom: 1px solid rgba(253,251,212,0.12);
  }
  .risk-modal-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.62rem; font-weight: 800; letter-spacing: 0.22em;
    text-transform: uppercase; color: #C05800;
    margin-bottom: 10px;
  }
  .risk-modal-headline {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1.2rem, 3vw, 1.55rem);
    font-weight: 700; line-height: 1.3; letter-spacing: -0.01em;
    color: #FDFBD4; margin: 0;
  }
  .risk-modal-headline em { font-style: italic; color: var(--orange); }
  .risk-modal-body { padding: 28px 36px 32px; }
  .risk-modal-stats {
    display: flex; flex-direction: column; gap: 0;
    border: 1px solid rgba(253,251,212,0.12);
    border-radius: 12px; overflow: hidden;
    margin-bottom: 22px;
  }
  .risk-modal-stat {
    display: flex; align-items: center; gap: 16px;
    padding: 14px 18px;
    border-bottom: 1px solid rgba(253,251,212,0.08);
  }
  .risk-modal-stat:last-child { border-bottom: none; }
  .risk-modal-stat-num {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1rem, 3.5vw, 1.5rem);
    font-weight: 700; font-style: italic;
    color: #C05800; white-space: normal; min-width: 90px; max-width: 120px;
    letter-spacing: -0.02em; line-height: 1.1;
  }
  .risk-modal-stat-text {
    font-family: 'Manrope', sans-serif;
    font-size: 0.86rem; font-weight: 600; line-height: 1.45;
    color: rgba(253,251,212,0.72);
  }
  .risk-modal-bridge {
    font-family: 'Manrope', sans-serif; font-size: 0.96rem; line-height: 1.6;
    color: rgba(253,251,212,0.85); text-align: center; margin: 0 0 22px;
  }
  .risk-modal-bridge strong { color: #FDFBD4; }
  .risk-modal-btn-primary {
    display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%;
    background: var(--orange); color: #FDFBD4;
    font-family: 'Manrope', sans-serif; font-size: 0.95rem;
    font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase;
    padding: 16px 24px; border-radius: 10px; text-decoration: none;
    box-shadow: 0 10px 28px rgba(192,88,0,0.35); transition: background 0.15s, transform 0.15s;
  }
  .risk-modal-btn-primary:hover { background: #713600; transform: translateY(-1px); }
  .risk-modal-sublinks { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 16px; }
  .risk-modal-sublinks a { font-family: 'Manrope', sans-serif; font-size: 0.8rem; font-weight: 700; color: var(--orange); text-decoration: none; letter-spacing: 0.02em; }
  .risk-modal-sublinks a:hover { color: #e07a1f; }
  .risk-modal-sublinks button { font-family: 'Manrope', sans-serif; font-size: 0.8rem; font-weight: 600; color: rgba(253,251,212,0.45); cursor: pointer; background: none; border: none; padding: 0; transition: color 0.15s; }
  .risk-modal-sublinks button:hover { color: rgba(253,251,212,0.8); }
  .risk-modal-close {
    position: absolute; top: 14px; right: 14px;
    width: 36px; height: 36px; border-radius: 50%;
    background: rgba(253,251,212,0.15); border: 1px solid rgba(253,251,212,0.25);
    color: rgba(253,251,212,0.8); font-size: 1rem; line-height: 1;
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; transition: background 0.15s;
  }
  .risk-modal-close:hover { background: rgba(253,251,212,0.25); }
  @media (max-width: 540px) {
    .risk-modal-overlay { padding: 16px; }
    .risk-modal-accent { padding: 26px 22px 20px; }
    .risk-modal-body { padding: 22px 22px 26px; }
    .risk-modal-stat-num { min-width: 78px; }
    .risk-modal-sublinks { flex-direction: column; gap: 14px; align-items: stretch; text-align: center; }
  }
/* ---- block 30 ---- */
  .wdop-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; max-width:920px; margin:0 auto; }
  @media (max-width:680px){ .wdop-grid { grid-template-columns:1fr; } }
  .wdop-card { background:#17120c; border:1px solid rgba(253,251,212,0.12); border-top:3px solid var(--orange); border-radius:16px; padding:clamp(28px,4vw,42px) 24px; box-shadow:0 12px 30px rgba(120,90,20,0.10); transition:transform 0.18s ease, box-shadow 0.18s ease; }
  .wdop-card:hover { transform:translateY(-5px); box-shadow:0 22px 46px rgba(192,88,0,0.18); }
  .wdop-num { font-family:'Manrope',sans-serif; font-weight:900; font-size:clamp(2.8rem,6vw,4.8rem); line-height:0.9; letter-spacing:-0.035em; color:var(--orange); }
  .wdop-label { font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:rgba(253,251,212,0.72); margin-top:14px; line-height:1.45; }
/* ---- block 31 ---- */
  .home-pricing { width:100vw; box-sizing:border-box; background:#0d0b09; border-top:1px solid rgba(253,251,212,0.10); border-bottom:1px solid rgba(253,251,212,0.10); padding:clamp(52px,7vw,84px) 24px; }
  .home-pricing-inner { max-width:1120px; margin:0 auto; }
  .home-pricing .section-label { font-size:0.66rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--orange); margin-bottom:12px; display:flex; align-items:center; gap:10px; }
  .home-pricing .section-label::before { content:''; display:block; width:20px; height:2px; background:var(--orange); }
  .home-pricing .section-heading { font-family:'Libre Baskerville',serif; font-size:clamp(1.8rem,3vw,2.4rem); font-weight:700; letter-spacing:-0.02em; line-height:1.15; color:#FDFBD4; margin:0 0 8px; }
  .home-pricing .section-heading em { font-style:italic; color:var(--orange); }
  .home-pricing .section-sub { font-size:0.95rem; line-height:1.7; color:rgba(253,251,212,0.72); margin:0 0 16px; max-width:640px; }
  .home-pricing-grid { display:flex; gap:12px; align-items:stretch; margin-top:32px; }
  .home-pricing .product-card { flex:1; background:#17120c; border:1px solid rgba(253,251,212,0.12); border-radius:14px; padding:28px 24px; display:flex; flex-direction:column; position:relative; transition:border-color 0.2s, box-shadow 0.2s; }
  .home-pricing .product-card:hover { border-color:rgba(192,88,0,0.5); }
  .home-pricing .product-card.featured { border-color:var(--orange); box-shadow:0 0 0 3px rgba(192,88,0,0.18), 0 4px 24px rgba(192,88,0,0.2); background:rgba(192,88,0,0.10); }
  .home-pricing .product-badge { position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:var(--orange); color:#FDFBD4; font-size:0.62rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; padding:4px 12px; border-radius:20px; white-space:nowrap; }
  .home-pricing .product-label { font-size:0.72rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:rgba(253,251,212,0.5); margin-bottom:12px; }
  .home-pricing .product-price { font-family:'Manrope',sans-serif; font-size:2.6rem; font-weight:800; color:#FDFBD4; line-height:1; margin-bottom:4px; }
  .home-pricing .product-price sup { font-size:1.1rem; font-weight:700; vertical-align:super; }
  .home-pricing .product-note { font-size:0.75rem; color:rgba(253,251,212,0.5); margin-bottom:20px; }
  .home-pricing .product-features { list-style:none; font-size:0.82rem; color:rgba(253,251,212,0.7); line-height:2; flex:1; margin:0 0 24px; padding:16px 0 0; border-top:1px solid rgba(253,251,212,0.12); }
  .home-pricing .product-features li { padding-left:1.4em; position:relative; }
  .home-pricing .product-features li::before { content:'✓'; position:absolute; left:0; color:var(--orange); font-weight:700; }
  .home-pricing .product-btn { display:block; text-align:center; padding:14px; border-radius:8px; font-family:'Manrope',sans-serif; font-size:0.88rem; font-weight:700; letter-spacing:0.04em; text-decoration:none; transition:background 0.15s, transform 0.15s; background:rgba(192,88,0,0.12); color:#FDFBD4; border:1px solid rgba(192,88,0,0.4); }
  .home-pricing .product-btn:hover { background:rgba(192,88,0,0.24); transform:translateY(-1px); }
  .home-pricing .product-btn-primary { background:var(--orange); color:#FDFBD4; border:none; }
  .home-pricing .product-btn-primary:hover { background:#713600; }
  .home-price-compare-wrap { max-width:720px; margin:clamp(28px,4vw,44px) auto 0; text-align:center; }
  .home-price-compare-kicker { display:inline-flex; align-items:center; gap:6px; font-family:'Manrope',sans-serif; font-size:0.62rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:var(--orange); margin-bottom:10px; }
  .home-price-compare-title { font-family:'Libre Baskerville',serif; font-size:clamp(1.4rem,3vw,2rem); font-weight:700; color:#FDFBD4; line-height:1.2; margin-bottom:22px; }
  .home-price-compare-title em { font-style:italic; color:var(--orange); }
  .home-price-compare-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; text-align:left; }
  @media (max-width:640px) { .home-price-compare-grid { grid-template-columns:1fr; } }
  .home-price-compare-col { position:relative; background:rgba(253,251,212,0.04); border:1px solid rgba(253,251,212,0.14); border-radius:16px; padding:22px 24px; }
  .home-price-compare-col.home-price-compare-us { background:linear-gradient(135deg, rgba(192,88,0,0.22) 0%, rgba(192,88,0,0.05) 100%); border:1.5px solid var(--orange); box-shadow:0 14px 36px rgba(192,88,0,0.22); }
  .home-price-compare-badge { position:absolute; top:-13px; right:20px; background:var(--orange); color:#FDFBD4; font-family:'Manrope',sans-serif; font-size:0.62rem; font-weight:800; letter-spacing:0.1em; text-transform:uppercase; padding:5px 12px; border-radius:50px; box-shadow:0 6px 16px rgba(192,88,0,0.4); }
  .home-price-compare-label { font-family:'Manrope',sans-serif; font-size:0.85rem; font-weight:800; letter-spacing:0.02em; color:rgba(253,251,212,0.6); margin-bottom:16px; }
  .home-price-compare-col.home-price-compare-us .home-price-compare-label { color:#FDFBD4; }
  .home-price-compare-line { display:flex; align-items:center; justify-content:space-between; font-family:'Manrope',sans-serif; font-size:0.9rem; color:rgba(253,251,212,0.72); padding:8px 0; border-bottom:1px solid rgba(253,251,212,0.10); }
  .home-price-compare-free { color:var(--orange); font-weight:800; }
  .home-price-compare-total { display:flex; align-items:center; justify-content:space-between; font-family:'Manrope',sans-serif; font-size:1.1rem; font-weight:800; color:#FDFBD4; padding-top:14px; margin-top:4px; }
  .home-price-compare-callout { font-family:'Manrope',sans-serif; font-size:0.95rem; line-height:1.6; color:rgba(253,251,212,0.78); max-width:560px; margin:26px auto 0; }
  .home-price-compare-callout strong { color:#FDFBD4; }
  @media (max-width:860px) {
    .home-pricing-grid { flex-wrap:wrap; }
    .home-pricing .product-card { flex:0 0 calc(50% - 6px); }
  }
  @media (max-width:600px) {
    .home-pricing-grid { flex-wrap:nowrap; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; padding:16px 0 12px; gap:12px; }
    .home-pricing-grid::-webkit-scrollbar { display:none; }
    .home-pricing .product-card { flex:0 0 80vw; scroll-snap-align:center; }
  }
/* ---- block 32 ---- */
  :root { --cream-bg:#FBF6E9; --cream-ink:#2A1A0B; --cream-body:#5A4632; --cream-orange:#A84D00; --cream-line:rgba(56,36,13,0.12); }
  /* FAQ */
  #faq { background:var(--cream-bg) !important; border-color:var(--cream-line) !important; }
  #faq h2 { color:var(--cream-ink) !important; }
  #faq .hp-acc { background:#fff !important; border-color:var(--cream-line) !important; box-shadow:0 4px 14px rgba(56,36,13,0.06); }
  #faq .hp-acc-sum { color:var(--cream-ink) !important; }
  #faq .hp-acc-body { color:var(--cream-body) !important; }
  #faq .hp-acc-chev { color:var(--cream-orange) !important; }
  #faq [style*="color:var(--orange)"] { color:var(--cream-orange) !important; }
/* ---- block 33 ---- */
  .stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; max-width:1040px; margin:0 auto; }
  @media (max-width:680px){ .stats-grid { grid-template-columns:repeat(2,1fr); } }
  .stats-grid > div { display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; min-height:clamp(160px,20vw,220px); background:#17120c; border:1px solid rgba(192,88,0,0.22); border-top:3px solid var(--orange); border-radius:16px; padding:clamp(26px,3.5vw,42px) 20px; box-shadow:0 12px 30px rgba(0,0,0,0.25); transition:transform 0.18s ease, box-shadow 0.18s ease; }
  .stats-grid > div:hover { transform:translateY(-5px); box-shadow:0 24px 50px rgba(192,88,0,0.28); }
  .stat-num { font-family:'Manrope',sans-serif; font-weight:900; font-size:clamp(2.6rem,5.6vw,4.6rem); line-height:0.9; letter-spacing:-0.035em; color:var(--orange); }
  .stat-label { display:flex; align-items:flex-start; justify-content:center; min-height:3.1rem; font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:rgba(253,251,212,0.62); margin-top:14px; line-height:1.45; }
/* ---- block 34 ---- */
  .wsrp { width:100vw; box-sizing:border-box; background:linear-gradient(180deg,#160a08 0%,#0d0b09 100%); border-top:1px solid rgba(253,251,212,0.10); border-bottom:1px solid rgba(253,251,212,0.10); }
  .wsrp-media { position:relative; overflow:hidden; line-height:0; height:100vh; }
  .wsrp-slide { position:absolute; inset:0; opacity:0; transition:opacity 1.2s ease; background-size:cover; background-position:center; background-repeat:no-repeat; background-attachment:fixed; }
  .wsrp-slide.active { opacity:1; }
  @media (max-width:900px), (hover:none) {
    .wsrp-slide { background-attachment:scroll; }
  }
  .wsrp-grad { position:absolute; inset:0; background:linear-gradient(to top, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.18) 55%, rgba(0,0,0,0) 100%); }
  .wsrp-badge { position:absolute; top:24px; left:24px; display:inline-flex; align-items:center; gap:7px; background:rgba(13,11,9,0.82); border:1px solid rgba(192,88,0,0.5); color:#FDFBD4; font-family:'Manrope',sans-serif; font-size:0.68rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; padding:8px 14px; border-radius:50px; }
  .wsrp-cap { position:absolute; bottom:0; left:0; right:0; padding:32px 28px; line-height:1.5; }
  .wsrp-cap-eyebrow { font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; color:rgba(253,251,212,0.6); margin:0 0 6px; }
  .wsrp-cap-line { font-family:'Libre Baskerville',serif; font-size:clamp(0.98rem,1.6vw,1.2rem); font-weight:400; font-style:italic; color:#FDFBD4; margin:0; }
  .wsrp-copy { max-width:760px; margin:0 auto; padding:clamp(52px,7vw,90px) 24px; text-align:center; }
  .wsrp-copy > div:first-child { justify-content:center; }
  @media (max-width:700px) {
    .wsrp-media { height:auto; aspect-ratio:1 / 1; }
  }
/* ---- block 35 ---- */
  .cleo-band {
    width:100vw; box-sizing:border-box; position:relative;
    height:100vh;
    background-image:url('../images/Cleo/Cleo.jpg');
    background-image:-webkit-image-set(url('../images/Cleo/Cleo.webp') type('image/webp'), url('../images/Cleo/Cleo.jpg') type('image/jpeg'));
    background-image:image-set(url('../images/Cleo/Cleo.webp') type('image/webp'), url('../images/Cleo/Cleo.jpg') type('image/jpeg'));
    background-size:cover;
    background-position:center 30%;
    background-repeat:no-repeat;
    background-attachment:fixed;
  }
  @media (max-width:900px), (hover:none) {
    .cleo-band { background-attachment:scroll; }
  }
  .cleo-band::before {
    content:''; position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.6) 100%);
  }
  .cleo-band-text {
    position:absolute; inset:0; z-index:1;
    display:flex; align-items:flex-end; justify-content:center;
    text-align:center; padding:0 24px clamp(44px,7vw,80px);
  }
  .cleo-band-text h2 {
    font-family:'Libre Baskerville',serif; font-weight:700; font-style:italic;
    font-size:clamp(1.6rem,4vw,2.8rem); line-height:1.25;
    color:#FDFBD4; margin:0; max-width:20ch;
    text-shadow:0 2px 18px rgba(0,0,0,0.7);
  }
  .cleo-band-link {
    display:inline-flex; align-items:center; gap:8px; margin-top:18px;
    font-family:'Manrope',sans-serif; font-size:0.85rem; font-weight:700; letter-spacing:0.04em; text-transform:uppercase;
    color:#FDFBD4; text-decoration:none; border-bottom:1px solid rgba(253,251,212,0.5); padding-bottom:3px;
    text-shadow:0 2px 12px rgba(0,0,0,0.7);
  }
  .cleo-band-link:hover { border-color:#FDFBD4; }
/* ---- block 36 ---- */
      .vet-logo-wall img { height:120px !important; width:auto; max-width:100%; }
      @media (max-width:760px){
        .vet-logo-wall { flex-direction:column !important; align-items:center; gap:14px !important; }
        .vet-logo-wall > span { width:100%; max-width:340px; box-sizing:border-box; }
        .vet-logo-wall img { height:110px !important; }
      }
    
/* ---- block 37 ---- */
      .vet-review-row { display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; margin:28px -24px 0; padding:0 24px 6px; }
      .vet-review-row::-webkit-scrollbar { display:none; }
      .vet-review-card { flex:0 0 85%; max-width:420px; scroll-snap-align:center; box-sizing:border-box; background:rgba(253,251,212,0.03); border:1px solid rgba(253,251,212,0.12); border-radius:16px; padding:26px 26px; display:flex; flex-direction:column; gap:14px; text-align:left; }
      @media (min-width:640px){ .vet-review-card { flex:0 0 460px; } }
      .vet-review-card-photo { width:100%; max-width:150px; border-radius:12px; display:block; }
    
/* ---- block 38 ---- */
  .gear { position:relative; isolation:isolate; width:100vw; box-sizing:border-box; padding:clamp(56px,8vw,96px) 24px; text-align:center;
    background:radial-gradient(ellipse 55% 40% at 50% 0%, rgba(240,128,40,0.18) 0%, transparent 70%), linear-gradient(180deg,#140b07 0%,#0d0907 100%);
    border-top:1px solid rgba(240,144,44,0.25); border-bottom:1px solid rgba(240,144,44,0.25); }
  .gear-inner { max-width:1120px; margin:0 auto; }
  .gear-kicker { display:inline-flex; align-items:center; gap:10px; font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:#f0902c; margin:0 0 14px; }
  .gear-kicker::before, .gear-kicker::after { content:''; width:20px; height:2px; background:#f0902c; }
  .gear h2 { font-family:'Libre Baskerville',serif; font-size:clamp(1.8rem,3.6vw,2.8rem); line-height:1.15; color:#FDFBD4; margin:0 0 12px; }
  .gear h2 em { font-style:italic; color:#f0902c; }
  .gear-sub { font-family:'Manrope',sans-serif; font-size:1rem !important; line-height:1.65; color:rgba(253,251,212,0.75) !important; max-width:560px; margin:0 auto clamp(28px,4vw,40px); }
  .gear-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; text-align:left; }
  .gear-card { display:flex; flex-direction:column; border-radius:16px; overflow:hidden; text-decoration:none;
    background:linear-gradient(165deg,#22160d 0%,#150e09 100%); border:1px solid rgba(240,144,44,0.25);
    box-shadow:0 18px 40px rgba(0,0,0,0.45); transition:transform 0.25s, border-color 0.25s, box-shadow 0.25s; }
  .gear-card:hover { transform:translateY(-6px); border-color:rgba(240,144,44,0.6); box-shadow:0 26px 56px rgba(0,0,0,0.55); }
  .gear-img { display:block; aspect-ratio:1; background:#fff; overflow:hidden; }
  .gear-img img { display:block; width:100%; height:100%; object-fit:cover; transition:transform 0.4s; }
  .gear-card:hover .gear-img img { transform:scale(1.04); }
  .gear-meta { display:flex; flex-direction:column; gap:3px; padding:14px 16px 16px; }
  .gear-type { font-family:'Manrope',sans-serif; font-size:0.64rem; font-weight:800; letter-spacing:0.16em; text-transform:uppercase; color:#f0902c; }
  .gear-name { font-family:'Libre Baskerville',serif; font-size:1rem; font-weight:700; line-height:1.25; color:#FDFBD4; }
  .gear-price { font-family:'Manrope',sans-serif; font-size:0.9rem; font-weight:800; color:#ffcf8a; margin-top:4px; }
  .gear-cta { display:inline-flex; align-items:center; gap:8px; margin-top:clamp(28px,4vw,40px); padding:15px 30px; border-radius:999px; text-decoration:none;
    background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; font-family:'Manrope',sans-serif; font-size:0.86rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase;
    box-shadow:0 14px 34px rgba(192,88,0,0.45); transition:transform 0.18s, filter 0.18s; }
  .gear-cta:hover { transform:translateY(-2px); filter:brightness(1.08); }
  @media (max-width:900px) { .gear-grid { grid-template-columns:1fr 1fr; } }
  @media (max-width:420px) { .gear-meta { padding:12px; } .gear-name { font-size:0.9rem; } }
/* ---- block 39 ---- */
  .gl-lightbox {
    position: fixed; inset: 0; z-index: 9999;
    background: rgba(0,0,0,0.96);
    display: none;
    flex-direction: column;
    overscroll-behavior: contain;
  }
  .gl-lightbox.open { display: flex; }
  .gl-close {
    position: absolute; top: 16px; right: 16px; z-index: 2;
    width: 44px; height: 44px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 50%;
    color: #FDFBD4;
    font-size: 20px; line-height: 1;
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    transition: background 0.15s, transform 0.15s;
  }
  .gl-close:hover { background: rgba(255,255,255,0.16); transform: scale(1.05); }
  .gl-arrow {
    position: absolute; top: 50%; transform: translateY(-50%);
    width: 52px; height: 52px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 50%;
    color: #FDFBD4;
    font-size: 24px; line-height: 1;
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    z-index: 2; transition: background 0.15s, transform 0.15s;
  }
  .gl-arrow:hover { background: rgba(255,255,255,0.18); }
  .gl-arrow-prev { left: 24px; }
  .gl-arrow-next { right: 24px; }
  .gl-arrow:hover.gl-arrow-prev { transform: translateY(-50%) scale(1.05); }
  .gl-arrow:hover.gl-arrow-next { transform: translateY(-50%) scale(1.05); }
  .gl-track {
    flex: 1;
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    align-items: center;
    scroll-behavior: smooth;
  }
  .gl-track::-webkit-scrollbar { display: none; }
  .gl-slide {
    flex: 0 0 100vw;
    height: 100vh;
    scroll-snap-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 64px 12vw;
    box-sizing: border-box;
  }
  .gl-slide img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.5);
  }
  .gl-counter { display: none; }
  .home-gallery-item { cursor: zoom-in; }
  .gl-track.dragging { cursor: grabbing; scroll-behavior: auto; }
  .gl-track.dragging .gl-slide img { pointer-events: none; }
  /* Mobile: swipe still works via touch, but the arrows stay visible too */
  @media (max-width: 700px) {
    .gl-slide { padding: 56px 16px; }
    .gl-arrow { width: 42px; height: 42px; font-size: 18px; }
    .gl-arrow-prev { left: 10px; }
    .gl-arrow-next { right: 10px; }
  }
/* ---- block 40 ---- */
  .reviews-modal {
    position: fixed; inset: 0; z-index: 9998;
    background: #fff;
    display: none;
    flex-direction: column;
  }
  .reviews-modal.open { display: flex; }
  /* Deliberately breaks from the site's warm cream/orange/serif language —
     plain, neutral, platform-style (like a Google/Yelp reviews screen) so
     it reads as independent third-party proof, not more of our own copy. */
  .reviews-modal-head {
    flex: 0 0 auto;
    display: flex; align-items: center; justify-content: space-between;
    padding: 18px 20px;
    border-bottom: 1px solid #e8e8e8;
  }
  .reviews-modal-title {
    font-family: 'Manrope', sans-serif; font-weight: 700;
    font-size: 1.05rem; color: #202124; margin: 0;
  }
  .reviews-modal-close {
    width: 38px; height: 38px;
    background: #202124;
    border: none;
    border-radius: 50%;
    color: #fff;
    font-size: 20px; font-weight: 700; line-height: 1;
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    transition: background 0.15s, transform 0.15s;
  }
  .reviews-modal-close:hover { background: #3c4043; transform: scale(1.05); }
  .reviews-modal-scroll {
    flex: 1; overflow-y: auto; -webkit-overflow-scrolling: touch;
    padding: 24px 20px 40px;
    background: #fafafa;
  }
  .reviews-modal-list {
    display: flex; flex-direction: column; gap: 12px;
    max-width: 640px; margin: 0 auto;
  }
  .reviews-modal-card {
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    padding: 20px 22px;
    text-align: left;
    box-shadow: 0 1px 2px rgba(0,0,0,0.04);
  }
  .reviews-modal-stars { color: #FBBC04; font-size: 0.9rem; letter-spacing: 0.14em; margin-bottom: 10px; }
  .reviews-modal-quote {
    font-family: 'Manrope', sans-serif; font-style: normal;
    font-size: 0.92rem; line-height: 1.65;
    color: #3c4043; margin: 0 0 16px;
  }
  .reviews-modal-person { display: flex; align-items: center; gap: 12px; }
  .reviews-modal-avatar {
    width: 34px; height: 34px; border-radius: 50%; flex-shrink: 0;
    background: #e8eaed; border: none;
    color: #5f6368; font-family: 'Manrope', sans-serif; font-weight: 700; font-size: 0.85rem;
    display: flex; align-items: center; justify-content: center;
  }
  .reviews-modal-name { display: block; font-family: 'Manrope', sans-serif; font-weight: 600; color: #202124; font-size: 0.86rem; }
  .reviews-modal-role { display: block; font-family: 'Manrope', sans-serif; color: #70757a; font-size: 0.76rem; margin-top: 2px; }
  .reviews-modal-loadmore {
    display: block;
    margin: 8px auto 0;
    background: #fff;
    border: 1px solid #dadce0;
    color: #1a73e8;
    font-family: 'Manrope', sans-serif;
    font-size: 0.85rem; font-weight: 600;
    letter-spacing: 0.02em;
    padding: 12px 26px;
    border-radius: 20px;
    cursor: pointer;
    transition: background 0.15s;
  }
  .reviews-modal-loadmore:hover { background: #f8f9fa; }
/* ---- block 41 ---- */
  .home-contact-section {
    width: 100vw;
    box-sizing: border-box;
    background: linear-gradient(180deg,#160a08 0%,#0d0b09 100%);
    border-top: 1px solid rgba(253,251,212,0.08);
    border-bottom: 1px solid rgba(253,251,212,0.08);
    padding: 96px 48px;
    display: flex;
    justify-content: center;
    --ink: #FDFBD4;
    --ink-body: rgba(253,251,212,0.72);
    --ink-muted: rgba(253,251,212,0.55);
    --border-soft: rgba(253,251,212,0.16);
    --surface: rgba(253,251,212,0.04);
    --bg: rgba(253,251,212,0.06);
  }
  .home-contact-inner {
    width: 100%;
    max-width: 720px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
  .home-contact-eyebrow {
    font-family: 'Manrope', sans-serif;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em;
    text-transform: uppercase; color: var(--orange); margin-bottom: 14px;
    display: flex; align-items: center; gap: 10px;
  }
  .home-contact-eyebrow::before { content: ''; display: block; width: 20px; height: 2px; background: var(--orange); }
  .home-contact-title {
    font-family: 'Libre Baskerville', serif;
    font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 700;
    letter-spacing: -0.02em; line-height: 1.15;
    color: var(--ink); margin-bottom: 12px;
  }
  .home-contact-title em { font-style: italic; color: var(--orange); }
  .home-contact-sub {
    font-size: 0.95rem; line-height: 1.7;
    color: var(--ink-body); margin-bottom: 36px; max-width: 540px;
  }
  .home-contact-card {
    background: var(--surface);
    border: 1px solid var(--border-soft);
    border-radius: 12px;
    padding: 36px 32px;
  }
  .home-contact-form .form-row {
    display: grid; grid-template-columns: 1fr 1fr; gap: 14px;
  }
  .home-contact-form .form-group {
    display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px;
  }
  .home-contact-form .form-group.full { grid-column: 1 / -1; }
  .home-contact-form label {
    font-size: 0.72rem; font-weight: 700;
    color: var(--ink-muted); letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  .home-contact-form input,
  .home-contact-form select,
  .home-contact-form textarea {
    font-family: 'Manrope', sans-serif;
    font-size: 0.92rem;
    color: var(--ink);
    background: var(--bg);
    border: 1px solid var(--border-soft);
    border-radius: 8px;
    padding: 12px 14px;
    width: 100%;
    transition: border-color 0.15s, box-shadow 0.15s;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
  }
  .home-contact-form input:focus,
  .home-contact-form select:focus,
  .home-contact-form textarea:focus {
    border-color: var(--orange);
    box-shadow: 0 0 0 3px rgba(192,88,0,0.12);
  }
  .home-contact-form textarea { resize: vertical; min-height: 120px; }
  .home-contact-form select { cursor: pointer; }
  .home-contact-submit {
    display: block; width: 100%; margin-top: 8px;
    background: var(--orange); color: var(--cream);
    font-family: 'Manrope', sans-serif; font-size: 0.9rem;
    font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase;
    padding: 14px 28px;
    border: none; border-radius: 8px;
    cursor: pointer;
    transition: background 0.15s, transform 0.15s;
  }
  .home-contact-submit:hover { background: var(--orange-strong); transform: translateY(-1px); }
  .home-contact-note {
    font-size: 0.78rem; color: var(--ink-muted);
    text-align: center; margin-top: 14px; line-height: 1.6;
  }
  .home-contact-success {
    display: none; text-align: center; padding: 32px 16px;
  }
  .home-contact-success.visible { display: block; }
  .home-contact-success-icon { font-size: 2.4rem; margin-bottom: 12px; }
  .home-contact-success h3 {
    font-family: 'Libre Baskerville', serif; font-size: 1.4rem;
    font-weight: 700; color: var(--ink); margin-bottom: 8px;
  }
  .home-contact-success p {
    font-size: 0.92rem; color: var(--ink-body); line-height: 1.65;
  }
  @media (max-width: 600px) {
    .home-contact-section { padding: 64px 24px; }
    .home-contact-card { padding: 24px 20px; }
    .home-contact-form .form-row { grid-template-columns: 1fr; gap: 0; }
    .home-contact-form input,
    .home-contact-form select,
    .home-contact-form textarea { font-size: 16px; }
  }
/* ---- block 42 ---- */
  /* shared plumbing */
  #reviews, #graduates, .hp-wdot, .sensory-stations, .philosophy-section, .hp-doingpart, .hp-reality, .wsrp-copy,
  #endorsements, .home-gallery-section, .home-cta-final, .home-contact-section,
  #rattlesnake-professionals-section .what-we-do-copy, #what-we-do-section .what-we-do-copy { position:relative; isolation:isolate; }

  /* 1. Reviews — GRAIN + spotlight from above */
  #reviews { background:
      radial-gradient(ellipse 60% 40% at 50% 0%, rgba(232,128,40,0.16) 0%, transparent 70%),
      linear-gradient(180deg,#140c07 0%,#0d0b09 100%) !important; }
  #reviews::before, .hp-doingpart::before, .home-gallery-section::before, .wsrp-copy::before {
    content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; opacity:0.07;
    background-image:url(../"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 0.88 0 0 0 0 0.7 0 0 0 0.9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(../%23n)'/%3E%3C/svg%3E");
  }

  /* 2. Training Day — PLAIN rest */
  #graduates { background:#0b0907 !important; border-color:rgba(232,140,40,0.14) !important; }

  /* 3. We Do One Thing — DIAG lines at the edges + warm glow behind the stat card */
  .hp-wdot { background:
      radial-gradient(ellipse 50% 40% at 30% 45%, rgba(232,128,40,0.16) 0%, transparent 70%),
      linear-gradient(180deg,#1a0e07 0%,#0d0b09 100%) !important;
    border-top:1px solid rgba(232,140,40,0.25) !important; border-bottom:1px solid rgba(232,140,40,0.25) !important; }
  .hp-wdot::before, #what-we-do-section .what-we-do-copy::before {
    content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background:repeating-linear-gradient(135deg, rgba(232,140,40,0.07) 0 1px, transparent 1px 16px);
    -webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 28%,transparent 72%,#000 100%);
            mask-image:linear-gradient(90deg,#000 0%,transparent 28%,transparent 72%,#000 100%);
  }

  /* 4. Rattlesnake Professionals copy — TOPO contour rings + orange accent rule */
  #rattlesnake-professionals-section .what-we-do-copy { background:
      radial-gradient(ellipse 70% 50% at 60% 40%, rgba(232,128,40,0.12) 0%, transparent 70%),
      linear-gradient(180deg,#160c07 0%,#0d0b09 100%) !important; }
  #rattlesnake-professionals-section .what-we-do-copy::before, .sensory-stations::before, #endorsements::before {
    content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background:
      repeating-radial-gradient(circle at 85% 15%, transparent 0 26px, rgba(232,140,40,0.075) 26px 27px),
      repeating-radial-gradient(circle at 10% 95%, transparent 0 34px, rgba(232,140,40,0.06) 34px 35px);
    -webkit-mask-image:radial-gradient(ellipse 60% 60% at 50% 50%, transparent 30%, #000 90%);
            mask-image:radial-gradient(ellipse 60% 60% at 50% 50%, transparent 30%, #000 90%);
  }
  #rattlesnake-professionals-section .what-we-do-copy::after {
    content:''; position:absolute; left:0; top:15%; bottom:15%; width:3px; z-index:-1;
    background:linear-gradient(180deg, transparent, #f0902c, transparent); box-shadow:0 0 14px rgba(240,144,44,0.5);
  }
  @media (max-width:760px){ #rattlesnake-professionals-section .what-we-do-copy::after { left:15%; right:15%; top:0; bottom:auto; width:auto; height:3px; background:linear-gradient(90deg, transparent, #f0902c, transparent); } }

  /* 5. Sensory Stations — TOPO (ranch terrain feel) + glow */
  .sensory-stations { background:
      radial-gradient(ellipse 55% 30% at 50% 0%, rgba(232,128,40,0.14) 0%, transparent 70%),
      linear-gradient(180deg,#140b06 0%,#0d0b09 100%) !important;
    border-top:1px solid rgba(232,140,40,0.25) !important; }

  /* 6. What Our Team Does copy — DIAG (shares rule with We Do One Thing) */
  #what-we-do-section .what-we-do-copy { background:linear-gradient(180deg,#150b06 0%,#0d0b09 100%) !important; }

  /* 7. Philosophy — keeps its diamond outline pattern, adds an ember glow */
  .philosophy-section { background-color:#170f09 !important;
    background-image:
      radial-gradient(ellipse 55% 35% at 50% 0%, rgba(232,128,40,0.15) 0%, transparent 70%),
      url(../"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='32'%3E%3Cpath d='M28 0L56 16L28 32L0 16Z' fill='none' stroke='rgba(232,140,40,0.07)'/%3E%3C/svg%3E") !important;
    background-size:auto, 56px 32px !important; }

  /* 8. Making Santa Clarita safer — GRAIN + low glow */
  .hp-doingpart { background:
      radial-gradient(ellipse 60% 45% at 50% 100%, rgba(232,128,40,0.16) 0%, transparent 70%),
      #0d0b09 !important; }

  /* 9. Rattlesnake reality stats — HAZARD stripes on the edges + red danger glow */
  .hp-reality { background:
      radial-gradient(ellipse 60% 60% at 50% 50%, rgba(170,34,12,0.20) 0%, transparent 70%),
      #0e0907 !important; }
  .hp-reality::before {
    content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background:repeating-linear-gradient(-45deg, rgba(232,140,40,0.13) 0 12px, transparent 12px 24px);
    -webkit-mask-image:linear-gradient(180deg,#000 0,#000 8px,transparent 8px,transparent calc(100% - 8px),#000 calc(100% - 8px));
            mask-image:linear-gradient(180deg,#000 0,#000 8px,transparent 8px,transparent calc(100% - 8px),#000 calc(100% - 8px));
  }

  /* 10. No safe muzzled rattlesnake — GRAIN + red danger glow on the copy */
  .wsrp-copy { background:radial-gradient(ellipse 70% 60% at 50% 30%, rgba(170,34,12,0.16) 0%, transparent 70%); }

  /* 11. Endorsements — TOPO + gold spotlight */
  #endorsements { background:
      radial-gradient(ellipse 55% 40% at 50% 0%, rgba(240,160,60,0.16) 0%, transparent 70%),
      linear-gradient(180deg,#140c07 0%,#0d0b09 100%) !important;
    border-top:1px solid rgba(232,140,40,0.25) !important; }

  /* 12. Gallery — GRAIN, otherwise plain */
  .home-gallery-section { background:#0b0907 !important; }

  /* 13. Final CTA — full EMBER (matches the welcome card + H1 band) */
  .home-cta-final { overflow:hidden; background:
      radial-gradient(ellipse 55% 60% at 50% 35%, rgba(240,128,40,0.26) 0%, rgba(192,88,0,0.08) 45%, transparent 72%),
      linear-gradient(180deg,#1c0e07 0%,#110a06 55%,#0d0b09 100%) !important;
    border-top:1px solid rgba(232,140,40,0.30) !important; border-bottom:1px solid rgba(232,140,40,0.30) !important; }
  .home-cta-final::before {
    content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background-image:
      linear-gradient(135deg, rgba(232,140,40,0.06) 25%, transparent 25%),
      linear-gradient(225deg, rgba(232,140,40,0.06) 25%, transparent 25%),
      linear-gradient(315deg, rgba(232,140,40,0.06) 25%, transparent 25%),
      linear-gradient(45deg,  rgba(232,140,40,0.06) 25%, transparent 25%);
    background-size:56px 56px; background-position:-28px 0, -28px 0, 0 0, 0 0;
    -webkit-mask-image:radial-gradient(ellipse 80% 120% at 40% 50%, transparent 50%, #000 100%);
            mask-image:radial-gradient(ellipse 80% 120% at 40% 50%, transparent 50%, #000 100%);
  }
  .home-cta-final::after {
    content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); z-index:-1; pointer-events:none;
    width:min(720px,80%); height:2px; background:linear-gradient(90deg, transparent, #f0902c 50%, transparent);
    box-shadow:0 0 18px 2px rgba(240,144,44,0.55);
  }

  /* 14. Contact — PLAIN with a soft low glow */
  .home-contact-section { background:
      radial-gradient(ellipse 60% 40% at 50% 100%, rgba(232,128,40,0.10) 0%, transparent 70%),
      #0b0907 !important; }
/* ---- block 43 ---- */
  .hp-wdot {
    background-color:#0d0b09 !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.62) 0%, rgba(20,11,6,0.32) 45%, rgba(13,11,9,0.7) 100%), radial-gradient(ellipse 60% 50% at 30% 50%, rgba(232,128,40,0.18), transparent 70%), url('../images/section-bg/ranch-field.jpg') !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.62) 0%, rgba(20,11,6,0.32) 45%, rgba(13,11,9,0.7) 100%), radial-gradient(ellipse 60% 50% at 30% 50%, rgba(232,128,40,0.18), transparent 70%), -webkit-image-set(url('../images/section-bg/ranch-field.webp') type('image/webp'), url('../images/section-bg/ranch-field.jpg') type('image/jpeg')) !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.62) 0%, rgba(20,11,6,0.32) 45%, rgba(13,11,9,0.7) 100%), radial-gradient(ellipse 60% 50% at 30% 50%, rgba(232,128,40,0.18), transparent 70%), image-set(url('../images/section-bg/ranch-field.webp') type('image/webp'), url('../images/section-bg/ranch-field.jpg') type('image/jpeg')) !important;
    background-size:cover !important; background-position:center 60% !important; background-repeat:no-repeat !important;
  }
  .hp-wdot::before { display:none; }
  /* Reviews — restyled 2026-10-06: no bright top-center glow; even dark-brown base, soft corner glows, faint diagonal pinstripes */
  #reviews { background:
      radial-gradient(ellipse 45% 55% at 0% 100%, rgba(232,128,40,0.12) 0%, transparent 70%),
      radial-gradient(ellipse 45% 55% at 100% 0%, rgba(232,128,40,0.10) 0%, transparent 70%),
      repeating-linear-gradient(135deg, rgba(232,140,40,0.035) 0 1px, transparent 1px 18px),
      linear-gradient(180deg,#160d08 0%,#120a06 50%,#0e0806 100%) !important;
    border-top:1px solid rgba(232,140,40,0.22) !important; border-bottom:1px solid rgba(232,140,40,0.22) !important; }
  #reviews .home-tm-card { background:linear-gradient(160deg,#1d120a 0%,#130c07 100%) !important; }
  #rattlesnake-professionals-section .what-we-do-copy {
    background-color:#0d0b09 !important;
    background-image:linear-gradient(90deg, rgba(13,11,9,0.72) 0%, rgba(13,11,9,0.45) 60%, rgba(13,11,9,0.3) 100%), url('../images/section-bg/rattlesnake-coil.jpg') !important;
    background-image:linear-gradient(90deg, rgba(13,11,9,0.72) 0%, rgba(13,11,9,0.45) 60%, rgba(13,11,9,0.3) 100%), -webkit-image-set(url('../images/section-bg/rattlesnake-coil.webp') type('image/webp'), url('../images/section-bg/rattlesnake-coil.jpg') type('image/jpeg')) !important;
    background-image:linear-gradient(90deg, rgba(13,11,9,0.72) 0%, rgba(13,11,9,0.45) 60%, rgba(13,11,9,0.3) 100%), image-set(url('../images/section-bg/rattlesnake-coil.webp') type('image/webp'), url('../images/section-bg/rattlesnake-coil.jpg') type('image/jpeg')) !important;
    background-size:cover !important; background-position:center !important; background-repeat:no-repeat !important;
  }
  #rattlesnake-professionals-section .what-we-do-copy::before { display:none; }
  .sensory-stations { background:
      radial-gradient(ellipse 70% 35% at 50% 0%, rgba(240,128,40,0.26) 0%, transparent 70%),
      linear-gradient(180deg,#2b1408 0%,#1b0d06 40%,#110906 100%) !important; }
  #what-we-do-section .what-we-do-copy { background:linear-gradient(160deg,#2c180b 0%,#1a0e07 60%,#120a06 100%) !important; }
  .philosophy-section {
    background-color:#0d0b09 !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.62) 0%, rgba(18,10,6,0.35) 50%, rgba(13,11,9,0.7) 100%), url('../images/section-bg/ranch-hills.jpg') !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.62) 0%, rgba(18,10,6,0.35) 50%, rgba(13,11,9,0.7) 100%), -webkit-image-set(url('../images/section-bg/ranch-hills.webp') type('image/webp'), url('../images/section-bg/ranch-hills.jpg') type('image/jpeg')) !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.62) 0%, rgba(18,10,6,0.35) 50%, rgba(13,11,9,0.7) 100%), image-set(url('../images/section-bg/ranch-hills.webp') type('image/webp'), url('../images/section-bg/ranch-hills.jpg') type('image/jpeg')) !important;
    background-size:cover !important; background-position:center 40% !important; background-repeat:no-repeat !important;
  }
  .hp-doingpart {
    background-color:#0d0b09 !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.6) 0%, rgba(13,11,9,0.3) 50%, rgba(13,11,9,0.68) 100%), radial-gradient(ellipse 60% 45% at 50% 100%, rgba(232,128,40,0.18), transparent 70%), url('../images/section-bg/caged-rattlesnakes.jpg') !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.6) 0%, rgba(13,11,9,0.3) 50%, rgba(13,11,9,0.68) 100%), radial-gradient(ellipse 60% 45% at 50% 100%, rgba(232,128,40,0.18), transparent 70%), -webkit-image-set(url('../images/section-bg/caged-rattlesnakes.webp') type('image/webp'), url('../images/section-bg/caged-rattlesnakes.jpg') type('image/jpeg')) !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.6) 0%, rgba(13,11,9,0.3) 50%, rgba(13,11,9,0.68) 100%), radial-gradient(ellipse 60% 45% at 50% 100%, rgba(232,128,40,0.18), transparent 70%), image-set(url('../images/section-bg/caged-rattlesnakes.webp') type('image/webp'), url('../images/section-bg/caged-rattlesnakes.jpg') type('image/jpeg')) !important;
    background-size:cover !important; background-position:center !important; background-repeat:no-repeat !important;
  }
  .hp-doingpart::before { display:none; }
  .hp-doingpart .wdop-card > div:first-child, .hp-doingpart .wdop-num { font-family:'Libre Baskerville', Georgia, serif !important; font-weight:700 !important; letter-spacing:-0.03em !important; white-space:nowrap; }
  .hp-reality { background:
      radial-gradient(ellipse 65% 70% at 50% 50%, rgba(160,26,10,0.38) 0%, rgba(90,14,6,0.15) 50%, transparent 75%),
      linear-gradient(180deg,#160806 0%,#0e0706 100%) !important; }
  .hp-reality::before { background:repeating-linear-gradient(-45deg, rgba(240,144,44,0.22) 0 12px, transparent 12px 24px) !important; }
  .hp-reality .stat-num { font-family:'Libre Baskerville', Georgia, serif !important; font-weight:700 !important; letter-spacing:-0.03em !important; font-size:clamp(1.9rem,3.6vw,3.3rem) !important; line-height:1 !important; white-space:nowrap; }
  @media (max-width:600px) { .hp-reality .stat-num { font-size:clamp(1.5rem,7.2vw,2rem) !important; } }
  #endorsements { background:
      radial-gradient(ellipse 60% 40% at 50% 0%, rgba(240,170,70,0.22) 0%, transparent 70%),
      linear-gradient(160deg,#2e1a0c 0%,#1d1009 50%,#140b07 100%) !important; }
  .home-gallery-section { background:
      radial-gradient(ellipse 70% 40% at 50% 0%, rgba(192,88,0,0.18) 0%, transparent 70%),
      linear-gradient(180deg,#1a0b05 0%,#0d0907 100%) !important; }
  .home-contact-section {
    background-color:#0d0b09 !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.62) 0%, rgba(13,11,9,0.35) 50%, rgba(13,11,9,0.7) 100%), url('../images/section-bg/ranch-road.jpg') !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.62) 0%, rgba(13,11,9,0.35) 50%, rgba(13,11,9,0.7) 100%), -webkit-image-set(url('../images/section-bg/ranch-road.webp') type('image/webp'), url('../images/section-bg/ranch-road.jpg') type('image/jpeg')) !important;
    background-image:linear-gradient(180deg, rgba(13,11,9,0.62) 0%, rgba(13,11,9,0.35) 50%, rgba(13,11,9,0.7) 100%), image-set(url('../images/section-bg/ranch-road.webp') type('image/webp'), url('../images/section-bg/ranch-road.jpg') type('image/jpeg')) !important;
    background-size:cover !important; background-position:center 65% !important; background-repeat:no-repeat !important;
  }
  @media (min-width:1025px) and (hover:hover) {
    .hp-wdot, .philosophy-section, .home-contact-section { background-attachment:fixed !important; }
  }
/* ---- block 44 ---- */
  .home-pricing { position:relative; isolation:isolate; overflow:hidden;
    background:
      radial-gradient(ellipse 55% 35% at 50% 0%, rgba(240,150,50,0.24) 0%, transparent 70%),
      radial-gradient(ellipse 70% 40% at 50% 100%, rgba(150,60,10,0.25) 0%, transparent 70%),
      linear-gradient(180deg,#1b0e07 0%,#0f0906 50%,#0b0806 100%) !important;
    border-top:1px solid rgba(232,140,40,0.35) !important; border-bottom:1px solid rgba(232,140,40,0.35) !important; }
  .home-pricing::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background-image:
      linear-gradient(135deg, rgba(232,140,40,0.07) 25%, transparent 25%),
      linear-gradient(225deg, rgba(232,140,40,0.07) 25%, transparent 25%),
      linear-gradient(315deg, rgba(232,140,40,0.07) 25%, transparent 25%),
      linear-gradient(45deg,  rgba(232,140,40,0.07) 25%, transparent 25%);
    background-size:56px 56px; background-position:-28px 0, -28px 0, 0 0, 0 0;
    -webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%, transparent 40%, #000 100%);
            mask-image:radial-gradient(ellipse 70% 60% at 50% 40%, transparent 40%, #000 100%); }
  .home-pricing::after { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); z-index:-1; pointer-events:none;
    width:min(760px,80%); height:2px; background:linear-gradient(90deg, transparent, #f0902c 50%, transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.55); }
  .home-pricing .section-heading { color:#FDFBD4 !important; font-size:clamp(2rem,3.6vw,2.9rem) !important; }
  .home-pricing .section-sub { color:rgba(253,251,212,0.75) !important; }

  /* The Math comparison */
  .home-price-compare-title { color:#FDFBD4 !important; }
  .home-price-compare-col { background:linear-gradient(160deg, rgba(253,251,212,0.05) 0%, rgba(253,251,212,0.015) 100%) !important;
    border:1px solid rgba(253,251,212,0.14) !important; border-radius:18px !important; box-shadow:0 18px 44px rgba(0,0,0,0.45) !important;
    -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
  .home-price-compare-col.home-price-compare-us { background:linear-gradient(150deg, rgba(240,128,40,0.26) 0%, rgba(120,45,8,0.18) 55%, rgba(20,10,5,0.6) 100%) !important;
    border:1.5px solid #f0902c !important; box-shadow:0 0 0 4px rgba(240,144,44,0.10), 0 22px 54px rgba(192,88,0,0.30) !important; }
  .home-price-compare-col.home-price-compare-us .home-price-compare-total span:last-child { color:#ffb24d; font-size:1.35rem; }
  .home-price-compare-line { border-bottom-color:rgba(253,251,212,0.10) !important; }

  /* Product cards */
  .home-pricing .product-card { background:linear-gradient(165deg,#22160d 0%,#150e09 60%,#110b07 100%) !important;
    border:1px solid rgba(232,140,40,0.22) !important; border-radius:18px !important;
    box-shadow:0 20px 48px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,236,200,0.06) !important; transition:transform 0.25s, box-shadow 0.25s, border-color 0.25s !important; }
  .home-pricing .product-card:hover { transform:translateY(-6px); border-color:rgba(240,144,44,0.6) !important;
    box-shadow:0 28px 60px rgba(0,0,0,0.6), 0 0 0 1px rgba(240,144,44,0.25) !important; }
  .home-pricing .product-card.featured { background:linear-gradient(165deg, rgba(240,128,40,0.28) 0%, #24140a 45%, #140c07 100%) !important;
    border:1.5px solid #f0902c !important;
    box-shadow:0 0 0 4px rgba(240,144,44,0.12), 0 26px 64px rgba(192,88,0,0.35), inset 0 1px 0 rgba(255,236,200,0.12) !important; }
  @media (min-width:861px) { .home-pricing .product-card.featured { transform:translateY(-10px); } .home-pricing .product-card.featured:hover { transform:translateY(-16px); } }
  .home-pricing .product-badge { background:linear-gradient(135deg,#ffb24d,#e06a00) !important; color:#1a0d05 !important; box-shadow:0 6px 18px rgba(240,144,44,0.45); }
  .home-pricing .product-label { color:#f0902c !important; }
  .home-pricing .product-price { background:linear-gradient(180deg,#fff3d6 0%,#ffcf8a 55%,#f0902c 100%); -webkit-background-clip:text; background-clip:text; color:transparent !important;
    font-size:3rem !important; filter:drop-shadow(0 4px 14px rgba(240,144,44,0.25)); }
  .home-pricing .product-note { color:rgba(253,251,212,0.55) !important; }
  .home-pricing .product-features { color:rgba(253,251,212,0.78) !important; border-top-color:rgba(232,140,40,0.18) !important; }
  .home-pricing .product-features li::before { color:#f0902c !important; }
  .home-pricing .product-btn:not(.product-btn-primary) { background:rgba(240,144,44,0.08) !important; color:#FDFBD4 !important; border:1px solid rgba(240,144,44,0.45) !important; }
  .home-pricing .product-btn:not(.product-btn-primary):hover { background:rgba(240,144,44,0.2) !important; }
  .home-pricing .product-btn-primary { background:linear-gradient(135deg,#f08a2c,#c05800) !important; box-shadow:0 12px 28px rgba(192,88,0,0.45); }
  /* Strikethrough list prices (26% SNAKESEASON26 discount, mirrors purchase-training.html) */
  .home-pricing .hp-strike { display:inline-block; margin-right:7px; color:rgba(253,251,212,0.5); font-weight:600; text-decoration:line-through; text-decoration-color:rgba(240,144,44,0.85); text-decoration-thickness:2px; }
  .home-pricing .hp-strike-card { font-size:0.42em; vertical-align:middle; -webkit-text-fill-color:rgba(253,251,212,0.5); }
  .home-pricing .hp-off { color:#f0902c; font-weight:700; }
/* ---- block 45 ---- */
  /* shared premium card */
  html body .hp-wdot .ptr-2col > div:first-child,
  html body .hp-doingpart .wdop-card,
  html body .hp-reality .stats-grid > div,
  html body .philosophy-card,
  html body #endorsements .vet-review-card,
  html body .home-contact-card { border-radius:18px !important; border:1px solid transparent !important; background:linear-gradient(165deg,#22160d 0%,#150e09 100%) padding-box, linear-gradient(140deg, rgba(255,207,138,0.55), rgba(240,144,44,0.18) 45%, rgba(240,144,44,0.05) 65%, rgba(255,178,77,0.35)) border-box !important; box-shadow:0 16px 38px rgba(0,0,0,0.45) !important; transition:transform 0.25s, box-shadow 0.25s; }
  html body .hp-doingpart .wdop-card:hover, html body .hp-reality .stats-grid > div:hover, html body .philosophy-card:hover, html body #endorsements .vet-review-card:hover { transform:translateY(-4px); box-shadow:0 24px 50px rgba(0,0,0,0.55), 0 0 0 1px rgba(240,144,44,0.25) !important; }
  html body .hp-reality .stats-grid > div { background:linear-gradient(165deg,#2a0f08 0%,#150806 100%) padding-box, linear-gradient(140deg, rgba(255,150,90,0.6), rgba(200,60,20,0.2) 50%, rgba(255,120,60,0.4)) border-box !important; }
  /* gold-gradient numbers everywhere they're plain orange */
  html body .hp-wdot .ptr-2col > div:first-child > div[style*="7rem"],
  html body .hp-doingpart .wdop-num,
  html body .hp-reality .stat-num,
  html body .philosophy-num { background:linear-gradient(180deg,#fff3d6 0%,#ffcf8a 55%,#f0902c 100%) !important; -webkit-background-clip:text !important; background-clip:text !important; color:transparent !important; }
  html body .hp-wdot .ptr-2col > div:last-child { border:1px solid rgba(240,144,44,0.4) !important; box-shadow:0 24px 60px rgba(0,0,0,0.55), 0 0 40px rgba(240,144,44,0.12) !important; }

  /* welcome row copy panel (sign photo row) — ember panel */
  html body #welcome-section .what-we-do-copy { position:relative; isolation:isolate;
    background:radial-gradient(ellipse 70% 50% at 40% 60%, rgba(240,128,40,0.18) 0%, transparent 70%), linear-gradient(165deg,#22140b 0%,#140c07 60%,#0f0906 100%) !important; }
  html body #welcome-section .what-we-do-copy::before { content:''; position:absolute; right:0; top:15%; bottom:15%; width:3px; background:linear-gradient(180deg, transparent, #f0902c, transparent); box-shadow:0 0 14px rgba(240,144,44,0.5); }
  html body #welcome-section .what-we-do-subheading:first-of-type { color:#FDFBD4 !important; }

  /* philosophy */
  html body .philosophy-card-title { color:#FDFBD4 !important; font-family:'Libre Baskerville',serif !important; }
  html body .philosophy-more-btn { border-radius:999px !important; border:1px solid rgba(240,144,44,0.5) !important; background:rgba(240,144,44,0.08) !important; color:#FDFBD4 !important; }

  /* photos: rounded + orange edge glow */
  html body .home-grad-photo, html body .home-gallery-item { border-radius:14px !important; overflow:hidden; border:1px solid rgba(240,144,44,0.3) !important; box-shadow:0 14px 30px rgba(0,0,0,0.45) !important; }
  html body .home-grad-photo img, html body .home-gallery-item img { transition:transform 0.35s; }
  html body .home-grad-photo:hover img, html body .home-gallery-item:hover img { transform:scale(1.04); }

  /* endorsements logo tiles */
  html body #endorsements .vet-logo-wall > span, html body #endorsements .vet-logo-wall > a { border-radius:16px !important; box-shadow:0 0 0 3px rgba(240,144,44,0.35), 0 14px 30px rgba(0,0,0,0.45) !important; overflow:hidden; }
  html body #endorsements .vet-review-card-photo { border-radius:12px !important; border:2px solid rgba(240,144,44,0.5) !important; }

  /* contact form */
  html body .home-contact-card { box-shadow:0 0 0 4px rgba(240,144,44,0.06), 0 26px 60px rgba(0,0,0,0.55) !important; }
  html body .home-contact-form input, html body .home-contact-form select, html body .home-contact-form textarea { border-radius:10px !important; }
  html body .home-contact-form input:focus, html body .home-contact-form select:focus, html body .home-contact-form textarea:focus { border-color:#f0902c !important; box-shadow:0 0 0 3px rgba(240,144,44,0.18) !important; outline:none; }
  html body .home-contact-submit { border-radius:999px !important; background:linear-gradient(135deg,#f08a2c,#c05800) !important; box-shadow:0 12px 28px rgba(192,88,0,0.45) !important; text-transform:uppercase; letter-spacing:0.05em; font-weight:800 !important; }

  /* hero pitch (illustration band) — framed */
  html body .hero-pitch { border-top:1px solid rgba(240,144,44,0.3) !important; border-bottom:1px solid rgba(240,144,44,0.3) !important; }
  html body .hero-bubble { border-radius:999px !important; }

  /* buttons: square-ish orange/outline buttons → pills */
  html body .home-grad-seeall, html body .home-tm-seeall, html body .gl-seemore, html body .home-gallery-section button, html body .home-gallery-section a[class*="more"],
  html body .hp-wdot a[href^="#endorsements"], html body .hp-wdot a[href*="purchase-training"], html body .hp-wdot a[href*="at-your-location"],
  html body .hp-reality a, html body .hero-pitch a, html body .wsrp-copy a, html body .home-cta-final a, html body #faq a[href*="purchase-training"],
  html body .cleo-band-link { border-radius:999px !important; }
  html body .hp-wdot a[href^="#endorsements"], html body .hp-wdot a[href*="purchase-training"], html body .wsrp-copy a[href*="safety"], html body #faq a[href*="purchase-training"] {
    background:linear-gradient(135deg,#f08a2c,#c05800) !important; box-shadow:0 12px 28px rgba(192,88,0,0.45) !important; }
  html body .home-cta-final .home-cta-btn { border-radius:999px !important; }
  html body .home-cta-final .home-cta-btn-primary { background:linear-gradient(135deg,#f08a2c,#c05800) !important; box-shadow:0 12px 28px rgba(192,88,0,0.45) !important; }
  html body #galleryMoreWrap button { border-radius:999px !important; }
/* ---- block 46 ---- */
  html body .ult { background-color:#0f0906 !important;
    background-image:
      radial-gradient(ellipse 55% 60% at 50% 42%, rgba(13,9,7,0.7) 0%, rgba(13,9,7,0.45) 55%, rgba(13,9,7,0.2) 100%),
      linear-gradient(180deg, rgba(13,9,7,0.55) 0%, transparent 25%, transparent 75%, rgba(13,9,7,0.75) 100%),
      image-set(url('../images/hero/Rattlesnakes/Hero-Rattlesnake-Portrait.webp') type('image/webp'), url('../images/hero/Rattlesnakes/Hero-Rattlesnake-Portrait.jpeg') type('image/jpeg')) !important; /* 2026-10-09: back to the ORIGINAL portrait — the section-bg/h1-rattlesnake crop was over-compressed */
    background-size:cover !important; background-position:center 45% !important; } /* 2026-10-09: H1 background → rattlesnake portrait (was Still-26 training photo) */
  html body .ult::after { opacity:0.6; }
  html body .ult-title { max-width:none !important; margin:0 auto !important; text-shadow:none !important; font-size:inherit !important; line-height:1 !important; }
  .ult-title > span { display:block; }
  .ult-pre { display:flex !important; align-items:center; justify-content:center; gap:14px; font-family:'Manrope',sans-serif; font-size:clamp(0.78rem,1.4vw,0.95rem); font-weight:800; letter-spacing:0.34em; text-transform:uppercase; color:#ffcf8a; }
  .ult-pre::before, .ult-pre::after { content:''; width:clamp(28px,6vw,64px); height:1px; background:linear-gradient(90deg, transparent, #f0902c); }
  .ult-pre::after { transform:scaleX(-1); }
  html body .ult-title .ult-gold { font-family:'Libre Baskerville',serif; font-style:italic; font-weight:700; font-size:clamp(3.6rem,11vw,8.2rem) !important; line-height:1.02 !important; letter-spacing:-0.035em; margin:6px 0 2px; padding:0 0.08em 0.06em !important;
    filter:drop-shadow(0 8px 40px rgba(240,144,44,0.45)) !important; }
  .ult-main { font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(1.45rem,3.2vw,2.5rem); line-height:1.2; letter-spacing:-0.015em; color:#FDFBD4; max-width:22ch; margin:0 auto; text-wrap:balance; text-shadow:0 4px 24px rgba(0,0,0,0.6); }
  html body .ult-loc { display:inline-flex !important; align-items:center; gap:8px; margin:22px auto 0 !important; padding:9px 18px 9px 14px; border-radius:999px; width:max-content; max-width:100%;
    background:rgba(13,9,7,0.55); border:1px solid rgba(240,144,44,0.5); box-shadow:0 0 0 4px rgba(240,144,44,0.08);
    font-family:'Manrope',sans-serif !important; font-size:clamp(0.7rem,1.3vw,0.82rem) !important; font-weight:800; letter-spacing:0.16em !important; text-transform:uppercase; color:#FDFBD4 !important; line-height:1.3 !important; }
  .ult-loc svg { flex:none; width:16px; height:16px; fill:none; stroke:#f0902c; stroke-width:2; }
  .ult-orn { display:flex; align-items:center; justify-content:center; gap:12px; margin:clamp(22px,3vw,30px) auto 0; }
  .ult-orn span { display:block; width:clamp(50px,10vw,110px); height:1px; background:linear-gradient(90deg, transparent, rgba(240,144,44,0.8)); }
  .ult-orn span:last-child { transform:scaleX(-1); }
  .ult-orn i { display:block; width:9px; height:9px; transform:rotate(45deg); background:linear-gradient(135deg,#ffcf8a,#f0902c); box-shadow:0 0 12px #f0902c; }
  html body .ult-sub { margin-top:18px !important; max-width:600px !important; font-size:clamp(1.02rem,1.6vw,1.18rem) !important; color:rgba(253,251,212,0.85) !important; text-shadow:0 2px 16px rgba(0,0,0,0.6); }
  html body .ult-sub strong { color:#ffcf8a !important; }
  @media (max-width:560px) {
    .ult-pre { letter-spacing:0.26em; }
    html body .ult-loc { letter-spacing:0.1em !important; white-space:normal; text-align:left; border-radius:14px; }
  }
/* ---- block 47 ---- */
  html body .hp-wdot h2, html body .hp-wdot p, html body .hp-wdot > div > div:not([class]),
  html body .philosophy-head, html body .hp-doingpart h2, html body .hp-doingpart p, html body .hp-doingpart div[style*="letter-spacing"],
  html body .home-contact-head, html body .home-contact-title, html body .home-contact-sub, html body .home-contact-eyebrow,
  html body #rattlesnake-professionals-section .what-we-do-copy, html body .ult-kicker, html body .ult-title, html body .ult-sub {
    text-shadow:0 2px 6px rgba(0,0,0,0.75), 0 4px 28px rgba(0,0,0,0.7); }
/* ---- block 48 ---- */
  html body #rattlesnake-professionals-section .what-we-do-copy {
    background:radial-gradient(ellipse 70% 50% at 40% 45%, rgba(240,128,40,0.16) 0%, transparent 70%), linear-gradient(165deg,#22140b 0%,#150c07 60%,#0f0906 100%) !important;
    background-size:auto !important; }
  html body .hp-wdot {
    background:radial-gradient(ellipse 50% 40% at 30% 40%, rgba(240,128,40,0.16) 0%, transparent 70%), radial-gradient(ellipse 50% 40% at 80% 75%, rgba(192,88,0,0.12) 0%, transparent 70%), linear-gradient(180deg,#1a0e07 0%,#110a06 100%) !important;
    background-size:auto !important; background-attachment:scroll !important; }
  html body .home-contact-section {
    background:radial-gradient(ellipse 55% 40% at 50% 0%, rgba(240,128,40,0.16) 0%, transparent 70%), radial-gradient(ellipse 60% 40% at 50% 100%, rgba(192,88,0,0.12) 0%, transparent 70%), linear-gradient(180deg,#140b07 0%,#0f0906 100%) !important;
    background-size:auto !important; background-attachment:scroll !important; }
/* ---- block 49 ---- */
  html body .what-we-do-section { background:transparent !important; }
  html body .what-we-do-row { position:relative; isolation:isolate; box-sizing:border-box;
    background:radial-gradient(ellipse 45% 60% at 25% 50%, rgba(240,128,40,0.14) 0%, transparent 70%), radial-gradient(ellipse 45% 60% at 80% 50%, rgba(192,88,0,0.10) 0%, transparent 70%), linear-gradient(180deg,#140b07 0%,#110906 100%) !important;
    border-bottom:1px solid rgba(240,144,44,0.18) !important; }
  /* framed photo */
  html body .what-we-do-row .what-we-do-img { position:relative; overflow:hidden; border-radius:22px;
    box-shadow:0 0 0 1px rgba(255,207,138,0.45), 0 0 0 5px rgba(240,144,44,0.10), 0 30px 70px rgba(0,0,0,0.55) !important; }
  html body .what-we-do-row .what-we-do-img::after { content:''; position:absolute; inset:0; border-radius:inherit; pointer-events:none; z-index:3;
    box-shadow:inset 0 0 0 1px rgba(255,236,200,0.12), inset 0 -60px 80px -40px rgba(0,0,0,0.35); }
  html body .what-we-do-row .what-we-do-img img { transition:transform 0.6s ease; }
  html body .what-we-do-row .what-we-do-img:hover img { transform:scale(1.03); }
  /* the sign photo should show whole, not cropped */
  /* copy as a premium card */
  html body .what-we-do-row .what-we-do-copy { border-radius:22px !important; border:1px solid transparent !important;
    background:radial-gradient(ellipse 80% 60% at 30% 30%, rgba(240,128,40,0.12) 0%, transparent 70%) padding-box, linear-gradient(165deg,#22160d 0%,#150e09 60%,#100a06 100%) padding-box, linear-gradient(140deg, rgba(255,207,138,0.6), rgba(240,144,44,0.18) 45%, rgba(240,144,44,0.06) 65%, rgba(255,178,77,0.4)) border-box !important;
    box-shadow:0 26px 60px rgba(0,0,0,0.5) !important; }
  html body .what-we-do-row .what-we-do-copy::after, html body #welcome-section .what-we-do-copy::before { display:none !important; }
  html body .what-we-do-row .what-we-do-eyebrow { display:inline-flex !important; align-self:flex-start; padding:6px 14px; border-radius:999px; background:rgba(240,144,44,0.10); border:1px solid rgba(240,144,44,0.4); }
  html body .what-we-do-row .what-we-do-eyebrow span { display:none !important; }
  html body .what-we-do-row .what-we-do-subheading:first-of-type { position:relative; padding-bottom:16px; }
  html body .what-we-do-row .what-we-do-subheading:first-of-type::after { content:''; position:absolute; left:0; bottom:0; width:64px; height:3px; border-radius:3px; background:linear-gradient(90deg,#f0902c,#ffcf8a); box-shadow:0 0 12px rgba(240,144,44,0.5); }
  /* text CTAs → pill buttons */
  html body .what-we-do-row .what-we-do-cta a, html body #meet-our-trainer-section .what-we-do-copy > button {
    border:1px solid rgba(240,144,44,0.55) !important; border-radius:999px !important; padding:11px 20px !important; background:rgba(240,144,44,0.08) !important; color:#FDFBD4 !important;
    text-decoration:none !important; transition:background 0.18s, transform 0.18s !important; }
  html body .what-we-do-row .what-we-do-cta a:hover, html body #meet-our-trainer-section .what-we-do-copy > button:hover { background:rgba(240,144,44,0.2) !important; transform:translateY(-2px); }

  @media (min-width:761px) {
    html body .what-we-do-row { padding:clamp(24px,3vw,48px) !important; column-gap:clamp(22px,2.6vw,40px) !important; }
    html body .what-we-do-row .what-we-do-copy { padding:clamp(32px,3.6vw,56px) !important; }
  }
  @media (max-width:760px) {
    html body .what-we-do-row { padding:14px 14px 22px !important; row-gap:14px !important; }
    html body .what-we-do-row .what-we-do-img { border-radius:18px; }
    html body .what-we-do-row .what-we-do-copy { border-radius:18px !important; padding:24px 20px !important; }
  }
/* ---- block 50 ---- */
  html body .hp-wdot .ptr-2col > div:first-child > div[style*="7rem"],
  html body .hp-doingpart .wdop-num, html body .hp-reality .stat-num, html body .philosophy-num, html body .ult-gold, html body .ult-num {
    text-shadow:none !important; filter:drop-shadow(0 0 22px rgba(240,144,44,0.45)) drop-shadow(0 4px 14px rgba(0,0,0,0.5)) !important; }
/* ---- block 51 ---- */
  html body .hp-wdot .ptr-2col > div:first-child > div[style*="7rem"] {
    background:linear-gradient(180deg,#ffd29a 0%,#f7962f 45%,#e06a00 100%) !important; -webkit-background-clip:text !important; background-clip:text !important;
    filter:drop-shadow(0 0 26px rgba(240,128,40,0.6)) drop-shadow(0 4px 14px rgba(0,0,0,0.5)) !important; }
/* ---- block 52 ---- */
  /* shared section head treatment */
  html body .home-tm-eyebrow, html body .home-grad-eyebrow { display:inline-flex !important; align-items:center; gap:8px; padding:7px 16px; border-radius:999px;
    background:rgba(240,144,44,0.10); border:1px solid rgba(240,144,44,0.45); color:#ffcf8a !important; }
  html body .home-tm-eyebrow::before, html body .home-tm-eyebrow::after, html body .home-grad-eyebrow::before, html body .home-grad-eyebrow::after { display:none !important; }
  html body .home-tm-title em, html body .home-grad-title em { background:linear-gradient(100deg,#f0902c 0%,#ffcf8a 50%,#f0902c 100%); -webkit-background-clip:text; background-clip:text; color:transparent !important; padding-right:0.06em; }
  html body .home-tm-head, html body .home-grad-head { position:relative; }
  html body .home-tm-head::after, html body .home-grad-head::after { content:''; display:block; width:min(360px,60%); height:2px; margin:22px auto 0;
    background:linear-gradient(90deg, transparent, #f0902c, transparent); box-shadow:0 0 14px rgba(240,144,44,0.5); }

  /* REVIEWS */
  html body #reviews { background:
      radial-gradient(ellipse 50% 35% at 50% 0%, rgba(240,128,40,0.18) 0%, transparent 70%),
      radial-gradient(ellipse 45% 50% at 0% 100%, rgba(150,40,10,0.16) 0%, transparent 70%),
      radial-gradient(ellipse 45% 50% at 100% 100%, rgba(150,40,10,0.16) 0%, transparent 70%),
      linear-gradient(180deg,#160c07 0%,#110906 100%) !important; }
  html body #reviews > .home-tm-inner > .home-tm-head > div:first-child { font-size:1.5rem !important; color:#ffb24d !important; filter:drop-shadow(0 0 12px rgba(240,144,44,0.55)); }
  html body #reviews .home-tm-card { border-radius:18px !important; border:1px solid transparent !important; border-top:1px solid transparent !important;
    background:radial-gradient(ellipse 80% 50% at 0% 0%, rgba(240,128,40,0.14) 0%, transparent 70%) padding-box, linear-gradient(165deg,#22160d 0%,#150e09 100%) padding-box, linear-gradient(140deg, rgba(255,207,138,0.6), rgba(240,144,44,0.18) 45%, rgba(240,144,44,0.06) 65%, rgba(255,178,77,0.4)) border-box !important;
    box-shadow:0 18px 42px rgba(0,0,0,0.5) !important; }
  html body #reviews .home-tm-card:hover { box-shadow:0 26px 56px rgba(0,0,0,0.6), 0 0 0 1px rgba(240,144,44,0.35) !important; }
  html body #reviews .home-tm-card::before { color:rgba(240,144,44,0.35) !important; }
  html body #reviews .home-tm-avatar { box-shadow:0 0 0 2px rgba(255,207,138,0.5), 0 0 14px rgba(240,144,44,0.5) !important; }
  html body #reviews .home-tm-person { border-top:1px dashed rgba(240,144,44,0.3) !important; }
  html body #reviews .home-tm-seeall { border-radius:999px !important; background:linear-gradient(135deg,#f08a2c,#c05800) !important; color:#FDFBD4 !important; border-color:transparent !important;
    box-shadow:0 12px 28px rgba(192,88,0,0.45), 0 0 0 4px rgba(240,144,44,0.12) !important; padding:14px 30px !important; text-transform:uppercase; letter-spacing:0.05em; font-weight:800 !important; }

  /* TRAINING DAY */
  html body #graduates { background:
      radial-gradient(ellipse 50% 35% at 50% 0%, rgba(240,128,40,0.18) 0%, transparent 70%),
      radial-gradient(ellipse 60% 40% at 50% 100%, rgba(192,88,0,0.14) 0%, transparent 70%),
      linear-gradient(180deg,#140b07 0%,#100906 100%) !important; border-top:1px solid rgba(240,144,44,0.22) !important; border-bottom:1px solid rgba(240,144,44,0.22) !important; }
  html body #graduates .home-grad-photo { border:1px solid transparent !important; background:linear-gradient(#000,#000) padding-box, linear-gradient(140deg, rgba(255,207,138,0.6), rgba(240,144,44,0.18) 45%, rgba(240,144,44,0.06) 65%, rgba(255,178,77,0.4)) border-box !important;
    box-shadow:0 18px 40px rgba(0,0,0,0.55), 0 0 0 4px rgba(240,144,44,0.06) !important; transition:transform 0.3s, box-shadow 0.3s !important; }
  html body #graduates .home-grad-photo:hover { transform:translateY(-6px) rotate(-0.6deg); box-shadow:0 28px 56px rgba(0,0,0,0.6), 0 0 0 1px rgba(240,144,44,0.5), 0 0 30px rgba(240,144,44,0.25) !important; }
  html body #graduates .home-grad-sticker { border-radius:999px !important; background:linear-gradient(135deg,#ffb24d,#e06a00) !important; box-shadow:0 8px 20px rgba(192,88,0,0.5) !important; }
  html body #graduates .home-grad-sticker-text, html body #graduates .home-grad-sticker-text em { color:#1a0d05 !important; }
  html body #graduates .home-grad-seeall { border-radius:999px !important; background:linear-gradient(135deg,#f08a2c,#c05800) !important; color:#FDFBD4 !important; border-color:transparent !important;
    box-shadow:0 12px 28px rgba(192,88,0,0.45), 0 0 0 4px rgba(240,144,44,0.12) !important; padding:14px 30px !important; text-transform:uppercase; letter-spacing:0.05em; font-weight:800 !important; }
/* ---- block 53 ---- */
  html body .hp-doingpart { position:relative; isolation:isolate; overflow:hidden;
    background:
      radial-gradient(ellipse 50% 55% at 50% 45%, rgba(240,128,40,0.20) 0%, rgba(192,88,0,0.06) 50%, transparent 75%),
      radial-gradient(ellipse 40% 60% at 0% 100%, rgba(150,40,10,0.20) 0%, transparent 70%),
      radial-gradient(ellipse 40% 60% at 100% 0%, rgba(150,40,10,0.16) 0%, transparent 70%),
      linear-gradient(180deg,#170d07 0%,#110906 100%) !important;
    background-size:auto !important; background-attachment:scroll !important;
    border-top:1px solid rgba(240,144,44,0.3) !important; border-bottom:1px solid rgba(240,144,44,0.3) !important; }
  html body .hp-doingpart::before { content:'' !important; display:block !important; position:absolute; inset:0; z-index:-1; pointer-events:none; opacity:1 !important;
    background-image:linear-gradient(135deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(225deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(315deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(45deg, rgba(240,144,44,0.07) 25%, transparent 25%) !important;
    background-size:56px 56px !important; background-position:-28px 0,-28px 0,0 0,0 0 !important;
    -webkit-mask-image:radial-gradient(ellipse 65% 70% at 50% 50%, transparent 40%, #000 95%); mask-image:radial-gradient(ellipse 65% 70% at 50% 50%, transparent 40%, #000 95%); }
  html body .hp-doingpart::after { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(760px,86%); height:2px; z-index:-1;
    background:linear-gradient(90deg, transparent, #f0902c 50%, transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.55); }
  html body .hp-doingpart h2 em { background:linear-gradient(100deg,#f0902c 0%,#ffcf8a 50%,#f0902c 100%); -webkit-background-clip:text; background-clip:text; color:transparent !important; text-shadow:none !important; padding-right:0.06em; }
/* ---- block 54 ---- */
  .hp-still17-band { width:100vw; box-sizing:border-box; height:90vh; min-height:520px; background-color:#0d0907;
    background-image:url('../images/promo-stills-5-23-26-rounded/Snake-School-5-23-26-Promo-Still-17.jpg');
    background-image:image-set(url('../images/promo-stills-5-23-26-rounded/Snake-School-5-23-26-Promo-Still-17.webp') type('image/webp'), url('../images/promo-stills-5-23-26-rounded/Snake-School-5-23-26-Promo-Still-17.jpg') type('image/jpeg'));
    background-size:cover; background-position:center; background-repeat:no-repeat; background-attachment:fixed;
    border-top:1px solid rgba(240,144,44,0.3); border-bottom:1px solid rgba(240,144,44,0.3); }
  @media (max-width:900px), (hover:none) { .hp-still17-band { background-attachment:scroll; } }
  @media (max-width:700px) { .hp-still17-band { height:auto; min-height:0; aspect-ratio:4 / 3; } }
/* ---- block 55 ---- */
  html body .risk-modal-overlay { background:radial-gradient(ellipse 60% 60% at 50% 50%, rgba(120,30,10,0.35) 0%, rgba(8,5,3,0.82) 70%) !important; backdrop-filter:blur(8px); }
  html body .risk-modal { max-width:580px !important; border-radius:24px !important; border:1px solid transparent !important;
    background:linear-gradient(165deg,#22140b 0%,#140b07 60%,#0f0806 100%) padding-box, linear-gradient(140deg, rgba(255,207,138,0.7), rgba(240,144,44,0.2) 45%, rgba(240,144,44,0.08) 65%, rgba(255,178,77,0.5)) border-box !important;
    box-shadow:0 0 0 6px rgba(240,144,44,0.08), 0 50px 120px rgba(0,0,0,0.7), 0 0 80px rgba(240,100,30,0.18) !important; }
  /* warning header with hazard stripe + red danger glow */
  html body .risk-modal-accent { position:relative; isolation:isolate; overflow:hidden; text-align:center; padding:38px 40px 28px !important; border-bottom:none !important;
    background:radial-gradient(ellipse 70% 90% at 50% 0%, rgba(190,40,12,0.38) 0%, rgba(120,20,8,0.12) 55%, transparent 80%), linear-gradient(180deg,#1f0c07 0%,#170b07 100%) !important; }
  html body .risk-modal-accent::before { content:''; position:absolute; left:0; right:0; top:0; height:7px; z-index:-1;
    background:repeating-linear-gradient(-45deg, #f0902c 0 10px, #1a0d05 10px 20px); opacity:0.9; }
  html body .risk-modal-accent::after { content:''; position:absolute; left:50%; bottom:0; transform:translateX(-50%); width:80%; height:1px;
    background:linear-gradient(90deg, transparent, #f0902c, transparent); box-shadow:0 0 12px rgba(240,144,44,0.6); }
  html body .risk-modal-eyebrow { display:inline-flex !important; align-items:center; gap:8px; padding:6px 14px; border-radius:999px; margin-bottom:16px !important;
    background:rgba(220,60,20,0.15); border:1px solid rgba(255,120,60,0.5); color:#ffb07a !important; font-size:0.66rem !important; animation:risk-pulse 2.2s ease-in-out infinite; }
  @keyframes risk-pulse { 0%,100% { box-shadow:0 0 0 0 rgba(255,100,40,0.0); } 50% { box-shadow:0 0 0 5px rgba(255,100,40,0.15), 0 0 18px rgba(255,100,40,0.35); } }
  html body .risk-modal-headline { font-size:clamp(1.3rem,3.2vw,1.75rem) !important; line-height:1.25 !important; text-wrap:balance; }
  html body .risk-modal-headline em { background:linear-gradient(100deg,#f0902c 0%,#ffcf8a 50%,#f0902c 100%); -webkit-background-clip:text; background-clip:text; color:transparent !important; padding-right:0.06em; }
  /* stats as three mini cards */
  html body .risk-modal-body { padding:26px 32px 30px !important; }
  html body .risk-modal-stats { display:grid !important; grid-template-columns:repeat(3,1fr); gap:10px !important; border:none !important; border-radius:0 !important; overflow:visible !important; }
  html body .risk-modal-stat { flex-direction:column !important; align-items:center !important; text-align:center; gap:8px !important; padding:16px 10px 14px !important; border-radius:14px; border:1px solid transparent !important;
    background:linear-gradient(165deg,#2a0f08 0%,#170906 100%) padding-box, linear-gradient(140deg, rgba(255,150,90,0.55), rgba(200,60,20,0.15) 50%, rgba(255,120,60,0.35)) border-box !important;
    box-shadow:0 10px 24px rgba(0,0,0,0.4); }
  html body .risk-modal-stat-num { min-width:0 !important; max-width:none !important; font-style:normal !important; font-size:clamp(1.15rem,3vw,1.5rem) !important; white-space:nowrap;
    background:linear-gradient(180deg,#fff3d6 0%,#ffcf8a 55%,#f0902c 100%); -webkit-background-clip:text; background-clip:text; color:transparent !important;
    filter:drop-shadow(0 0 12px rgba(240,144,44,0.4)); }
  html body .risk-modal-stat:last-child .risk-modal-stat-num { font-size:clamp(0.95rem,2.4vw,1.15rem) !important; }
  html body .risk-modal-stat-text { font-size:0.74rem !important; line-height:1.4 !important; color:rgba(253,251,212,0.75) !important; }
  html body .risk-modal-bridge { padding:14px 16px; border-radius:14px; border:1px dashed rgba(240,144,44,0.4); background:rgba(240,144,44,0.06); }
  html body .risk-modal-bridge strong { color:#ffcf8a !important; }
  html body .risk-modal-btn-primary { border-radius:999px !important; background:linear-gradient(135deg,#f08a2c,#c05800) !important; font-weight:800 !important; padding:17px 24px !important;
    box-shadow:0 14px 32px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14) !important; }
  html body .risk-modal-btn-primary:hover { filter:brightness(1.08); }
  html body .risk-modal-sublinks a { color:#ffcf8a !important; }
  html body .risk-modal-close { z-index:3; background:rgba(13,9,7,0.6) !important; border-color:rgba(240,144,44,0.45) !important; color:#FDFBD4 !important; }
  html body .risk-modal-close:hover { background:rgba(240,144,44,0.25) !important; }
  @media (max-width:540px) {
    html body .risk-modal-accent { padding:32px 22px 22px !important; }
    html body .risk-modal-body { padding:20px 18px 24px !important; }
    html body .risk-modal-stats { gap:6px !important; }
    html body .risk-modal-stat { padding:12px 6px 10px !important; }
    html body .risk-modal-stat-num { font-size:1.05rem !important; white-space:normal; }
    html body .risk-modal-stat:last-child .risk-modal-stat-num { font-size:0.88rem !important; }
    html body .risk-modal-stat-text { font-size:0.66rem !important; }
  }
  @media (prefers-reduced-motion: reduce) { html body .risk-modal-eyebrow { animation:none; } }
/* ---- block 56 ---- */
  #what-we-do-section .hnc-price { display:flex; align-items:baseline; flex-wrap:wrap; gap:4px 8px; margin-top:12px; font-family:'Manrope',sans-serif; color:#FDFBD4; }
  #what-we-do-section .hnc-from { font-size:0.72rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:rgba(253,251,212,0.6); }
  #what-we-do-section .hnc-price s { font-size:0.95rem; color:rgba(253,251,212,0.45); text-decoration-color:rgba(240,144,44,0.85); text-decoration-thickness:2px; }
  #what-we-do-section .hnc-price b { font-family:'Libre Baskerville',serif; font-size:1.7rem; line-height:1; color:#ffcf8a; }
  #what-we-do-section .hnc-per { font-size:0.82rem; color:rgba(253,251,212,0.65); }
  #what-we-do-section .hnc-off { padding:3px 9px; border-radius:999px; background:linear-gradient(135deg,#ffb24d,#e06a00); color:#1a0d05; font-size:0.66rem; font-weight:900; letter-spacing:0.06em; text-transform:uppercase; }
  #what-we-do-section .hnc-loc { display:inline-flex; align-items:center; gap:7px; margin-top:12px; font-family:'Manrope',sans-serif; font-size:0.8rem; font-weight:700; color:rgba(253,251,212,0.85); text-decoration:none; }
  #what-we-do-section .hnc-loc svg { width:15px; height:15px; fill:none; stroke:#f0902c; stroke-width:2; flex:none; }
  #what-we-do-section .hnc-loc span { color:#ffcf8a; margin-left:2px; }
  .hp-jump { position:sticky; top:var(--hp-jump-top,0px); z-index:150; display:flex; gap:6px; justify-content:center; flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none;
    padding:10px 14px; background:rgba(16,9,6,0.92); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
    border-top:1px solid rgba(240,144,44,0.25); border-bottom:1px solid rgba(240,144,44,0.25); }
  .hp-jump::-webkit-scrollbar { display:none; }
  .hp-jump a { flex:none; padding:8px 14px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:800; letter-spacing:0.06em; text-transform:uppercase;
    color:rgba(253,251,212,0.85); text-decoration:none; border:1px solid rgba(240,144,44,0.3); background:rgba(253,251,212,0.03); transition:background 0.15s, color 0.15s; }
  .hp-jump a:hover { background:rgba(240,144,44,0.16); color:#FDFBD4; }
  .hp-jump a.hp-jump-book { background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; border-color:transparent; box-shadow:0 6px 16px rgba(192,88,0,0.4); }
  @media (max-width:700px) { .hp-jump { justify-content:flex-start; padding:8px 10px; } .hp-jump a { font-size:0.66rem; padding:7px 11px; } }
  #reviews, #faq, #heroNextClass { scroll-margin-top:150px; }

/* ---- SCENT STATION band above "We Solve a Real Problem" (2026-10-09, replaced Still 17) ---- */
.hp-scent-band { position:relative; isolation:isolate; overflow:hidden; width:100vw; box-sizing:border-box; padding:clamp(40px,6vw,72px) 24px; display:flex; justify-content:center;
  background:#100906; border-top:1px solid rgba(240,144,44,0.3); border-bottom:1px solid rgba(240,144,44,0.3); }
.hp-scent-bg { position:absolute; inset:-40px; z-index:-2; }
.hp-scent-bg img { width:100%; height:100%; object-fit:cover; filter:blur(28px) saturate(1.1) brightness(0.55); transform:scale(1.1); }
.hp-scent-band::after { content:''; position:absolute; inset:0; z-index:-1; background:radial-gradient(ellipse 60% 70% at 50% 50%, transparent 0%, rgba(16,9,6,0.55) 100%); }
.hp-scent-fig { margin:0; width:min(460px,86vw); }
.hp-scent-fig img { display:block; width:100%; height:auto; border-radius:22px; box-shadow:0 0 0 1px rgba(255,207,138,0.5), 0 0 0 6px rgba(240,144,44,0.10), 0 34px 80px rgba(0,0,0,0.6); }
.hp-scent-fig figcaption { margin-top:16px; text-align:center; font-family:'Manrope',sans-serif; font-size:0.82rem; font-weight:700; letter-spacing:0.04em; color:rgba(253,251,212,0.85); text-shadow:0 2px 10px rgba(0,0,0,0.7); }

/* ---- What Our Team Does is now the first section with the booking widget (2026-10-09) ---- */
#what-we-do-section { height:auto !important; }
@media (min-width:761px) { #what-we-do-section { min-height:clamp(560px, calc(100vh - 230px), 860px); } }
#what-we-do-section .what-we-do-copy { height:auto !important; overflow:visible !important; justify-content:center; }
#what-we-do-section .hero-next-class { margin-top:22px !important; }
#meet-our-trainer-section { min-height:0 !important; }
#what-we-do-section .hero-next-class { margin:16px 0 18px !important; }
@media (min-width:761px) {
  #what-we-do-section .what-we-do-copy .what-we-do-subheading:first-of-type { font-size:clamp(1.7rem,2.6vw,2.3rem) !important; margin-bottom:10px !important; }
  #what-we-do-section .what-we-do-copy .what-we-do-subheading:not(:first-of-type) { font-size:clamp(1rem,1.4vw,1.2rem) !important; line-height:1.4 !important; }
  #what-we-do-section .what-we-do-copy { padding-top:clamp(26px,3vw,40px) !important; padding-bottom:clamp(26px,3vw,40px) !important; }
}
/* phones: booking card before the photo on the first screen; shorter photo (2026-10-09) */
@media (max-width:760px) {
  #what-we-do-section .what-we-do-copy { order:-1; }
  #what-we-do-section .what-we-do-img { height:42vh !important; min-height:260px !important; }
}

/* ---- FIRST SECTION hook redesign (2026-10-09) ---- */
#wotdSlider .wotd-overlay { z-index:2; padding:90px 26px 46px; }
#wotdSlider .wotd-dots { z-index:3; }
#what-we-do-section .what-we-do-copy .what-we-do-subheading:first-of-type { font-size:clamp(2rem,3.4vw,3rem) !important; line-height:1.05 !important; margin-bottom:14px !important; }
#what-we-do-section .wotd-lead { font-family:'Manrope',sans-serif; font-size:0.95rem !important; font-weight:700; color:rgba(253,251,212,0.82) !important; margin:4px 0 10px; }
#what-we-do-section .wotd-steps { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
#what-we-do-section .wotd-steps li { display:flex; flex-direction:column; align-items:flex-start; gap:8px; padding:12px 12px 13px; border-radius:14px;
  background:linear-gradient(160deg, rgba(240,144,44,0.14), rgba(240,144,44,0.03)); border:1px solid rgba(240,144,44,0.35);
  font-family:'Manrope',sans-serif; font-size:0.86rem; font-weight:700; line-height:1.3; color:#FDFBD4; }
#what-we-do-section .wotd-steps b { display:inline-flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%;
  background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; font-size:0.78rem; box-shadow:0 4px 12px rgba(192,88,0,0.45); }
#what-we-do-section .wotd-steps em { font-style:normal; color:#ffb24d; }
#what-we-do-section .wotd-how { margin-top:4px; border-top:1px dashed rgba(240,144,44,0.3); padding-top:12px; }
#what-we-do-section .wotd-how summary { cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center;
  font-family:'Manrope',sans-serif; font-size:0.78rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:#ffcf8a; }
#what-we-do-section .wotd-how summary::-webkit-details-marker { display:none; }
#what-we-do-section .wotd-how summary span { font-size:1.1rem; color:#f0902c; transition:transform 0.2s; }
#what-we-do-section .wotd-how[open] summary span { transform:rotate(45deg); }
#what-we-do-section .wotd-how p { font-family:'Manrope',sans-serif; font-size:0.92rem !important; line-height:1.65; color:rgba(253,251,212,0.78) !important; margin:10px 0 10px; }
#what-we-do-section .wotd-how a { font-family:'Manrope',sans-serif; font-size:0.78rem; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:#f0902c; text-decoration:none; }
#what-we-do-section .hero-next-class { margin:18px 0 16px !important; }
@media (max-width:760px) {
  #what-we-do-section .wotd-steps li { font-size:0.74rem; padding:10px 8px; }
  #what-we-do-section .what-we-do-copy .what-we-do-subheading:first-of-type { font-size:1.8rem !important; }
  #wotdSlider .wotd-overlay { padding:70px 18px 34px; }
}
#what-we-do-section .wotd-hl { font-style:italic; background:linear-gradient(100deg,#f0902c 0%,#ffcf8a 50%,#f0902c 100%); -webkit-background-clip:text; background-clip:text; color:transparent; padding-right:0.06em; }

/* ---- TRUST STRIP + WHY NOW (2026-10-09) ---- */
.ts { width:100vw; box-sizing:border-box; padding:22px 24px; background:linear-gradient(180deg,#140b07 0%,#110906 100%); border-top:1px solid rgba(240,144,44,0.25); border-bottom:1px solid rgba(240,144,44,0.18); }
.ts-inner { max-width:1100px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:22px 40px; flex-wrap:wrap; }
.ts-col { display:flex; flex-direction:column; gap:8px; }
.ts-k { margin:0; font-family:'Manrope',sans-serif; font-size:0.66rem !important; font-weight:800; letter-spacing:0.2em; text-transform:uppercase; color:#f0902c !important; }
.ts-logos { display:flex; gap:10px; }
.ts-logo { position:relative; display:block; width:62px; height:62px; border-radius:12px; background:#fff; overflow:hidden; box-shadow:0 0 0 2px rgba(240,144,44,0.3), 0 8px 18px rgba(0,0,0,0.4); }
.ts-logo img { position:absolute; inset:10%; width:80%; height:80%; object-fit:contain; }
.ts-press { align-items:flex-end; text-align:right; }
.ts-names { margin:0; font-family:'Libre Baskerville',serif; font-size:clamp(0.95rem,1.6vw,1.15rem) !important; font-weight:700; color:#FDFBD4 !important; }
.ts-stars { margin:0; font-family:'Manrope',sans-serif; font-size:0.8rem !important; font-weight:700; color:rgba(253,251,212,0.8) !important; }
.ts-stars b { color:#ffb24d; letter-spacing:0.1em; }
.wn { position:relative; isolation:isolate; width:100vw; box-sizing:border-box; padding:clamp(36px,5vw,56px) 24px; text-align:center;
  background:radial-gradient(ellipse 60% 80% at 50% 50%, rgba(170,34,12,0.28) 0%, rgba(90,14,6,0.08) 55%, transparent 80%), #120806; border-bottom:1px solid rgba(240,144,44,0.25); }
.wn::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:repeating-linear-gradient(-45deg, rgba(240,144,44,0.28) 0 12px, transparent 12px 24px);
  -webkit-mask-image:linear-gradient(180deg,#000 0,#000 6px,transparent 6px,transparent calc(100% - 6px),#000 calc(100% - 6px)); mask-image:linear-gradient(180deg,#000 0,#000 6px,transparent 6px,transparent calc(100% - 6px),#000 calc(100% - 6px)); }
.wn-inner { max-width:1040px; margin:0 auto; }
.wn-k { display:inline-block; margin:0 0 18px; padding:6px 14px; border-radius:999px; background:rgba(220,60,20,0.15); border:1px solid rgba(255,120,60,0.5); font-family:'Manrope',sans-serif; font-size:0.68rem !important; font-weight:800; letter-spacing:0.2em; text-transform:uppercase; color:#ffb07a !important; }
.wn-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; text-align:left; }
.wn-stat { display:flex; flex-direction:column; gap:8px; padding:20px 20px 18px; border-radius:16px; border:1px solid transparent;
  background:linear-gradient(165deg,#2a0f08 0%,#170906 100%) padding-box, linear-gradient(140deg, rgba(255,150,90,0.55), rgba(200,60,20,0.15) 50%, rgba(255,120,60,0.35)) border-box; box-shadow:0 14px 32px rgba(0,0,0,0.45); }
.wn-num { font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(2.2rem,4vw,3rem); line-height:1; letter-spacing:-0.03em;
  background:linear-gradient(180deg,#fff3d6 0%,#ffcf8a 55%,#f0902c 100%); -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 0 14px rgba(240,144,44,0.4)); }
.wn-lab { font-family:'Manrope',sans-serif; font-size:0.9rem; font-weight:600; line-height:1.45; color:rgba(253,251,212,0.85); }
.wn-src { font-family:'Manrope',sans-serif; font-size:0.66rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:#ffb07a; }
.wn-cta { display:inline-flex; margin-top:22px; padding:14px 26px; border-radius:999px; text-decoration:none; background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4;
  font-family:'Manrope',sans-serif; font-size:0.82rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; box-shadow:0 12px 28px rgba(192,88,0,0.45); }
@media (max-width:760px) {
  .ts-inner { justify-content:center; } .ts-col, .ts-press { align-items:center; text-align:center; }
  .ts-logo { width:56px; height:56px; }
  .wn-grid { grid-template-columns:1fr; } .wn-stat { padding:16px; }
}

/* commercial inside the brand/logo section (2026-10-09) */
.hp-brand-ad { margin:clamp(30px,4vw,44px) auto 0; padding:0 4px; }
.hp-brand-ad .hp-ad-kicker { margin-bottom:16px; }

/* ---- First section card: restore the ember styling it had as "Meet Your Trainer" (2026-10-09) ---- */
html body #what-we-do-section .what-we-do-copy { position:relative; isolation:isolate; overflow:hidden;
  background:
    radial-gradient(ellipse 70% 45% at 55% 72%, rgba(240,128,40,0.24) 0%, rgba(192,88,0,0.08) 45%, transparent 75%) padding-box,
    radial-gradient(ellipse 60% 40% at 35% 12%, rgba(192,88,0,0.16) 0%, transparent 70%) padding-box,
    linear-gradient(180deg,#1f1008 0%,#130b06 55%,#0f0806 100%) padding-box,
    linear-gradient(140deg, rgba(255,207,138,0.6), rgba(240,144,44,0.18) 45%, rgba(240,144,44,0.06) 65%, rgba(255,178,77,0.4)) border-box !important; }
html body #what-we-do-section .what-we-do-copy::before { content:'' !important; display:block !important; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background-image:
    linear-gradient(135deg, rgba(232,140,40,0.09) 25%, transparent 25%), linear-gradient(225deg, rgba(232,140,40,0.09) 25%, transparent 25%),
    linear-gradient(315deg, rgba(232,140,40,0.09) 25%, transparent 25%), linear-gradient(45deg, rgba(232,140,40,0.09) 25%, transparent 25%);
  background-size:56px 56px; background-position:-28px 0,-28px 0,0 0,0 0;
  -webkit-mask-image:radial-gradient(ellipse 70% 80% at 45% 50%, transparent 40%, #000 100%); mask-image:radial-gradient(ellipse 70% 80% at 45% 50%, transparent 40%, #000 100%); }
html body #what-we-do-section .what-we-do-copy::after { content:'' !important; display:block !important; position:absolute; left:50%; bottom:0; transform:translateX(-50%); z-index:-1; pointer-events:none;
  width:80%; height:2px; background:linear-gradient(90deg, transparent, #f0902c 50%, transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.55); }

/* Snake School sign above "How dogs are trained": full-bleed on phones only; framed + capped on desktop (2026-10-09) */
@media (min-width:761px) {
  html body .hp-sign { padding:clamp(40px,5vw,64px) 24px !important; line-height:normal !important;
    background:radial-gradient(ellipse 50% 70% at 50% 50%, rgba(240,128,40,0.20) 0%, transparent 70%), linear-gradient(180deg,#140b07 0%,#100906 100%) !important; }
  html body .hp-sign picture { display:block; max-width:760px; margin:0 auto; }
  html body .hp-sign img { border-radius:18px; box-shadow:0 0 0 1px rgba(255,207,138,0.45), 0 0 0 6px rgba(240,144,44,0.08), 0 30px 70px rgba(0,0,0,0.6); }
}

/* Commercial video band — richer background now that it sits right under the H1 (2026-10-09):
   blurred still of the spot itself as an ambient "theater glow", ember radial behind the frame,
   rattlesnake zigzag fading in from the edges, gold hairlines top + bottom. */
html body .hp-ad { overflow:hidden; border-top:0 !important; border-bottom:0 !important;
  padding:clamp(48px,7vw,90px) 24px !important;
  background:
    radial-gradient(ellipse 55% 60% at 50% 55%, rgba(240,128,40,0.32) 0%, rgba(240,128,40,0.08) 45%, transparent 72%),
    linear-gradient(180deg, rgba(14,8,5,0.78) 0%, rgba(20,10,5,0.52) 50%, rgba(14,8,5,0.82) 100%),
    url('../images/section-bg/commercial-ambient.jpg') center/cover no-repeat,
    #120a06 !important;
  background:
    radial-gradient(ellipse 55% 60% at 50% 55%, rgba(240,128,40,0.32) 0%, rgba(240,128,40,0.08) 45%, transparent 72%),
    linear-gradient(180deg, rgba(14,8,5,0.78) 0%, rgba(20,10,5,0.52) 50%, rgba(14,8,5,0.82) 100%),
    image-set(url('../images/section-bg/commercial-ambient.webp') type('image/webp'), url('../images/section-bg/commercial-ambient.jpg') type('image/jpeg')) center/cover no-repeat,
    #120a06 !important; }
html body .hp-ad::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background-image:linear-gradient(135deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(225deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(315deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(45deg, rgba(240,144,44,0.07) 25%, transparent 25%);
  background-size:28px 28px;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 16%,transparent 84%,#000 100%); mask-image:linear-gradient(90deg,#000 0%,transparent 16%,transparent 84%,#000 100%); }
html body .hp-ad::after { content:''; position:absolute; left:0; right:0; top:0; bottom:0; z-index:-1; pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,207,138,0.75),transparent) top/100% 1px no-repeat, linear-gradient(90deg,transparent,rgba(255,207,138,0.75),transparent) bottom/100% 1px no-repeat; }
html body .hp-ad-kicker { color:#ffcf8a !important; text-shadow:0 2px 12px rgba(0,0,0,0.6); }
html body .hp-ad-frame { border:1px solid rgba(255,207,138,0.55) !important;
  box-shadow:0 0 0 6px rgba(240,144,44,0.10), 0 0 60px rgba(240,128,40,0.35), 0 34px 90px rgba(0,0,0,0.7) !important; }

/* WE SOLVE A REAL PROBLEM — them-vs-us rebuild, right under the commercial (2026-10-09) */
.wsrp2 { width:100vw; box-sizing:border-box; position:relative; overflow:hidden; isolation:isolate; text-align:center;
  padding:clamp(56px,8vw,104px) 20px;
  background:
    radial-gradient(ellipse 45% 55% at 22% 60%, rgba(190,40,20,0.20) 0%, transparent 70%),
    radial-gradient(ellipse 45% 55% at 78% 60%, rgba(240,144,44,0.22) 0%, transparent 70%),
    linear-gradient(180deg,#120806 0%,#0e0907 100%); }
.wsrp2::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background-image:linear-gradient(135deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(225deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(315deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(45deg, rgba(240,144,44,0.07) 25%, transparent 25%);
  background-size:28px 28px; -webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 30%); mask-image:linear-gradient(180deg,#000 0%,transparent 30%); }
.wsrp2::after { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(760px,84%); height:2px; z-index:-1;
  background:linear-gradient(90deg,transparent,#f0902c 50%,transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.55); }
.wsrp2-in { max-width:1080px; margin:0 auto; }
.wsrp2-eyebrow { display:inline-flex; align-items:center; gap:10px; margin:0 0 16px; font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:#ffcf8a; }
.wsrp2-eyebrow::before, .wsrp2-eyebrow::after { content:''; width:22px; height:2px; background:#f0902c; }
.wsrp2-title { font-family:'Libre Baskerville',serif; font-size:clamp(2rem,5vw,3.6rem); font-weight:700; letter-spacing:-0.02em; line-height:1.1; color:#FDFBD4; margin:0 auto 18px; max-width:900px; }
.wsrp2-title em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.wsrp2-lead { font-family:'Manrope',sans-serif; font-size:clamp(1.02rem,1.7vw,1.22rem); line-height:1.65; color:rgba(253,251,212,0.82); max-width:680px; margin:0 auto clamp(32px,5vw,52px); }
.wsrp2-lead strong { color:#FDFBD4; }
.wsrp2-vs { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:stretch; gap:clamp(14px,2.4vw,26px); text-align:left; }
.wsrp2-card { border-radius:20px; padding:clamp(22px,3vw,34px); position:relative; }
.wsrp2-card ul { list-style:none; margin:0; padding:0; display:grid; gap:14px; }
.wsrp2-card li { display:flex; gap:12px; align-items:flex-start; font-family:'Manrope',sans-serif; font-size:clamp(0.96rem,1.4vw,1.06rem); line-height:1.5; }
.wsrp2-card li span { flex:0 0 26px; height:26px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:0.8rem; font-weight:900; margin-top:-1px; }
.wsrp2-card-k { margin:0 0 18px; font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:800; letter-spacing:0.16em; text-transform:uppercase; }
.wsrp2-them { background:linear-gradient(180deg,rgba(60,16,10,0.55),rgba(26,10,8,0.55)); border:1px solid rgba(220,70,50,0.30); }
.wsrp2-them .wsrp2-card-k { color:#f08a78; }
.wsrp2-them li { color:rgba(253,251,212,0.62); }
.wsrp2-them .x { background:rgba(210,55,40,0.18); color:#ff7a66; border:1px solid rgba(255,110,90,0.4); }
.wsrp2-us { background:linear-gradient(#1a0f08,#1a0f08) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box; border:1.5px solid transparent;
  box-shadow:0 0 0 6px rgba(240,144,44,0.08), 0 0 50px rgba(240,128,40,0.25), 0 24px 60px rgba(0,0,0,0.5); }
.wsrp2-us .wsrp2-card-k { color:#ffcf8a; }
.wsrp2-us li { color:#FDFBD4; font-weight:600; }
.wsrp2-us .v { background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; box-shadow:0 4px 12px rgba(192,88,0,0.45); }
.wsrp2-badge { align-self:center; width:58px; height:58px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  font-family:'Libre Baskerville',serif; font-style:italic; font-weight:700; font-size:1.05rem; color:#FDFBD4;
  background:radial-gradient(circle at 35% 30%,#f5a04a,#c05800 70%); box-shadow:0 0 0 5px rgba(240,144,44,0.15), 0 10px 26px rgba(0,0,0,0.5); }
.wsrp2-diff { margin:clamp(34px,5vw,50px) 0 14px; font-family:'Libre Baskerville',serif; font-style:italic; font-size:clamp(1.1rem,2vw,1.35rem); color:#FDFBD4; }
.wsrp2-pills { list-style:none; margin:0 auto clamp(30px,4vw,40px); padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap:10px; max-width:860px; }
.wsrp2-pills li { padding:10px 18px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.86rem; font-weight:800; letter-spacing:0.04em; color:#ffe2b0;
  background:rgba(240,144,44,0.10); border:1px solid rgba(255,207,138,0.45); }
.wsrp2-ctas { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:14px 26px; }
html body .wsrp2-btn { display:inline-flex; align-items:center; padding:16px 32px; border-radius:999px; text-decoration:none;
  background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; font-family:'Manrope',sans-serif; font-size:0.9rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase;
  box-shadow:0 14px 34px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14); }
html body .wsrp2-link { color:#ffcf8a; font-family:'Manrope',sans-serif; font-size:0.9rem; font-weight:800; letter-spacing:0.04em; text-decoration:none; border-bottom:1px solid rgba(255,207,138,0.5); padding-bottom:2px; }
@media (max-width:760px) {
  .wsrp2-vs { grid-template-columns:minmax(0,1fr); }
  .wsrp2-badge { justify-self:center; width:48px; height:48px; font-size:0.92rem; margin:-4px 0; }
  .wsrp2-pills li { font-size:0.8rem; padding:9px 14px; }
}

/* WE DO ONE THING — rebuild, right under We Solve a Real Problem (2026-10-09). Giant faint "1" watermark; no photo bg (user removed those 2026-10-07). */
.wdo2 { width:100vw; box-sizing:border-box; position:relative; overflow:hidden; isolation:isolate; text-align:center;
  padding:clamp(56px,8vw,104px) 20px;
  background:radial-gradient(ellipse 60% 50% at 50% 0%, rgba(240,144,44,0.16) 0%, transparent 70%), radial-gradient(ellipse 70% 40% at 50% 100%, rgba(192,88,0,0.14) 0%, transparent 70%), linear-gradient(180deg,#0e0907 0%,#170c07 55%,#0e0907 100%); }
.wdo2::before { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(760px,84%); height:1px; z-index:-1;
  background:linear-gradient(90deg,transparent,rgba(255,207,138,0.8),transparent); }
.wdo2-num { position:absolute; z-index:-1; left:50%; top:-0.08em; transform:translateX(-50%); pointer-events:none; user-select:none;
  font-family:'Libre Baskerville',serif; font-weight:700; font-style:italic; font-size:clamp(340px,52vw,720px); line-height:1;
  color:transparent; -webkit-text-stroke:1.5px rgba(240,144,44,0.13); background:linear-gradient(180deg,rgba(240,144,44,0.07),transparent 70%); -webkit-background-clip:text; background-clip:text; }
.wdo2-in { max-width:1080px; margin:0 auto; }
.wdo2-eyebrow { display:inline-flex; align-items:center; gap:10px; margin:0 0 16px; font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:#ffcf8a; }
.wdo2-eyebrow::before, .wdo2-eyebrow::after { content:''; width:22px; height:2px; background:#f0902c; }
.wdo2-title { font-family:'Libre Baskerville',serif; font-size:clamp(2rem,4.8vw,3.4rem); font-weight:700; letter-spacing:-0.02em; line-height:1.12; color:#FDFBD4; margin:0 auto 16px; max-width:860px; }
.wdo2-title em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.wdo2-lead { font-family:'Manrope',sans-serif; font-size:clamp(1.02rem,1.7vw,1.2rem); line-height:1.6; color:rgba(253,251,212,0.8); max-width:640px; margin:0 auto clamp(32px,5vw,50px); }
.wdo2-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:clamp(16px,2.4vw,26px); text-align:left; }
.wdo2-photo { position:relative; margin:0; border-radius:20px; overflow:hidden; min-height:clamp(300px,40vw,480px);
  border:1px solid rgba(255,207,138,0.45); box-shadow:0 0 0 6px rgba(240,144,44,0.07), 0 26px 64px rgba(0,0,0,0.55); }
.wdo2-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.wdo2-photo figcaption { position:absolute; left:0; right:0; bottom:0; padding:60px 22px 20px; background:linear-gradient(to top, rgba(0,0,0,0.7), transparent);
  font-family:'Libre Baskerville',serif; font-size:clamp(1rem,1.7vw,1.2rem); color:#FDFBD4; }
.wdo2-photo figcaption em { color:#ffcf8a; }
.wdo2-stats { display:grid; gap:clamp(12px,1.8vw,18px); }
.wdo2-stat { display:flex; align-items:center; gap:clamp(16px,2.2vw,24px); padding:clamp(18px,2.4vw,26px) clamp(18px,2.6vw,28px); border-radius:18px;
  background:linear-gradient(180deg,rgba(240,144,44,0.10),rgba(240,144,44,0.02)); border:1px solid rgba(240,144,44,0.32); }
.wdo2-big { flex:0 0 auto; min-width:2.6em; font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(2.4rem,4.6vw,3.6rem); line-height:1; letter-spacing:-0.02em;
  background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 4px 14px rgba(240,128,40,0.3)); }
.wdo2-txt strong { display:block; font-family:'Manrope',sans-serif; font-size:clamp(0.98rem,1.5vw,1.1rem); font-weight:800; color:#FDFBD4; line-height:1.3; }
.wdo2-txt strong em { color:#ffcf8a; font-style:italic; }
.wdo2-txt span { display:block; margin-top:4px; font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:rgba(253,251,212,0.55); }
.wdo2-txt span.wdo2-long { font-size:0.9rem; font-weight:500; letter-spacing:0; text-transform:none; line-height:1.55; color:rgba(253,251,212,0.72); margin-top:6px; }
.wdo2-guar { background:linear-gradient(#1a0f08,#1a0f08) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box; border:1.5px solid transparent;
  box-shadow:0 0 40px rgba(240,128,40,0.18), 0 18px 44px rgba(0,0,0,0.45); }
.wdo2-seal { flex:0 0 auto; width:clamp(74px,8vw,90px); height:clamp(74px,8vw,90px); border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center;
  background:radial-gradient(circle at 35% 30%,#f5a04a,#c05800 70%); box-shadow:0 0 0 4px rgba(26,15,8,1), 0 0 0 5.5px rgba(255,207,138,0.6), 0 10px 26px rgba(0,0,0,0.5); color:#FDFBD4; }
.wdo2-seal b { font-family:'Libre Baskerville',serif; font-size:clamp(1rem,1.6vw,1.2rem); line-height:1; }
.wdo2-seal i { font-style:normal; font-family:'Manrope',sans-serif; font-size:0.56rem; font-weight:800; letter-spacing:0.16em; text-transform:uppercase; margin-top:4px; }
.wdo2-note { max-width:720px; margin:clamp(30px,4vw,42px) auto 12px; font-family:'Manrope',sans-serif; font-size:0.98rem; line-height:1.65; color:rgba(253,251,212,0.7); }
.wdo2-note strong { color:#FDFBD4; }
.wdo2-trust { max-width:720px; margin:clamp(30px,4vw,42px) auto clamp(26px,4vw,36px); font-family:'Libre Baskerville',serif; font-style:italic; font-size:clamp(0.98rem,1.5vw,1.08rem); line-height:1.6; color:rgba(253,251,212,0.82); }
html body .wdo2-trust a { font-family:'Manrope',sans-serif; font-style:normal; font-weight:800; font-size:0.86rem; color:#ffcf8a; text-decoration:none; border-bottom:1px solid rgba(255,207,138,0.5); white-space:nowrap; }
.wdo2-ctas { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; }
html body .wdo2-btn, html body .wdo2-btn2 { display:inline-flex; align-items:center; padding:16px 30px; border-radius:999px; text-decoration:none; font-family:'Manrope',sans-serif; font-size:0.88rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; }
html body .wdo2-btn { background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; box-shadow:0 14px 34px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14); }
html body .wdo2-btn2 { color:#FDFBD4; background:rgba(253,251,212,0.04); border:1px solid rgba(255,207,138,0.5); }
@media (max-width:760px) {
  .wdo2-grid { grid-template-columns:minmax(0,1fr); }
  .wdo2-photo { min-height:0; aspect-ratio:4 / 3; }
  .wdo2-num { font-size:clamp(300px,90vw,420px); }
}

/* FAQ — brand restyle (2026-10-09): was cream; now dark ember with zigzag edges, gold numbered questions, gold-gradient open state */
html body #faq { position:relative; overflow:hidden; isolation:isolate; border:0 !important;
  background:radial-gradient(ellipse 55% 40% at 50% 0%, rgba(240,144,44,0.18) 0%, transparent 70%), radial-gradient(ellipse 60% 40% at 50% 100%, rgba(192,88,0,0.12) 0%, transparent 70%), linear-gradient(180deg,#120a06 0%,#0e0907 100%) !important; }
html body #faq::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background-image:linear-gradient(135deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(225deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(315deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(45deg, rgba(240,144,44,0.07) 25%, transparent 25%);
  background-size:28px 28px; -webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%); mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%); }
html body #faq::after { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(760px,84%); height:2px; z-index:-1;
  background:linear-gradient(90deg,transparent,#f0902c 50%,transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.5); }
html body #faq [style*="color:var(--orange)"] { color:#ffcf8a !important; }
html body #faq h2 { color:#FDFBD4 !important; }
html body #faq h2 em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
html body #faq .hp-acc-wrap { counter-reset:faq; gap:12px; max-width:800px; }
html body #faq .hp-acc { counter-increment:faq; border-radius:16px; border:1px solid rgba(240,144,44,0.26) !important;
  background:linear-gradient(180deg,rgba(240,144,44,0.07),rgba(240,144,44,0.015)), #150d08 !important; box-shadow:0 10px 30px rgba(0,0,0,0.35) !important; transition:border-color .2s, box-shadow .2s; }
html body #faq .hp-acc:hover { border-color:rgba(255,207,138,0.5) !important; }
html body #faq .hp-acc[open] { border:1.5px solid transparent !important;
  background:linear-gradient(#1a0f08,#1a0f08) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box !important;
  box-shadow:0 0 0 5px rgba(240,144,44,0.07), 0 0 40px rgba(240,128,40,0.18), 0 18px 44px rgba(0,0,0,0.45) !important; }
html body #faq .hp-acc-sum { color:#FDFBD4 !important; gap:16px; padding:clamp(16px,2.2vw,20px) clamp(16px,2.4vw,22px);
  font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(0.98rem,1.6vw,1.1rem); line-height:1.4; }
html body #faq .hp-acc-sum::before { content:counter(faq, decimal-leading-zero); width:auto; height:auto; border-radius:0; background:none; box-shadow:none;
  font-family:'Libre Baskerville',serif; font-style:italic; font-weight:700; font-size:1.15rem; min-width:1.7em;
  background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
html body #faq .hp-acc-chev { width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.15rem;
  color:#ffcf8a !important; border:1px solid rgba(255,207,138,0.45); background:rgba(240,144,44,0.08); }
html body #faq .hp-acc[open] .hp-acc-chev { background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4 !important; border-color:transparent; box-shadow:0 4px 14px rgba(192,88,0,0.45); }
html body #faq .hp-acc-body { color:rgba(253,251,212,0.8) !important; font-size:0.96rem; line-height:1.7;
  margin:0 clamp(16px,2.4vw,22px) clamp(16px,2.2vw,20px) calc(clamp(16px,2.4vw,22px) + 1.7em + 16px); padding:2px 0 0 16px; border-left:2px solid rgba(240,144,44,0.5); }
html body #faq .hp-acc-body strong { color:#FDFBD4; }
html body #faq .hp-acc-body a { color:#ffcf8a; }
@media (max-width:760px) { html body #faq .hp-acc-body { margin-left:clamp(16px,2.4vw,22px); } }

/* HOW DOGS ARE TRAINED — horizontal swipe row on desktop too (2026-10-09; was a tall 2-col grid). 3 cards visible, arrows + trackpad swipe. */
.ss-nav { display:none; }
@media (min-width:761px) {
  html body .sensory-stations .ss-grid { display:flex; grid-template-columns:none; gap:24px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain;
    padding:6px 2px 10px; -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 92%,transparent 100%); mask-image:linear-gradient(90deg,#000 0%,#000 92%,transparent 100%); }
  html body .sensory-stations .ss-grid::-webkit-scrollbar { display:none; }
  html body .sensory-stations .ss-card { flex:0 0 calc((100% - 48px) / 3.15); scroll-snap-align:start; }
  html body .sensory-stations .ss-card:hover { transform:none; }
  html body .sensory-stations .ss-desc { font-size:0.92rem; }
  .ss-nav { display:flex; justify-content:center; gap:14px; margin-top:clamp(20px,3vw,30px); }
  .ss-arrow { width:52px; height:52px; border-radius:50%; cursor:pointer; font-size:1.25rem; line-height:1; display:flex; align-items:center; justify-content:center;
    color:#FDFBD4; background:linear-gradient(135deg,#f08a2c,#c05800); border:0; box-shadow:0 10px 26px rgba(192,88,0,0.45), 0 0 0 4px rgba(240,144,44,0.14); transition:transform .15s, opacity .2s; }
  .ss-arrow:hover:not(:disabled) { transform:scale(1.07); }
  .ss-arrow:disabled { opacity:0.3; cursor:default; box-shadow:none; }
}

/* Behind the Scenes gallery — 3 columns on desktop (was 2 → ~11,000px tall expanded); tiles use 640px thumbs (2026-10-09) */
@media (min-width:901px) { html body .home-gallery-track { column-count:3; column-gap:14px; } html body .home-gallery-item { margin-bottom:14px; } }

/* EXPERT ENDORSEMENTS — brought up to the 2026-10-09 section style (matches WSRP / We Do One Thing / FAQ) */
html body #endorsements { position:relative; overflow:hidden; isolation:isolate; border:0 !important;
  padding:clamp(60px,8vw,104px) 24px !important;
  background:radial-gradient(ellipse 55% 40% at 50% 0%, rgba(240,144,44,0.18) 0%, transparent 70%), radial-gradient(ellipse 70% 45% at 50% 100%, rgba(192,88,0,0.14) 0%, transparent 70%), linear-gradient(180deg,#120a06 0%,#0e0907 100%) !important; }
html body #endorsements::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; display:block !important; opacity:1 !important;
  background-image:linear-gradient(135deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(225deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(315deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(45deg, rgba(240,144,44,0.07) 25%, transparent 25%) !important;
  background-size:28px 28px !important; background-position:0 0 !important;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%) !important; mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%) !important; }
html body #endorsements::after { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(760px,84%); height:2px; z-index:-1;
  background:linear-gradient(90deg,transparent,#f0902c 50%,transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.5); }
html body #endorsements .end-eyebrow { color:#ffcf8a !important; font-size:0.72rem !important; letter-spacing:0.22em !important; margin-bottom:16px !important; }
html body #endorsements .end-eyebrow span { background:#f0902c !important; width:22px !important; }
html body #endorsements .end-eyebrow::after { content:''; display:block; width:22px; height:2px; background:#f0902c; }
html body #endorsements .end-title { font-size:clamp(2rem,4.8vw,3.4rem) !important; line-height:1.12 !important; margin-bottom:18px !important; }
html body #endorsements .end-title em { background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent !important; }
html body #endorsements .end-lead { color:rgba(253,251,212,0.82) !important; max-width:700px !important; margin-bottom:clamp(32px,5vw,46px) !important; }
/* logo tiles: keep white (logos need it) inside a gold-gradient frame, all the same size */
html body #endorsements .vet-logo-wall { gap:16px !important; }
html body #endorsements .vet-logo-wall > span { width:190px; height:130px; box-sizing:border-box; padding:14px !important;
  border:2px solid transparent !important; background:linear-gradient(#fff,#fff) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box !important;
  box-shadow:0 0 30px rgba(240,128,40,0.18), 0 16px 34px rgba(0,0,0,0.45) !important; border-radius:18px !important; }
html body #endorsements .vet-logo-wall img { height:auto !important; max-height:96px; max-width:100%; width:auto; object-fit:contain; }
/* review cards: same dark glass + gold-gradient frame as the WSRP "us" card */
html body #endorsements .vet-review-row { gap:22px; padding-top:8px; padding-bottom:14px; }
html body #endorsements .vet-review-card { position:relative; border-radius:20px !important; border:1.5px solid transparent !important;
  background:linear-gradient(180deg,#1c1109,#140c07) padding-box, linear-gradient(135deg,rgba(255,213,143,0.7),rgba(240,144,44,0.45) 45%,rgba(138,58,0,0.35)) border-box !important;
  box-shadow:0 18px 44px rgba(0,0,0,0.45) !important; padding:28px !important; }
html body #endorsements .vet-review-card::before { content:'\201C'; position:absolute; top:6px; right:22px; font-family:'Libre Baskerville',serif; font-size:5rem; line-height:1; color:rgba(240,144,44,0.22); pointer-events:none; }
html body #endorsements .vet-review-card:hover { transform:translateY(-4px); box-shadow:0 0 40px rgba(240,128,40,0.2), 0 24px 54px rgba(0,0,0,0.55) !important; }
html body #endorsements .vet-review-card > div[style*="letter-spacing:0.1em"] { background:linear-gradient(180deg,#ffd58f,#f0902c); -webkit-background-clip:text; background-clip:text; color:transparent !important; font-size:1.05rem !important; }
html body #endorsements .vet-review-card > span:first-child { border-radius:14px !important; background:#fff !important; box-shadow:0 0 0 2px rgba(255,207,138,0.55); }
html body #endorsements .vet-review-card a { color:#ffcf8a !important; }
.end-nav { display:none; }
@media (min-width:761px) {
  .end-nav { display:flex; justify-content:center; gap:14px; margin-top:clamp(18px,2.6vw,26px); }
}
@media (max-width:760px) {
  html body #endorsements .vet-logo-wall > span { width:100%; max-width:300px; height:120px; }
}
html body #endorsements .end-title { font-size:clamp(1.9rem,4.2vw,3.05rem) !important; max-width:900px; margin-left:auto !important; margin-right:auto !important; }
@media (max-width:760px) {
  html body #endorsements .vet-logo-wall { display:grid !important; grid-template-columns:1fr 1fr; flex-direction:initial !important; gap:12px !important; max-width:360px; margin-left:auto !important; margin-right:auto !important; }
  html body #endorsements .vet-logo-wall > span { width:auto; max-width:none; height:104px; padding:10px !important; }
  html body #endorsements .vet-logo-wall img { max-height:80px; }
  html body #endorsements .end-eyebrow { letter-spacing:0.16em !important; font-size:0.66rem !important; }
}

/* HOW DOGS ARE TRAINED — brought up to the 2026-10-09 section style (matches WSRP / We Do One Thing / Endorsements / FAQ) */
html body .sensory-stations { position:relative; overflow:hidden; isolation:isolate; border:0 !important;
  padding:clamp(60px,8vw,104px) 22px !important;
  background:radial-gradient(ellipse 55% 40% at 50% 0%, rgba(240,144,44,0.18) 0%, transparent 70%), radial-gradient(ellipse 70% 45% at 50% 100%, rgba(192,88,0,0.14) 0%, transparent 70%), linear-gradient(180deg,#120a06 0%,#0e0907 100%) !important; }
html body .sensory-stations::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; display:block !important; opacity:1 !important;
  background-image:linear-gradient(135deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(225deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(315deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(45deg, rgba(240,144,44,0.07) 25%, transparent 25%) !important;
  background-size:28px 28px !important; background-position:0 0 !important;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%) !important; mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%) !important; }
html body .sensory-stations::after { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(760px,84%); height:2px; z-index:-1;
  background:linear-gradient(90deg,transparent,#f0902c 50%,transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.5); }
html body .sensory-stations .ssx-eyebrow { color:#ffcf8a !important; font-size:0.72rem !important; letter-spacing:0.22em !important; margin-bottom:16px !important; }
html body .sensory-stations .ssx-eyebrow span { background:#f0902c !important; width:22px !important; }
html body .sensory-stations .ssx-title { font-size:clamp(2rem,4.8vw,3.4rem) !important; line-height:1.12 !important; margin-bottom:22px !important; }
html body .sensory-stations .ssx-title em { background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent !important; }
/* lead becomes a framed callout card */
html body .sensory-stations .ssx-lead { display:inline-block; text-align:center; font-weight:700 !important; font-size:clamp(1rem,1.6vw,1.12rem) !important; line-height:1.55 !important;
  padding:16px 24px; border-radius:16px; border:1.5px solid transparent;
  background:linear-gradient(#1a0f08,#1a0f08) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box;
  box-shadow:0 0 34px rgba(240,128,40,0.16), 0 14px 34px rgba(0,0,0,0.4); }
html body .sensory-stations .ssx-lead em { color:#ffcf8a !important; font-weight:800; }
html body .sensory-stations .ssx-body { color:rgba(253,251,212,0.78) !important; margin-top:22px !important; }
/* station cards: dark glass + gold-gradient frame */
html body .sensory-stations .ss-card { border-radius:20px !important; border:1.5px solid transparent !important;
  background:linear-gradient(180deg,#1c1109,#140c07) padding-box, linear-gradient(135deg,rgba(255,213,143,0.7),rgba(240,144,44,0.45) 45%,rgba(138,58,0,0.35)) border-box !important;
  box-shadow:0 18px 44px rgba(0,0,0,0.45) !important; }
html body .sensory-stations .ss-img { margin:10px 10px 0; border-radius:14px; overflow:hidden; }
html body .sensory-stations .ss-count { background:linear-gradient(135deg,#f08a2c,#c05800) !important; border:0 !important; color:#FDFBD4 !important; box-shadow:0 6px 16px rgba(0,0,0,0.45); }
html body .sensory-stations .ss-count b { color:#FDFBD4 !important; }
html body .sensory-stations .ss-cap--plain .ss-eyebrow { color:#ffcf8a !important; }
html body .sensory-stations .ss-desc { color:rgba(253,251,212,0.76) !important; }

/* SCOTT'S STORY modal — upgraded to the 2026-10-09 gold/ember style */
html body #meetScottBioModal { background:rgba(8,5,3,0.72); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
html body #meetScottBioModal .modal-card { max-width:600px; border-radius:22px; border:1.5px solid transparent !important;
  background:linear-gradient(180deg,#1c1109 0%,#120a06 100%) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box !important;
  box-shadow:0 0 0 6px rgba(240,144,44,0.08), 0 0 60px rgba(240,128,40,0.25), 0 40px 90px rgba(0,0,0,0.7) !important; scrollbar-width:thin; scrollbar-color:#8a3a00 transparent; }
html body #meetScottBioModal.open .modal-card { animation:msb-in .32s cubic-bezier(.2,.8,.2,1); }
@keyframes msb-in { from { opacity:0; transform:translateY(14px) scale(.98); } to { opacity:1; transform:none; } }
html body #meetScottBioModal .modal-card-img { border-radius:20px 20px 0 0; aspect-ratio:16/9; -webkit-mask-image:linear-gradient(180deg,#000 70%,transparent 100%); mask-image:linear-gradient(180deg,#000 70%,transparent 100%); }
html body #meetScottBioModal .modal-card-body { padding:6px clamp(22px,4vw,36px) clamp(26px,4vw,36px); position:relative; }
html body #meetScottBioModal .modal-card-body::before { content:''; display:block; width:min(320px,70%); height:2px; margin:0 0 20px; background:linear-gradient(90deg,#f0902c,transparent); box-shadow:0 0 14px rgba(240,144,44,0.5); }
html body #meetScottBioModal .msb-eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 10px; font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:#ffcf8a; }
html body #meetScottBioModal .msb-eyebrow::before { content:''; width:22px; height:2px; background:#f0902c; }
html body #meetScottBioModal h3 { font-size:clamp(1.6rem,3.4vw,2.1rem); line-height:1.15; margin:0 0 16px; }
html body #meetScottBioModal h3 em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
html body #meetScottBioModal .msb-chips { list-style:none; margin:0 0 20px; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
html body #meetScottBioModal .msb-chips li { padding:7px 13px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.76rem; font-weight:800; letter-spacing:0.03em; color:#ffe2b0; background:rgba(240,144,44,0.10); border:1px solid rgba(255,207,138,0.45); }
html body #meetScottBioModal p:not(.msb-eyebrow) { font-size:1rem; line-height:1.8; color:rgba(253,251,212,0.82); }
html body #meetScottBioModal p strong { color:#ffcf8a !important; }
html body #meetScottBioModal .msb-btn { display:inline-flex; align-items:center; margin-top:24px; padding:14px 26px; border-radius:999px; text-decoration:none;
  background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; font-family:'Manrope',sans-serif; font-size:0.84rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase;
  box-shadow:0 12px 30px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14); }
html body #meetScottBioModal .modal-close { width:40px; height:40px; z-index:3; background:rgba(13,9,7,0.6) !important; border:1px solid rgba(255,207,138,0.55) !important; color:#FDFBD4; -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
html body #meetScottBioModal .modal-close:hover { background:linear-gradient(135deg,#f08a2c,#c05800) !important; border-color:transparent !important; }

/* COMMERCIAL VIDEO — header + frame upgrade to the 2026-10-09 section style */
html body .hp-ad::after { left:50% !important; right:auto !important; bottom:auto !important; transform:translateX(-50%); width:min(760px,84%); height:2px; background:linear-gradient(90deg,transparent,#f0902c 50%,transparent) !important; box-shadow:0 0 18px 2px rgba(240,144,44,0.5); }
html body .hp-ad { border-top:0 !important; }
html body .hp-ad .hp-ad-kicker { margin-bottom:16px !important; font-size:0.72rem; }
.hp-ad-kicker::after { content:''; width:20px; height:2px; background:#f0902c; }
.hp-ad-title { font-family:'Libre Baskerville',serif; font-size:clamp(1.9rem,4.4vw,3.2rem); font-weight:700; letter-spacing:-0.02em; line-height:1.12; color:#FDFBD4; margin:0 auto 14px; max-width:880px; text-shadow:0 4px 24px rgba(0,0,0,0.5); }
.hp-ad-title em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hp-ad-sub { font-family:'Manrope',sans-serif; font-size:clamp(1rem,1.6vw,1.12rem); line-height:1.6; color:rgba(253,251,212,0.82); margin:0 auto clamp(28px,4vw,40px); max-width:620px; }
html body .hp-ad-frame { border:1.5px solid transparent !important; border-radius:22px !important;
  background:linear-gradient(#000,#000) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box !important; }
.hp-ad-tag { position:absolute; top:14px; left:14px; z-index:3; padding:7px 12px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.66rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase;
  color:#FDFBD4; background:rgba(13,9,7,0.6); border:1px solid rgba(255,207,138,0.45); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); pointer-events:none; }
.hp-ad-frame.playing .hp-ad-tag { display:none; }
html body .hp-ad-play span.btn { position:relative; box-shadow:0 0 0 8px rgba(255,207,138,0.22), 0 0 40px rgba(240,128,40,0.55), 0 18px 40px rgba(0,0,0,0.45) !important; }
html body .hp-ad-play span.btn::after { content:''; position:absolute; inset:-8px; border-radius:50%; border:2px solid rgba(255,207,138,0.6); animation:hp-ad-ping 2.2s ease-out infinite; }
@keyframes hp-ad-ping { 0% { transform:scale(1); opacity:.9; } 100% { transform:scale(1.45); opacity:0; } }
@media (prefers-reduced-motion: reduce) { html body .hp-ad-play span.btn::after { animation:none; } }
html body .hp-ad-play span.lab { background:rgba(13,9,7,0.65) !important; color:#FDFBD4 !important; border:1px solid rgba(255,207,138,0.5); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.hp-ad-ctas { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:14px 26px; margin-top:clamp(28px,4vw,40px); }
html body .hp-ad-btn { display:inline-flex; align-items:center; padding:16px 32px; border-radius:999px; text-decoration:none; background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4;
  font-family:'Manrope',sans-serif; font-size:0.9rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; box-shadow:0 14px 34px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14); }
html body .hp-ad-link { color:#ffcf8a; font-family:'Manrope',sans-serif; font-size:0.9rem; font-weight:800; letter-spacing:0.04em; text-decoration:none; border-bottom:1px solid rgba(255,207,138,0.5); padding-bottom:2px; }
/* We Do One Thing photo is now the leash/avoidance shot: square on phones so both the caged-snake station and the dog fit */
@media (max-width:760px) { html body .wdo2-photo { aspect-ratio:1 / 1; } html body .wdo2-photo img { object-position:center 67% !important; } }

/* Behind the Scenes gallery — fixed-tile GRID (2026-10-09). CSS columns re-balanced as photos loaded, so tiles
   shuffled sideways; a grid never reflows. Collapsed = only the first rows exist on screen (display:none hides the rest,
   so their lazy images don't download until "See More Photos" is clicked). */
html body .home-gallery-track { column-count:initial !important; columns:auto !important; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
html body .home-gallery-track.collapsed { max-height:none !important; overflow:visible !important; -webkit-mask-image:none !important; mask-image:none !important; }
html body .home-gallery-track.collapsed .home-gallery-item:nth-child(n+10) { display:none !important; }
html body .home-gallery-item { margin:0 !important; aspect-ratio:4 / 5; background:#1a120c !important; break-inside:auto; }
html body .home-gallery-item picture { display:block; width:100%; height:100%; }
html body .home-gallery-item img { width:100% !important; height:100% !important; object-fit:cover; display:block; }
@media (max-width:760px) {
  html body .home-gallery-track { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  html body .home-gallery-track.collapsed .home-gallery-item:nth-child(n+7) { display:none !important; }
}
html body .home-gallery-more { display:inline-flex; align-items:center; gap:8px; padding:15px 30px; border-radius:999px; cursor:pointer; font-family:'Manrope',sans-serif; font-size:0.88rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase;
  color:#FDFBD4; background:linear-gradient(135deg,#f08a2c,#c05800); border:0; box-shadow:0 14px 34px rgba(192,88,0,0.45), 0 0 0 4px rgba(240,144,44,0.14); }
html body .home-gallery-more:hover { filter:brightness(1.08); }

/* Meet Your Trainer — "10+ years" stat line (2026-10-09) */
html body .mt-exp { display:flex; align-items:center; gap:14px; margin:14px 0 14px; padding:12px 18px 12px 14px; width:fit-content; border-radius:14px;
  background:linear-gradient(180deg,rgba(240,144,44,0.12),rgba(240,144,44,0.03)); border:1px solid rgba(255,207,138,0.4); }
html body .mt-exp b { font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(2rem,3.4vw,2.6rem); line-height:1; letter-spacing:-0.02em;
  background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
html body .mt-exp span { font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; line-height:1.45; color:#FDFBD4; }
html body .mt-exps { display:flex; flex-wrap:wrap; gap:10px; margin:14px 0; }
html body .mt-exps .mt-exp { margin:0; }
@media (max-width:760px) {
  html body .mt-exps { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  html body .mt-exps .mt-exp { width:auto; flex-direction:column; align-items:flex-start; gap:6px; padding:12px 14px; }
  html body .mt-exps .mt-exp span { font-size:0.68rem; }
}

/* Meet Your Trainer photo → crossfade slider (2026-10-09), same mechanics as #wotdSlider */
#mtSlider { position:relative; }
#mtSlider .wotd-slide { position:absolute; inset:0; opacity:0; transition:opacity 1s ease; }
#mtSlider .wotd-slide.active { opacity:1; position:relative; height:100%; }
#mtSlider .wotd-slide img { width:100%; height:100%; object-fit:cover; display:block; }
#mtSlider .trainer-img-overlay { z-index:2; }
#mtSlider .wotd-dots { z-index:3; bottom:12px; }

/* Logo + How Dogs Are Trained read as ONE section (2026-10-09): logo band takes the same ember background, no seam between them */
html body .hp-brand { border-bottom:0 !important; padding-bottom:clamp(8px,2vw,20px) !important;
  background:radial-gradient(ellipse 50% 60% at 50% 45%, rgba(240,144,44,0.20) 0%, transparent 70%), linear-gradient(180deg,#120a06 0%,#120a06 100%) !important; }
html body .hp-brand + .sensory-stations, html body .hp-brand ~ .sensory-stations { border-top:0 !important; padding-top:clamp(20px,3vw,36px) !important;
  background:linear-gradient(180deg,#120a06 0%,#0e0907 100%) !important; }
html body .hp-brand ~ .sensory-stations::after { display:none !important; }
html body .hp-brand::after { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(760px,84%); height:2px; z-index:-1;
  background:linear-gradient(90deg,transparent,#f0902c 50%,transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.5); }
html body .hp-brand::before { -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 45%,transparent 100%) !important; mask-image:linear-gradient(180deg,#000 0%,#000 45%,transparent 100%) !important; }
html body .hp-brand ~ .sensory-stations::before {
  -webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%), linear-gradient(180deg,transparent 0,#000 220px) !important;
  -webkit-mask-composite:source-in !important;
  mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%), linear-gradient(180deg,transparent 0,#000 220px) !important;
  mask-composite:intersect !important; }

/* Reviews — featured real-world proof quote (2026-10-09) */
.tm-proof { position:relative; max-width:860px; margin:clamp(8px,2vw,16px) auto clamp(30px,4vw,44px); padding:clamp(26px,4vw,40px) clamp(22px,4vw,48px); text-align:center; border-radius:22px;
  border:1.5px solid transparent; background:linear-gradient(180deg,#1c1109,#140c07) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box;
  box-shadow:0 0 0 6px rgba(240,144,44,0.07), 0 0 50px rgba(240,128,40,0.22), 0 24px 60px rgba(0,0,0,0.5); }
.tm-proof::before { content:'\201C'; position:absolute; top:-6px; left:22px; font-family:'Libre Baskerville',serif; font-size:7rem; line-height:1; color:rgba(240,144,44,0.25); pointer-events:none; }
.tm-proof-badge { display:inline-block; margin-bottom:16px; padding:6px 14px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.68rem; font-weight:800; letter-spacing:0.16em; text-transform:uppercase;
  color:#FDFBD4; background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 6px 16px rgba(192,88,0,0.4); }
.tm-proof blockquote { margin:0 0 16px; font-family:'Libre Baskerville',serif; font-size:clamp(1.2rem,2.4vw,1.65rem); line-height:1.5; color:#FDFBD4; }
.tm-proof blockquote em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.tm-proof figcaption { font-family:'Manrope',sans-serif; font-size:0.78rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:rgba(253,251,212,0.65); }
.tm-proof-stars { color:#f0902c; letter-spacing:0.12em; margin-right:8px; }
@media (max-width:760px) { .tm-proof { margin-left:16px; margin-right:16px; } .tm-proof::before { font-size:5rem; left:14px; } }
.tm-proof-date { display:block; margin-top:8px; font-size:0.72rem; letter-spacing:0.14em; color:#ffcf8a; }

/* BEHIND THE SCENES gallery + TALK TO US — brought up to the 2026-10-09 section style */
html body .home-gallery-section, html body .home-cta-final { position:relative; overflow:hidden; isolation:isolate; border:0 !important;
  background:radial-gradient(ellipse 55% 40% at 50% 0%, rgba(240,144,44,0.18) 0%, transparent 70%), radial-gradient(ellipse 70% 45% at 50% 100%, rgba(192,88,0,0.14) 0%, transparent 70%), linear-gradient(180deg,#120a06 0%,#0e0907 100%) !important; }
html body .home-gallery-section::before, html body .home-cta-final::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; display:block !important; opacity:1 !important;
  background-image:linear-gradient(135deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(225deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(315deg, rgba(240,144,44,0.07) 25%, transparent 25%), linear-gradient(45deg, rgba(240,144,44,0.07) 25%, transparent 25%) !important;
  background-size:28px 28px !important; background-position:0 0 !important;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%) !important; mask-image:linear-gradient(90deg,#000 0%,transparent 18%,transparent 82%,#000 100%) !important; }
html body .home-gallery-section::after, html body .home-cta-final::after { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(760px,84%); height:2px; z-index:-1;
  background:linear-gradient(90deg,transparent,#f0902c 50%,transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.5); }
/* gallery header: centered, gold eyebrow with lines, big serif title */
html body .home-gallery-section { padding:clamp(60px,8vw,104px) 24px !important; }
html body .home-gallery-inner { text-align:center; }
html body .home-gallery-eyebrow, html body .home-cta-final .tag { display:inline-flex !important; align-items:center; gap:10px; justify-content:center; margin:0 0 16px !important; padding:0 !important; background:none !important; border:0 !important;
  font-family:'Manrope',sans-serif !important; font-size:0.72rem !important; font-weight:800 !important; letter-spacing:0.22em !important; text-transform:uppercase; color:#ffcf8a !important; }
html body .home-gallery-eyebrow::before, html body .home-gallery-eyebrow::after, html body .home-cta-final .tag::before, html body .home-cta-final .tag::after { content:''; display:block; width:22px; height:2px; background:#f0902c; position:static; }
html body .home-gallery-title, html body .home-cta-final h2 { font-family:'Libre Baskerville',serif !important; font-size:clamp(2rem,4.8vw,3.4rem) !important; font-weight:700; line-height:1.12 !important; letter-spacing:-0.02em; color:#FDFBD4 !important; margin:0 auto 16px !important; text-align:center; }
html body .home-gallery-title em, html body .home-cta-final h2 em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent !important; }
html body .home-gallery-sub, html body .home-cta-final p { font-family:'Manrope',sans-serif; font-size:clamp(1rem,1.6vw,1.12rem) !important; line-height:1.65; color:rgba(253,251,212,0.8) !important; max-width:640px; margin:0 auto clamp(30px,4vw,44px) !important; text-align:center; }
/* gallery tiles: gold-gradient frame */
html body .home-gallery-item { border:1.5px solid transparent !important; border-radius:16px !important;
  background:linear-gradient(#1a120c,#1a120c) padding-box, linear-gradient(135deg,rgba(255,213,143,0.75),rgba(240,144,44,0.45) 45%,rgba(138,58,0,0.35)) border-box !important;
  box-shadow:0 14px 34px rgba(0,0,0,0.45) !important; }
html body .home-gallery-item img { border-radius:14px; }
/* talk to us */
html body .home-cta-final { padding:clamp(64px,8vw,110px) 24px !important; text-align:center; }
html body .home-cta-final-inner { max-width:760px; margin:0 auto; }
html body .home-cta-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; }
html body .home-cta-btn { display:inline-flex !important; align-items:center; gap:10px; padding:16px 30px !important; border-radius:999px !important; text-decoration:none;
  font-family:'Manrope',sans-serif !important; font-size:0.9rem !important; font-weight:800 !important; letter-spacing:0.05em; text-transform:uppercase; transition:transform .15s, filter .15s; }
html body .home-cta-btn-primary { background:linear-gradient(135deg,#f08a2c,#c05800) !important; color:#FDFBD4 !important; border:0 !important; box-shadow:0 14px 34px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14) !important; }
html body .home-cta-btn-ghost { background:rgba(253,251,212,0.04) !important; color:#FDFBD4 !important; border:1px solid rgba(255,207,138,0.5) !important; box-shadow:none !important; }
html body .home-cta-btn:hover { transform:translateY(-2px); filter:brightness(1.08); }
@media (max-width:760px) { html body .home-cta-actions { flex-direction:column; align-items:stretch; max-width:340px; margin:0 auto; } html body .home-cta-btn { justify-content:center; } }
html body .home-gallery-section .home-gallery-item { border-width:2px !important; box-shadow:0 0 0 1px rgba(255,207,138,0.15), 0 14px 34px rgba(0,0,0,0.45) !important; }

/* PRICING headers — brought up to the 2026-10-09 section style (centered gold eyebrow, big serif title, gradient em) */
html body #pricing .home-pricing-inner > .section-label, html body #pricing .home-price-compare-kicker {
  display:flex !important; align-items:center; justify-content:center; gap:10px; margin:0 0 16px !important; padding:0 !important; background:none !important; border:0 !important;
  font-family:'Manrope',sans-serif !important; font-size:0.72rem !important; font-weight:800 !important; letter-spacing:0.22em !important; text-transform:uppercase; color:#ffcf8a !important; text-align:center; }
html body #pricing .home-pricing-inner > .section-label::before, html body #pricing .home-pricing-inner > .section-label::after { content:''; display:block; width:22px; height:2px; background:#f0902c; position:static; }
html body #pricing .home-pricing-inner > .section-heading { font-family:'Libre Baskerville',serif !important; font-size:clamp(2rem,4.8vw,3.4rem) !important; line-height:1.12 !important; letter-spacing:-0.02em; color:#FDFBD4 !important; text-align:center !important; margin:0 auto 16px !important; }
html body #pricing .home-pricing-inner > .section-heading em, html body #pricing .home-price-compare-title em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent !important; }
html body #pricing .home-pricing-inner > .section-sub { text-align:center !important; max-width:680px; margin:0 auto clamp(36px,5vw,56px) !important; font-size:clamp(1rem,1.6vw,1.12rem) !important; line-height:1.65; color:rgba(253,251,212,0.8) !important; }
html body #pricing .home-price-compare-title { font-size:clamp(1.6rem,3.4vw,2.4rem) !important; line-height:1.15; }
@media (max-width:760px) { html body #pricing .home-pricing-inner > .section-sub, html body #pricing .home-pricing-inner > .section-heading { padding-left:18px; padding-right:18px; } }

/* index-v2 ONLY (body.home-v2): compact H1 "Ultimate" section on phones — stat tiles become a tight 2-col strip (2026-10-09 rating fixes) */
@media (max-width:760px) {
  body.home-v2 .ult { padding-top:44px !important; padding-bottom:44px !important; }
  body.home-v2 .ult-orn, body.home-v2 .ult-rule { display:none !important; }
  body.home-v2 .ult-sub { margin-bottom:22px !important; }
  body.home-v2 .ult-grid { grid-template-columns:1fr 1fr !important; gap:8px !important; }
  body.home-v2 .ult-tile { padding:14px 12px 12px !important; border-radius:14px !important; }
  body.home-v2 .ult-ico, body.home-v2 .ult-desc { display:none !important; }
  body.home-v2 .ult-num { font-size:1.9rem !important; }
  body.home-v2 .ult-lab { font-size:0.62rem !important; letter-spacing:0.1em !important; margin-top:6px !important; }
  body.home-v2 .ult-ctas { margin-top:20px !important; }
}
@media (max-width:760px) { body.home-v2 .ult-sub { padding:0 14px; } body.home-v2 .ult-lab { font-size:0.58rem !important; letter-spacing:0.08em !important; } }
/* phones: Welcome photo back ON TOP of the booking card (2026-10-09, user request); kept short so the card starts on the first screen */
@media (max-width:760px) {
  #what-we-do-section .what-we-do-copy { order:0 !important; }
  #what-we-do-section .what-we-do-img { order:-1 !important; height:38vh !important; min-height:240px !important; }
}

/* Phone quick-book bar on the Welcome photo (2026-10-09) */
.wotd-bookbar { display:none; }
@media (max-width:760px) {
  #wotdSlider .wotd-bookbar { position:absolute; left:10px; right:10px; bottom:10px; z-index:4; display:flex; align-items:center; gap:10px; padding:9px 9px 9px 14px; border-radius:14px; text-decoration:none;
    background:rgba(13,9,7,0.82); border:1px solid rgba(255,207,138,0.55); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); box-shadow:0 10px 26px rgba(0,0,0,0.5); }
  #wotdSlider .wbb-l { display:flex; flex-direction:column; line-height:1.15; min-width:0; }
  #wotdSlider .wbb-k { font-family:'Manrope',sans-serif; font-size:0.56rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:#ffcf8a; }
  #wotdSlider .wbb-d { font-family:'Libre Baskerville',serif; font-size:0.95rem; font-weight:700; color:#FDFBD4; white-space:nowrap; }
  #wotdSlider .wbb-p { margin-left:auto; font-family:'Libre Baskerville',serif; font-weight:700; font-size:1.05rem; color:#ffcf8a; white-space:nowrap; }
  #wotdSlider .wbb-p s { font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:600; color:rgba(253,251,212,0.55); margin-right:3px; }
  #wotdSlider .wbb-go { padding:9px 13px; border-radius:10px; background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:800; letter-spacing:0.04em; text-transform:uppercase; white-space:nowrap; box-shadow:0 6px 16px rgba(192,88,0,0.45); }
  #wotdSlider .wotd-overlay { padding-bottom:78px !important; }
}
/* How Dogs Are Trained — long paragraph behind "Read how the course works" on phones (2026-10-09) */
.ssx-more summary { display:none; }
@media (max-width:760px) {
  .ssx-more summary { display:inline-flex; align-items:center; gap:8px; margin-top:18px; cursor:pointer; list-style:none; font-family:'Manrope',sans-serif; font-size:0.8rem; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; color:#ffcf8a; border-bottom:1px solid rgba(255,207,138,0.5); padding-bottom:2px; }
  .ssx-more summary::-webkit-details-marker { display:none; }
  .ssx-more summary::after { content:'+'; font-size:1rem; }
  .ssx-more[open] summary::after { content:'\2212'; }
}
@media (max-width:760px) { #wotdSlider .wotd-overlay .tio-welcome-sub { display:none; } #wotdSlider .wotd-overlay { padding-bottom:72px !important; } }
/* 2026-10-09 (later): quick-book bar removed (covered the photo). Phones: booking card FIRST, Welcome photo below it; subtitle back. */
@media (max-width:760px) {
  #what-we-do-section .what-we-do-copy { order:-1 !important; }
  #what-we-do-section .what-we-do-img { order:0 !important; height:42vh !important; min-height:260px !important; }
  #wotdSlider .wotd-overlay .tio-welcome-sub { display:block !important; }
  #wotdSlider .wotd-overlay { padding-bottom:34px !important; }
}

/* WHY NOW expanded to "by the numbers" (2026-10-09): bite + SCV population stats restored (30–90K modeled estimate, NOT 500K) */
.wn-h { font-family:'Libre Baskerville',serif; font-size:clamp(1.6rem,3.6vw,2.5rem); font-weight:700; line-height:1.15; letter-spacing:-0.02em; color:#FDFBD4; margin:0 auto clamp(22px,3vw,30px); max-width:820px; }
.wn-h em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
a.wn-src { text-decoration:none; border-bottom:1px solid rgba(255,176,122,0.5); align-self:flex-start; }
@media (max-width:760px) {
  html body .wn-grid { grid-template-columns:1fr 1fr !important; gap:10px; }
  html body .wn-stat { padding:14px 12px !important; gap:6px; }
  html body .wn-num { font-size:1.75rem !important; }
  html body .wn-lab { font-size:0.78rem !important; line-height:1.4; }
  html body .wn-src { font-size:0.58rem !important; }
}

/* H1 "Ultimate" section — NO photo (2026-10-09). Pure graphic treatment: layered ember glows + diamond-back scale pattern + gold hairlines.
   The rattlesnake portrait moved into the Welcome photo slider instead. */
html body .ult { background-attachment:scroll !important;
  background-color:#0d0806 !important;
  background-image:
    radial-gradient(ellipse 48% 38% at 50% 34%, rgba(255,170,80,0.26) 0%, rgba(240,128,40,0.10) 45%, transparent 75%),
    radial-gradient(ellipse 70% 50% at 50% 110%, rgba(192,88,0,0.30) 0%, transparent 70%),
    radial-gradient(ellipse 40% 60% at 0% 50%, rgba(150,40,10,0.18) 0%, transparent 70%),
    radial-gradient(ellipse 40% 60% at 100% 50%, rgba(150,40,10,0.18) 0%, transparent 70%),
    linear-gradient(180deg,#160a05 0%,#0d0806 55%,#120805 100%) !important;
  background-size:auto !important; background-position:center !important;
  border-top:0 !important; border-bottom:0 !important; }
/* diamond-back scale pattern, strongest at the edges, fading out behind the headline */
html body .ult::after { opacity:1 !important;
  background-image:
    linear-gradient(135deg, rgba(240,144,44,0.10) 25%, transparent 25%), linear-gradient(225deg, rgba(240,144,44,0.10) 25%, transparent 25%),
    linear-gradient(315deg, rgba(240,144,44,0.10) 25%, transparent 25%), linear-gradient(45deg, rgba(240,144,44,0.10) 25%, transparent 25%) !important;
  background-size:44px 44px !important; background-position:-22px 0,-22px 0,0 0,0 0 !important;
  -webkit-mask-image:radial-gradient(ellipse 62% 58% at 50% 40%, transparent 40%, #000 100%) !important; mask-image:radial-gradient(ellipse 62% 58% at 50% 40%, transparent 40%, #000 100%) !important; }
/* gold hairlines top + bottom with glow */
html body .ult .ult-inner { position:relative; }
html body .ult { box-shadow:inset 0 2px 0 0 rgba(255,207,138,0.0); }
html body .ult > .ult-inner::before, html body .ult > .ult-inner::after { content:''; position:absolute; left:50%; transform:translateX(-50%); width:min(760px,90vw); height:2px; pointer-events:none;
  background:linear-gradient(90deg,transparent,#f0902c 50%,transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.5); }
html body .ult > .ult-inner::before { top:calc(-1 * clamp(44px,8vw,110px)); }
html body .ult > .ult-inner::after { bottom:calc(-1 * clamp(44px,7vw,96px)); }
@media (max-width:760px) { html body .ult > .ult-inner::before { top:-30px; } html body .ult > .ult-inner::after { bottom:-30px; } }

/* Welcome card rating line (2026-10-09) */
html body .wotd-rating { margin:0 0 12px !important; font-family:'Manrope',sans-serif; font-size:0.78rem !important; font-weight:700; letter-spacing:0.02em; color:rgba(253,251,212,0.82) !important; }
html body .wotd-rating b { color:#f0902c; letter-spacing:0.1em; margin-right:4px; }
html body .wotd-rating a { color:#ffcf8a; text-decoration:none; border-bottom:1px solid rgba(255,207,138,0.5); }

/* Review teaser after the numbers (2026-10-09) */
.rv-teaser { width:100vw; box-sizing:border-box; padding:clamp(34px,5vw,56px) 20px; text-align:center; background:linear-gradient(180deg,#0f0906,#130a06); border-top:1px solid rgba(255,207,138,0.14); }
.rv-k { margin:0 0 18px; font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:800; letter-spacing:0.18em; text-transform:uppercase; color:#ffcf8a; }
.rv-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; max-width:960px; margin:0 auto; text-align:left; }
.rv-grid figure { margin:0; padding:22px 22px 18px; border-radius:18px; border:1.5px solid transparent;
  background:linear-gradient(180deg,#1c1109,#140c07) padding-box, linear-gradient(135deg,rgba(255,213,143,0.65),rgba(240,144,44,0.4) 45%,rgba(138,58,0,0.3)) border-box; box-shadow:0 16px 40px rgba(0,0,0,0.4); }
.rv-grid blockquote { margin:0 0 12px; font-family:'Libre Baskerville',serif; font-size:clamp(1rem,1.7vw,1.15rem); line-height:1.55; color:#FDFBD4; }
.rv-grid blockquote em { font-style:italic; color:#ffcf8a; }
.rv-grid figcaption { font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:#f0902c; }
.rv-more { display:inline-block; margin-top:18px; font-family:'Manrope',sans-serif; font-size:0.84rem; font-weight:800; letter-spacing:0.04em; color:#ffcf8a; text-decoration:none; border-bottom:1px solid rgba(255,207,138,0.5); }
@media (max-width:760px) { .rv-grid { grid-template-columns:1fr; } .rv-grid figure { padding:18px 16px 14px; } }

/* 2026-10-09: H1 gold word is now "Most Complete" (two words) — size it so it fits one line on desktop, two on phones */
html body .ult-title .ult-gold { font-size:clamp(2.9rem,8.2vw,6.4rem) !important; line-height:1.05 !important; }
@media (max-width:560px) { html body .ult-title .ult-gold { font-size:3rem !important; } }
/* H1 stat tiles compacted: one tidy row of number + label (no icons/descriptions) — desktop 6-across, phones 3-across */
html body .ult-grid { grid-template-columns:repeat(6,minmax(0,1fr)) !important; gap:10px !important; max-width:1000px; margin:0 auto; }
html body .ult-tile { padding:16px 10px 14px !important; text-align:center !important; border-radius:14px !important; }
html body .ult-ico, html body .ult-desc { display:none !important; }
html body .ult-num { font-size:clamp(1.7rem,2.6vw,2.2rem) !important; }
html body .ult-lab { font-size:0.6rem !important; letter-spacing:0.1em !important; margin-top:6px !important; line-height:1.35; }
@media (max-width:760px) { html body .ult-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:8px !important; } html body .ult-tile { padding:12px 6px 10px !important; } html body .ult-num { font-size:1.55rem !important; } html body .ult-lab { font-size:0.54rem !important; letter-spacing:0.06em !important; } }
/* In the News joined to Endorsements: no seam, reads as one proof block */
html body #endorsements { padding-bottom:clamp(24px,3vw,36px) !important; }
html body #endorsements + .hp-news { border-top:0 !important; padding-top:clamp(20px,3vw,32px) !important; background:linear-gradient(180deg,#0e0907 0%,#120a06 100%) !important; }
html body #endorsements + .hp-news::after { display:none !important; }
/* Welcome card: "Questions first?" link under the booking widget */
html body .wotd-faq { margin:14px 0 0 !important; font-family:'Manrope',sans-serif; font-size:0.84rem !important; color:rgba(253,251,212,0.7) !important; }
html body .wotd-faq a { color:#ffcf8a; font-weight:800; text-decoration:none; border-bottom:1px solid rgba(255,207,138,0.5); }
@media (max-width:760px) { html body.home-v2 .ult-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:8px !important; } html body.home-v2 .ult-tile { padding:12px 6px 10px !important; } html body.home-v2 .ult-num { font-size:1.5rem !important; } html body.home-v2 .ult-lab { font-size:0.52rem !important; letter-spacing:0.05em !important; } }

/* Scent-work-first callout in We Solve a Real Problem (2026-10-12) */
.wsrp2-scent { max-width:820px; margin:clamp(26px,4vw,38px) auto 0; padding:clamp(20px,3vw,28px) clamp(20px,3.4vw,32px); text-align:left; border-radius:18px;
  border:1.5px solid transparent; background:linear-gradient(#1a0f08,#1a0f08) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box;
  box-shadow:0 0 40px rgba(240,128,40,0.18), 0 18px 44px rgba(0,0,0,0.45); }
.wsrp2-scent-k { display:flex; align-items:center; gap:10px; margin:0 0 10px; font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:800; letter-spacing:0.2em; text-transform:uppercase; color:#ffcf8a; }
.wsrp2-scent-k::before { content:''; width:22px; height:2px; background:#f0902c; }
.wsrp2-scent p:not(.wsrp2-scent-k) { margin:0; font-family:'Manrope',sans-serif; font-size:clamp(0.98rem,1.5vw,1.08rem); line-height:1.7; color:rgba(253,251,212,0.85); }
.wsrp2-scent strong { color:#ffcf8a; }

/* Stop slider height jumps (2026-10-12): slides are all absolutely positioned and fill a box whose height
   no longer depends on which photo is showing. Desktop: box = the row height (set by the text column / a min-height). */
@media (min-width:761px) {
  html body #wotdSlider, html body #mtSlider { position:relative !important; align-self:stretch; height:auto !important; }
  html body #wotdSlider .wotd-slide, html body #wotdSlider .wotd-slide.active,
  html body #mtSlider .wotd-slide, html body #mtSlider .wotd-slide.active { position:absolute !important; inset:0 !important; height:100% !important; }
  html body #wotdSlider .wotd-slide img, html body #mtSlider .wotd-slide img { width:100% !important; height:100% !important; object-fit:cover !important; }
  html body #meet-our-trainer-section { min-height:620px !important; }
}

/* Rattlesnake Professionals: Cary's TikTok click-to-play (2026-10-12) */
html body #wrpVideo { position:relative; overflow:hidden; background:#000; }
html body #wrpVideo .wrpv-cover { position:absolute; inset:0; width:100%; height:100%; padding:0; border:0; cursor:pointer; background:#000; display:block; }
html body #wrpVideo .wrpv-cover picture, html body #wrpVideo .wrpv-cover img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 32%; }
html body #wrpVideo .wrpv-cover::after { content:''; position:absolute; inset:0; background:linear-gradient(to top, rgba(0,0,0,0.5), transparent 45%); pointer-events:none; }
html body #wrpVideo .wrpv-play { position:absolute; z-index:2; left:50%; bottom:clamp(60px,12%,110px); transform:translateX(-50%); width:84px; height:84px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 0 0 8px rgba(255,207,138,0.22), 0 0 40px rgba(240,128,40,0.55); transition:transform .2s; }
html body #wrpVideo .wrpv-cover:hover .wrpv-play { transform:translateX(-50%) scale(1.07); }
html body #wrpVideo .wrpv-play svg { width:34%; height:34%; fill:#FDFBD4; margin-left:7%; }
html body #wrpVideo .wrpv-tag { position:absolute; z-index:2; top:16px; left:16px; padding:7px 13px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:#FDFBD4; background:rgba(13,9,7,0.65); border:1px solid rgba(255,207,138,0.5); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
html body #wrpVideo.playing .wrpv-cover { display:none; }
html body #wrpVideo iframe { position:absolute; top:0; bottom:0; left:50%; transform:translateX(-50%); height:100%; aspect-ratio:9/16; max-width:100%; border:0; background:#000; }
@media (max-width:760px) { html body #wrpVideo { height:58vh !important; min-height:380px !important; aspect-ratio:auto; } html body #wrpVideo .wrpv-play { width:72px; height:72px; bottom:56px; } }

/* MEET THE TEAM strip on home (2026-10-13) */
.hts { width:100vw; box-sizing:border-box; padding:clamp(48px,7vw,80px) 20px; text-align:center; position:relative; isolation:isolate;
  background:radial-gradient(ellipse 55% 45% at 50% 0%, rgba(240,144,44,0.16) 0%, transparent 70%), linear-gradient(180deg,#120a06,#0e0907); }
.hts::after { content:''; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(720px,84%); height:2px; z-index:-1; background:linear-gradient(90deg,transparent,#f0902c 50%,transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.45); }
.hts-in { max-width:1080px; margin:0 auto; }
.hts-k { display:inline-flex; align-items:center; gap:10px; margin:0 0 14px; font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:#ffcf8a; }
.hts-k::before, .hts-k::after { content:''; width:22px; height:2px; background:#f0902c; }
.hts-h { font-family:'Libre Baskerville',serif; font-size:clamp(1.8rem,4.2vw,2.8rem); font-weight:700; line-height:1.12; color:#FDFBD4; margin:0 0 clamp(26px,4vw,38px); }
.hts-h em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hts-roster { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; }
.hts-roster a { display:block; text-decoration:none; color:#FDFBD4; padding:16px 10px 18px; border-radius:18px; border:1.5px solid transparent;
  background:linear-gradient(180deg,#1c1109,#140c07) padding-box, linear-gradient(135deg,rgba(255,213,143,0.6),rgba(240,144,44,0.35) 45%,rgba(138,58,0,0.3)) border-box; transition:transform .18s; }
.hts-roster a:hover { transform:translateY(-3px); }
.hts-roster .av { width:92px; height:92px; margin:0 auto 12px; border-radius:50%; overflow:hidden; border:2px solid rgba(255,207,138,0.6); background:#1a0f08; }
.hts-roster .av img { width:100%; height:100%; object-fit:cover; display:block; }
.hts-roster b { display:block; font-family:'Libre Baskerville',serif; font-size:1.02rem; }
.hts-roster span { display:block; margin-top:5px; font-family:'Manrope',sans-serif; font-size:0.64rem; font-weight:800; letter-spacing:0.1em; text-transform:uppercase; color:#f0902c; line-height:1.4; }
html body .hts-btn { display:inline-flex; margin-top:clamp(24px,3.5vw,34px); padding:15px 30px; border-radius:999px; text-decoration:none; font-family:'Manrope',sans-serif; font-size:0.88rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:#FDFBD4;
  background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 14px 34px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14); }
@media (max-width:980px) { .hts-roster { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:560px) { .hts-roster { grid-template-columns:1fr 1fr; gap:10px; } .hts-roster .av { width:76px; height:76px; } .hts-roster a:last-child { grid-column:1 / -1; max-width:calc(50% - 5px); justify-self:center; width:100%; } }
/* Studio Animal Services logo (gold on black) gets a black tile (2026-10-13) */
html body .ts-logo.ts-logo-dark { background:#000; }
html body .ts-logo.ts-logo-dark img { inset:6%; width:88%; height:88%; }
html body #endorsements .vet-logo-wall > span.sas-tile { background:#000 !important; }
@media (max-width:760px) { html body #endorsements .vet-logo-wall > span.sas-tile { grid-column:1 / -1; max-width:calc(50% - 6px); justify-self:center; width:100%; } }
html body #endorsements .vet-review-card > span.sas-logo-card { background:#000 !important; box-shadow:0 0 0 2px rgba(255,207,138,0.55); }

/* Full-bleed photo bands between text sections (2026-10-13) — light bottom gradient only, no heavy overlay */
.hp-band { position:relative; margin:0; width:100vw; height:clamp(320px,52vh,560px); overflow:hidden; line-height:0; border-top:1px solid rgba(255,207,138,0.25); border-bottom:1px solid rgba(255,207,138,0.25); }
.hp-band picture, .hp-band img { display:block; width:100%; height:100%; object-fit:cover; }
.hp-band::after { content:''; position:absolute; left:0; right:0; bottom:0; height:45%; background:linear-gradient(to top, rgba(10,6,4,0.62), transparent); pointer-events:none; }
.hp-band figcaption { position:absolute; z-index:2; left:0; right:0; bottom:clamp(18px,3vw,30px); text-align:center; padding:0 20px; line-height:1.3;
  font-family:'Libre Baskerville',serif; font-size:clamp(1.15rem,2.6vw,1.8rem); font-weight:700; color:#FDFBD4; text-shadow:0 2px 14px rgba(0,0,0,0.55); }
.hp-band figcaption em { font-style:italic; color:#ffcf8a; }
@media (max-width:760px) { .hp-band { height:clamp(240px,40vh,360px); } }

/* HERO REEL (2026-10-13): adaptive-streaming promo reel at the very top.
   Phones: full-width vertical video, copy overlaid at the bottom. Desktop: copy left, phone-shaped video right, blurred poster behind. */
.hr { position:relative; width:100vw; overflow:hidden; isolation:isolate; background:#0e0907; }
.hr-bg { position:absolute; inset:-40px; z-index:-1; background:url('../videos/hero-reel-2/poster.webp') center/cover; filter:blur(38px) saturate(1.2) brightness(0.45); }
.hr-in { max-width:1080px; margin:0 auto; padding:clamp(28px,5vw,56px) 24px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:clamp(24px,5vw,64px); align-items:center; }
.hr-copy { color:#FDFBD4; }
.hr-stars { color:#f0902c; letter-spacing:0.16em; font-size:1.25rem; }
.hr-title { font-family:'Libre Baskerville',serif; font-size:clamp(2.2rem,5vw,3.6rem); font-weight:700; line-height:1.06; letter-spacing:-0.02em; margin:10px 0 14px; color:#FDFBD4; }
.hr-title em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hr-press { margin:0 0 6px; font-family:'Manrope',sans-serif; font-size:0.95rem; color:rgba(253,251,212,0.82); }
.hr-proof { margin:0; font-family:'Manrope',sans-serif; font-size:0.8rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:#ffcf8a; }
html body .hr-btn { display:inline-flex; margin-top:22px; padding:15px 28px; border-radius:999px; text-decoration:none; font-family:'Manrope',sans-serif; font-size:0.88rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:#FDFBD4;
  background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 14px 34px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14); }
.hr-frame { position:relative; height:min(78vh,720px); aspect-ratio:9/16; border-radius:24px; overflow:hidden; border:1.5px solid transparent;
  background:linear-gradient(#000,#000) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box; box-shadow:0 0 0 6px rgba(240,144,44,0.08), 0 0 60px rgba(240,128,40,0.3), 0 30px 80px rgba(0,0,0,0.6); }
.hr-video { display:block; width:100%; height:100%; object-fit:cover; background:#000; }
.hr-sound { position:absolute; z-index:3; right:12px; bottom:12px; padding:8px 13px; border-radius:999px; border:1px solid rgba(255,207,138,0.5); background:rgba(13,9,7,0.6); color:#FDFBD4; cursor:pointer;
  font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:800; letter-spacing:0.06em; -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.hr-play { position:absolute; z-index:3; left:50%; top:50%; transform:translate(-50%,-50%); width:80px; height:80px; border-radius:50%; border:0; cursor:pointer; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 0 0 8px rgba(255,207,138,0.22), 0 0 40px rgba(240,128,40,0.55); }
.hr-play[hidden] { display:none; }
.hr-play svg { width:34%; height:34%; fill:#FDFBD4; margin-left:7%; }
@media (max-width:760px) {
  .hr-in { grid-template-columns:minmax(0,1fr); padding:0; gap:0; }
  .hr-frame { order:-1; height:auto; width:100%; aspect-ratio:9/16; max-height:none; border-radius:0; border:0; box-shadow:none; background:#000; }
  .hr-copy { padding:16px 18px 20px; text-align:center; }   /* below the video so it never covers the dog */
  .hr-title { font-size:1.9rem; margin:4px 0 6px; }
  .hr-press { font-size:0.78rem; } .hr-proof { font-size:0.66rem; }
  .hr-btn { display:none !important; }
  .hr-sound { top:auto; bottom:12px; right:auto; left:12px; }
  .hr-video { object-position:center; }
}

/* 30-second spot inside We Do One Thing (2026-10-13) — replaces the leash photo; widescreen on all screens */
html body .wdo2-spot { display:block !important; width:100%; max-width:none; aspect-ratio:16/9; align-self:center; margin:0; }
html body .wdo2-grid { align-items:center; }
@media (max-width:760px) { html body .wdo2-spot { aspect-ratio:16/9; } html body .wdo2-spot .hp-ad-play span.btn { width:64px; height:64px; } html body .wdo2-spot .hp-ad-play span.lab { font-size:0.68rem; padding:6px 12px; } }

/* NEXT CLASS BAND (2026-10-14) — booking widget as its own band under the Welcome card. Delete this block + move the markup back to revert. */
html body .hnc-band { width:100%; align-self:stretch; box-sizing:border-box; position:relative; isolation:isolate; overflow:hidden; padding:clamp(36px,6vw,64px) 16px;
  background:radial-gradient(ellipse 60% 55% at 50% 0%, rgba(240,144,44,0.20) 0%, transparent 70%), linear-gradient(180deg,#140b06 0%,#0e0907 100%); }
html body .hnc-band::after { content:''; position:absolute; top:0; left:50%; transform:translateX(-50%); width:min(760px,84%); height:2px; background:linear-gradient(90deg,transparent,#f0902c 50%,transparent); box-shadow:0 0 18px 2px rgba(240,144,44,0.5); }
html body .hnc-band .hero-next-class { max-width:640px; margin:0 auto !important; text-align:center; padding:clamp(26px,4vw,38px) clamp(20px,4vw,40px) !important; border-radius:22px;
  border:1.5px solid transparent; background:linear-gradient(160deg,#24140a,#150c07) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box;
  box-shadow:0 0 0 6px rgba(240,144,44,0.08), 0 0 60px rgba(240,128,40,0.25), 0 30px 70px rgba(0,0,0,0.55); }
html body .hnc-band .hero-next-class::before { display:none; }
html body .hnc-band .hero-next-class-label { justify-content:center; color:#ffcf8a; }
html body .hnc-band .hero-next-class-date { font-size:clamp(1.45rem,3vw,2rem); line-height:1.2; }
html body .hnc-band .hnc-dash { display:none; }
html body .hnc-band .hnc-time { display:block; margin-top:6px; white-space:nowrap; font-family:'Manrope',sans-serif; font-size:clamp(0.95rem,1.6vw,1.1rem); font-weight:800; letter-spacing:0.02em; color:#ffcf8a; }
html body .hnc-band .hnc-price { display:flex; justify-content:center; align-items:baseline; flex-wrap:wrap; gap:4px 8px; margin-top:16px; font-family:'Manrope',sans-serif; color:#FDFBD4; }
html body .hnc-band .hnc-from { font-size:0.72rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:rgba(253,251,212,0.6); }
html body .hnc-band .hnc-price s { font-size:1rem; color:rgba(253,251,212,0.45); text-decoration-color:rgba(240,144,44,0.85); text-decoration-thickness:2px; }
html body .hnc-band .hnc-price b { font-family:'Libre Baskerville',serif; font-size:2rem; line-height:1; color:#ffcf8a; }
html body .hnc-band .hnc-per { font-size:0.85rem; color:rgba(253,251,212,0.65); }
html body .hnc-band .hnc-off { padding:3px 10px; border-radius:999px; background:linear-gradient(135deg,#ffb24d,#e06a00); color:#1a0d05; font-size:0.68rem; font-weight:900; letter-spacing:0.06em; text-transform:uppercase; }
html body .hnc-band .hnc-loc { display:inline-flex; align-items:center; gap:7px; margin-top:14px; font-family:'Manrope',sans-serif; font-size:0.82rem; font-weight:700; color:rgba(253,251,212,0.85); text-decoration:none; }
html body .hnc-band .hnc-loc svg { width:15px; height:15px; fill:none; stroke:#f0902c; stroke-width:2; flex:none; }
html body .hnc-band .hnc-loc span { color:#ffcf8a; margin-left:2px; white-space:nowrap; }
html body .hnc-band .hero-ctas { display:grid !important; grid-template-columns:1fr 1fr; max-width:480px; margin:22px auto 0 !important; gap:10px; }
html body .hnc-band .hero-ctas a { justify-content:center; text-align:center; white-space:nowrap; }
html body .hnc-band .hero-ctas a.hero-cta-primary { grid-column:1 / -1; }
html body .hnc-band .hero-ctas a { padding:14px 22px; font-size:0.8rem; border-radius:999px; }
html body .hnc-band .hero-cta-primary { background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; box-shadow:0 14px 34px rgba(192,88,0,0.5), 0 0 0 4px rgba(240,144,44,0.14); }
@media (max-width:760px) {
  html body .hnc-band .hero-ctas { gap:8px; }
  html body .hnc-band .hero-ctas a { justify-content:center; text-align:center; padding:12px 6px; font-size:0.66rem; letter-spacing:0.02em; white-space:nowrap; }
  html body .hnc-band .hero-ctas a.hero-cta-primary { grid-column:1 / -1; padding:16px; font-size:0.86rem; }
}
/* 2026-10-14: phones — Welcome photo first, then the copy card (booking band now sits above this section) */
@media (max-width:760px) {
  html body #what-we-do-section .what-we-do-img { order:-1 !important; }
  html body #what-we-do-section .what-we-do-copy { order:0 !important; }
}
/* 2026-10-14: Rattlesnake Professionals was locked to 100vh on phones — text card got clipped / scrolled internally and Pricing butted into it. Let it size to content. */
@media (max-width:760px) {
  html body #rattlesnake-professionals-section { height:auto !important; min-height:0 !important; max-height:none !important; }
  html body #rattlesnake-professionals-section .what-we-do-copy { height:auto !important; max-height:none !important; overflow:visible !important; flex:none !important; margin-bottom:8px; }
  html body #rattlesnake-professionals-section .what-we-do-copy .what-we-do-cta { margin-bottom:6px; }
}
/* 2026-10-14: WDO photo is now a near-square people shot — undo the old leash-photo 67% crop on phones */
@media (max-width:760px) { html body .wdo2-photo img { object-position:center 50% !important; } }
html body .wdo2-photo figcaption { text-align:right; } /* 2026-10-14: keep the caged station (bottom-left) visible */
html body .wdo2-photo img { object-position:center 40% !important; }

/* WDO TEAM SLIDER (2026-10-14) — replaces the WDO photo; crossfade, each slide links to pages/team.html#person */
html body .wdo2-team .wdo2-tm-slide { position:absolute; inset:0; opacity:0; transition:opacity .7s ease; display:block; color:inherit; text-decoration:none; }
html body .wdo2-team .wdo2-tm-slide.is-on { opacity:1; z-index:1; }
html body .wdo2-team .wdo2-tm-slide::after { content:''; position:absolute; inset:auto 0 0 0; height:45%; background:linear-gradient(to top, rgba(0,0,0,0.62), transparent); pointer-events:none; }
html body .wdo2-team .wdo2-tm-cap { position:absolute; z-index:2; left:20px; bottom:18px; right:110px; display:flex; flex-direction:column; gap:3px; text-align:left; }
html body .wdo2-team .wdo2-tm-cap b { font-family:'Libre Baskerville',serif; font-size:clamp(1.15rem,2vw,1.4rem); color:#FDFBD4; }
html body .wdo2-team .wdo2-tm-cap span { font-family:'Manrope',sans-serif; font-size:0.68rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:#ffcf8a; }
html body .wdo2-team .wdo2-tm-tag { position:absolute; z-index:3; top:14px; left:14px; padding:7px 13px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.66rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:#FDFBD4; background:rgba(13,9,7,0.6); border:1px solid rgba(255,207,138,0.5); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); pointer-events:none; }
html body .wdo2-team .wdo2-tm-btn { position:absolute; z-index:3; top:12px; right:12px; padding:9px 15px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:#FDFBD4; text-decoration:none; background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 8px 22px rgba(192,88,0,0.5); }
html body .wdo2-team .wdo2-tm-dots { position:absolute; z-index:3; right:18px; bottom:22px; display:flex; gap:7px; }
html body .wdo2-team .wdo2-tm-dots button { width:9px; height:9px; padding:0; border-radius:50%; border:1px solid rgba(255,207,138,0.75); background:transparent; cursor:pointer; }
html body .wdo2-team .wdo2-tm-dots button.on { background:#ffcf8a; }

/* WSRP COMPACT (2026-10-14) — 3-row them/us table + one-line scent callout with dropdown. Old cards CSS above left in place. */
html body .wsx-table { max-width:860px; margin:clamp(22px,3vw,32px) auto 0; border-radius:20px; overflow:hidden; border:1.5px solid transparent;
  background:linear-gradient(#150c07,#150c07) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box; box-shadow:0 0 50px rgba(240,128,40,0.18), 0 20px 50px rgba(0,0,0,0.45); text-align:left; }
html body .wsx-row { display:grid; grid-template-columns:1fr 1fr; }
html body .wsx-row + .wsx-row { border-top:1px solid rgba(255,207,138,0.14); }
html body .wsx-row > span { display:flex; gap:10px; align-items:flex-start; padding:15px clamp(14px,2.4vw,24px); font-family:'Manrope',sans-serif; font-size:clamp(0.86rem,1.5vw,1rem); line-height:1.4; }
html body .wsx-head > span { padding-top:14px; padding-bottom:12px; font-size:0.68rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; }
html body .wsx-head > span:first-child { color:#f08a78; background:rgba(120,24,14,0.25); }
html body .wsx-head > span:last-child { color:#ffcf8a; background:rgba(240,144,44,0.12); }
html body .wsx-them { color:rgba(253,251,212,0.6); background:rgba(80,16,10,0.18); }
html body .wsx-us { color:#FDFBD4; font-weight:700; background:rgba(240,144,44,0.06); }
html body .wsx-row > span i { flex:none; width:22px; height:22px; margin-top:-1px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-style:normal; font-size:0.7rem; font-weight:900; }
html body .wsx-them i { background:rgba(210,55,40,0.18); color:#ff7a66; border:1px solid rgba(255,110,90,0.4); }
html body .wsx-us i { background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; }
html body .wsx-scent { max-width:860px; margin:16px auto 0; text-align:left; border-radius:16px; border:1px solid rgba(255,207,138,0.3); background:rgba(240,144,44,0.06); }
html body .wsx-scent summary { list-style:none; cursor:pointer; padding:14px 18px; font-family:'Manrope',sans-serif; font-size:clamp(0.9rem,1.5vw,1rem); line-height:1.5; color:rgba(253,251,212,0.85); }
html body .wsx-scent summary::-webkit-details-marker { display:none; }
html body .wsx-scent summary strong { color:#FDFBD4; }
html body .wsx-scent-k { display:inline-block; margin-right:8px; padding:3px 10px; border-radius:999px; font-size:0.64rem; font-weight:900; letter-spacing:0.12em; text-transform:uppercase; color:#1a0d05; background:linear-gradient(135deg,#ffb24d,#e06a00); vertical-align:2px; }
html body .wsx-more { display:inline-flex; align-items:center; gap:6px; margin-left:4px; font-size:0.74rem; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:#ffcf8a; white-space:nowrap; }
html body .wsx-more b { font-size:1rem; transition:transform .2s; }
html body .wsx-scent[open] .wsx-more b { transform:rotate(45deg); }
html body .wsx-scent p { margin:0; padding:0 18px 16px; font-family:'Manrope',sans-serif; font-size:0.95rem; line-height:1.65; color:rgba(253,251,212,0.78); border-left:2px solid #f0902c; margin-left:18px; padding-left:14px; }
html body .wsrp2 .wsrp2-pills { margin-top:18px !important; }
@media (max-width:760px) {
  html body .wsx-row > span { padding:12px 11px; gap:7px; font-size:0.8rem; }
  html body .wsx-head > span { font-size:0.6rem; letter-spacing:0.08em; padding:11px; }
  html body .wsx-row > span i { width:18px; height:18px; font-size:0.6rem; margin-top:0; }
}
/* 2026-10-14: Scott "A lifetime with dogs" stat box — keep the phrase on one line */
html body .mt-exp.mt-exp-life b { white-space:nowrap; }
@media (max-width:760px) { html body .mt-exp.mt-exp-life b { font-size:1.45rem !important; } }

/* WDO LOGO (2026-10-14) — circular logo in place of the team slider; floats on the section with a soft glow, no photo frame */
html body .wdo2-logo { position:relative; margin:0; display:flex; align-items:center; justify-content:center; padding:clamp(8px,2vw,20px); }
html body .wdo2-logo::before { content:''; position:absolute; inset:8% 8%; border-radius:50%; background:radial-gradient(circle, rgba(240,144,44,0.32) 0%, rgba(240,144,44,0.08) 45%, transparent 70%); filter:blur(10px); z-index:0; }
html body .wdo2-logo picture { position:relative; z-index:1; display:block; width:100%; max-width:440px; }
html body .wdo2-logo img { display:block; width:100%; height:auto; filter:drop-shadow(0 18px 40px rgba(0,0,0,0.55)); }
@media (max-width:760px) { html body .wdo2-logo picture { max-width:300px; } html body .wdo2-logo { padding:4px 0 8px; } }

/* WDO SIGN (2026-10-14) — Snake School sign in place of the circular logo; sign has its own black field + orange border, so no extra frame */
html body .wdo2-sign { position:relative; margin:0; align-self:center; }
html body .wdo2-sign::before { content:''; position:absolute; inset:6% 4%; background:radial-gradient(ellipse, rgba(240,144,44,0.28) 0%, transparent 70%); filter:blur(18px); z-index:0; }
html body .wdo2-sign picture { position:relative; z-index:1; display:block; }
html body .wdo2-sign img { display:block; width:100%; height:auto; border-radius:14px; box-shadow:0 24px 60px rgba(0,0,0,0.55), 0 0 40px rgba(240,128,40,0.18); }

/* STORYBOARD 2026-10-14 — H1 promise + 3 steps (from the retired Welcome card) and Meet Scott team row (from the retired team strip) */
html body .ult-promise { max-width:640px; margin:18px auto 12px; font-family:'Manrope',sans-serif; font-size:clamp(1rem,1.6vw,1.1rem); font-weight:700; line-height:1.55; color:rgba(253,251,212,0.85); text-align:center; }
html body .ult-promise em { font-family:'Libre Baskerville',serif; font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
html body .ult-steps { list-style:none; margin:0 auto 22px; padding:0; display:flex; justify-content:center; flex-wrap:wrap; gap:10px 22px; }
html body .ult-steps li { display:flex; align-items:center; gap:9px; font-family:'Manrope',sans-serif; font-size:0.95rem; font-weight:700; color:#FDFBD4; }
html body .ult-steps b { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:50%; background:linear-gradient(135deg,#f08a2c,#c05800); color:#FDFBD4; font-size:0.8rem; box-shadow:0 4px 12px rgba(192,88,0,0.45); }
html body .ult-steps em { font-style:normal; color:#ffb24d; }
html body .mt-team { margin-top:18px; padding-top:14px; border-top:1px dashed rgba(240,144,44,0.3); }
html body .mt-team-k { margin:0 0 10px !important; font-family:'Manrope',sans-serif; font-size:0.66rem !important; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:#ffcf8a !important; }
html body .mt-team-row { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
html body .mt-team-row a:not(.mt-team-link) { display:block; width:46px; height:46px; border-radius:50%; overflow:hidden; border:2px solid rgba(255,207,138,0.7); box-shadow:0 6px 16px rgba(0,0,0,0.4); transition:transform .2s; }
html body .mt-team-row a:not(.mt-team-link):hover { transform:translateY(-2px); }
html body .mt-team-row img { width:100%; height:100%; object-fit:cover; display:block; }
html body .mt-team-row .mt-team-link { margin-left:8px; font-family:'Manrope',sans-serif; font-size:0.76rem; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:#f0902c; text-decoration:none; border-bottom:1px solid rgba(240,144,44,0.45); white-space:nowrap; }
@media (max-width:760px) { html body .ult-steps { flex-direction:column; align-items:center; gap:8px; } }

/* WDO AVOIDANCE LOOP (2026-10-14) — 4:5 looping clip in place of the sign */
html body .wdo2-loop { margin:0; align-self:center; justify-self:center; width:100%; max-width:470px; aspect-ratio:4/5; border-radius:22px; overflow:hidden; border:1.5px solid transparent;
  background:linear-gradient(#000,#000) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box; box-shadow:0 0 0 6px rgba(240,144,44,0.08), 0 0 50px rgba(240,128,40,0.25), 0 26px 60px rgba(0,0,0,0.55); }
html body .wdo2-loop video { display:block; width:100%; height:100%; object-fit:cover; background:#000; }
@media (max-width:760px) { html body .wdo2-loop { max-width:none; border-radius:18px; } }

/* HERO REEL BACKGROUND (2026-10-14) — real rattlesnake photo instead of the blurred poster (Scott: "should have a good image background").
   Light gradient only where text sits; no heavy overlay. Image: Scott's own rattlesnake close-up (images/section-bg/h1-rattlesnake) -> hero-rattlesnake-own-1307 (mirrored so the head sits between title and video) / -800 (phones, unmirrored). Stock Souther-Pacific photo rejected 2026-10-14. */
html body .hr-bg { inset:0; filter:none;
  background-image:url('../images/section-bg/hero-rattlesnake-own-1307.jpg');
  background-image:image-set(url('../images/section-bg/hero-rattlesnake-own-1307.webp') type('image/webp'), url('../images/section-bg/hero-rattlesnake-own-1307.jpg') type('image/jpeg'));
  background-size:cover; background-position:0% 75%; background-repeat:no-repeat; }
html body .hr-bg::after { content:''; position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(14,9,7,0.62) 0%, rgba(14,9,7,0.5) 40%, rgba(14,9,7,0.2) 62%, rgba(14,9,7,0.35) 100%),
             linear-gradient(180deg, rgba(14,9,7,0) 70%, rgba(14,9,7,0.85) 100%); }
@media (max-width:760px) {
  html body .hr-bg { background-image:url('../images/section-bg/hero-rattlesnake-own-800.jpg');
    background-image:image-set(url('../images/section-bg/hero-rattlesnake-own-800.webp') type('image/webp'), url('../images/section-bg/hero-rattlesnake-own-800.jpg') type('image/jpeg'));
    background-position:50% 50%; }
  html body .hr-bg::after { background:linear-gradient(180deg, rgba(14,9,7,0.15) 0%, rgba(14,9,7,0.35) 45%, rgba(14,9,7,0.78) 100%); }
}

/* RATTLESNAKE PROFESSIONALS stat pair (2026-10-14) — replaces the heavy bold "We've caught over 1,300…" line */
html body .rp-stats { display:flex; flex-wrap:wrap; gap:12px; margin:6px 0 12px; }
html body .rp-stats p { display:flex; align-items:center; gap:12px; margin:0; padding:12px 18px 12px 14px; border-radius:14px; border:1px solid rgba(255,207,138,0.35); background:linear-gradient(160deg,rgba(240,144,44,0.12),rgba(240,144,44,0.03)); }
html body .rp-stats b { font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(1.8rem,3vw,2.3rem); line-height:1; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 4px 12px rgba(240,128,40,0.3)); }
html body .rp-stats span { font-family:'Manrope',sans-serif; font-size:0.66rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; line-height:1.4; color:rgba(253,251,212,0.8); }
html body .rp-line { margin:0 0 6px !important; font-family:'Manrope',sans-serif; font-size:clamp(0.95rem,1.5vw,1.05rem) !important; line-height:1.6; color:rgba(253,251,212,0.78) !important; }

/* HOME RANCH MAP (2026-10-14) — in the final "Available 7 Days a Week" section; click-to-load Google Map */
html body .hm-map { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:18px; max-width:860px; margin:clamp(30px,4vw,44px) auto 0; text-align:left; align-items:stretch; }
html body .hm-map-info { padding:24px 24px 22px; border-radius:20px; border:1.5px solid transparent; background:linear-gradient(#1a0f08,#1a0f08) padding-box, linear-gradient(135deg,rgba(255,213,143,0.6),rgba(240,144,44,0.35) 45%,rgba(138,58,0,0.3)) border-box; }
html body .hm-map-k { margin:0 0 8px !important; font-family:'Manrope',sans-serif; font-size:0.68rem !important; font-weight:800; letter-spacing:0.18em; text-transform:uppercase; color:#ffcf8a !important; }
html body .hm-map-name { margin:0 0 8px !important; font-family:'Libre Baskerville',serif; font-size:1.25rem !important; font-weight:700; line-height:1.25; color:#FDFBD4 !important; }
html body .hm-map-addr { margin:0 0 10px !important; font-family:'Manrope',sans-serif; font-size:1rem !important; font-weight:700; line-height:1.5; color:#FDFBD4 !important; }
html body .hm-map-note { margin:0 0 16px !important; font-family:'Manrope',sans-serif; font-size:0.86rem !important; line-height:1.5; color:rgba(253,251,212,0.7) !important; }
html body .hm-map-dir { display:inline-flex; padding:12px 20px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.78rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:#FDFBD4 !important; text-decoration:none; background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 10px 26px rgba(192,88,0,0.45); }
html body .hm-map-frame, html body .hm-map-iframe { width:100%; min-height:260px; height:100%; border-radius:20px; border:1.5px solid rgba(255,207,138,0.45); overflow:hidden; }
html body .hm-map-frame { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; cursor:pointer; padding:0; color:#FDFBD4;
  background:
    radial-gradient(circle at 50% 45%, rgba(240,144,44,0.28) 0%, transparent 45%),
    repeating-linear-gradient(32deg, transparent 0 46px, rgba(253,251,212,0.06) 46px 48px),
    repeating-linear-gradient(-58deg, transparent 0 70px, rgba(253,251,212,0.05) 70px 72px),
    linear-gradient(160deg,#2a1a0e,#140b06); }
html body .hm-map-frame::before { content:''; position:absolute; left:-10%; right:-10%; top:52%; height:10px; transform:rotate(-14deg); background:rgba(240,144,44,0.35); border-radius:6px; }
html body .hm-map-pin { position:relative; width:46px; height:46px; fill:#f0902c; stroke:#1a0d05; stroke-width:1; filter:drop-shadow(0 6px 14px rgba(0,0,0,0.6)); }
html body .hm-map-pin circle { fill:#1a0d05; }
html body .hm-map-cta { position:relative; font-family:'Manrope',sans-serif; font-size:0.82rem; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; padding:8px 16px; border-radius:999px; background:rgba(13,9,7,0.7); border:1px solid rgba(255,207,138,0.5); }
html body .hm-map-sub { position:relative; font-family:'Manrope',sans-serif; font-size:0.74rem; font-weight:700; color:rgba(253,251,212,0.75); }
html body .hm-map-iframe { display:block; border:1.5px solid rgba(255,207,138,0.45); }
@media (max-width:760px) { html body .hm-map { grid-template-columns:1fr; } html body .hm-map-frame, html body .hm-map-iframe { min-height:240px; height:240px; } }
html body .home-cta-final .hm-map-info, html body .home-cta-final .hm-map-info p { text-align:left !important; }
html body .home-cta-final .hm-map-info .hm-map-name { font-family:'Libre Baskerville',serif !important; font-size:1.3rem !important; font-weight:700 !important; }
html body .home-cta-final .hm-map-info .hm-map-k { font-size:0.68rem !important; letter-spacing:0.18em !important; color:#ffcf8a !important; }
html body .home-cta-final .hm-map-info .hm-map-note { font-size:0.86rem !important; max-width:none !important; }
html body .home-cta-final .hm-map-info { padding:24px 26px 24px !important; }
html body .home-cta-final .hm-map-info p { margin-top:0 !important; line-height:1.45 !important; }
html body .home-cta-final .hm-map-info .hm-map-name { margin-bottom:10px !important; }
html body .home-cta-final .hm-map-info .hm-map-addr { margin-bottom:10px !important; }

/* HERO STARS + TAGLINE (2026-10-14) */
html body .hr-rate { display:flex; align-items:center; flex-wrap:wrap; gap:10px 14px; }
html body .hr-stars { display:inline-flex; gap:3px; letter-spacing:0; font-size:0; filter:drop-shadow(0 0 10px rgba(246,162,58,0.45)) drop-shadow(0 2px 3px rgba(0,0,0,0.5)); }
html body .hr-stars svg { width:22px; height:22px; display:block; }
html body .hr-tagline { font-family:'Libre Baskerville',serif; font-style:italic; font-size:clamp(0.95rem,1.4vw,1.08rem); color:#ffe2b0; padding-left:14px; border-left:1px solid rgba(255,207,138,0.45); line-height:1.3; }
@media (max-width:760px) {
  html body .hr-rate { justify-content:center; flex-direction:column; gap:6px; }
  html body .hr-tagline { border-left:0; padding-left:0; }
}

/* SCENT / SOUND / SIGHT big cards (2026-10-14) — inside How Dogs Are Trained, under the h2 */
html body .sx3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:clamp(22px,3vw,32px) auto clamp(26px,3.6vw,36px); max-width:1000px; text-align:center; }
html body .sx3-card { position:relative; padding:clamp(26px,3.4vw,38px) 20px 24px; border-radius:22px; overflow:hidden; border:1.5px solid transparent;
  background:radial-gradient(ellipse 80% 55% at 50% 0%, rgba(240,144,44,0.22) 0%, transparent 70%) padding-box, linear-gradient(170deg,#24140a,#140b06) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box;
  box-shadow:0 0 50px rgba(240,128,40,0.18), 0 24px 50px rgba(0,0,0,0.5); transition:transform .25s ease, box-shadow .25s ease; }
html body .sx3-card:hover { transform:translateY(-4px); box-shadow:0 0 60px rgba(240,128,40,0.3), 0 28px 60px rgba(0,0,0,0.55); }
html body .sx3-n { position:absolute; top:14px; left:18px; font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:900; letter-spacing:0.14em; color:rgba(255,207,138,0.6); }
html body .sx3-ico { width:52px; height:52px; fill:none; stroke:#f6a23a; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 10px rgba(246,162,58,0.45)); }
html body .sx3-ico .f, html body .sx3-ico circle[r="1.6"], html body .sx3-ico circle[r="1.2"], html body .sx3-ico circle[r="1"] { fill:#f6a23a; }
html body .sx3-word { margin:10px 0 10px !important; font-family:'Libre Baskerville',serif !important; font-weight:700; font-size:clamp(2.6rem,5.4vw,4rem) !important; line-height:1 !important; letter-spacing:-0.02em; text-transform:uppercase;
  background:linear-gradient(180deg,#ffe3a8 0%,#f6a23a 55%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 6px 18px rgba(240,128,40,0.35)); }
html body .sx3-line { margin:0 auto 14px !important; max-width:260px; font-family:'Manrope',sans-serif; font-size:0.98rem !important; line-height:1.5; color:rgba(253,251,212,0.8) !important; }
html body .sx3-line b { color:#FDFBD4; }
html body .sx3-tag { display:inline-block; padding:5px 12px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.62rem; font-weight:900; letter-spacing:0.12em; text-transform:uppercase; color:#ffe2b0; background:rgba(240,144,44,0.12); border:1px solid rgba(255,207,138,0.45); }
@media (max-width:760px) { html body .sx3 { grid-template-columns:1fr; gap:12px; } html body .sx3-word { font-size:2.8rem !important; } }
@media (min-width:761px) { html body .sx3-word { font-size:clamp(2.1rem,3.3vw,2.6rem) !important; letter-spacing:-0.01em; } }
/* 2026-10-14: 4th "All 3" card (full sensory exposure) — 2x2 grid on desktop */
html body .sx3 { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:720px; }
html body .sx3-card--final { background:radial-gradient(ellipse 80% 55% at 50% 0%, rgba(240,144,44,0.32) 0%, transparent 70%) padding-box, linear-gradient(170deg,#2e190b,#170c06) padding-box, linear-gradient(135deg,#ffe3a8,#f0902c 45%,#c05800) border-box; }
@media (max-width:760px) { html body .sx3 { grid-template-columns:1fr; } }

/* BABIES + ADULTS callout in the H1 section (2026-10-14) */
html body .ult-both { max-width:640px; margin:22px auto 6px; padding:20px 24px 20px; border-radius:20px; text-align:center; border:1.5px solid transparent;
  background:radial-gradient(ellipse 70% 60% at 50% 0%, rgba(240,144,44,0.28) 0%, transparent 70%) padding-box, linear-gradient(170deg,#2a170a,#150b06) padding-box, linear-gradient(135deg,#ffe3a8,#f0902c 45%,#c05800) border-box;
  box-shadow:0 0 0 5px rgba(240,144,44,0.08), 0 0 50px rgba(240,128,40,0.28), 0 20px 50px rgba(0,0,0,0.5); }
html body .ult-both-k { display:inline-block; margin-bottom:10px; padding:5px 14px; border-radius:999px; font-family:'Manrope',sans-serif; font-size:0.68rem; font-weight:900; letter-spacing:0.16em; text-transform:uppercase; color:#1a0d05; background:linear-gradient(135deg,#ffd58f,#f0902c); }
html body .ult-both-k em { font-style:normal; opacity:0.75; }
html body .ult-both-h { margin:0 !important; font-family:'Libre Baskerville',serif; font-size:clamp(1rem,1.8vw,1.18rem) !important; line-height:1.35; color:#FDFBD4 !important; }
html body .ult-both-h strong { font-style:italic; background:linear-gradient(180deg,#ffe3a8 0%,#f6a23a 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
html body .ult-both-p { margin:0 !important; font-family:'Manrope',sans-serif; font-size:0.92rem !important; line-height:1.55; color:rgba(253,251,212,0.75) !important; }


/* E-COLLAR + ANNUAL section (2026-10-16) — end of Act 3, after How Dogs Are Trained. Plain dark treatment (not ember). */
html body .hec { width:100vw; box-sizing:border-box; padding:clamp(56px,8vw,96px) 22px; background:linear-gradient(180deg,#0d0b09 0%,#140b07 100%); border-top:1px solid rgba(253,251,212,0.08); }
html body .hec-in { max-width:1080px; margin:0 auto; }
html body .hec-eyebrow { display:flex; align-items:center; justify-content:center; gap:10px; margin:0 0 16px; font-family:'Manrope',sans-serif; font-size:0.72rem; font-weight:800; letter-spacing:0.22em; text-transform:uppercase; color:#ffcf8a; }
html body .hec-eyebrow span { display:block; width:22px; height:2px; background:#f0902c; }
html body .hec-title { font-family:'Libre Baskerville',serif; font-size:clamp(2rem,4.6vw,3.2rem); font-weight:700; line-height:1.12; letter-spacing:-0.02em; text-align:center; color:#FDFBD4; margin:0 auto 18px; max-width:860px; }
html body .hec-title em { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
html body .hec-lead { text-align:center; max-width:640px; margin:0 auto clamp(32px,5vw,44px); font-family:'Manrope',sans-serif; font-size:clamp(1rem,1.6vw,1.12rem); line-height:1.65; color:rgba(253,251,212,0.82); }
html body .hec-steps { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
html body .hec-steps li { padding:26px 24px 24px; border-radius:20px; border:1.5px solid transparent;
  background:linear-gradient(180deg,#1c1109,#140c07) padding-box, linear-gradient(135deg,rgba(255,213,143,0.6),rgba(240,144,44,0.35) 45%,rgba(138,58,0,0.3)) border-box; }
html body .hec-n { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%; margin-bottom:14px; font-family:'Manrope',sans-serif; font-weight:900; color:#FDFBD4; background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 6px 16px rgba(192,88,0,0.45); }
html body .hec-steps h3 { margin:0 0 8px; font-family:'Libre Baskerville',serif; font-size:1.3rem; color:#FDFBD4; }
html body .hec-steps p { margin:0; font-family:'Manrope',sans-serif; font-size:0.96rem; line-height:1.6; color:rgba(253,251,212,0.8); }
html body .hec-note { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 14px; margin:clamp(24px,4vw,32px) 0 0; padding:20px 24px; border-radius:16px; border:1.5px solid transparent;
  background:linear-gradient(180deg,rgba(240,144,44,0.14),rgba(240,144,44,0.05)) padding-box, linear-gradient(#170d07,#170d07) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box; box-shadow:0 0 40px rgba(240,128,40,0.15); }
html body .hec-note strong { font-family:'Libre Baskerville',serif; font-size:1.12rem; color:#FDFBD4; }
html body .hec-note span { font-family:'Manrope',sans-serif; font-size:0.96rem; line-height:1.6; color:rgba(253,251,212,0.82); }
html body .hec-note a { color:#ffcf8a; font-weight:800; text-decoration:none; border-bottom:1px solid rgba(255,207,138,0.5); white-space:nowrap; }
@media (max-width:820px) { html body .hec-steps { grid-template-columns:minmax(0,1fr); } }


/* WHY NOW trimmed to 3 stats (2026-10-16) + link to the full set on the rattlesnake page */
html body .wn-all { display:block; width:max-content; margin:14px auto 0; font-family:'Manrope',sans-serif; font-size:0.82rem; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:#ffcf8a; text-decoration:none; border-bottom:1px solid rgba(255,207,138,0.5); padding-bottom:2px; }
@media (max-width:760px) { html body .wn-grid.wn-grid-3 { grid-template-columns:1fr !important; } }


/* Rattlesnake Professionals: back to Cary's tongs photo (2026-10-16) */
html body #wrpPhoto picture { display:block; width:100%; height:100%; }
html body #wrpPhoto img { width:100%; height:100%; object-fit:cover; object-position:center 20%; }


/* LEO PHOTO (2026-10-16) — end of Act 3, before the e-collar section */
html body .hleo { width:100vw; box-sizing:border-box; padding:clamp(56px,8vw,96px) 22px clamp(56px,8vw,96px); background:#0d0b09; }
html body .hleo-in { max-width:1080px; margin:0 auto; display:grid; grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr); gap:clamp(24px,5vw,56px); align-items:center; }
html body .hleo-img { margin:0; border-radius:22px; overflow:hidden; border:1.5px solid transparent; background:linear-gradient(#000,#000) padding-box, linear-gradient(135deg,#ffd58f,#f0902c 45%,#8a3a00) border-box; box-shadow:0 0 50px rgba(240,128,40,0.22), 0 24px 60px rgba(0,0,0,0.5); }
html body .hleo-img img { display:block; width:100%; height:auto; }
html body .hleo-eyebrow { justify-content:flex-start; }
html body .hleo-eyebrow span:last-child { display:none; }
html body .hleo-title { text-align:left; margin-left:0; }
html body .hleo-p { font-family:'Manrope',sans-serif; font-size:clamp(1rem,1.6vw,1.12rem); line-height:1.65; color:rgba(253,251,212,0.82); margin:0 0 24px; }
html body .hleo-btn { display:inline-flex; padding:16px 28px; border-radius:999px; text-decoration:none; font-family:'Manrope',sans-serif; font-size:0.88rem; font-weight:800; letter-spacing:0.05em; text-transform:uppercase; color:#FDFBD4; background:linear-gradient(135deg,#f08a2c,#c05800); box-shadow:0 14px 34px rgba(192,88,0,0.5); }
@media (max-width:820px) { html body .hleo-in { grid-template-columns:minmax(0,1fr); } html body .hleo-copy { text-align:center; } html body .hleo-eyebrow { justify-content:center; } html body .hleo-title { text-align:center; } }


/* H1 split (2026-10-16): H1 section is now promise-only; give it room. */
html body #ultimate-standard .ult-ctas { margin-top:clamp(26px,4vw,36px) !important; }
/* WHAT EVERY DOG LEARNS (2026-10-16) */
html body .hlearn { width:100vw; box-sizing:border-box; padding:clamp(56px,8vw,96px) 0 0; background:linear-gradient(180deg,#0d0b09 0%,#140b07 100%); }
html body .hlearn-in { max-width:1080px; margin:0 auto; padding:0 22px; }
html body .hlearn .hec-title { margin-bottom:clamp(28px,4vw,40px); }
html body .hlearn-steps { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
html body .hlearn-steps li { padding:26px 24px 24px; border-radius:20px; border:1.5px solid transparent; text-align:left;
  background:linear-gradient(180deg,#1c1109,#140c07) padding-box, linear-gradient(135deg,rgba(255,213,143,0.6),rgba(240,144,44,0.35) 45%,rgba(138,58,0,0.3)) border-box; }
html body .hlearn-steps h3 { margin:0 0 8px; font-family:'Libre Baskerville',serif; font-size:1.3rem; color:#FDFBD4; }
html body .hlearn-steps p { margin:0; font-family:'Manrope',sans-serif; font-size:0.96rem; line-height:1.6; color:rgba(253,251,212,0.8); }
html body .hlearn-both { max-width:720px; margin:clamp(24px,4vw,34px) auto 0; text-align:center; font-family:'Libre Baskerville',serif; font-size:clamp(1.02rem,1.8vw,1.18rem); line-height:1.55; color:rgba(253,251,212,0.85); }
html body .hlearn-both strong { font-style:italic; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
html body .hlearn-band { margin-top:clamp(40px,6vw,64px); padding:clamp(28px,4vw,40px) 22px; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:18px; max-width:none;
  background:#0a0807; border-top:1px solid rgba(240,144,44,0.25); border-bottom:1px solid rgba(240,144,44,0.25); }
html body .hlearn-band div { text-align:center; }
html body .hlearn-band b { display:block; font-family:'Libre Baskerville',serif; font-weight:700; font-size:clamp(1.7rem,3vw,2.3rem); line-height:1.1; background:linear-gradient(180deg,#ffd58f 0%,#f0902c 60%,#c05800 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
html body .hlearn-band span { display:block; margin-top:6px; font-family:'Manrope',sans-serif; font-size:0.7rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:rgba(253,251,212,0.7); }
@media (max-width:820px) {
  html body .hlearn-steps { grid-template-columns:minmax(0,1fr); }
  html body .hlearn-band { grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px 10px; }
}

/* e-collar section: 2 cards (Danger, Direction) since 2026-10-17 */
html body .hec-steps { grid-template-columns:repeat(2,minmax(0,1fr)) !important; max-width:860px; margin-left:auto; margin-right:auto; }
@media (max-width:820px) { html body .hec-steps { grid-template-columns:minmax(0,1fr) !important; } }

/* e-collar copy additions (2026-10-17) */
html body .hec .ec-when { margin:-8px auto 16px; text-align:center; font-family:'Manrope',sans-serif; font-size:0.78rem; font-weight:800; letter-spacing:0.2em; text-transform:uppercase; color:#ffcf8a; }
html body .hec .ec-why { max-width:720px; margin:-18px auto clamp(28px,4vw,40px); padding:16px 20px; border-left:3px solid #f0902c; background:rgba(240,144,44,0.07); border-radius:0 12px 12px 0; font-family:'Manrope',sans-serif; font-size:clamp(0.96rem,1.5vw,1.04rem); line-height:1.65; color:rgba(253,251,212,0.82); }
html body .hec .ec-why b { color:#FDFBD4; }
