/* ==========================================================================
   Static page templates - extracted from style.css

   Covers the page templates in /static-pages/:
     - contact-us.php
     - about-us.php
     - shop-by-category.php
     - bulk-orders.php

   Kept separate from style.css so that editing these pages never risks the
   shared theme stylesheet. Enqueued only when one of these templates is
   active (see shay_enqueue_static_page_styles() in functions.php).
   ========================================================================== */

/* ==========================================================================
   8b. Contact Us page  (page template: static-pages/contact-us.php)
   ========================================================================== */


   /* ==========================================================================
  About Us Page Changes color,footer 21/9/26
   ========================================================================== */

/* -- Keyframes (scoped names � no collision) ----------------------------- */
@keyframes cu-fade-up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
@keyframes cu-slide-right{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}

/* -- Hero ---------------------------------------------------------------- */
.cu-hero{border-bottom:3px solid var(--gold);overflow:hidden}
.cu-hero__in{display:grid;grid-template-columns:1fr 600px;gap:30px;align-items:center;padding-block:20px 0}
.cu-hero__copy{max-width:640px}
.cu-hero__copy .crumbs,.cu-hero__copy .crumbs a{color:var(--muted)}
.cu-hero__copy .crumbs a:hover{color:var(--muted);text-decoration:none}
.cu-hero__copy h1{font-size:52px;font-weight:800;line-height:1.05;letter-spacing:-.03em;color:var(--night);margin:14px 0 0}
.cu-hero__lead{font-size:17px;line-height:1.7;color:rgba(255,255,255,.72);margin:18px 0 0;text-wrap:pretty;color:var(--night);}
.cu-hero__media img{width:100%;height:auto;max-height:400px;object-fit:cover;display:block;filter:drop-shadow(-8px 0 32px rgba(0,0,0,.35))}

/* Hero quick-contact chips */
.cu-hero__chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;padding-bottom:52px}
.cu-chip{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;background:var(--olive);border:1px solid rgba(255,255,255,.25);font-size:13.5px;font-weight:600;color:var(--cream);text-decoration:none;transition:background var(--t),border-color var(--t)}
.cu-chip:hover{background:var(--olive);border-color:rgba(255,255,255,.5);color:var(--white);text-decoration:none}
.cu-chip svg{flex-shrink:0;stroke:var(--gold-l)}
.cu-chip--plain{cursor:default;color:var(--white);background:var(--olive);border-color:transparent;padding-left:0}
.cu-chip--plain:hover{background:var(--olive);border-color:transparent}

/* Hero entrance */
.cu-hero--animate{animation:cu-fade-up 650ms cubic-bezier(.22,.68,0,1.2) both}
.cu-hero--animate .eyebrow{animation:cu-slide-right 480ms cubic-bezier(.22,.68,0,1.2) 100ms both}
.cu-hero--animate h1{animation:cu-fade-up 620ms cubic-bezier(.22,.68,0,1.2) 180ms both}
.cu-hero--animate .cu-hero__lead{animation:cu-fade-up 580ms cubic-bezier(.22,.68,0,1.2) 300ms both}
.cu-hero--animate .cu-hero__chips{animation:cu-fade-up 520ms cubic-bezier(.22,.68,0,1.2) 420ms both}
@media (prefers-reduced-motion:reduce){
  .cu-hero--animate,.cu-hero--animate .eyebrow,.cu-hero--animate h1,
  .cu-hero--animate .cu-hero__lead,.cu-hero--animate .cu-hero__chips{animation:none}
}

/* -- Two-column body ----------------------------------------------------- */
.cu-body{display:grid;grid-template-columns:1fr 440px;gap:56px;align-items:start;padding-block:64px 80px}

/* -- Contact info cards -------------------------------------------------- */
.cu-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:32px}

/* Scroll-reveal: cards stagger in */
.cu-cards[data-reveal] .cu-card{opacity:0;transform:translateY(16px);transition:opacity 480ms ease,transform 480ms cubic-bezier(.22,.68,0,1.2)}
.cu-cards[data-reveal].is-visible .cu-card{opacity:1;transform:translateY(0)}
.cu-cards[data-reveal].is-visible .cu-card:nth-child(1){transition-delay:30ms;background: var(--mist);}
.cu-cards[data-reveal].is-visible .cu-card:nth-child(2){transition-delay:100ms;background: var(--mist);}
.cu-cards[data-reveal].is-visible .cu-card:nth-child(3){transition-delay:170ms;background: var(--mist);}
.cu-cards[data-reveal].is-visible .cu-card:nth-child(4){transition-delay:240ms;background: var(--mist);}
@media (prefers-reduced-motion:reduce){.cu-cards[data-reveal] .cu-card{transition:none;opacity:1;transform:none}}

.cu-card{display:flex;align-items:flex-start;gap:14px;background:var(--white);border:1px solid var(--line);padding:20px;transition:box-shadow var(--t),border-color var(--t)}
.cu-card:hover{box-shadow:0 8px 24px rgba(41,51,31,.1);border-color:var(--mist-b)}
.cu-card__icon{width:40px;height:40px;background:var(--mist);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--olive)}
.cu-card__body{min-width:0}
.cu-card__body b{display:block;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--olive);margin-bottom:6px}
.cu-card__body a{display:block;font-size:15px;font-weight:600;color:var(--deep);line-height:1.4;text-decoration:none}
.cu-card__body a:hover{color:var(--olive);text-decoration:underline}
.cu-card__body address{font-style:normal}
.cu-card__hours{display:block;font-size:12.5px;color:var(--muted);margin-top:4px;line-height:1.4}
.cu-card__hours-list{list-style:none;padding:0;margin:0}
.cu-card__hours-list li{font-size:13.5px;color:var(--ink-2);line-height:1.55}
.cu-card__hours-list li+li{margin-top:2px}

/* -- Map ----------------------------------------------------------------- */
.cu-map-wrap{margin-bottom:28px}
.cu-map-wrap[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity 550ms ease,transform 550ms cubic-bezier(.22,.68,0,1.2)}
.cu-map-wrap[data-reveal].is-visible{opacity:1;transform:translateY(0)}
.cu-map{width:100%;height:280px;border:1px solid var(--line);display:block}

/* -- Directions accordion ------------------------------------------------ */
.cu-directions[data-reveal]{opacity:0;transform:translateY(14px);transition:opacity 520ms ease,transform 520ms cubic-bezier(.22,.68,0,1.2)}
.cu-directions[data-reveal].is-visible{opacity:1;transform:translateY(0)}
@media (prefers-reduced-motion:reduce){
  .cu-map-wrap[data-reveal],.cu-directions[data-reveal]{transition:none;opacity:1;transform:none}
}

