/* Sam Adult Care LLC — brand stylesheet
   Colors sampled from the client's logo + flyers (2026-07-08):
   plum #5E3D5E / #7C567C · maroon #8F4850 · gold #EAB010 · grey #B0B0B0 */

:root{
  --plum:#5E3D5E;
  --plum-mid:#7C567C;
  --plum-deep:#432B43;
  --maroon:#8F4850;
  --maroon-dark:#6E363C;
  --gold:#EAB010;
  --gold-dark:#C6900A;
  --grey:#B0B0B0;
  --ink:#2E2630;
  --muted:#5f5763;
  --cream:#FBF8FA;
  --card:#ffffff;
  --line:#e7dfe6;
  --shadow:0 10px 30px rgba(67,43,67,.10);
  --radius:14px;
  --wrap:1120px;
  --serif:"Georgia","Cambria",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--sans);color:var(--ink);background:var(--cream);
  line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--maroon);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{font-family:var(--serif);color:var(--plum);line-height:1.2;margin:0 0 .5em}
h1{font-size:clamp(2rem,4.5vw,3.1rem);letter-spacing:.3px}
h2{font-size:clamp(1.5rem,3vw,2.1rem)}
h3{font-size:1.2rem;color:var(--plum-mid)}
p{margin:0 0 1rem}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}
.center{text-align:center}
.muted{color:var(--muted)}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,248,250,.92);
  backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 22px;max-width:var(--wrap);margin:0 auto}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:78px;width:auto}
