/* RingMyTech homepage refinement: restrained Technology Wellness storytelling. */
:root {
  --home-navy: #0d2454;
  --home-blue: #003087;
  --home-gold: #ffb300;
  --home-green: #1a6b3c;
  --home-ink: #14213f;
  --home-muted: #586174;
  --home-ivory: #fbfaf7;
  --home-line: #deded8;
  --home-shadow: 0 18px 50px rgba(13, 36, 84, .1);
}

[hidden] { display: none !important; }

html { scroll-padding-top: 90px; }
body { background: var(--home-ivory); color: var(--home-ink); }

/* The concierge dock is a mobile aid, not a second desktop navigation bar. */
.rmt-mobile-action-bar { display: none !important; }

/* One calm public header. */
nav.home-nav {
  min-height: 80px;
  padding: .6rem clamp(1.1rem, 4vw, 3.5rem);
  border-bottom: 1px solid rgba(20, 33, 63, .1);
  box-shadow: none;
  background: rgba(255, 255, 255, .98);
}
.home-nav .nl { min-width: 94px; }
.home-nav .nl img { height: 57px; max-width: 116px; }
.home-nav .nv { gap: .65rem; }
.home-nav .nv a {
  min-height: 44px;
  padding: .45rem .35rem;
  color: #364056;
  font-size: .86rem;
  font-weight: 700;
  border: 0;
  border-radius: 0;
}
.home-nav .nv a:hover { color: var(--home-blue); background: transparent; }
.home-nav .nv-portal {
  padding: .52rem .78rem !important;
  color: var(--home-blue) !important;
  background: transparent;
  border: 1px solid #c7cfdd !important;
  border-radius: 6px;
}
.home-nav .nav-phone {
  min-height: 46px;
  padding: .62rem .92rem;
  color: var(--home-ink);
  background: var(--home-gold);
  border: 1px solid #eca700;
  border-radius: 6px;
  font-size: .88rem;
  font-weight: 800;
  animation: none;
  box-shadow: none;
}
.home-nav .nav-phone:hover { box-shadow: 0 8px 22px rgba(255, 179, 0, .2); }