.cu-directions__heading{font-size:18px;font-weight:800;color:var(--deep);letter-spacing:-.015em;margin:0 0 12px}
.cu-dir__item{border:1px solid var(--line);background:var(--white);margin-bottom:8px}
.cu-dir__item[open]{border-color:var(--olive)}
.cu-dir__q{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 16px;
  font-size:14.5px;font-weight:700;color:var(--deep);
  cursor:pointer;
  list-style:none;
  user-select:none;
  gap:10px;
}
.cu-dir__q::-webkit-details-marker{display:none}
/* chevron via CSS */
.cu-dir__q::after{
  content:"";flex-shrink:0;width:8px;height:8px;
  border-right:2px solid var(--olive);border-bottom:2px solid var(--olive);
  transform:rotate(45deg) translateY(-3px);
  transition:transform 200ms ease;
}
.cu-dir__item[open] .cu-dir__q::after{transform:rotate(-135deg) translateY(-3px)}
.cu-dir__q:hover{color:var(--olive)}
.cu-dir__q:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

.cu-dir__steps{padding:0 16px 14px 32px;margin:0}
.cu-dir__steps li{font-size:13.5px;line-height:1.65;color:var(--ink-2)}
.cu-dir__steps li+li{margin-top:5px}

/* -- Form column --------------------------------------------------------- */
.cu-form-col{position:sticky;top:24px}
.cu-form-col[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity 600ms ease,transform 600ms cubic-bezier(.22,.68,0,1.2)}
.cu-form-col[data-reveal].is-visible{opacity:1;transform:translateY(0)}
@media (prefers-reduced-motion:reduce){.cu-form-col[data-reveal]{transition:none;opacity:1;transform:none}}

.cu-form-card{background:var(--sand);border:1px solid var(--line);border-top:3px solid var(--olive);padding:32px 36px}
.cu-form-card h2{font-size:24px;font-weight:800;color:var(--deep);letter-spacing:-.015em;margin:0 0 8px}
.cu-form-card__sub{font-size:14.5px;color:var(--muted);margin:0 0 24px;line-height:1.6}

/* Fallback alt-links below form */
.cu-form-card__fallback{display:flex;flex-direction:column;gap:8px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line-2)}
.cu-form-card__alt-link{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--olive);text-decoration:none}
.cu-form-card__alt-link:hover{color:var(--olive-d);text-decoration:underline}
.cu-form-card__alt-link svg{flex-shrink:0;stroke:var(--muted)}

/* CF7 form � matches bulk-orders styling */
.cu-form-card .wpcf7-form{display:flex;flex-direction:column;gap:16px}
.cu-form-card .wpcf7-form p{margin:0}
.cu-form-card .wpcf7-form label{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--deep);margin-bottom:6px}
.cu-form-card .wpcf7-form input[type=text],
.cu-form-card .wpcf7-form input[type=email],
.cu-form-card .wpcf7-form input[type=tel],
.cu-form-card .wpcf7-form select,
.cu-form-card .wpcf7-form textarea{width:100%;border:1.5px solid var(--line);background:var(--white);padding:12px 14px;font-size:15px;color:var(--ink);font-family:var(--ff);transition:border-color var(--t)}
.cu-form-card .wpcf7-form textarea{min-height:130px;resize:vertical;line-height:1.6}
.cu-form-card .wpcf7-form input:focus,
.cu-form-card .wpcf7-form select:focus,
.cu-form-card .wpcf7-form textarea:focus{outline:none;border-color:var(--olive)}
.cu-form-card .wpcf7-form-control-wrap{display:block}
.cu-form-card .wpcf7-not-valid-tip{display:block;font-size:12.5px;color:var(--rust-2);margin-top:5px}
.cu-form-card .wpcf7-form.invalid .wpcf7-response-output{border-color:var(--rust);color:var(--rust-2)}
.cu-form-card .wpcf7-form.sent .wpcf7-response-output{border-color:var(--olive);color:var(--olive-d)}
.cu-form-card .wpcf7-response-output{margin:0;border:1.5px solid var(--line);border-radius:4px;padding:12px 14px;font-size:13.5px}
.cu-form-card .wpcf7-submit{display:block;width:100%;background:var(--olive);color:var(--cream);border:0;padding:15px 32px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background var(--t)}
.cu-form-card .wpcf7-submit:hover{background:var(--deep)}
.cu-form-card .wpcf7-submit:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.cu-form-card .wpcf7-spinner{margin-left:10px}

/* -- Responsive ---------------------------------------------------------- */
@media (max-width:1024px){
  .cu-hero__in{grid-template-columns:1fr;gap:32px;padding-block:20px}
  .cu-hero__copy h1{font-size:40px}
  .cu-hero__chips{padding-bottom:0}
  .cu-body{grid-template-columns:1fr;gap:40px;padding-block:48px 64px}
  .cu-form-col{position:static}
}
@media (max-width:640px){
  .cu-hero__copy h1{font-size:34px}
  .cu-cards{grid-template-columns:1fr}
  .cu-form-card{padding:24px 20px}
  .cu-form-card .wpcf7-submit{padding:14px}
  .cu-hero__chips{flex-direction:column;gap:8px}
  .cu-chip{align-self:flex-start}
}

/* ==========================================================================
   9. About Us page  (page template: static-pages/about-us.php)
   ========================================================================== */

/* -- Keyframes ----------------------------------------------------------- */
@keyframes au-fade-up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
@keyframes au-slide-right{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}
@keyframes au-icon-pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.15)}100%{transform:scale(1);opacity:1}}

/* -- Hero ---------------------------------------------------------------- */
/* .au-hero{background:linear-gradient(140deg,var(--night) 0%,var(--olive-d) 100%);border-bottom:3px solid var(--gold);overflow:hidden} */
.au-hero{border-bottom:3px solid var(--gold);overflow:hidden}
.au-hero__in{display:grid;grid-template-columns:1fr 600px;gap:30px;align-items:center;padding-block:20px 0}
.au-hero__copy{max-width:640px}
.au-hero__copy .crumbs,.au-hero__copy .crumbs a{color:var(--muted)}
.au-hero__copy .crumbs a:hover{color:var(--muted);text-decoration:none}
.au-hero__copy .crumbs [aria-current]{color:rgba(255,255,255,.7)}
.au-hero__copy h1{font-size:52px;font-weight:800;line-height:1.05;letter-spacing:-.03em;color:var(--night);margin:14px 0 0}
.au-hero__lead{font-size:17px;line-height:1.7;color:var(--night);margin:18px 0 0;text-wrap:pretty}
.au-hero__actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap;padding-bottom:56px}
.au-hero__media img{width:100%;height:auto;max-height:420px;object-fit:cover;object-position:center;display:block;filter:drop-shadow(-8px 0 32px rgba(0,0,0,.35))}