.brand .brand-txt{font-family:var(--serif);color:var(--plum);font-weight:700;font-size:1.37rem;line-height:1.05}
.brand .brand-txt small{display:block;font-family:var(--sans);font-weight:600;color:var(--maroon);font-size:.81rem;letter-spacing:.18em;text-transform:uppercase}
.menu{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.menu a{color:var(--ink);font-weight:600;font-size:.95rem;padding:8px 12px;border-radius:9px}
.menu a:hover{background:#f1e9f0;text-decoration:none;color:var(--plum)}
.menu a.active{color:var(--plum)}
.menu .btn{margin-left:6px}
.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:9px;padding:8px 10px;font-size:1.2rem;color:var(--plum);cursor:pointer}

/* ---------- buttons ---------- */
.btn{display:inline-block;background:var(--maroon);color:#fff;font-weight:700;
  padding:13px 22px;border-radius:11px;border:none;cursor:pointer;font-size:1rem;
  transition:transform .06s ease, background .2s ease;text-align:center}
.btn:hover{background:var(--maroon-dark);text-decoration:none;transform:translateY(-1px)}
.btn.gold{background:var(--gold);color:#3a2a06}
.btn.gold:hover{background:var(--gold-dark)}
.btn.ghost{background:transparent;color:var(--plum);border:2px solid var(--plum-mid)}
.btn.ghost:hover{background:#f1e9f0}
.btn-row{display:flex;gap:14px;flex-wrap:wrap}

/* ---------- hero ---------- */
.hero{background:
    radial-gradient(1200px 500px at 80% -10%, #f3e9f2 0, rgba(243,233,242,0) 60%),
    linear-gradient(180deg,#fff 0,var(--cream) 100%);
  border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:64px 0}
.hero .eyebrow{display:inline-block;background:#f1e4ef;color:var(--plum);font-weight:700;
  font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:999px;margin-bottom:16px}
.hero p.lead{font-size:1.15rem;color:var(--muted);max-width:52ch}
.hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.badge{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:.85rem;font-weight:600;color:var(--plum);box-shadow:var(--shadow)}
.hero-art{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);
  padding:34px;text-align:center}
.hero-art img{margin:0 auto;max-height:230px}
.hero-art .tag{margin-top:16px;font-family:var(--serif);color:var(--plum-mid);font-size:1.05rem}

/* ---------- sections ---------- */
section{padding:56px 0}
.section-tint{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band{background:linear-gradient(135deg,var(--maroon),var(--plum));color:#fff;text-align:center}
.band h2{color:#fff}
.band p{color:#f4e9f2;max-width:60ch;margin-left:auto;margin-right:auto}
.kicker{color:var(--maroon);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;margin-bottom:10px}
.section-head{max-width:64ch;margin:0 auto 34px;text-align:center}

/* ---------- cards / grid ---------- */
.grid{display:grid;gap:22px}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}
.card .ico{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-size:1.4rem;
  background:#f1e4ef;color:var(--plum);margin-bottom:14px}
.card.gold .ico{background:#fbeecb;color:var(--gold-dark)}
.card h3{margin-top:0}
.card ul{margin:.4rem 0 0;padding-left:1.1rem}
.card li{margin:.25rem 0}

/* value strip */
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.value{display:flex;gap:12px;align-items:flex-start}
.value .dot{flex:0 0 auto;width:12px;height:12px;border-radius:50%;background:var(--gold);margin-top:7px}

/* photo band (image + message) */
.photo-band{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.photo-band img{border-radius:18px;box-shadow:var(--shadow);width:100%}
.photo-band .kicker{margin-bottom:10px}
@media (max-width:900px){.photo-band{grid-template-columns:1fr;gap:26px}}
/* leadership band: bios are long, so give the text more room and top-align the photo */
@media (min-width:901px){
  .leader-band{grid-template-columns:.85fr 1.15fr;align-items:start}
  .leader-band img{position:sticky;top:90px}   /* portrait travels with the long bios */
}

/* family photos (added 2026-07-23) */
.figure{margin:0}
.figure img{display:block;width:100%;border-radius:16px;box-shadow:var(--shadow)}
.figure figcaption{font-size:.82rem;color:var(--muted);margin-top:8px;text-align:center;line-height:1.4}
.bio-figure{float:right;width:290px;margin:4px 0 18px 28px}
@media (max-width:680px){.bio-figure{float:none;width:100%;margin:16px 0 22px}}
.fam-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:780px;margin:0 auto}
.fam-gallery .figure img{aspect-ratio:4/5;object-fit:cover}
@media (max-width:760px){.fam-gallery{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.fam-gallery{grid-template-columns:1fr}}
.about-live .figure img{border:1px solid rgba(255,255,255,.18)}
.about-live .figure figcaption{color:rgba(255,255,255,.72)}

/* story */
.story{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.quote{border-left:4px solid var(--gold);padding:6px 0 6px 20px;font-family:var(--serif);
  font-size:1.25rem;color:var(--plum);font-style:italic}

/* faq */
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px 18px;margin-bottom:12px}
.faq summary{cursor:pointer;font-weight:700;color:var(--plum);padding:12px 0;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";float:right;color:var(--maroon);font-size:1.3rem;line-height:1}
.faq details[open] summary::after{content:"–"}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}
.info-list{list-style:none;padding:0;margin:0}
.info-list li{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.info-list .ico{flex:0 0 auto;width:42px;height:42px;border-radius:10px;background:#f1e4ef;color:var(--plum);display:grid;place-items:center;font-size:1.2rem}
.info-list a{font-weight:700}
form.card label{display:block;font-weight:600;color:var(--plum);margin:12px 0 6px}
form.card input,form.card select,form.card textarea{width:100%;padding:12px 14px;border:1px solid var(--line);
  border-radius:10px;font-size:1rem;font-family:inherit;background:#fff}
form.card textarea{min-height:120px;resize:vertical}
form.card .btn{margin-top:18px;width:100%}

/* events */
.event{display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:center;
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);margin-bottom:16px}
.event .date{background:linear-gradient(160deg,var(--plum),var(--maroon));color:#fff;border-radius:12px;text-align:center;padding:14px 8px}
.event .date .mon{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.event .date .day{font-family:var(--serif);font-size:2rem;line-height:1}
.event-empty{background:#fff;border:1px dashed var(--grey);border-radius:var(--radius);padding:30px;text-align:center;color:var(--muted)}

/* photo hero (events) */
/* events hero: photo sits BESIDE the copy as a real <img> so the family is never cropped
   and the headline never lands on a face (a cover-background band cut two of the five off) */
.photo-hero{position:relative;border-bottom:1px solid var(--line);overflow:hidden}
.photo-hero::before{content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,var(--plum-deep) 0,var(--plum) 52%,var(--maroon-dark) 100%)}
.photo-hero .wrap{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:44px;
  align-items:center;max-width:1160px;padding:56px 22px}
.photo-hero img{width:100%;border-radius:18px;border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 44px rgba(20,10,20,.34)}
.photo-hero .eyebrow{display:inline-block;background:rgba(234,176,16,.2);color:#ffe08a;font-weight:700;
  font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;padding:6px 14px;border-radius:999px;margin-bottom:16px}
.photo-hero h1{color:#fff}
.photo-hero .lead{color:#f0e6ef;font-size:1.15rem;margin:0;max-width:46ch}
@media (max-width:900px){
  .photo-hero .wrap{grid-template-columns:1fr;gap:28px;text-align:center;padding:44px 22px}
  .photo-hero .lead{margin:0 auto}
}

/* featured event card */
.event-feature{display:grid;grid-template-columns:270px 1fr;gap:30px;align-items:start;
  background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);
  padding:26px;margin-bottom:22px}
.event-feature .flyer{border-radius:12px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 6px 18px rgba(67,43,67,.14);display:block;max-width:270px}
.event-feature .flyer img{width:100%;transition:transform .3s ease}
.event-feature .flyer:hover img{transform:scale(1.02)}
.event-feature .flyer-note{font-size:.76rem;color:var(--muted);text-align:center;margin:8px 0 0}
.event-title{margin:0 0 4px}
.event-sub{color:var(--muted);font-size:.95rem;margin:0 0 14px}
.event-note{margin-top:16px;background:#f7f0f6;border:1px solid var(--line);border-radius:12px;
  padding:14px 18px;font-size:.92rem;color:var(--ink)}
.event-note strong{color:var(--plum)}
.host-pill{display:inline-block;background:#f1e4ef;color:var(--plum);font-weight:700;font-size:.78rem;
  letter-spacing:.02em;padding:6px 12px;border-radius:999px;margin-bottom:12px}
.event-meta{list-style:none;padding:0;margin:14px 0 18px;display:grid;gap:10px}
.event-meta li{display:flex;gap:12px;align-items:flex-start}
.event-meta .ico{flex:0 0 auto;width:38px;height:38px;border-radius:10px;background:#f1e4ef;color:var(--plum);
  display:grid;place-items:center}
.event-meta strong{display:block;color:var(--plum);font-size:.98rem}
.event-meta span{color:var(--muted);font-size:.92rem}
.expect{list-style:none;padding:0;margin:6px 0 0}
.expect li{position:relative;padding:5px 0 5px 26px;color:var(--ink)}
.expect li::before{content:"";position:absolute;left:4px;top:12px;width:9px;height:9px;border-radius:50%;
  background:var(--gold)}
.event-reg{margin-top:20px;background:linear-gradient(135deg,var(--plum),var(--maroon));color:#fff;
  border-radius:14px;padding:20px 22px}
.event-reg h4{color:#fff;font-family:var(--serif);margin:0 0 6px;font-size:1.1rem}
.event-reg p{color:#f4e9f2;margin:0 0 4px;font-size:.95rem}
.event-reg .btn-row{margin-top:14px}

@media (max-width:820px){
  .event-feature{grid-template-columns:1fr;gap:20px}
  .event-feature .flyer{max-width:300px;margin:0 auto}
}

/* ---------- footer ---------- */
.site-footer{background:var(--plum-deep);color:#e9dced;padding:48px 0 26px;margin-top:20px}
.site-footer a{color:#f0d9ee}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}
.site-footer .brand-txt{color:#fff}
.site-footer h4{color:#fff;font-family:var(--serif);margin:0 0 12px;font-size:1.05rem}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin:.35rem 0}
.foot-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:30px;padding-top:18px;
  display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.85rem;color:#c9b6c8}
.foot-logo{height:64px;width:auto;margin-bottom:14px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.3))}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .hero-grid,.story,.contact-grid{grid-template-columns:1fr}
  .g3{grid-template-columns:1fr 1fr}
  .values{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  .menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);
    flex-direction:column;align-items:stretch;padding:10px 18px 18px;border-bottom:1px solid var(--line);gap:2px}
  .menu.open{display:flex}
  .menu .btn{margin:8px 0 0}
  .nav-toggle{display:block}
  .g3,.g2,.foot-grid{grid-template-columns:1fr}
  .event{grid-template-columns:1fr}
  body{font-size:16px}
}

/* =========================================================================
   FULL-SCREEN VIDEO HERO (home page) — plain HTML/CSS rebrand of the
   flowpath "motion hero". Glass nav, hover dropdown, mobile slide-in menu.
   ========================================================================= */
.liquid-glass{
  background:rgba(255,255,255,.01);
  background-blend-mode:luminosity;
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  border:none;box-shadow:inset 0 1px 1px rgba(255,255,255,.1);
  position:relative;overflow:hidden;
}
.liquid-glass::before{
  content:'';position:absolute;inset:0;border-radius:inherit;padding:1.4px;
  background:linear-gradient(180deg,
    rgba(255,255,255,.45) 0%, rgba(255,255,255,.15) 20%,
    rgba(255,255,255,0) 40%, rgba(255,255,255,0) 60%,
    rgba(255,255,255,.15) 80%, rgba(255,255,255,.45) 100%);
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
}

/* page-wide motion background (video BEHIND all content) */
.page-bg-video{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.page-bg-scrim{position:fixed;inset:0;z-index:-1;background:
  linear-gradient(180deg, rgba(26,16,26,.80) 0%, rgba(28,18,28,.72) 30%,
    rgba(30,19,30,.74) 66%, rgba(40,25,40,.86) 100%)}
.home-live{background:var(--plum-deep)}
/* Home hero: lighter scrim so the landscape video reads brighter / more eye-catching
   (kept enough darkening top+bottom for white text legibility). Scoped to home only. */
.home-live .page-bg-scrim{background:
  linear-gradient(180deg, rgba(26,16,26,.28) 0%, rgba(28,18,28,.10) 32%,
    rgba(30,19,30,.14) 66%, rgba(40,25,40,.38) 100%)}

.hero-video{position:relative;width:100%;background:transparent}
.hv-inner{position:relative;z-index:2}

/* nav */
.hv-nav{display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:18px 20px;color:#fff}
.hv-brand{display:flex;align-items:center;gap:11px}
.hv-brand img{height:70px;width:auto;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35))}
.hv-brand span{font-family:var(--serif);color:#fff;font-weight:700;font-size:1.33rem;line-height:1.05}
.hv-brand small{display:block;font-family:var(--sans);font-weight:600;color:rgba(255,255,255,.8);
  font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
.hv-brand:hover{text-decoration:none}

.hv-menu{display:flex;align-items:center;gap:4px}
.hv-menu>a,.hv-drop>button{display:inline-flex;align-items:center;gap:5px;background:none;border:none;
  cursor:pointer;color:rgba(255,255,255,.9);font-family:var(--sans);font-weight:600;font-size:.93rem;
  padding:8px 12px;border-radius:9px;transition:color .2s}
.hv-menu>a:hover,.hv-drop>button:hover{color:#fff;text-decoration:none}
.hv-drop{position:relative}
.hv-drop .chev{transition:transform .2s ease}
.hv-nav .hv-drop-panel{position:absolute;top:100%;left:0;min-width:190px;
  border-radius:14px;padding:10px 8px;box-shadow:0 18px 40px rgba(20,10,20,.4);
  opacity:0;visibility:hidden;transform:translateY(-6px) scale(.97);
  transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:60}
.hv-drop:hover .hv-drop-panel{opacity:1;visibility:visible;transform:none}
.hv-drop:hover .chev{transform:rotate(180deg)}
.hv-drop-panel a{display:block;color:rgba(255,255,255,.82);font-size:.9rem;padding:8px 12px;
  border-radius:9px;transition:background .15s,color .15s}
.hv-drop-panel a:hover{color:#fff;background:rgba(255,255,255,.08);text-decoration:none}

.hv-actions{display:flex;align-items:center;gap:16px}
.hv-phone{color:rgba(255,255,255,.9);font-weight:600;font-size:.92rem}
.hv-phone:hover{color:#fff;text-decoration:none}
.hv-req{display:inline-block;border-radius:999px;padding:9px 20px;color:#fff;font-weight:600;font-size:.9rem}
.hv-req:hover{text-decoration:none;background:rgba(255,255,255,.08)}

/* burger */
.hv-burger{display:none;position:relative;width:42px;height:42px;background:none;border:none;
  color:#fff;cursor:pointer}
.hv-burger svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  transition:opacity .3s ease,transform .3s ease}
.hv-burger .ic-x{opacity:0;transform:translate(-50%,-50%) rotate(-90deg) scale(.7)}
.hv-burger.is-open .ic-menu{opacity:0;transform:translate(-50%,-50%) rotate(90deg) scale(.7)}
.hv-burger.is-open .ic-x{opacity:1;transform:translate(-50%,-50%) rotate(0) scale(1)}

/* mobile menu */
.hv-mobile{position:absolute;left:16px;right:16px;top:74px;z-index:55;
  background:rgba(60,38,60,.96);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:22px 22px 20px;
  box-shadow:0 24px 60px rgba(20,10,20,.5);
  opacity:0;transform:translateY(-10px) scale(.98);pointer-events:none;
  transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .4s cubic-bezier(.16,1,.3,1)}
.hv-mobile.open{opacity:1;transform:none;pointer-events:auto}
.hv-mobile>a,.hv-m-label{display:block;color:#fff;font-weight:600;font-size:1.02rem;padding:9px 0}
.hv-mobile>a:hover{text-decoration:none;color:rgba(255,255,255,.85)}
.hv-m-label{margin:0;color:#fff}
.hv-m-sub{margin:0 0 4px 14px;display:flex;flex-direction:column}
.hv-m-sub a{color:rgba(255,255,255,.75);font-size:.92rem;padding:6px 0}
.hv-m-sub a:hover{color:#fff;text-decoration:none}
.hv-m-foot{margin-top:12px;padding-top:16px;border-top:1px solid rgba(255,255,255,.16);
  display:flex;align-items:center;gap:16px}
.hv-m-foot>a:first-child{color:rgba(255,255,255,.9);font-weight:600}

/* hero content */
.hv-content{display:flex;justify-content:center;padding:44px 20px 72px}
.hv-text{text-align:center;max-width:820px}
.hv-eyebrow{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);
  color:#fff;font-weight:600;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;
  padding:7px 15px;border-radius:999px;margin-bottom:20px;backdrop-filter:blur(4px)}
.hero-video h1{font-family:var(--serif);color:#fff;font-size:clamp(2.3rem,6vw,4.6rem);
  line-height:1.06;letter-spacing:-.02em;margin:0;text-shadow:0 2px 24px rgba(20,10,20,.35)}
.hero-video h1 .dim{color:rgba(255,255,255,.62)}
.hv-sub{color:rgba(255,255,255,.9);font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.6;
  max-width:34rem;margin:22px auto 0;text-shadow:0 1px 12px rgba(20,10,20,.4)}
.hv-btns{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;margin-top:28px}
.hv-btn-solid{display:inline-block;background:#fff;color:var(--plum);font-weight:700;font-size:.98rem;
  padding:13px 26px;border-radius:999px;box-shadow:0 8px 22px rgba(20,10,20,.25);transition:transform .06s,background .2s}
.hv-btn-solid:hover{background:#f4ecf3;text-decoration:none;transform:translateY(-1px)}
.hv-btn-glass{display:inline-block;border-radius:999px;color:#fff;font-weight:700;font-size:.98rem;padding:13px 26px}
.hv-btn-glass:hover{text-decoration:none;background:rgba(255,255,255,.12)}

/* hero responsive */
@media (min-width:600px){.hv-nav{padding:20px 28px}.hv-content{padding-top:74px}}
@media (min-width:1000px){.hv-nav{padding:22px 48px}.hv-content{padding-top:92px}}
@media (max-width:980px){
  .hv-menu,.hv-actions{display:none}
  .hv-burger{display:block}
}

/* hero trust badges */
.hv-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px}
.hv-badge{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:999px;
  padding:8px 15px;font-size:.82rem;font-weight:600;color:#fff;
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}

/* =========================================================================
   IMMERSIVE HOMEPAGE — all content layered in FRONT of the motion video.
   Scoped to body.home-live so interior pages keep their light theme.
   ========================================================================= */
.home-live main{position:relative;z-index:1}
.home-live section{background-color:transparent}
.home-live .section-tint{background:transparent;border-top:none;border-bottom:none}
.home-live h1,.home-live h2,.home-live h3{color:#fff}
.home-live .kicker{color:#ffd76a;text-shadow:0 1px 12px rgba(0,0,0,.6)}
.home-live p,.home-live .muted{color:rgba(255,255,255,.86)}
.home-live .section-head .muted{color:rgba(255,255,255,.82)}
.home-live .value>div{color:rgba(255,255,255,.86)}
.home-live .value strong{color:#fff}

/* cards -> translucent glass over the motion */
.home-live .card{background:rgba(36,23,36,.56);border:1px solid rgba(255,255,255,.15);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 14px 36px rgba(12,6,12,.44)}
.home-live .card h3{color:#fff}
.home-live .card p{color:rgba(255,255,255,.85)}
.home-live .card .ico{background:rgba(255,255,255,.15);color:#fff}
.home-live .card.gold .ico{background:rgba(234,176,16,.28);color:#ffd36b}

/* ghost buttons -> light on dark */
.home-live .btn.ghost{color:#fff;border-color:rgba(255,255,255,.55)}
.home-live .btn.ghost:hover{background:rgba(255,255,255,.1)}

/* photo band + story */
.home-live .photo-band img{border:1px solid rgba(255,255,255,.18)}
.home-live .quote{color:#fff}
.home-live .story .muted{color:rgba(255,255,255,.72)}

/* CTA band + footer -> translucent so the motion still reads behind them */
.home-live .band{background:linear-gradient(135deg, rgba(143,72,80,.66), rgba(94,61,94,.66));
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.home-live .site-footer{background:rgba(34,21,34,.86);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}

/* =========================================================================
   ABOUT PAGE — immersive hero (motion in the back), plain-CSS rebrand of a
   Vite/React/GSAP spec. Boomerang video is pre-rendered (ffmpeg), parallax is
   vanilla JS. Big italic Instrument Serif title. Scoped to body.about-live.
   ========================================================================= */
.liquid-glass-strong{
  background:rgba(255,255,255,.01);background-blend-mode:luminosity;
  -webkit-backdrop-filter:blur(50px);backdrop-filter:blur(50px);border:none;
  box-shadow:4px 4px 4px rgba(0,0,0,.05), inset 0 1px 1px rgba(255,255,255,.15);
  position:relative;overflow:hidden}
.liquid-glass-strong::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.4px;
  background:linear-gradient(180deg,rgba(255,255,255,.5) 0%,rgba(255,255,255,.2) 20%,
    rgba(255,255,255,0) 40%,rgba(255,255,255,0) 60%,rgba(255,255,255,.2) 80%,rgba(255,255,255,.5) 100%);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}

/* parallax motion layer (in the back) */
.page-bg-parallax{position:fixed;inset:0;z-index:-2;overflow:hidden;transform:scale(1.08);will-change:transform}
.page-bg-parallax .ab-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* about hero composition */
.about-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.hero-title{font-family:'Instrument Serif',Georgia,serif;font-style:italic;
  font-size:clamp(60px,14vw,190px);line-height:.92;letter-spacing:-.02em;color:#fff;text-align:center;
  margin:0;text-shadow:0 2px 40px rgba(15,8,15,.45)}
.ah-title{margin-top:9vh;padding:0 16px}
.ah-bottom{margin-top:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:26px;
  padding:0 40px 48px}
.ah-side{max-width:230px;font-size:.92rem;color:rgba(255,255,255,.82);line-height:1.6;margin:0;
  text-shadow:0 1px 10px rgba(15,8,15,.5)}
.ah-right{justify-self:end;text-align:right}
.ah-cta{justify-self:center;display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:center}
@media (max-width:820px){
  .ah-bottom{grid-template-columns:1fr;justify-items:center;text-align:center;padding:0 20px 40px;gap:20px}
  .ah-side,.ah-right{max-width:none;text-align:center;justify-self:center}
  .ah-cta{order:-1}
}

/* immersive overrides for the About page (mirror of .home-live) */
.about-live{background:var(--plum-deep)}
.about-live main{position:relative;z-index:1}
.about-live section{background-color:transparent}
.about-live .section-tint{background:transparent;border-top:none;border-bottom:none}
.about-live h1,.about-live h2,.about-live h3{color:#fff}
.about-live .kicker,.about-live .eyebrow{color:var(--gold)}
.about-live p,.about-live .muted{color:rgba(255,255,255,.86)}
.about-live .card{background:rgba(36,23,36,.56);border:1px solid rgba(255,255,255,.15);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 14px 36px rgba(12,6,12,.44)}
.about-live .card h2,.about-live .card h3{color:#fff}
.about-live .card p,.about-live .card li{color:rgba(255,255,255,.85)}
.about-live .card .ico{background:rgba(255,255,255,.15);color:#fff}
.about-live .card.gold .ico{background:rgba(234,176,16,.28);color:#ffd36b}
.about-live .quote{color:#fff}
.about-live .btn.ghost{color:#fff;border-color:rgba(255,255,255,.55)}
.about-live .btn.ghost:hover{background:rgba(255,255,255,.1)}
.about-live .band{background:linear-gradient(135deg, rgba(143,72,80,.66), rgba(94,61,94,.66));
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.about-live .site-footer{background:rgba(34,21,34,.86);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}

/* click-to-play video embed (contact page) */
.video-embed{position:relative;max-width:780px;margin:30px auto 0;aspect-ratio:16/9;border-radius:16px;
  overflow:hidden;background:#000;border:1px solid var(--line);box-shadow:var(--shadow);cursor:pointer}
.video-embed .video-thumb{width:100%;height:100%;object-fit:cover;transition:transform .4s ease,filter .3s ease}
.video-embed:hover .video-thumb,.video-embed:focus-visible .video-thumb{transform:scale(1.03);filter:brightness(.9)}
.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;
  transition:transform .18s ease}
.video-play svg{filter:drop-shadow(0 4px 12px rgba(0,0,0,.4))}
.video-embed:hover .video-play,.video-embed:focus-visible .video-play{transform:translate(-50%,-50%) scale(1.09)}
.video-embed:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-cap{font-size:.85rem;margin-top:12px}
@media (max-width:680px){.video-play svg{width:56px;height:40px}}

/* =========================================================================
   CONTACT PAGE — immersive video background (reuses hero-loop.mp4) with a
   forma-style "Say hello!" form card layered on top. Plain-CSS rebrand of a
   React/Vite/Tailwind spec, Sam-branded. Scoped to body.contact-live.
   ========================================================================= */
.contact-live{background:var(--plum-deep)}
.contact-live main{position:relative;z-index:1}
.contact-live section{background-color:transparent}
.contact-live .section-tint{background:transparent;border-top:none;border-bottom:none}
.contact-live h1,.contact-live h2,.contact-live h3{color:#fff}
.contact-live .kicker,.contact-live .eyebrow{color:var(--gold)}
.contact-live p,.contact-live .muted{color:rgba(255,255,255,.86)}
.contact-live .band{background:linear-gradient(135deg, rgba(143,72,80,.66), rgba(94,61,94,.66));
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.contact-live .site-footer{background:rgba(34,21,34,.86);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}

/* hero composition (nav on top, content pinned toward the bottom like the spec) */
.contact-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.ch-spacer{flex:1 1 auto;min-height:2rem}
.ch-body{padding:0 20px 48px}
@media (min-width:600px){.ch-body{padding:0 28px 52px}}
@media (min-width:1000px){.ch-body{padding:0 48px 56px}}

/* two-column: headline left, form card right (stacks on tablet/mobile) */
.cc-grid{display:grid;grid-template-columns:1.05fr minmax(0,480px);gap:34px;align-items:end;
  max-width:1180px;margin:0 auto;width:100%}
@media (max-width:960px){.cc-grid{grid-template-columns:1fr;align-items:stretch;gap:26px}}

/* left: headline + supporting facts */
.cc-intro{color:#fff}
.cc-eyebrow{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);
  color:#fff;font-weight:600;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;
  padding:7px 15px;border-radius:999px;margin-bottom:18px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.cc-h1{font-family:var(--serif);color:#fff;font-size:clamp(2.3rem,5.4vw,4.1rem);line-height:1.05;
  letter-spacing:-.02em;margin:0;text-shadow:0 2px 24px rgba(20,10,20,.4);font-weight:500}
.cc-h1 .accent{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400}
.cc-lead{color:rgba(255,255,255,.9);font-size:clamp(1rem,2vw,1.15rem);line-height:1.6;
  max-width:30rem;margin:20px 0 0;text-shadow:0 1px 12px rgba(20,10,20,.4)}
.cc-facts{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:14px;max-width:30rem}
.cc-facts li{display:flex;gap:12px;align-items:flex-start;color:rgba(255,255,255,.9)}
.cc-facts .ico{flex:0 0 auto;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;
  background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);color:#fff}
.cc-facts strong{display:block;color:#fff;font-size:.95rem}
.cc-facts a{color:#fff;font-weight:600}
.cc-facts span{color:rgba(255,255,255,.78);font-size:.9rem}

/* right: the white "Say hello!" card */
.cc-card{background:#fff;border-radius:24px;box-shadow:0 30px 70px rgba(12,6,12,.5);overflow:hidden;
  padding:22px;display:flex;flex-direction:column;gap:16px;width:100%}
@media (min-width:600px){.cc-card{padding:26px}}
.cc-card .cc-head{font-family:var(--serif);font-size:1.5rem;font-weight:700;color:var(--ink);letter-spacing:-.01em;margin:0}

/* email + quick-actions row */
.cc-reach{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;
  background:#f7f2f6;border-radius:16px;padding:10px 16px}
.cc-reach .lbl{font-size:.72rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.cc-reach a.mail{display:block;color:var(--maroon);font-weight:700;font-size:.95rem;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cc-reach a.mail:hover{text-decoration:underline}
.cc-quick{display:flex;gap:8px;flex:0 0 auto}
.cc-qbtn{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;
  background:#f1e4ef;color:var(--plum);transition:opacity .2s,transform .06s}
.cc-qbtn:hover{opacity:.85;text-decoration:none;transform:translateY(-1px)}

/* OR divider */
.cc-or{display:flex;align-items:center;gap:14px;color:var(--muted);font-weight:600;font-size:.85rem}
.cc-or::before,.cc-or::after{content:"";flex:1;height:1px;background:var(--line)}

/* form */
.cc-form{display:flex;flex-direction:column;gap:14px}
.cc-form .lab{font-size:.9rem;font-weight:700;color:var(--ink);margin:0}
.cc-row{display:flex;flex-direction:column;gap:10px}
@media (min-width:560px){.cc-row{flex-direction:row}}
.cc-input{flex:1 1 auto;min-width:0;width:100%;font-size:.95rem;padding:12px 14px;border-radius:12px;
  border:1px solid var(--line);background:#fff;font-family:inherit;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.cc-input::placeholder{color:#9b91a0}
.cc-input:focus{outline:none;border-color:var(--plum-mid);box-shadow:0 0 0 3px rgba(124,86,124,.18)}
textarea.cc-input{resize:none;min-height:104px}
/* service chips */
.cc-chips{display:flex;flex-wrap:wrap;gap:8px}
.cc-chip{font-size:.8rem;font-weight:600;padding:8px 13px;border-radius:11px;border:1px solid var(--line);
  background:#fff;color:var(--ink);cursor:pointer;transition:all .15s}
.cc-chip:hover{border-color:var(--plum-mid)}
.cc-chip[aria-pressed="true"]{background:var(--plum);color:#fff;border-color:var(--plum)}
.cc-submit{width:100%;background:var(--maroon);color:#fff;font-weight:700;font-size:.98rem;padding:14px;
  border:none;border-radius:16px;cursor:pointer;transition:background .2s,opacity .2s}
.cc-submit:hover{background:var(--maroon-dark)}
.cc-submit:disabled{opacity:.6;cursor:default}
/* success state */
.cc-success{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:26px 6px}
.cc-check{width:52px;height:52px;border-radius:50%;background:#e7f6ec;display:grid;place-items:center;
  color:#1e9e57;font-size:1.5rem}
.cc-card .cc-success h3{font-family:var(--serif);color:var(--ink);margin:0;font-size:1.2rem}
.cc-success p{color:var(--muted);margin:0;font-size:.95rem}

/* the DD explainer video section, restyled for the dark immersive page */
.cc-video-section{padding:20px 0 8px}
.contact-live .cc-video-section .video-embed{border:1px solid rgba(255,255,255,.16)}
.contact-live .video-cap{color:rgba(255,255,255,.78)}

/* =========================================================================
   PUZZLE-PIECE CARDS (2026-07-11, TEMPLATE v4) — cards clipped to Trevor's
   uploaded template pieces, edges SMOOTHED (moving-average). Mask on ::before
   so text sits on top (never clipped). Generous padding keeps text inside the
   piece BODY (off the knobs/sockets). teal/navy/yellow/cyan/red cycle 5n.
   ========================================================================= */
.grid .card{
  --cc:var(--plum); --ci:#ffffff; --pmask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http%3A//www.w3.org/2000/svg%27%20viewBox=%270%200%20100%20100%27%20preserveAspectRatio=%27none%27%3E%3Cpath%20d=%27M%201.88%200.26%20L%204.70%200.22%20L%208.21%200.26%20L%2011.79%200.26%20L%2015.38%200.26%20L%2018.97%200.26%20L%2022.56%200.26%20L%2026.15%200.26%20L%2029.74%200.26%20L%2033.33%200.26%20L%2036.92%200.26%20L%2040.51%200.26%20L%2044.10%200.26%20L%2047.69%200.26%20L%2051.28%200.26%20L%2054.87%200.26%20L%2058.46%200.26%20L%2062.05%200.26%20L%2065.64%200.26%20L%2069.23%200.26%20L%2072.82%200.25%20L%2076.33%200.19%20L%2079.33%200.23%20L%2080.79%201.69%20L%2080.70%204.53%20L%2080.22%207.62%20L%2079.77%2010.74%20L%2079.39%2013.93%20L%2079.03%2017.14%20L%2078.77%2020.46%20L%2078.79%2023.91%20L%2079.18%2027.09%20L%2080.10%2029.74%20L%2081.89%2031.19%20L%2084.27%2030.96%20L%2086.57%2029.75%20L%2088.92%2028.52%20L%2091.79%2027.99%20L%2094.59%2028.59%20L%2096.66%2030.11%20L%2098.12%2032.22%20L%2099.11%2034.82%20L%2099.63%2037.87%20L%2099.69%2041.28%20L%2099.37%2044.52%20L%2098.68%2047.41%20L%2097.59%2049.89%20L%2096.01%2051.90%20L%2093.75%2053.18%20L%2091.07%2053.36%20L%2088.54%2052.47%20L%2086.25%2051.18%20L%2083.94%2050.06%20L%2081.69%2050.13%20L%2080.05%2051.83%20L%2079.10%2054.46%20L%2078.75%2057.69%20L%2078.79%2061.15%20L%2079.09%2064.43%20L%2079.48%2067.61%20L%2079.81%2070.85%20L%2080.20%2074.04%20L%2080.67%2077.10%20L%2080.57%2079.62%20L%2078.61%2080.49%20L%2075.56%2080.19%20L%2072.49%2079.66%20L%2069.30%2079.27%20L%2066.02%2078.96%20L%2062.66%2078.73%20L%2059.42%2078.52%20L%2056.27%2078.69%20L%2053.24%2079.24%20L%2050.95%2080.49%20L%2050.05%2082.59%20L%2050.71%2085.01%20L%2052.03%2087.27%20L%2053.19%2089.54%20L%2053.53%2092.05%20L%2052.79%2094.62%20L%2051.15%2096.55%20L%2048.88%2097.86%20L%2046.16%2098.73%20L%2043.05%2099.21%20L%2039.89%2099.43%20L%2036.92%2099.20%20L%2034.06%2098.51%20L%2031.57%2097.42%20L%2029.59%2095.82%20L%2028.34%2093.49%20L%2028.13%2090.45%20L%2028.95%2087.73%20L%2030.27%2085.48%20L%2031.16%2082.95%20L%2030.58%2080.52%20L%2028.32%2079.23%20L%2025.25%2078.75%20L%2022.16%2078.63%20L%2018.93%2078.78%20L%2015.52%2078.96%20L%2012.24%2079.27%20L%209.04%2079.66%20L%205.98%2080.19%20L%202.90%2080.52%20L%200.64%2079.80%20L%200.13%2077.33%20L%200.25%2073.97%20L%200.26%2070.41%20L%200.26%2066.84%20L%200.26%2063.27%20L%200.26%2059.69%20L%200.26%2056.12%20L%200.26%2052.55%20L%200.26%2048.98%20L%200.26%2045.41%20L%200.26%2041.84%20L%200.26%2038.27%20L%200.26%2034.69%20L%200.26%2031.12%20L%200.26%2027.55%20L%200.26%2023.98%20L%200.26%2020.41%20L%200.26%2016.84%20L%200.26%2013.27%20L%200.26%209.69%20L%200.25%206.13%20L%200.21%202.85%20L%200.86%200.72%20Z%27%20fill=%27%23000%27/%3E%3C/svg%3E");
  position:relative; z-index:0; background:transparent; color:var(--ci);
  border:none; border-radius:0; box-shadow:none;
  display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center;
  padding:9% 19% 17%;
  font-size:.88rem;
  -webkit-backdrop-filter:none; backdrop-filter:none;
}
.grid .card::before{
  content:""; position:absolute; inset:0; z-index:-1; background:var(--cc);
  -webkit-mask:var(--pmask) center / 100% 100% no-repeat;
  mask:var(--pmask) center / 100% 100% no-repeat;
  filter:drop-shadow(0 10px 18px rgba(20,20,40,.26));
}
.grid .card > *{ position:relative; z-index:1; }
.grid .card:nth-child(5n+1){ --pmask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http%3A//www.w3.org/2000/svg%27%20viewBox=%270%200%20100%20100%27%20preserveAspectRatio=%27none%27%3E%3Cpath%20d=%27M%201.88%200.26%20L%204.70%200.22%20L%208.21%200.26%20L%2011.79%200.26%20L%2015.38%200.26%20L%2018.97%200.26%20L%2022.56%200.26%20L%2026.15%200.26%20L%2029.74%200.26%20L%2033.33%200.26%20L%2036.92%200.26%20L%2040.51%200.26%20L%2044.10%200.26%20L%2047.69%200.26%20L%2051.28%200.26%20L%2054.87%200.26%20L%2058.46%200.26%20L%2062.05%200.26%20L%2065.64%200.26%20L%2069.23%200.26%20L%2072.82%200.25%20L%2076.33%200.19%20L%2079.33%200.23%20L%2080.79%201.69%20L%2080.70%204.53%20L%2080.22%207.62%20L%2079.77%2010.74%20L%2079.39%2013.93%20L%2079.03%2017.14%20L%2078.77%2020.46%20L%2078.79%2023.91%20L%2079.18%2027.09%20L%2080.10%2029.74%20L%2081.89%2031.19%20L%2084.27%2030.96%20L%2086.57%2029.75%20L%2088.92%2028.52%20L%2091.79%2027.99%20L%2094.59%2028.59%20L%2096.66%2030.11%20L%2098.12%2032.22%20L%2099.11%2034.82%20L%2099.63%2037.87%20L%2099.69%2041.28%20L%2099.37%2044.52%20L%2098.68%2047.41%20L%2097.59%2049.89%20L%2096.01%2051.90%20L%2093.75%2053.18%20L%2091.07%2053.36%20L%2088.54%2052.47%20L%2086.25%2051.18%20L%2083.94%2050.06%20L%2081.69%2050.13%20L%2080.05%2051.83%20L%2079.10%2054.46%20L%2078.75%2057.69%20L%2078.79%2061.15%20L%2079.09%2064.43%20L%2079.48%2067.61%20L%2079.81%2070.85%20L%2080.20%2074.04%20L%2080.67%2077.10%20L%2080.57%2079.62%20L%2078.61%2080.49%20L%2075.56%2080.19%20L%2072.49%2079.66%20L%2069.30%2079.27%20L%2066.02%2078.96%20L%2062.66%2078.73%20L%2059.42%2078.52%20L%2056.27%2078.69%20L%2053.24%2079.24%20L%2050.95%2080.49%20L%2050.05%2082.59%20L%2050.71%2085.01%20L%2052.03%2087.27%20L%2053.19%2089.54%20L%2053.53%2092.05%20L%2052.79%2094.62%20L%2051.15%2096.55%20L%2048.88%2097.86%20L%2046.16%2098.73%20L%2043.05%2099.21%20L%2039.89%2099.43%20L%2036.92%2099.20%20L%2034.06%2098.51%20L%2031.57%2097.42%20L%2029.59%2095.82%20L%2028.34%2093.49%20L%2028.13%2090.45%20L%2028.95%2087.73%20L%2030.27%2085.48%20L%2031.16%2082.95%20L%2030.58%2080.52%20L%2028.32%2079.23%20L%2025.25%2078.75%20L%2022.16%2078.63%20L%2018.93%2078.78%20L%2015.52%2078.96%20L%2012.24%2079.27%20L%209.04%2079.66%20L%205.98%2080.19%20L%202.90%2080.52%20L%200.64%2079.80%20L%200.13%2077.33%20L%200.25%2073.97%20L%200.26%2070.41%20L%200.26%2066.84%20L%200.26%2063.27%20L%200.26%2059.69%20L%200.26%2056.12%20L%200.26%2052.55%20L%200.26%2048.98%20L%200.26%2045.41%20L%200.26%2041.84%20L%200.26%2038.27%20L%200.26%2034.69%20L%200.26%2031.12%20L%200.26%2027.55%20L%200.26%2023.98%20L%200.26%2020.41%20L%200.26%2016.84%20L%200.26%2013.27%20L%200.26%209.69%20L%200.25%206.13%20L%200.21%202.85%20L%200.86%200.72%20Z%27%20fill=%27%23000%27/%3E%3C/svg%3E") }
.grid .card:nth-child(5n+2){ --pmask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http%3A//www.w3.org/2000/svg%27%20viewBox=%270%200%20100%20100%27%20preserveAspectRatio=%27none%27%3E%3Cpath%20d=%27M%203.72%200.32%20L%206.99%20-0.30%20L%2010.95%20-0.31%20L%2014.93%20-0.31%20L%2018.91%20-0.31%20L%2022.89%20-0.31%20L%2026.87%20-0.31%20L%2030.85%20-0.31%20L%2034.83%20-0.31%20L%2038.81%20-0.31%20L%2042.79%20-0.31%20L%2046.77%20-0.31%20L%2050.75%20-0.31%20L%2054.73%20-0.31%20L%2058.71%20-0.31%20L%2062.69%20-0.31%20L%2066.67%20-0.31%20L%2070.65%20-0.31%20L%2074.63%20-0.31%20L%2078.49%20-0.17%20L%2080.75%201.52%20L%2080.67%205.31%20L%2080.17%209.60%20L%2079.75%2013.99%20L%2079.29%2018.33%20L%2078.93%2022.79%20L%2078.87%2027.58%20L%2079.24%2032.04%20L%2080.40%2035.51%20L%2082.59%2037.11%20L%2085.32%2036.19%20L%2087.87%2034.42%20L%2090.78%2033.17%20L%2093.97%2033.52%20L%2096.29%2035.56%20L%2097.82%2038.53%20L%2098.95%2041.12%20L%2099.19%2043.73%20L%2099.21%2047.87%20L%2098.95%2052.39%20L%2098.18%2056.35%20L%2096.89%2059.66%20L%2094.91%2062.13%20L%2091.99%2063.21%20L%2088.87%2062.50%20L%2086.21%2060.87%20L%2083.61%2059.40%20L%2081.13%2059.95%20L%2079.61%2062.89%20L%2078.96%2067.00%20L%2078.87%2071.77%20L%2079.08%2076.41%20L%2079.58%2080.70%20L%2080.04%2085.04%20L%2080.46%2089.44%20L%2080.89%2093.58%20L%2079.95%2096.52%20L%2076.96%2097.66%20L%2073.49%2098.29%20L%2070.04%2098.94%20L%2066.46%2099.44%20L%2062.68%2099.68%20L%2058.71%2099.69%20L%2054.95%2099.41%20L%2051.97%2098.19%20L%2050.35%2095.36%20L%2050.60%2091.53%20L%2051.96%2088.31%20L%2053.18%2085.03%20L%2053.30%2081.56%20L%2051.89%2078.65%20L%2049.54%2076.64%20L%2046.57%2075.40%20L%2043.16%2074.74%20L%2039.60%2074.91%20L%2036.33%2075.78%20L%2033.58%2077.30%20L%2031.51%2079.63%20L%2030.64%2082.84%20L%2031.27%2086.31%20L%2032.67%2089.47%20L%2033.77%2092.93%20L%2033.34%2096.64%20L%2031.11%2098.79%20L%2027.78%2099.59%20L%2023.88%2099.69%20L%2019.95%2099.63%20L%2016.27%2099.26%20L%2012.73%2098.72%20L%209.30%2098.04%20L%205.86%2097.38%20L%203.18%2095.78%20L%201.93%2092.72%20L%201.61%2088.95%20L%201.17%2084.75%20L%200.72%2080.39%20L%200.38%2075.91%20L%200.25%2071.16%20L%200.35%2066.38%20L%200.93%2062.19%20L%202.47%2059.19%20L%205.34%2058.30%20L%208.07%2059.15%20L%209.86%2060.46%20L%2012.13%2061.96%20L%2014.97%2062.13%20L%2017.34%2060.34%20L%2018.99%2057.47%20L%2019.99%2053.80%20L%2020.49%2049.55%20L%2020.36%2045.13%20L%2019.69%2041.06%20L%2018.51%2037.61%20L%2016.56%2035.11%20L%2013.50%2034.30%20L%2010.45%2035.28%20L%207.90%2037.04%20L%204.95%2038.03%20L%202.18%2036.88%20L%200.63%2034.13%20L%200.22%2030.47%20L%200.25%2025.77%20L%200.35%2020.98%20L%200.68%2016.48%20L%201.11%2012.10%20L%201.65%207.86%20L%202.19%203.64%20L%203.44%200.54%20Z%27%20fill=%27%23000%27/%3E%3C/svg%3E") }
.grid .card:nth-child(5n+3){ --pmask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http%3A//www.w3.org/2000/svg%27%20viewBox=%270%200%20100%20100%27%20preserveAspectRatio=%27none%27%3E%3Cpath%20d=%27M%2097.11%200.19%20L%2098.98%201.47%20L%2099.22%204.24%20L%2099.09%207.66%20L%2099.09%2011.22%20L%2099.09%2014.80%20L%2099.09%2018.37%20L%2099.09%2021.94%20L%2099.09%2025.51%20L%2099.09%2029.08%20L%2099.09%2032.65%20L%2099.09%2036.22%20L%2099.09%2039.80%20L%2099.09%2043.37%20L%2099.09%2046.94%20L%2099.09%2050.51%20L%2099.09%2054.08%20L%2099.09%2057.65%20L%2099.09%2061.22%20L%2099.09%2064.80%20L%2099.09%2068.37%20L%2099.09%2071.94%20L%2099.12%2075.48%20L%2099.18%2078.63%20L%2098.15%2080.47%20L%2095.36%2080.58%20L%2091.75%2080.11%20L%2088.10%2079.60%20L%2084.21%2079.28%20L%2080.28%2079.00%20L%2076.21%2078.84%20L%2071.95%2078.83%20L%2067.85%2078.96%20L%2064.50%2079.73%20L%2062.56%2081.56%20L%2062.68%2084.08%20L%2064.18%2086.35%20L%2065.64%2088.69%20L%2066.35%2091.41%20L%2065.74%2094.06%20L%2063.95%2096.12%20L%2061.42%2097.57%20L%2058.35%2098.57%20L%2054.91%2099.26%20L%2051.22%2099.60%20L%2047.48%2099.30%20L%2043.92%2098.71%20L%2040.75%2097.79%20L%2038.18%2096.37%20L%2036.35%2094.34%20L%2035.52%2091.76%20L%2036.13%2089.14%20L%2037.59%2086.81%20L%2039.17%2084.59%20L%2039.80%2082.21%20L%2038.50%2080.25%20L%2035.58%2079.15%20L%2031.68%2078.85%20L%2027.44%2078.83%20L%2023.23%2078.88%20L%2019.26%2079.13%20L%2015.42%2079.48%20L%2011.78%2080.01%20L%208.10%2080.49%20L%204.58%2080.46%20L%202.31%2078.94%20L%201.48%2076.06%20L%201.05%2072.84%20L%200.65%2069.61%20L%200.16%2066.45%20L%20-0.22%2063.19%20L%20-0.30%2059.69%20L%20-0.25%2056.17%20L%200.17%2052.95%20L%201.34%2050.35%20L%203.67%2048.90%20L%206.66%2048.88%20L%209.56%2049.91%20L%2012.30%2051.19%20L%2015.45%2051.98%20L%2018.66%2051.56%20L%2021.07%2050.03%20L%2022.78%2047.88%20L%2023.75%2045.21%20L%2023.70%2042.47%20L%2023.78%2040.64%20L%2024.10%2038.50%20L%2023.78%2035.46%20L%2022.70%2032.80%20L%2020.95%2030.70%20L%2018.65%2029.45%20L%2016.11%2029.26%20L%2013.45%2029.57%20L%2010.74%2030.67%20L%207.99%2031.92%20L%204.95%2032.42%20L%202.24%2031.52%20L%200.54%2029.40%20L%20-0.17%2026.42%20L%20-0.30%2022.96%20L%20-0.28%2019.41%20L%20-0.04%2016.03%20L%200.41%2012.84%20L%200.86%209.65%20L%201.42%206.56%20L%201.97%203.78%20L%202.92%201.53%20L%205.69%200.42%20L%209.76%200.26%20L%2014.02%200.26%20L%2018.29%200.26%20L%2022.56%200.26%20L%2026.83%200.26%20L%2031.10%200.26%20L%2035.37%200.26%20L%2039.63%200.26%20L%2043.90%200.26%20L%2048.17%200.26%20L%2052.44%200.26%20L%2056.71%200.26%20L%2060.98%200.26%20L%2065.24%200.26%20L%2069.51%200.26%20L%2073.78%200.26%20L%2078.05%200.26%20L%2082.32%200.26%20L%2086.59%200.26%20L%2090.85%200.25%20L%2094.83%200.15%20Z%27%20fill=%27%23000%27/%3E%3C/svg%3E") }
.grid .card:nth-child(5n+4){ --pmask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http%3A//www.w3.org/2000/svg%27%20viewBox=%270%200%20100%20100%27%20preserveAspectRatio=%27none%27%3E%3Cpath%20d=%27M%2028.10%200.48%20L%2030.45%201.85%20L%2032.30%204.15%20L%2032.32%207.41%20L%2031.06%2010.56%20L%2029.67%2013.35%20L%2029.21%2016.49%20L%2030.08%2019.80%20L%2032.19%2022.07%20L%2035.13%2023.39%20L%2038.64%2024.06%20L%2042.43%2024.10%20L%2045.96%2023.46%20L%2048.90%2022.14%20L%2051.12%2019.99%20L%2052.22%2016.83%20L%2051.50%2013.49%20L%2050.06%2010.46%20L%2048.71%207.56%20L%2048.40%205.10%20L%2049.57%202.79%20L%2052.12%201.25%20L%2055.54%200.47%20L%2059.49%200.30%20L%2063.46%200.45%20L%2067.18%200.88%20L%2070.80%201.42%20L%2074.41%201.99%20L%2077.98%202.59%20L%2080.53%204.26%20L%2080.85%207.74%20L%2080.26%2011.70%20L%2079.77%2015.82%20L%2079.37%2020.04%20L%2078.94%2024.23%20L%2078.74%2028.65%20L%2079.11%2032.88%20L%2080.05%2035.87%20L%2080.93%2038.15%20L%2083.33%2038.91%20L%2086.08%2037.64%20L%2088.74%2035.99%20L%2091.84%2035.13%20L%2094.88%2035.96%20L%2097.06%2038.15%20L%2098.59%2041.04%20L%2099.43%2044.22%20L%2099.69%2048.06%20L%2099.65%2052.41%20L%2099.29%2056.02%20L%2098.26%2059.14%20L%2096.59%2061.90%20L%2094.20%2063.82%20L%2091.02%2064.20%20L%2088.05%2063.04%20L%2085.43%2061.36%20L%2082.62%2060.46%20L%2080.61%2061.77%20L%2079.84%2064.20%20L%2078.93%2067.50%20L%2078.75%2071.90%20L%2079.04%2076.25%20L%2079.48%2080.42%20L%2079.87%2084.65%20L%2080.42%2088.70%20L%2080.93%2092.65%20L%2080.09%2095.76%20L%2077.13%2097.02%20L%2073.50%2097.56%20L%2069.91%2098.14%20L%2066.26%2098.65%20L%2062.49%2099.04%20L%2058.47%2099.11%20L%2054.63%2098.82%20L%2051.38%2097.86%20L%2049.16%2096.09%20L%2048.32%2093.70%20L%2049.02%2091.18%20L%2050.41%2088.19%20L%2051.82%2085.15%20L%2052.10%2081.72%20L%2050.64%2078.80%20L%2048.23%2076.87%20L%2045.13%2075.73%20L%2041.49%2075.25%20L%2037.74%2075.49%20L%2034.57%2076.25%20L%2032.15%2077.47%20L%2030.16%2079.71%20L%2029.22%2082.93%20L%2029.67%2086.06%20L%2031.06%2088.86%20L%2032.32%2092.01%20L%2032.30%2095.26%20L%2030.44%2097.55%20L%2027.91%2098.88%20L%2024.57%2099.14%20L%2020.53%2099.10%20L%2016.67%2098.83%20L%2012.95%2098.39%20L%209.37%2097.79%20L%205.75%2097.25%20L%202.31%2096.49%20L%200.27%2094.30%20L%200.13%2090.48%20L%200.25%2085.96%20L%200.26%2081.29%20L%200.26%2076.61%20L%200.26%2071.93%20L%200.26%2067.25%20L%200.26%2062.57%20L%200.26%2057.89%20L%200.26%2053.22%20L%200.26%2048.54%20L%200.26%2043.86%20L%200.26%2039.18%20L%200.26%2034.50%20L%200.26%2029.82%20L%200.26%2025.15%20L%200.26%2020.47%20L%200.26%2015.79%20L%200.22%2011.15%20L%200.06%206.89%20L%201.02%203.77%20L%203.95%202.46%20L%207.58%201.92%20L%2011.14%201.30%20L%2014.77%200.76%20L%2018.53%200.37%20L%2022.56%200.29%20L%2026.36%200.24%20Z%27%20fill=%27%23000%27/%3E%3C/svg%3E") }
.grid .card:nth-child(5n+5){ --pmask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http%3A//www.w3.org/2000/svg%27%20viewBox=%270%200%20100%20100%27%20preserveAspectRatio=%27none%27%3E%3Cpath%20d=%27M%2047.50%20-0.07%20L%2052.13%20-0.03%20L%2056.69%200.58%20L%2060.43%201.82%20L%2063.21%203.79%20L%2064.33%206.83%20L%2063.39%2010.04%20L%2061.48%2012.68%20L%2060.50%2015.42%20L%2062.61%2017.50%20L%2066.85%2018.35%20L%2072.02%2018.49%20L%2077.18%2018.34%20L%2081.98%2017.91%20L%2086.80%2017.50%20L%2091.34%2016.88%20L%2095.42%2016.77%20L%2097.45%2019.08%20L%2098.13%2022.67%20L%2098.88%2026.20%20L%2099.40%2029.91%20L%2099.69%2033.80%20L%2099.68%2037.88%20L%2099.19%2041.62%20L%2097.59%2044.32%20L%2094.50%2045.20%20L%2090.73%2044.33%20L%2087.24%2042.90%20L%2083.63%2042.21%20L%2080.34%2042.86%20L%2077.87%2044.89%20L%2076.33%2047.83%20L%2075.48%2051.26%20L%2075.67%2054.97%20L%2076.78%2058.23%20L%2078.56%2060.96%20L%2081.39%2062.51%20L%2084.81%2062.74%20L%2088.43%2061.67%20L%2091.93%2060.26%20L%2095.72%2059.89%20L%2098.26%2061.44%20L%2099.46%2064.57%20L%2099.70%2068.49%20L%2099.65%2072.56%20L%2099.24%2076.36%20L%2098.64%2080.01%20L%2097.92%2083.56%20L%2097.03%2086.97%20L%2094.20%2088.41%20L%2089.87%2087.91%20L%2085.24%2087.35%20L%2080.42%2086.94%20L%2075.51%2086.59%20L%2070.25%2086.54%20L%2065.29%2086.84%20L%2061.58%2088.07%20L%2060.54%2090.52%20L%2062.14%2093.20%20L%2063.87%2095.97%20L%2063.60%2098.85%20L%2059.50%2099.76%20L%2054.17%2099.77%20L%2048.81%2099.77%20L%2043.45%2099.77%20L%2038.23%2099.67%20L%2035.30%2098.02%20L%2036.01%2094.98%20L%2037.93%2092.34%20L%2038.90%2089.60%20L%2036.79%2087.53%20L%2032.56%2086.67%20L%2027.38%2086.53%20L%2022.22%2086.68%20L%2017.38%2087.08%20L%2012.58%2087.51%20L%208.06%2088.14%20L%203.98%2088.25%20L%201.96%2085.94%20L%201.27%2082.36%20L%200.52%2078.82%20L%200.00%2075.11%20L%20-0.29%2071.22%20L%20-0.28%2067.14%20L%200.22%2063.41%20L%201.99%2060.66%20L%205.69%2059.89%20L%209.45%2061.02%20L%2012.99%2062.40%20L%2017.00%2062.88%20L%2020.32%2061.48%20L%2022.29%2058.88%20L%2023.56%2055.74%20L%2023.98%2052.09%20L%2023.33%2048.54%20L%2021.93%2045.50%20L%2019.71%2043.10%20L%2016.10%2042.09%20L%2012.17%2042.90%20L%208.68%2044.33%20L%204.77%2045.18%20L%201.43%2043.88%20L%200.02%2040.85%20L%20-0.29%2036.98%20L%20-0.26%2032.91%20L%200.11%2029.08%20L%200.68%2025.40%20L%201.42%2021.86%20L%202.21%2018.37%20L%204.77%2016.63%20L%209.04%2017.04%20L%2013.64%2017.62%20L%2018.45%2018.04%20L%2023.33%2018.40%20L%2028.57%2018.49%20L%2033.61%2018.25%20L%2037.51%2017.15%20L%2038.91%2014.81%20L%2037.49%2012.11%20L%2035.68%209.39%20L%2035.13%206.07%20L%2036.71%203.27%20L%2039.73%201.48%20L%2043.65%200.40%20Z%27%20fill=%27%23000%27/%3E%3C/svg%3E") }
/* COLOR now cycles the LOGO colors — grey / gold / plum (shapes still cycle 5n above) */
.grid .card:nth-child(3n+1){ --cc:var(--grey); --ci:#2E2630; }
.grid .card:nth-child(3n+2){ --cc:var(--gold); --ci:#3a2a06; }
.grid .card:nth-child(3n+3){ --cc:var(--plum); --ci:#ffffff; }
.grid .card h2,.grid .card h3{ color:var(--ci); font-size:1.0rem; line-height:1.16; margin-bottom:.3rem; }
.grid .card p,.grid .card li{ color:var(--ci); opacity:.97; line-height:1.4; margin:.12rem 0; }
.grid .card p{ margin-bottom:.4rem; }
.grid .card strong{ color:var(--ci); }
.grid .card a{ color:var(--ci); text-decoration:underline; }
.grid .card ul{ margin:.2rem 0 0; padding-left:1rem; }
.grid .card ul li::marker{ color:var(--ci); }
.grid .card .ico,.grid .card.gold .ico{ background:rgba(255,255,255,.85); color:#333; width:36px; height:36px; margin-bottom:5px; }

/* Trevor 2026-07-23: nudge specific HOME service pieces' content horizontally so the text/icon visually
   center in the piece BODY (each jigsaw shape's knob/socket shifts the visual center off the geometric
   center). Homepage-only (.home-live) + scoped to the services grid (.g3) so no other page/grid is
   affected. Per-piece px, dialed to Trevor's review. */
.home-live .grid.g3 .card:nth-child(1) > *{   /* Respite Care — doubled left (-18 → -36) */
  transform:translateX(-36px);
}
.home-live .grid.g3 .card:nth-child(3) > *{   /* Home & Daily Living — moved RIGHT (-2 → +28) */
  transform:translateX(28px);
}
.home-live .grid.g3 .card:nth-child(4) > *{   /* Community Integration — doubled left (-10 → -20) */
  transform:translateX(-20px);
}
.home-live .grid.g3 .card:nth-child(6) > *{   /* Skill Building & Behavior Support — more left */
  transform:translateX(-18px);
}

/* Trevor 2026-07-23: ABOUT page Mission/Vision puzzle pieces (.g2 grid). Both shapes have the knob on the
   right so the text sat right-of-body-center. Mission → scoot left to center. Vision → the text was oversized
   AND right-shifted so it hung off the piece; shrink the font AND pull it in so it sits fully inside + centered.
   Scoped to .about-live so no other page/grid is affected. */
.about-live .g2.grid .card:nth-child(1) > *{   /* Our Mission — center in the piece body */
  transform:translateX(-55px);
}
.about-live .g2.grid .card:nth-child(2){       /* Our Vision — narrow the text column (asymmetric: extra left pad) so it centers inside the piece body, clear of the left socket + right knob */
  padding:9% 22% 17% 25%;
}
.about-live .g2.grid .card:nth-child(2) p{     /* Our Vision — smaller text (Trevor's ask) */
  font-size:.78rem; line-height:1.34;
}

/* =========================================================================
   CONTACT PAGE v2 (2026-07-11) — stacked layout: video BANNER at top →
   "Let's talk about care" heading → facts + form → explainer video.
   (Replaces the full-screen video-background hero.) Page stays dark
   (.contact-live sets plum-deep bg) so the white form card still pops.
   ========================================================================= */
.contact-banner{position:relative;overflow:hidden;display:flex;flex-direction:column;
  min-height:clamp(280px,42vh,440px)}
.cb-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.cb-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,
  rgba(26,16,26,.55) 0%, rgba(26,16,26,.14) 32%, rgba(26,16,26,.16) 68%, rgba(40,25,40,.72) 100%)}
.contact-banner .hv-nav,.contact-banner .hv-mobile{position:relative;z-index:3}

.ch-headline{text-align:center;padding:52px 22px 6px}
.ch-headline .cc-eyebrow{margin-bottom:16px}
.ch-headline .cc-h1{margin:0 auto;max-width:16ch}
.ch-headline .cc-lead{margin:18px auto 0}

.cc-connect{padding-top:30px}
.cc-connect .cc-grid{align-items:start}
.cc-connect .cc-facts{margin-top:0}
.cc-facts-label{color:var(--gold);font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  font-size:.82rem;margin:0 0 4px}

/* =========================================================================
   CONTACT PAGE v3 (2026-07-11) — immersive: same landscape video background
   as the HOME page (full-page), with the YouTube explainer + "Let's talk
   about care" heading at the TOP, then facts + form below.
   ========================================================================= */
/* match the home page's lighter scrim so the landscape reads bright */
.contact-live .page-bg-scrim{background:linear-gradient(180deg,
  rgba(26,16,26,.30) 0%, rgba(28,18,28,.16) 32%, rgba(30,19,30,.20) 66%, rgba(40,25,40,.44) 100%)}
.contact-live .hero-video{position:relative}
.ch-top{max-width:900px;margin:0 auto;padding:26px 22px 6px;text-align:center;position:relative;z-index:2}
.ch-top .cc-eyebrow{margin-bottom:16px}
.ch-top .cc-h1{margin:0 auto;max-width:16ch}
.ch-top .cc-lead{margin:16px auto 0}
.ch-top .video-embed{margin:26px auto 0;border:1px solid rgba(255,255,255,.18)}
.ch-top .video-cap{color:rgba(255,255,255,.82)}