/* Full-bleed human hero with the product promise layered into the scene. */
.hero.home-hero {
  min-height: clamp(600px, calc(100svh - 160px), 720px);
  padding: clamp(3.5rem, 6vw, 5rem) clamp(1.25rem, 7vw, 7rem) 2.5rem;
  text-align: left;
  display: flex;
  align-items: center;
  background-image:
    linear-gradient(90deg, rgba(8, 25, 60, .96) 0%, rgba(8, 25, 60, .88) 37%, rgba(8, 25, 60, .42) 64%, rgba(8, 25, 60, .08) 100%),
    url("technology-wellness.jpg");
  background-position: center;
  background-size: cover;
}
.hero.home-hero::before { content: none; }
.home-hero-inner {
  width: min(1180px, 100%);
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.home-hero-copy { width: min(650px, 58%); }
.home-kicker {
  color: var(--home-green);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1.4;
  text-transform: uppercase;
  margin-bottom: 1rem;
}
.home-hero .home-kicker { color: #ffd774; }
.hero.home-hero h1 {
  max-width: 650px;
  margin: 0 0 1.2rem;
  color: #fff;
  font-family: "Lora", Georgia, serif;
  font-size: clamp(2.55rem, 4.8vw, 4.35rem);
  font-weight: 600;
  line-height: 1.04;
}
.hero.home-hero h1 em {
  display: block;
  margin-top: .18em;
  color: #fff;
  font-weight: 600;
}
.hero.home-hero .hero-sub {
  max-width: 590px;
  margin: 0 0 1.65rem;
  color: rgba(255, 255, 255, .88);
  font-size: clamp(1.02rem, 1.6vw, 1.22rem);
  font-weight: 600;
  line-height: 1.65;
}
.hero.home-hero .hero-btns { justify-content: flex-start; margin-bottom: 1rem; }
.hero.home-hero a.hbtn {
  min-height: 50px;
  padding: .78rem 1.15rem;
  border-radius: 6px;
  font-size: .96rem;
  font-weight: 800;
  animation: none;
}
.hero.home-hero .hbtn-w { background: rgba(6, 23, 56, .3); }
.home-trust-line {
  color: rgba(255, 255, 255, .72);
  font-size: .84rem;
  font-weight: 700;
  line-height: 1.5;
}
/* Care Circle becomes the first proof of the promise. */
.home-section-inner { width: min(1120px, calc(100% - 2.5rem)); margin: 0 auto; }
.home-circle { padding: clamp(4rem, 6vw, 6rem) 0; background: var(--home-ivory); }
.home-circle-layout { display: grid; grid-template-columns: minmax(0, .82fr) minmax(540px, 1.18fr); gap: clamp(2.5rem, 5.5vw, 5.25rem); align-items: center; }
.home-circle-copy h2,
.home-editorial-head h2 {
  max-width: 690px;
  margin-bottom: 1.15rem;
  color: var(--home-ink);
  font-family: "Lora", Georgia, serif;
  font-size: clamp(2rem, 4vw, 3.35rem);
  font-weight: 600;
  line-height: 1.14;
}
.home-circle-copy > p,
.home-editorial-head > p {
  max-width: 640px;
  color: var(--home-muted);
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.75;
}
.home-circle-copy .home-circle-lede { max-width: 590px; font-size: 1rem; line-height: 1.7; }
.home-circle-values { margin-top: 1.65rem; border-top: 1px solid var(--home-line); }
.home-circle-values > div { padding: .88rem 0; border-bottom: 1px solid var(--home-line); }
.home-circle-values p { color: var(--home-muted); font-size: .86rem; font-weight: 600; line-height: 1.55; }
.home-circle-values strong { display: block; margin-bottom: .08rem; color: var(--home-ink); font-weight: 800; }
.home-inline-actions { display: flex; gap: .75rem; flex-wrap: wrap; margin-top: 1.5rem; }
.home-text-link { color: var(--home-blue); font-weight: 800; text-underline-offset: 4px; }
.home-text-link.quiet { color: var(--home-muted); }
.home-circle-primary,
.home-circle-secondary { min-height: 48px; padding: .68rem .95rem; display: inline-flex; align-items: center; justify-content: center; gap: .55rem; border-radius: 6px; font-size: .86rem; font-weight: 900; line-height: 1.25; text-decoration: none; }
.home-circle-primary { color: #fff; background: var(--home-blue); border: 1px solid var(--home-blue); }
.home-circle-primary:hover { background: #08275f; }
.home-circle-primary span { font-size: 1.05rem; }
.home-circle-secondary { color: var(--home-blue); background: transparent; border: 1px solid #c9cfda; }
.home-circle-secondary:hover { background: #fff; border-color: var(--home-blue); }
.home-circle-product {
  padding: clamp(1.25rem, 2.5vw, 1.8rem);
  background: #fff;
  border: 1px solid var(--home-line);
  border-radius: 8px;
  box-shadow: var(--home-shadow);
}
.home-circle-product-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding-bottom: .9rem; border-bottom: 1px solid #ecebe6; }
.home-circle-product-head > div { display: grid; gap: .12rem; }
.home-circle-product-head span { color: var(--home-green); font-size: .67rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.home-circle-product-head strong { color: var(--home-ink); font-family: "Lora", serif; font-size: 1.08rem; font-weight: 600; }
.home-circle-product-head > small { color: #71798a; font-size: .66rem; font-weight: 800; white-space: nowrap; }
.home-circle-orbit { min-height: 238px; padding: 1rem .15rem .75rem; position: relative; display: grid; grid-template-columns: 1fr 1.28fr 1fr; gap: .55rem; align-items: center; text-align: center; }
.home-circle-orbit::before { content: ""; height: 1px; position: absolute; top: 44%; right: 12%; left: 12%; z-index: 0; background: linear-gradient(90deg, rgba(255,179,0,.1), rgba(255,179,0,.75) 25%, rgba(255,179,0,.75) 75%, rgba(255,179,0,.1)); }
.home-circle-node { min-width: 0; position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; }
.home-circle-avatar { width: 92px; height: 92px; display: flex; align-items: center; justify-content: center; overflow: hidden; color: var(--home-blue); background: #fff; border: 1px solid #cfd5df; border-radius: 50%; font-family: "Lora", serif; font-size: 1.38rem; font-weight: 700; box-shadow: 0 7px 18px rgba(13,36,84,.08); }
.home-circle-node > strong { margin-top: .52rem; color: var(--home-ink); font-size: .78rem; font-weight: 900; line-height: 1.3; }
.home-circle-node > span { margin-top: .05rem; color: var(--home-green); font-size: .65rem; font-weight: 800; line-height: 1.35; }
.home-circle-member .home-circle-avatar { width: 158px; height: 158px; border: 2px solid var(--home-gold); box-shadow: 0 0 0 6px #fff, 0 10px 28px rgba(13,36,84,.14); }
.home-circle-member .home-circle-avatar img { width: 100%; height: 100%; object-fit: cover; object-position: 67% center; }
.home-circle-rmt .home-circle-avatar { border-color: rgba(0,48,135,.22); }
.home-circle-rmt .home-circle-avatar img { width: 58px; height: 58px; object-fit: contain; }
.home-circle-outcome { display: grid; grid-template-columns: 1.1fr .9fr; gap: 1rem; padding: 1.1rem; background: #f8faf6; border: 1px solid #dce9de; border-radius: 7px; }
.home-circle-outcome-summary > span { color: var(--home-green); font-size: .7rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.home-circle-outcome-summary > span b { font-size: .8rem; }
.home-circle-outcome h3 { margin: .28rem 0 .3rem; font-family: "Lora", serif; font-size: 1.15rem; font-weight: 600; line-height: 1.35; }
.home-circle-outcome p { color: var(--home-muted); font-size: .73rem; font-weight: 700; line-height: 1.45; }
.home-circle-outcome dl { display: grid; align-content: center; }
.home-circle-outcome dl > div { padding: .38rem 0; }
.home-circle-outcome dl > div + div { border-top: 1px solid #dce4dc; }
.home-circle-outcome dt { color: #747c8d; font-size: .61rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.home-circle-outcome dd { margin: .08rem 0 0; color: var(--home-ink); font-size: .72rem; font-weight: 800; line-height: 1.35; }
.home-circle-control { margin-top: .75rem; padding: .72rem .82rem; display: grid; grid-template-columns: max-content 1fr; gap: .7rem; align-items: center; background: #fffaf0; border: 1px solid #eee3cd; border-radius: 6px; }
.home-circle-control strong { color: var(--home-blue); font-size: .68rem; font-weight: 900; }
.home-circle-control span { color: var(--home-muted); font-size: .65rem; font-weight: 700; line-height: 1.4; }

/* Four pillars, not another card wall. */
.home-wellness { padding: clamp(4.5rem, 8vw, 7rem) 0; background: #fff; border-top: 1px solid #e8e7e1; border-bottom: 1px solid #e8e7e1; }
.home-editorial-head { max-width: 760px; }
.home-pillars { margin-top: 3.5rem; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--home-line); }
.home-pillars > div { padding: 1.6rem 1.35rem 0 0; }
.home-pillars > div + div { padding-left: 1.35rem; border-left: 1px solid var(--home-line); }
.home-pillars span { color: var(--home-gold); font-size: .72rem; font-weight: 800; }
.home-pillars h3 { margin: 0 0 .45rem; color: var(--home-ink); font-family: "Lora", serif; font-size: 1.35rem; font-weight: 600; }
.home-pillars p { color: var(--home-muted); font-size: .9rem; font-weight: 600; line-height: 1.65; }

/* Family story is editorial, with fewer independent boxes. */
.fpom { padding: clamp(4.5rem, 8vw, 7rem) 1.25rem; background: var(--home-ivory); }
.fpom-wrap { max-width: 1120px; }
.fpom-head { max-width: 780px; text-align: left; margin: 0 0 2.5rem; }
.fpom-head .eyebrow { padding: 0; color: var(--home-green); background: transparent; border-radius: 0; font-size: .76rem; letter-spacing: .12em; }
.fpom-head h2 { font-size: clamp(2rem, 4vw, 3.15rem); font-weight: 600; line-height: 1.14; }
.fpom-head p { max-width: 720px; font-weight: 600; }
.fpom-story { grid-template-columns: minmax(360px, .9fr) 1.1fr; gap: clamp(2.5rem, 6vw, 5.5rem); align-items: center; }
.fpom-photo { height: min(620px, 68vw); border: 0; border-radius: 8px; box-shadow: var(--home-shadow); }
.fpom-grid { display: block; }
.fpom-card { padding: 1.25rem 0; background: transparent; border: 0; border-bottom: 1px solid var(--home-line); border-radius: 0; box-shadow: none; }
.fpom-card:first-child { border-top: 1px solid var(--home-line); }
.fpom-card .ic { width: auto; height: auto; margin: 0 0 .35rem; color: var(--home-gold); background: transparent; border: 0; border-radius: 0; font-size: .72rem; font-weight: 800; }
.fpom-card h3 { font-family: "Lora", serif; font-size: 1.4rem; font-weight: 600; }
.fpom-card p { font-size: .96rem; font-weight: 600; }
.fpom-cta { margin-top: 1.5rem; text-align: left; }
.fpom-cta a { padding: .78rem 1rem; border-radius: 6px; font-size: .92rem; animation: none; }

/* Concise service index with the deeper examples kept optional. */
#services { padding-top: clamp(4.5rem, 8vw, 7rem); background: #fff !important; }
#services .si { max-width: 1120px; }
#services .stag { padding: 0; color: var(--home-green); background: transparent; border-radius: 0; }
#services h2.t { max-width: 720px; font-size: clamp(2rem, 4vw, 3.05rem); font-weight: 600; }
#services .sub { max-width: 760px; margin-bottom: 2.75rem; }
.home-service-index { border-top: 1px solid var(--home-line); }
.home-service-index > div { display: grid; grid-template-columns: 170px 1fr; gap: 1.5rem; padding: 1rem 0; border-bottom: 1px solid var(--home-line); }
.home-service-index span { color: var(--home-blue); font-weight: 800; }
.home-service-index p { color: var(--home-muted); font-weight: 600; }
.service-details { max-width: 920px; margin-top: 2rem; border: 0; border-bottom: 1px solid var(--home-line); border-radius: 0; box-shadow: none; }
.service-details > summary { padding-left: 0; padding-right: 0; background: transparent; font-weight: 800; }
.service-details-intro { padding-left: 0; }
.service-topic-list { padding-left: 0; padding-right: 0; }
.service-topic { border: 0; border-bottom: 1px solid var(--home-line); border-radius: 0; box-shadow: none; }
.service-topic summary { padding-left: 0; background: transparent; font-weight: 700; }
.service-topic-icon { display: none; }

/* Trust becomes one continuous operating standard. */
.trust-safety { padding: clamp(4.5rem, 8vw, 7rem) 1.25rem; background: var(--home-ivory); border-top: 1px solid var(--home-line); }
.trust-safety-wrap { max-width: 1120px; }
.trust-safety-head { max-width: 760px; margin: 0 0 2.5rem; text-align: left; }
.trust-safety-head .stag { padding: 0; color: var(--home-green); background: transparent; border-radius: 0; }
.trust-safety-head h2 { font-size: clamp(2rem, 4vw, 3rem); font-weight: 600; }
.trust-safety-head p { font-weight: 600; }
.trust-safety-card { padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.trust-safety-grid { grid-template-columns: repeat(2, 1fr); gap: 0 2.75rem; border-top: 1px solid var(--home-line); }
.trust-point { padding: 1.15rem 0; background: transparent; border: 0; border-bottom: 1px solid var(--home-line); border-radius: 0; }
.trust-point span { width: 30px; color: var(--home-gold); font-size: .68rem; font-weight: 800; }
.trust-point strong { font-weight: 800; }
.trust-point p { font-weight: 600; }
.trust-safety-note { padding: 1rem 0 0; color: #6b5521; background: transparent; border: 0; border-radius: 0; font-weight: 700; }

/* The newsletter remains functional but no longer dominates the story. */
.home-newsletter { padding: 2.75rem 1.25rem !important; background: var(--home-navy) !important; text-align: center; }
.home-newsletter h2 { font-weight: 600 !important; }

/* A continuous journey replaces four floating cards. */
#how { padding-top: clamp(4.5rem, 8vw, 7rem); background: #fff; }
#how .stag { padding: 0; color: var(--home-green); background: transparent; border-radius: 0; }
#how h2.t { font-size: clamp(2rem, 4vw, 3rem); font-weight: 600; }
.steps { position: relative; gap: 0; border-top: 1px solid var(--home-line); }
.step { padding: 1.6rem 1.2rem 0 0; text-align: left; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.step + .step { padding-left: 1.2rem; border-left: 1px solid var(--home-line); }
.step-n { width: auto; height: auto; margin: 0 0 .55rem; justify-content: flex-start; color: var(--home-gold); background: transparent; border-radius: 0; box-shadow: none; font-size: .72rem; }
.step h3 { font-family: "Lora", serif; font-size: 1.22rem; font-weight: 600; }
.step p { font-size: .9rem; font-weight: 600; }

/* Scheduling is a calm invitation, not an embedded third-party application. */
.home-booking { padding: clamp(4rem, 7vw, 6rem) 1.25rem; background: var(--home-navy); }
.home-booking .cal-i { max-width: 760px; }
.home-booking .stag { padding: 0; color: #ffd774; background: transparent; border-radius: 0; }
.home-booking h2 { margin: .6rem auto .8rem; font-size: clamp(2rem, 4vw, 3rem); font-weight: 600; }
.home-booking p { margin-bottom: 1.5rem; font-size: 1.05rem; }
.home-booking-actions { display: flex; justify-content: center; gap: .75rem; flex-wrap: wrap; }
.home-booking-actions a { min-height: 50px; padding: .78rem 1.15rem; display: inline-flex; align-items: center; justify-content: center; border-radius: 6px; text-decoration: none; font-weight: 800; }
.home-booking-primary { color: var(--home-ink); background: var(--home-gold); }
.home-booking-secondary { color: #fff; border: 1px solid rgba(255, 255, 255, .4); }
.home-booking .cal-or { margin-top: 1.1rem; margin-bottom: 0; color: rgba(255, 255, 255, .62); font-size: .85rem; }

/* One-time help is separated from the four membership choices. */
#pricing { padding-top: clamp(4.5rem, 8vw, 7rem); background: var(--home-ivory) !important; }
#pricing .stag { padding: 0; color: var(--home-green); background: transparent; border-radius: 0; }
#pricing h2.t { font-size: clamp(2rem, 4vw, 3rem); font-weight: 600; }
.veteran-price-callout { border: 0; border-left: 3px solid var(--home-gold); border-radius: 0; box-shadow: none; }
.veteran-price-callout__link { border-radius: 6px; font-weight: 800; }
.pg { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.pc { border: 1px solid #d8d9d4; border-radius: 8px; box-shadow: none; }
.pc:first-child {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1.15fr .8fr 1.25fr auto;
  grid-template-areas:
    "name price per button"
    "promise price fit button"
    "features features features button";
  gap: .3rem 1.5rem;
  align-items: center;
  padding: 1.35rem 1.5rem;
}
.pc:first-child .pc-name { grid-area: name; }
.pc:first-child .pc-promise { grid-area: promise; }
.pc:first-child .pc-fit { grid-area: fit; margin: 0; }
.pc:first-child .pc-pricing-block { grid-area: price; margin: 0; }
.pc:first-child .pc-per { grid-area: per; margin: 0; }
.pc:first-child .pc-feats { grid-area: features; display: flex; gap: 1.25rem; margin: .45rem 0 0; }
.pc:first-child .pc-feats li { border: 0; padding: 0; }
.pc:first-child .pbtn { grid-area: button; width: auto; min-width: 180px; margin: 0; }
.pc.featured { background: var(--home-blue); border: 2px solid var(--home-gold); box-shadow: 0 15px 36px rgba(0, 48, 135, .16); }
.pc:nth-child(4) { border-top: 4px solid var(--home-blue); }
.pc.family { background: #fff; border: 1px solid #b9cdbf; border-top: 4px solid var(--home-green); box-shadow: none; }
.pc-badge { top: .8rem; left: auto; right: .8rem; transform: none; border-radius: 4px; box-shadow: none; }
.pc-name { font-weight: 800; }
.pc-promise { font-family: "Lora", serif; font-weight: 600; }
.pc-fit strong { font-weight: 800; }
.pc-now { font-weight: 700; }
.pc-feats li { font-weight: 700; }
a.pbtn { border-radius: 6px; font-weight: 800; }

/* Remove secondary promotional repetition from the main story. */
.home-secondary-proof,
.home-outcomes { display: none !important; }

/* Quiet supporting sections. */
#faq { background: #fff !important; }
#faq .stag { padding: 0; color: var(--home-green); background: transparent; border-radius: 0; }
#faq h2.t { font-weight: 600; }
.faq-wrap { max-width: 900px; }
.faq-wrap details { border: 0; border-bottom: 1px solid var(--home-line); border-radius: 0; box-shadow: none; }
.faq-wrap details[open] { border-color: var(--home-line); box-shadow: none; }
.faq-wrap summary { padding-left: 0; padding-right: 0; font-weight: 700; }
.faq-wrap .fb { padding-left: 0; font-weight: 600; }
.about-bottom { background: var(--home-ivory); border-top: 1px solid var(--home-line); }
.about-bottom-card { padding: 1.8rem 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.about-bottom-kicker { padding: 0; color: var(--home-green); background: transparent; border-radius: 0; }
.about-bottom h2 { font-weight: 600; }
.about-bottom p { font-weight: 600; }
.about-bottom-actions a { border-radius: 6px; font-weight: 800; }
.cta-wrap { padding-top: 3rem; background: var(--home-ivory); }
.cta { max-width: 1020px; padding: 3.25rem 2.2rem; background: var(--home-navy); border-radius: 8px; box-shadow: none; }
.cta::before { content: none; }
.cta h2 { font-weight: 600; }
.cta-btns a { border-radius: 6px; animation: none; }
.cta-sub { font-weight: 600; }
footer { background: #13274f; }

@media (max-width: 1100px) {
  .home-nav .nv { gap: .3rem; }
  .home-nav .nv a { font-size: .78rem; }
  .home-nav .nav-phone { font-size: .8rem; padding-inline: .7rem; }
  .home-circle-layout { grid-template-columns: minmax(0, .82fr) minmax(500px, 1.18fr); gap: 2.5rem; }
  .pg { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .rmt-mobile-action-bar { display: grid !important; }
  nav.home-nav { position: fixed; min-height: 74px; }
  .home-nav .menu-toggle { display: inline-flex; border-radius: 6px; font-weight: 800; }
  .home-nav .nav-phone { display: inline-flex !important; width: auto; min-width: 48px; height: 48px; padding: .55rem .65rem !important; color: var(--home-ink) !important; font-size: 0 !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314213f' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L8.01 9.73a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") !important; background-position: center !important; background-repeat: no-repeat !important; background-size: 21px 21px !important; }
  nav.home-nav.open .nv { top: 82px; bottom: calc(var(--rmt-mobile-sticky-h) + .75rem); border-radius: 8px; }
  .hero.home-hero { min-height: calc(100svh - 108px); padding: 6.2rem 1.25rem 2.5rem; background-position: 61% center; }
  .hero.home-hero { background-image: linear-gradient(90deg, rgba(8, 25, 60, .96) 0%, rgba(8, 25, 60, .86) 58%, rgba(8, 25, 60, .45) 100%), url("technology-wellness.jpg"); }
  .home-hero-copy { width: 100%; max-width: 580px; }
  .hero.home-hero h1 { max-width: 560px; font-size: clamp(2.25rem, 9vw, 3.6rem); }
  .hero.home-hero .hero-sub { max-width: 500px; }
  .home-hero-preview { width: min(500px, 100%); }
  .home-circle-layout { grid-template-columns: 1fr; }
  .home-circle-product { max-width: 620px; }
  .home-pillars { grid-template-columns: repeat(2, 1fr); }
  .home-pillars > div:nth-child(3) { padding-left: 0; border-left: 0; }
  .home-pillars > div:nth-child(n+3) { margin-top: 1.5rem; border-top: 1px solid var(--home-line); }
  .fpom-story { grid-template-columns: 1fr; }
  .fpom-photo { height: 520px; }
  .trust-safety-grid { grid-template-columns: 1fr; }
  .steps { grid-template-columns: repeat(2, 1fr); }
  .step:nth-child(3) { padding-left: 0; border-left: 0; }
  .step:nth-child(n+3) { margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--home-line); }
  .pc:first-child { display: flex; grid-column: 1 / -1; }
  .pc:first-child .pc-feats { display: block; }
  .pc:first-child .pbtn { width: 100%; }
}

@media (max-width: 560px) {
  html { scroll-padding-top: 78px; }
  body { padding-top: 74px; }
  nav.home-nav { min-height: 74px; padding: .45rem .7rem; }
  .home-nav .nl img { height: 48px; max-width: 96px; }
  .home-nav .menu-toggle { min-height: 46px; padding: .58rem .72rem; font-size: .86rem; }
  .hero.home-hero { min-height: calc(100svh - 100px); padding: 3.4rem 1rem 2rem; background-position: 66% center; }
  .hero.home-hero h1 { font-size: clamp(2.05rem, 11vw, 2.8rem); line-height: 1.04; }
  .hero.home-hero .hero-sub { font-size: 1rem; }
  .hero.home-hero .hero-btns { align-items: stretch; }
  .hero.home-hero a.hbtn { width: 100%; justify-content: center; }
  .home-trust-line { font-size: .75rem; }
  .home-section-inner { width: min(100% - 2rem, 1120px); }
  .home-circle,
  .home-wellness,
  .fpom,
  #services,
  .trust-safety,
  #how,
  #pricing,
  #faq { padding-top: 4rem; padding-bottom: 4rem; }
  .home-circle-copy h2,
  .home-editorial-head h2,
  .fpom-head h2,
  #services h2.t,
  .trust-safety-head h2,
  #how h2.t,
  #pricing h2.t { font-size: 2.05rem; }
  .home-circle-product-head { display: grid; }
  .home-circle-product-head > small { white-space: normal; }
  .home-circle-orbit { min-height: 204px; gap: .2rem; }
  .home-circle-avatar { width: 68px; height: 68px; font-size: 1rem; }
  .home-circle-member .home-circle-avatar { width: 112px; height: 112px; }
  .home-circle-rmt .home-circle-avatar img { width: 44px; height: 44px; }
  .home-circle-node > strong { font-size: .68rem; }
  .home-circle-node > span { font-size: .58rem; }
  .home-circle-outcome { grid-template-columns: 1fr; }
  .home-circle-control { grid-template-columns: 1fr; gap: .18rem; }
  .home-inline-actions { display: grid; grid-template-columns: 1fr; }
  .home-circle-primary,
  .home-circle-secondary { width: 100%; }
  .home-pillars { grid-template-columns: 1fr; }
  .home-pillars > div,
  .home-pillars > div + div { padding: 1.1rem 0; border-left: 0; border-top: 1px solid var(--home-line); }
  .fpom-photo { width: 100%; height: auto; aspect-ratio: 4 / 3; }
  .home-service-index > div { grid-template-columns: 1fr; gap: .2rem; }
  .service-topic-list { grid-template-columns: 1fr; }
  .steps { grid-template-columns: 1fr; }
  .step,
  .step + .step { margin: 0; padding: 1.15rem 0; border-left: 0; border-top: 1px solid var(--home-line); }
  .home-booking-actions { flex-direction: column; }
  .pg { grid-template-columns: 1fr; }
  .pc:first-child { grid-column: auto; }
  .veteran-price-callout { display: block; }
  .veteran-price-callout__link { margin-top: .8rem; }
  .cta { padding: 2.6rem 1.2rem; }
}

@media (max-width: 430px) {
  body.rmt-page-home { padding-bottom: calc(5.8rem + env(safe-area-inset-bottom)) !important; }
  body.rmt-page-home .rmt-mobile-action-bar {
    bottom: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 4px !important;
    min-height: 76px !important;
    height: 76px !important;
    padding: 7px calc(7px + env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) calc(7px + env(safe-area-inset-left)) !important;
    border-radius: 16px 16px 0 0 !important;
  }
  body.rmt-page-home .rmt-mobile-action-bar__call { grid-column: auto !important; }
  body.rmt-page-home .rmt-mobile-action-bar__item {
    min-height: 60px !important;
    height: 60px !important;
    padding: 3px !important;
    flex-direction: column !important;
    gap: 2px !important;
    font-size: 13px !important;
    line-height: 1.05 !important;
  }
  body.rmt-page-home .rmt-mobile-action-bar__icon,
  body.rmt-page-home .rmt-mobile-action-bar__icon svg { width: 19px !important; height: 19px !important; min-width: 19px !important; }
  body.rmt-page-home.menu-open .rmt-mobile-action-bar { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  body.rmt-page-home .rmt-accessibility--in-dock .rmt-accessibility-toggle {
    min-height: 60px !important;
    height: 60px !important;
    padding: 3px !important;
    flex-direction: column !important;
    gap: 1px !important;
    font-size: 13px !important;
  }
  body.rmt-page-home .rmt-accessibility--in-dock .rmt-accessibility-toggle::after { content: "Size"; font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  .home-nav *, .home-hero *, .fpom *, .pc * { transition: none !important; animation: none !important; }
}