/* Hero entrance */
.au-hero--animate{animation:au-fade-up 650ms cubic-bezier(.22,.68,0,1.2) both}
.au-hero--animate .eyebrow{animation:au-slide-right 480ms cubic-bezier(.22,.68,0,1.2) 100ms both}
.au-hero--animate h1{animation:au-fade-up 620ms cubic-bezier(.22,.68,0,1.2) 180ms both}
.au-hero--animate .au-hero__lead{animation:au-fade-up 580ms cubic-bezier(.22,.68,0,1.2) 300ms both}
.au-hero--animate .au-hero__actions{animation:au-fade-up 520ms cubic-bezier(.22,.68,0,1.2) 420ms both}
@media (prefers-reduced-motion:reduce){
  .au-hero--animate,.au-hero--animate .eyebrow,.au-hero--animate h1,
  .au-hero--animate .au-hero__lead,.au-hero--animate .au-hero__actions{animation:none}
}
/* .btn--ghost-on-dark {
    color: #ffab00;
    background: transparent;
    border: 2px solid rgb(0 0 0 / 55%);
    padding: 15px 32px;
}
.btn--ghost-on-dark:hover {
    color: #ffab00;
    background: transparent;
    border: 2px solid rgb(0 0 0 / 55%);
} */
/* -- Stat strip ---------------------------------------------------------- */
.au-stats{background:var(--olive);border-bottom:1px solid var(--olive-d)}
.au-stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.au-stat[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity 520ms ease,transform 520ms cubic-bezier(.22,.68,0,1.2)}
.au-stat[data-reveal].is-visible{opacity:1;transform:translateY(0)}
.au-stat[data-reveal].is-visible .au-stat__icon{animation:au-icon-pop 480ms cubic-bezier(.22,.68,0,1.2) 230ms both}
@media (prefers-reduced-motion:reduce){.au-stat[data-reveal].is-visible .au-stat__icon{animation:none}}
.au-stat{display:flex;flex-direction:column;gap:5px;padding:26px 30px;border-right:1px solid rgba(255,255,255,.15)}
.au-stat:last-child{border-right:0}
.au-stat__icon{width:40px;height:40px;background:rgba(255,255,255,.12);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:4px;color:var(--gold-l);flex-shrink:0}
.au-stat b{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--cream)}
.au-stat a{font-size:14.5px;line-height:1.5;color:rgba(255,255,255,.82);text-decoration:none}
.au-stat a:hover{color:var(--gold-l);text-decoration:underline}
.au-stat__hours{font-size:12.5px;color:rgba(255,255,255,.55);margin-top:2px}

/* -- Generic section ----------------------------------------------------- */
.au-section--padded{padding-block:60px 0}
.au-section__eyebrow{margin-bottom:10px}
.au-section h2{font-size:30px;font-weight:800;color:var(--deep);letter-spacing:-.022em;margin:10px 0 20px}
.au-section__body p{font-size:16.5px;line-height:1.75;color:var(--ink-2);text-wrap:pretty}
.au-section__body p+p{margin-top:16px}

/* -- Visit section ------------------------------------------------------- */
.au-visit{background:var(--mist);border-block:1px solid var(--mist-b);margin-top:52px}
.au-visit__in{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center;padding-block:56px}
.au-visit__copy h2{font-size:30px;font-weight:800;color:var(--deep);letter-spacing:-.022em;margin:10px 0 18px}
.au-visit__copy p{font-size:16.5px;line-height:1.75;color:var(--ink-2);text-wrap:pretty}
.au-visit__copy p+p{margin-top:14px}
.au-visit__actions{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
.au-visit__media img{width:100%;height:360px;object-fit:cover;display:block}

/* -- Specialize section -------------------------------------------------- */
.au-specialize{padding-block:64px}
.au-specialize__in{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.au-specialize__media img{width:100%;height:440px;object-fit:cover;display:block}
.au-specialize__copy h2{font-size:30px;font-weight:800;color:var(--deep);letter-spacing:-.022em;margin:10px 0 18px}
.au-specialize__copy p{font-size:16.5px;line-height:1.75;color:var(--ink-2);text-wrap:pretty}
.au-specialize__copy p+p{margin-top:14px}

/* -- Drum CTA band ------------------------------------------------------- */
.au-drum-band{background:var(--olive);border-block:3px solid var(--gold)}
.au-drum-band__in{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;padding-block:32px}
.au-drum-band__text{font-size:16px;line-height:1.65;color:rgba(255,255,255,.82);max-width:640px;text-wrap:pretty}
.au-drum-band__text a{color:var(--gold-l);font-weight:600}
.au-drum-band__text a:hover{color:var(--gold);text-decoration:none}

/* -- Trust badges -------------------------------------------------------- */
.au-badges{padding-block:56px;background:var(--cream)}
.au-badges__heading{font-size:22px;font-weight:800;color:var(--deep);letter-spacing:-.015em;text-align:center;margin-bottom:32px}
.au-badges__grid{display:flex;justify-content:center;flex-wrap:wrap;gap:32px}
.au-badges__grid img{width:160px;height:160px;object-fit:contain}
.au-badges__grid[data-reveal] img{opacity:0;transform:translateY(14px);transition:opacity 450ms ease,transform 450ms cubic-bezier(.22,.68,0,1.2)}
.au-badges__grid[data-reveal].is-visible img{opacity:1;transform:translateY(0)}
.au-badges__grid[data-reveal].is-visible img:nth-child(1){transition-delay:40ms}
.au-badges__grid[data-reveal].is-visible img:nth-child(2){transition-delay:110ms}
.au-badges__grid[data-reveal].is-visible img:nth-child(3){transition-delay:180ms}
.au-badges__grid[data-reveal].is-visible img:nth-child(4){transition-delay:250ms}
@media (prefers-reduced-motion:reduce){.au-badges__grid[data-reveal] img{transition:none;opacity:1;transform:none}}

/* -- Team section -------------------------------------------------------- */
.au-team{background:var(--mist);padding-block:72px;color:#E7E3D6}
.au-team .eyebrow{display:inline-block}
.au-team h2{font-size:34px;font-weight:800;color:var(--night);letter-spacing:-.025em;margin:10px 0 0}
.au-team__lead{font-size:17px;color:var(--night);margin:10px 0 40px}
.au-team__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.au-team-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:24px;display:flex;gap:18px;align-items:flex-start;transition:background 200ms ease,border-color 200ms ease}
.au-team-card:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2)}
.au-team-card__avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;flex-shrink:0;line-height:1}
.au-team-card__body{min-width:0}
.au-team-card__name{display:block;font-size:16px;font-weight:800;
color:var(--night);line-height:1.2}
.au-team-card__role{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--deep);margin:4px 0 10px}
.au-team-card__bio{font-size:14px;line-height:1.65;color:var(--night);margin:0;text-wrap:pretty}
.au-team__grid[data-reveal] .au-team-card{opacity:0;transform:translateY(16px);transition:opacity 480ms ease,transform 480ms cubic-bezier(.22,.68,0,1.2),background 200ms ease,border-color 200ms ease}
.au-team__grid[data-reveal].is-visible .au-team-card{opacity:1;transform:translateY(0)}
.au-team__grid[data-reveal].is-visible .au-team-card:nth-child(1){transition-delay:40ms; background: var(--white);}
.au-team__grid[data-reveal].is-visible .au-team-card:nth-child(2){transition-delay:110ms; background: var(--white);}
.au-team__grid[data-reveal].is-visible .au-team-card:nth-child(3){transition-delay:180ms; background: var(--white);}
.au-team__grid[data-reveal].is-visible .au-team-card:nth-child(4){transition-delay:250ms; background: var(--white);}
.au-team__grid[data-reveal].is-visible .au-team-card:nth-child(5){transition-delay:320ms; background: var(--white);}
.au-team__grid[data-reveal].is-visible .au-team-card:nth-child(6){transition-delay:390ms; background: var(--white);}
@media (prefers-reduced-motion:reduce){.au-team__grid[data-reveal] .au-team-card{transition:background 200ms ease,border-color 200ms ease;opacity:1;transform:none}}

/* -- Directions ---------------------------------------------------------- */
.au-directions{border-top:1px solid var(--mist-b);border-bottom:1px solid var(--mist-b)}
.au-directions__in{display:grid;grid-template-columns:1fr 2fr;gap:48px;padding-block:56px;align-items:start}
.au-directions__map-wrap h2{font-size:20px;font-weight:800;color:var(--deep);letter-spacing:-.015em;margin:0 0 14px}
.au-directions__map{width:100%;height:280px;border:1px solid var(--line);display:block}
.au-directions__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.au-directions__cols h3{font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--olive);margin-bottom:12px}
.au-directions__cols ol,.au-directions__cols ul{padding-left:18px;margin:0}
.au-directions__cols li{font-size:14px;line-height:1.65;color:var(--ink-2)}
.au-directions__cols li+li{margin-top:7px}

/* .sec-heading utility (used elsewhere) */
.sec-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}
.sec-heading .h-sec{margin-top:0}

/* -- Responsive ---------------------------------------------------------- */
@media (max-width:1100px){.au-team__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:1024px){
  .au-hero__in{grid-template-columns:1fr;gap:32px;padding-block:20px}
  .au-hero__copy h1{font-size:40px}
  .au-hero__actions{padding-bottom:0}
  .au-stats__grid{grid-template-columns:1fr}
  .au-stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.15);padding:20px 24px}
  .au-stat:last-child{border-bottom:0}
  .au-visit__in,.au-specialize__in{grid-template-columns:1fr;gap:36px}
  .au-visit__media img,.au-specialize__media img{height:260px}
  .au-directions__in{grid-template-columns:1fr;gap:32px}
  .au-directions__cols{grid-template-columns:1fr 1fr;gap:24px}
}
@media (max-width:640px){
  .au-hero__copy h1{font-size:34px}
  .au-hero__actions{flex-direction:column}
  .au-hero__actions .btn{text-align:center}
  .au-team__grid{grid-template-columns:1fr}
  .au-directions__cols{grid-template-columns:1fr}
  .au-badges__grid img{width:110px;height:110px}
  .au-drum-band__in{flex-direction:column;align-items:flex-start}
}

/* ==========================================================================
   10a. Shop By Category page  (page template: static-pages/shop-by-category.php)
   ========================================================================== */

/* -- Keyframes (shared with bulk-orders ? defined once is fine, but these
      are scoped names so no collision risk) ------------------------------ */
@keyframes sbc-fade-up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
@keyframes sbc-slide-right{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}

/* -- Hero ---------------------------------------------------------------- */
.sbc-hero{border-bottom:3px solid var(--gold);overflow:hidden}
.sbc-hero__in{display:grid;grid-template-columns:1fr 340px;gap:56px;align-items:center;padding-block:30px 0}
.sbc-hero__copy{max-width:640px}

/* Breadcrumb override inside dark hero */
.sbc-hero__copy .crumbs,.sbc-hero__copy .crumbs a{color: var(--muted);}
.sbc-hero__copy .crumbs a:hover{color: var(--muted);text-decoration:none}
.sbc-hero__copy .crumbs [aria-current]{color:rgba(255,255,255,.7)}

.sbc-hero__copy h1{font-size:50px;font-weight:800;line-height:1.05;letter-spacing:-.03em;color:var(--white);margin:14px 0 0}
.sbc-hero__lead{font-size:16px;line-height:1.7;color:rgba(255,255,255,.7);margin:18px 0 0;text-wrap:pretty;
  /* clamp to 5 lines ? full text is in the DOM for SEO/SR, visual trim only */
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}
.sbc-hero__actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap;padding-bottom:56px}

/* Button overrides inside the dark hero ? need contrast against night/olive-d bg */
.sbc-hero__actions .btn--primary{background:var(--gold);color:var(--deep)}
.sbc-hero__actions .btn--primary:hover{background:var(--gold-l);color:var(--deep)}
.sbc-hero__actions .btn--ghost{color:var(--cream);background:transparent;border:2px solid rgba(255,255,255,.55);padding:15px 32px}
.sbc-hero__actions .btn--ghost:hover{background:rgba(255,255,255,.12);border-color:var(--cream);color:var(--cream)}

/* Hero image ? bleeds to bottom edge, slight tilt for visual interest */
.sbc-hero__media{align-self:flex-end;position:relative}
.sbc-hero__media img{
  width:100%;height:auto;display:block;    margin-bottom: 25px;
  object-fit:contain;object-position:center top;
  max-height:420px;
  filter:drop-shadow(-8px 0 32px rgba(0,0,0,.4));
}

/* Entrance animation ? fires on load, children stagger */
.sbc-hero--animate{animation:sbc-fade-up 650ms cubic-bezier(.22,.68,0,1.2) both}
/* .sbc-hero--animate .eyebrow{animation:sbc-slide-right 480ms cubic-bezier(.22,.68,0,1.2) 100ms both} */
.sbc-hero--animate h1{color:var(--night);animation:sbc-fade-up 620ms cubic-bezier(.22,.68,0,1.2) 180ms both}
.sbc-hero--animate .sbc-hero__lead{animation:sbc-fade-up 580ms cubic-bezier(.22,.68,0,1.2) 300ms both;color:var(--night);}
.sbc-hero--animate .sbc-hero__actions{animation:sbc-fade-up 520ms cubic-bezier(.22,.68,0,1.2) 420ms both}
@media (prefers-reduced-motion:reduce){
  .sbc-hero--animate,.sbc-hero--animate .eyebrow,.sbc-hero--animate h1,
  .sbc-hero--animate .sbc-hero__lead,.sbc-hero--animate .sbc-hero__actions{animation:none}
}

/* -- Grid section -------------------------------------------------------- */
.sbc-grid-section{padding-block:64px 80px}
.sbc-grid-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-bottom:28px;border-bottom:2px solid var(--deep);margin-bottom:32px}

/* 4-col on wide, responsive down to 1 */
.sbc-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

/* -- Category card ------------------------------------------------------- */
.sbc-cat-card{
  display:flex;flex-direction:column;
  background:var(--white);
  border:1px solid var(--line);
  text-decoration:none;
  transition:box-shadow var(--t),transform var(--t),border-color var(--t);
  /* stagger handled by data-reveal on parent + nth-child below */
}
.sbc-cat-card:hover{
  box-shadow:var(--shadow);
  transform:translateY(-3px);
  border-color:var(--mist-b);
  text-decoration:none;
}
/* Focus ring ? visible on keyboard nav, consistent with theme */
.sbc-cat-card:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:2px;
}

/* Media area */
.sbc-cat-card__media{
  position:relative;
  background:var(--sand);
  overflow:hidden;
}
.sbc-cat-card__img{
  width:100%;
  height:180px;
  object-fit:cover;
  display:block;
  transition:transform 400ms ease;
}
.sbc-cat-card:hover .sbc-cat-card__img{transform:scale(1.04)}

/* SVG placeholder ? same height as real images */
.sbc-cat-card__placeholder{
  display:flex;align-items:center;justify-content:center;
  width:100%;height:180px;
}

/* Count badge ? top-right corner of the image */
.sbc-cat-card__count{
  position:absolute;top:10px;right:10px;
  font-size:11px;font-weight:800;letter-spacing:.05em;
  padding:4px 9px;
  line-height:1.3;
}

/* Card body */
.sbc-cat-card__body{
  padding:16px 18px 20px;
  display:flex;flex-direction:column;gap:6px;
  flex:1;
}
.sbc-cat-card__name{
  display:block;
  font-size:15.5px;font-weight:800;line-height:1.25;
  color:var(--deep);letter-spacing:-.01em;
}
.sbc-cat-card__desc{
  font-size:13px;line-height:1.5;color:var(--muted);
  margin:0;
  /* clamp to 2 lines */
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;
}
.sbc-cat-card__cta{
  display:flex;align-items:center;gap:5px;
  margin-top:auto;padding-top:10px;
  font-size:12.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  color:var(--olive);
  transition:gap var(--t),color var(--t);
}
.sbc-cat-card:hover .sbc-cat-card__cta{gap:9px;color:var(--deep)}
.sbc-cat-card__cta svg{flex-shrink:0;transition:transform var(--t)}
.sbc-cat-card:hover .sbc-cat-card__cta svg{transform:translateX(3px)}

/* -- Scroll-reveal: stagger the grid cards ------------------------------- */
/* The parent [data-reveal] is .sbc-grid.
   When .is-visible is added, each .sbc-cat-card fades up with a stagger. */
.sbc-grid[data-reveal] .sbc-cat-card{
  opacity:0;
  transform:translateY(18px);
  transition:opacity 480ms ease, transform 480ms cubic-bezier(.22,.68,0,1.2);
}
.sbc-grid[data-reveal].is-visible .sbc-cat-card{opacity:1;transform:translateY(0)}

/* Stagger delays ? up to 12 children, 60ms apart, caps at ~500ms */
.sbc-grid[data-reveal].is-visible .sbc-cat-card:nth-child(1){transition-delay:30ms}
.sbc-grid[data-reveal].is-visible .sbc-cat-card:nth-child(2){transition-delay:90ms}
.sbc-grid[data-reveal].is-visible .sbc-cat-card:nth-child(3){transition-delay:150ms}
.sbc-grid[data-reveal].is-visible .sbc-cat-card:nth-child(4){transition-delay:210ms}
.sbc-grid[data-reveal].is-visible .sbc-cat-card:nth-child(5){transition-delay:270ms}
.sbc-grid[data-reveal].is-visible .sbc-cat-card:nth-child(6){transition-delay:330ms}
.sbc-grid[data-reveal].is-visible .sbc-cat-card:nth-child(7){transition-delay:390ms}
.sbc-grid[data-reveal].is-visible .sbc-cat-card:nth-child(8){transition-delay:450ms}
.sbc-grid[data-reveal].is-visible .sbc-cat-card:nth-child(n+9){transition-delay:500ms}
@media (prefers-reduced-motion:reduce){
  .sbc-grid[data-reveal] .sbc-cat-card{transition:none;opacity:1;transform:none}
}

/* -- Responsive ---------------------------------------------------------- */
@media (max-width:1200px){
  .sbc-grid{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:1024px){
  .sbc-hero__in{grid-template-columns:1fr;gap:32px;padding-block:48px}
  .sbc-hero__copy{max-width:100%}
  .sbc-hero__media{display:none}/* hide portrait image on tablet ? too tall */
  .sbc-hero__copy h1{font-size:40px}
  .sbc-hero__actions{padding-bottom:0}
  .sbc-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:760px){
  .sbc-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .sbc-cat-card__img,.sbc-cat-card__placeholder{height:140px}
}
@media (max-width:480px){
  .sbc-hero__copy h1{font-size:32px}
  .sbc-hero__actions{flex-direction:column}
  .sbc-hero__actions .btn{text-align:center}  .sbc-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .sbc-cat-card__body{padding:12px 14px 16px}
  .sbc-cat-card__name{font-size:14px}
}

/* ==========================================================================
   10. Bulk Orders page  (page template: static-pages/bulk-orders.php)
   ========================================================================== */

/* -- Keyframes ----------------------------------------------------------- */
@keyframes bulk-fade-up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes bulk-slide-right{from{opacity:0;transform:translateX(-22px)}to{opacity:1;transform:translateX(0)}}
@keyframes bulk-icon-pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.15)}100%{transform:scale(1);opacity:1}}

/* -- Hero ---------------------------------------------------------------- */
.bulk-hero{border-bottom:3px solid var(--gold)}
.bulk-hero__in{padding-block:14px 25px}
.bulk-hero__content{max-width:720px}
.bulk-hero__content .breadcrumbs,.bulk-hero__content .breadcrumb{color:rgba(255,255,255,.45);font-size:13px}
.bulk-hero__content .breadcrumbs a,.bulk-hero__content .breadcrumb a{color:rgba(255,255,255,.55)}
.bulk-hero__content .breadcrumbs a:hover,.bulk-hero__content .breadcrumb a:hover{color:var(--gold-l)}
.bulk-hero__content h1{font-size:52px;font-weight:800;line-height:1.05;letter-spacing:-.03em;color:var(--white);margin:14px 0 0}
.bulk-hero__lead{font-size:18px;line-height:1.65;color:rgba(255,255,255,.72);margin:18px 0 0;max-width:620px;text-wrap:pretty}
.bulk-hero__actions{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.btn--ghost-light{color:var(--night)der-color:rgba(255,255,255,.45)}
.btn--ghost-light:hover{background:rgba(255,255,255,.1);border-color:var(--olive);color:var(--night);}

/* Hero entrance ? fires immediately on load, children stagger via delay */
.bulk-hero--animate{animation:bulk-fade-up 700ms cubic-bezier(.22,.68,0,1.2) both}
.bulk-hero--animate .eyebrow{animation:bulk-slide-right 500ms cubic-bezier(.22,.68,0,1.2) 120ms both}
.bulk-hero--animate h1{animation:bulk-fade-up 650ms cubic-bezier(.22,.68,0,1.2) 200ms both;color:var(--night);}
.bulk-hero--animate .bulk-hero__lead{animation:bulk-fade-up 600ms cubic-bezier(.22,.68,0,1.2) 320ms both;color:var(--night);}
.bulk-hero--animate .bulk-hero__actions{animation:bulk-fade-up 550ms cubic-bezier(.22,.68,0,1.2) 440ms both}
@media (prefers-reduced-motion:reduce){
  .bulk-hero--animate,.bulk-hero--animate .eyebrow,.bulk-hero--animate h1,
  .bulk-hero--animate .bulk-hero__lead,.bulk-hero--animate .bulk-hero__actions{animation:none}
}

/* -- Stat cards strip ---------------------------------------------------- */
.bulk-stats{background:var(--olive);border-bottom:1px solid var(--olive-d)}
.bulk-stats__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}

/* scroll-reveal base ? hidden until observer adds .is-visible */
.bulk-stat[data-reveal]{opacity:0;transform:translateY(20px);transition:opacity 550ms ease,transform 550ms cubic-bezier(.22,.68,0,1.2)}
.bulk-stat[data-reveal].is-visible{opacity:1;transform:translateY(0)}
/* icon pops in after card lands */
.bulk-stat[data-reveal].is-visible .bulk-stat__icon{animation:bulk-icon-pop 480ms cubic-bezier(.22,.68,0,1.2) 240ms both}
@media (prefers-reduced-motion:reduce){.bulk-stat[data-reveal].is-visible .bulk-stat__icon{animation:none}}

.bulk-stat{display:flex;flex-direction:column;gap:6px;padding:15px 20px;border-right:1px solid rgba(255,255,255,.15)}
.bulk-stat:last-child{border-right:0}
.bulk-stat__icon{width:44px;height:44px;background:rgba(255,255,255,.12);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:6px;color:var(--gold-l);transition:background 250ms ease,transform 250ms ease}
.bulk-stat:hover .bulk-stat__icon{background:rgba(255,255,255,.22);transform:scale(1.1)}
.bulk-stat b{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--cream)}
.bulk-stat span{font-size:14.5px;line-height:1.55;color:rgba(255,255,255,.75)}

/* -- Two-column body ----------------------------------------------------- */
.bulk-body{display:grid;grid-template-columns:1fr 480px;gap:35px;align-items:start;padding-block:64px 80px}

/* -- Content column ? scroll-reveal ------------------------------------- */
.bulk-section[data-reveal],.bulk-checklist[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity 550ms ease,transform 550ms cubic-bezier(.22,.68,0,1.2)}
.bulk-section[data-reveal].is-visible,.bulk-checklist[data-reveal].is-visible{opacity:1;transform:translateY(0)}

/* checklist items slide in one-by-one after the block is visible */
.bulk-checklist[data-reveal].is-visible li{animation:bulk-slide-right 420ms cubic-bezier(.22,.68,0,1.2) both}
.bulk-checklist[data-reveal].is-visible li:nth-child(1){animation-delay:60ms}
.bulk-checklist[data-reveal].is-visible li:nth-child(2){animation-delay:140ms}
.bulk-checklist[data-reveal].is-visible li:nth-child(3){animation-delay:220ms}
.bulk-checklist[data-reveal].is-visible li:nth-child(4){animation-delay:300ms}
@media (prefers-reduced-motion:reduce){.bulk-checklist[data-reveal].is-visible li{animation:none}}

.bulk-section{margin-bottom:40px}
.bulk-section:last-of-type{margin-bottom:32px}
.bulk-section .eyebrow{margin-bottom:12px}
.bulk-section h2{font-size:30px;font-weight:800;color:var(--deep);letter-spacing:-.022em;margin:10px 0 16px}
.bulk-section p{font-size:16.5px;line-height:1.75;color:var(--ink-2);text-wrap:pretty}
.bulk-section p+p{margin-top:14px}
.bulk-section a{color:var(--olive)}
.bulk-section a:hover{color:var(--olive-d)}

/* Reassurance checklist */
.bulk-checklist{list-style:none;padding:24px 26px;margin:0;display:flex;flex-direction:column;gap:12px;background:var(--mist);border:1px solid var(--mist-b)}
.bulk-checklist li{display:flex;align-items:flex-start;gap:10px;font-size:15px;line-height:1.55;color:var(--ink-2)}
.bulk-checklist li svg{flex-shrink:0;stroke:var(--olive);margin-top:2px}

/* -- Form column ? scroll-reveal ---------------------------------------- */
.bulk-form-col[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity 620ms ease,transform 620ms cubic-bezier(.22,.68,0,1.2)}
.bulk-form-col[data-reveal].is-visible{opacity:1;transform:translateY(0)}

.bulk-form-col{position:sticky;top:24px}
.bulk-form__card{background:var(--sand);border:1px solid var(--line);border-top:3px solid var(--olive);border-radius:0;padding:20px}
.bulk-form__card .eyebrow{margin-bottom:10px}
.bulk-form__card h2{font-size:24px;font-weight:800;color:var(--deep);letter-spacing:-.015em;margin:0 0 8px}
.bulk-form__card > p{font-size:14.5px;color:var(--muted);margin:0 0 22px}

/* Phone note below form */
.bulk-form__phone-note{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--muted);margin-top:20px;padding-top:18px;border-top:1px solid var(--line-2)}
.bulk-form__phone-note svg{flex-shrink:0;stroke:var(--muted)}
.bulk-form__phone-note a{color:var(--olive);font-weight:700}
.bulk-form__phone-note a:hover{color:var(--olive-d)}

/* Contact Form 7 */
.bulk-form__card .wpcf7-form{display:flex;flex-direction:column;gap:16px}
.bulk-form__card .wpcf7-form p{margin:0}
.bulk-form__card .wpcf7-form label{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--deep);margin-bottom:6px}
.bulk-form__card .wpcf7-form input[type=text],
.bulk-form__card .wpcf7-form input[type=email],
.bulk-form__card .wpcf7-form input[type=tel],
.bulk-form__card .wpcf7-form input[type=number],
.bulk-form__card .wpcf7-form select,
.bulk-form__card .wpcf7-form textarea{width:100%;border:1.5px solid var(--line);background:var(--white);padding:12px 14px;font-size:15px;color:var(--ink);font-family:var(--ff);transition:border-color var(--t)}
.bulk-form__card .wpcf7-form textarea{min-height:120px;resize:vertical;line-height:1.6}
.bulk-form__card .wpcf7-form input:focus,
.bulk-form__card .wpcf7-form select:focus,
.bulk-form__card .wpcf7-form textarea:focus{outline:none;border-color:var(--olive)}
.bulk-form__card .wpcf7-form-control-wrap{position:relative;display:block}
.bulk-form__card .wpcf7-not-valid-tip{display:block;font-size:12.5px;color:var(--rust-2);margin-top:5px}
.bulk-form__card .wpcf7-form.invalid .wpcf7-response-output{border-color:var(--rust);color:var(--rust-2)}
.bulk-form__card .wpcf7-form.sent .wpcf7-response-output{border-color:var(--olive);color:var(--olive-d)}
.bulk-form__card .wpcf7-response-output{margin:0;border:1.5px solid var(--line);border-radius:6px;padding:12px 14px;font-size:13.5px}
.bulk-form__card .wpcf7-submit{align-self:flex-start;display:inline-block;background:var(--olive);color:var(--cream);border:0;padding:15px 32px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background var(--t);width:100%}
.bulk-form__card .wpcf7-submit:hover{background:var(--deep)}
.bulk-form__card .wpcf7-spinner{margin-left:10px}

/* -- Responsive ---------------------------------------------------------- */
@media (max-width:1024px){
  .bulk-body{grid-template-columns:1fr;gap:40px;padding-block:48px 64px}
  .bulk-form-col{position:static}
  .bulk-stats__grid{grid-template-columns:1fr}
  .bulk-stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.15);padding:22px 24px}
  .bulk-stat:last-child{border-bottom:0}
}
@media (max-width:640px){
  .bulk-hero__content h1{font-size:38px}
  .bulk-hero__lead{font-size:16px}
  .bulk-hero__in{padding-block:10px 10px}
  .bulk-hero__actions{flex-direction:column}
  .bulk-hero__actions .btn{text-align:center}
  .bulk-form__card{padding:24px 20px}
  .bulk-form__card .wpcf7-submit{align-self:stretch;text-align:center}
}
/* ══════════════════════════════════════════════════════════════════
   CANDLE MAKING TRAINING PAGE
   All classes use the "ct-" prefix so nothing clashes with the
   About Us CSS. You can DELETE the old candle-page CSS block
   (.au-hero--light, .au-hero--compact, .au-specialize--portrait,
   .au-curriculum-list, .au-price, .btn--ghost) and paste this instead.
   ══════════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────
   SECTION 1 — HERO (text left, small image right)
   ───────────────────────────────────────────── */
.ct-hero {
	background: var(--cream, #F8F4EC);
	padding: 22px 0 50px;
	border-bottom: 1px solid var(--gold, #C99A3B);
}

/* THE GRID: left column = flexible, right column = max 480px */
.ct-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 480px);
	gap: 56px;
	align-items: center;
}

/* Breadcrumbs — dark so they are visible on the cream background */
.ct-hero .breadcrumbs,
.ct-hero .breadcrumbs * {
	color: var(--night, #29331F);
}

.ct-hero__badge {
	display: inline-block;
	margin-top: 18px;
}

.ct-hero__copy h1 {
    font-size: 52px;
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -.03em;
    color: var(--night);
    margin: 14px 0 0;
}
.ct-hero__lead {
    font-size: 17px;
    line-height: 1.7;
    color: var(--night);
    margin: 18px 0 0;
    text-wrap: pretty;
}

.ct-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

/* Small image with soft shadow, like About Us */
.ct-hero__media img {
	display: block;
	width: 100%;
	max-width: 480px;
	height: auto;
	max-height: 340px;
	object-fit: cover;
	margin-left: auto;
	border-radius: 4px;
	box-shadow: 0 18px 48px rgba(0, 0, 0, .18);
}


/* ─────────────────────────────────────────────
   SECTION 2 — SOAP TRAINING (image left, content right)
   ───────────────────────────────────────────── */
.ct-training {
	padding: 35px 0;
}

/* THE GRID: left column = 360px image, right column = content */
.ct-training__grid {
	display: grid;
	grid-template-columns: 360px minmax(0, 1fr);
	gap: 64px;
	align-items: start;
}

.ct-training__media img {
	display: block;
	width: 100%;
	max-width: 360px;
	height: auto;
	border-radius: 12px;
	box-shadow: 0 12px 34px rgba(0, 0, 0, .14);
}

.ct-training__sub {
	margin: 0 0 20px;
	font-weight: 600;
}

.ct-list {
	list-style: none;
	margin: 0 0 26px;
	padding: 0;
}
.ct-list li {
	margin-bottom: 18px;
}
.ct-list li strong {
	display: block;
	margin-bottom: 4px;
	font-size: 17px;
	color: #29331F;
}
.ct-list li span {
	display: block;
	font-size: 15px;
	line-height: 1.65;
	color: #54544c;
}


/* ─────────────────────────────────────────────
   BUTTON — ghost (outlined) for light backgrounds
   Skip this block if you already have .btn--ghost
   ───────────────────────────────────────────── */
.btn--ghost {
	background: transparent;
	border: 2px solid var(--night, #29331F);
	color: var(--gold, #E5A100);
	transition: background .2s ease, color .2s ease;
}
.btn--ghost:hover,
.btn--ghost:focus-visible {
	background: var(--night, #29331F);
	color: var(--cream, #F8F4EC);
}


/* ─────────────────────────────────────────────
   RESPONSIVE — tablet & mobile: one column
   ───────────────────────────────────────────── */
@media (max-width: 900px) {

	.ct-hero {
		padding: 40px 0 56px;
	}
	.ct-hero__grid,
	.ct-training__grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.ct-hero__media img {
		max-width: 420px;
		margin: 0 auto;
	}

	.ct-training {
		padding: 30px 0;
	}
	.ct-training__media img {
		max-width: 320px;
		margin: 0 auto;
	}
}

.load-more .page-numbers {
	display: inline-block;
	margin: 0 4px;
	padding: 8px 14px;
	border: 1px solid #d8d2c4;
	border-radius: 6px;
	font-weight: 600;
	text-decoration: none;
	color: #29331F;
}
.load-more .page-numbers.current {
	background: #29331F;
	border-color: #29331F;
	color: #fff;
}
.load-more .page-numbers.dots {
	border: none;
	padding: 8px 6px;
}
.load-more a.page-numbers:hover {
	background: #e4e7dd;
}

.bulk {
	--bulk-bg: #29331F;
	background: var(--bulk-bg) !important;
}
.bulk h2 {
	color: #F8F4EC;
}
.bulk p {
	color: #F8F4EC;
	opacity: .85;
}
/* Phone button: gold-on-dark for contrast against the new bg */
.bulk .btn--primary {
	background: #C89A3C !important;
	color: #20261a !important;
	border-color: #C89A3C !important;
}
.bulk .btn--primary:hover {
	background: #b8862c !important;
}
/* Outline "Request a bulk quote" button: light border/text on dark bg */
.bulk .btn--ghost {
	border-color: rgba(248,244,236,.55) !important;
	color: #F8F4EC !important;
}
.bulk .btn--ghost:hover {
	background: rgba(248,244,236,.1) !important;
}
/* -- Keyframes ------------------------------------------------------------ */
@keyframes sv-fade-up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}

/* -- Hero ------------------------------------------------------------------ */
.sv-hero{border-bottom:3px solid var(--gold);overflow:hidden}
.sv-hero__in{display:grid;grid-template-columns:1fr 600px;gap:40px;align-items:center;padding-block:35px 56px}
.sv-hero__copy{max-width:640px}
.sv-hero__copy .crumbs,.sv-hero__copy .crumbs a{color:var(--muted)}
.sv-hero__copy .crumbs a:hover{color:var(--muted);text-decoration:none}
.sv-hero__copy h1{font-size:52px;font-weight:800;line-height:1.05;letter-spacing:-.03em;color:var(--night);margin:14px 0 0}
.sv-hero__lead{font-size:16.5px;line-height:1.7;color:var(--night);margin:16px 0 0;text-wrap:pretty}

.sv-hero--animate{animation:sv-fade-up 650ms cubic-bezier(.22,.68,0,1.2) both}
.sv-hero--animate h1{animation:sv-fade-up 620ms cubic-bezier(.22,.68,0,1.2) 180ms both}
.sv-hero--animate .sv-hero__lead{animation:sv-fade-up 580ms cubic-bezier(.22,.68,0,1.2) 300ms both}
@media (prefers-reduced-motion:reduce){
  .sv-hero--animate,.sv-hero--animate h1,.sv-hero--animate .sv-hero__lead{animation:none}
}

/* Mini-stats under the lead copy ("500+ Brands" / "Fast Shipping") */
.sv-hero__mini-stats{display:flex;gap:32px;margin-top:28px;flex-wrap:wrap}
.sv-mini-stat[data-reveal]{opacity:0;transform:translateY(14px);transition:opacity 480ms ease,transform 480ms cubic-bezier(.22,.68,0,1.2)}
.sv-mini-stat[data-reveal].is-visible{opacity:1;transform:translateY(0)}
@media (prefers-reduced-motion:reduce){.sv-mini-stat[data-reveal]{transition:none;opacity:1;transform:none}}
.sv-mini-stat{display:flex;flex-direction:column;gap:4px}
.sv-mini-stat b{font-size:15px;font-weight:800;color:var(--deep)}
.sv-mini-stat span{font-size:13px;color:var(--muted)}

/* Two side-by-side hero photos */
.sv-hero__gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sv-hero__gallery img{width:100%;height:280px;object-fit:cover;display:block;border-radius:4px;box-shadow:0 18px 48px rgba(0,0,0,.18)}
.sv-hero__gallery a:nth-child(2){margin-top:34px}

/* -- Entrust your home to a master band ------------------------------------- */
.sv-master{background:var(--olive);border-block:3px solid var(--gold)}
.sv-master__in{text-align:center;padding-block:56px;max-width:640px;margin-inline:auto}
.sv-master__in[data-reveal]{opacity:0;transform:translateY(20px);transition:opacity 550ms ease,transform 550ms cubic-bezier(.22,.68,0,1.2)}
.sv-master__in[data-reveal].is-visible{opacity:1;transform:translateY(0)}
@media (prefers-reduced-motion:reduce){.sv-master__in[data-reveal]{transition:none;opacity:1;transform:none}}
.sv-master h2{font-size:30px;font-weight:800;color:var(--cream);letter-spacing:-.02em;margin:0 0 14px}
.sv-master p{font-size:16px;line-height:1.65;color:rgba(255,255,255,.8);margin:0 0 26px}

/* -- Our Services grid -------------------------------------------------------- */
.sv-section{padding-block:64px 72px}
.sv-section h2{font-size:30px;font-weight:800;color:var(--deep);letter-spacing:-.022em;margin:0 0 32px;text-align:center}

.sv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.sv-grid[data-reveal] .sv-card{opacity:0;transform:translateY(18px);transition:opacity 480ms ease,transform 480ms cubic-bezier(.22,.68,0,1.2)}
.sv-grid[data-reveal].is-visible .sv-card{opacity:1;transform:translateY(0)}
.sv-grid[data-reveal].is-visible .sv-card:nth-child(1){transition-delay:20ms}
.sv-grid[data-reveal].is-visible .sv-card:nth-child(2){transition-delay:70ms}
.sv-grid[data-reveal].is-visible .sv-card:nth-child(3){transition-delay:120ms}
.sv-grid[data-reveal].is-visible .sv-card:nth-child(4){transition-delay:170ms}
.sv-grid[data-reveal].is-visible .sv-card:nth-child(5){transition-delay:220ms}
.sv-grid[data-reveal].is-visible .sv-card:nth-child(6){transition-delay:270ms}
.sv-grid[data-reveal].is-visible .sv-card:nth-child(7){transition-delay:320ms}
.sv-grid[data-reveal].is-visible .sv-card:nth-child(8){transition-delay:370ms}
.sv-grid[data-reveal].is-visible .sv-card:nth-child(9){transition-delay:420ms}
@media (prefers-reduced-motion:reduce){.sv-grid[data-reveal] .sv-card{transition:none;opacity:1;transform:none}}

.sv-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:26px 18px;background:var(--white);border:1px solid var(--line);transition:box-shadow var(--t),border-color var(--t),transform var(--t)}
.sv-card:hover{box-shadow:0 8px 24px rgba(41,51,31,.1);border-color:var(--mist-b);transform:translateY(-3px)}
.sv-card__media{width:88px;height:88px;border-radius:50%;overflow:hidden;background:var(--mist);display:flex;align-items:center;justify-content:center}
.sv-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.sv-card__title{font-size:15.5px;font-weight:700;color:var(--deep);margin:0}

/* -- Responsive ---------------------------------------------------------------- */
@media (max-width:1024px){
  .sv-hero__in{grid-template-columns:1fr;gap:32px;padding-block:48px}
  .sv-hero__copy h1{font-size:40px}
  .sv-hero__gallery a:nth-child(2){margin-top:0}
  .sv-hero__gallery img{height:240px}
  .sv-grid{grid-template-columns:repeat(2,1fr);gap:20px}
}
@media (max-width:640px){
  .sv-hero__copy h1{font-size:34px}
  .sv-hero__gallery{grid-template-columns:1fr}
  .sv-hero__gallery img{height:220px}
  .sv-hero__mini-stats{gap:24px}
  .sv-master h2{font-size:26px}
  .sv-grid{grid-template-columns:1fr 1fr;gap:14px}
  .sv-card{padding:20px 12px}
  .sv-card__media{width:72px;height:72px}
}
@media (max-width:420px){
  .sv-grid{grid-template-columns:1fr}
}