/* Home page, 2026 redesign (views/index.blade.php).
   Dark sections keep the theme's ink green + gold; "paper" sections give the
   page rhythm. Gold on paper uses a darker shade for contrast. */

.home26 {
  --h26-ink: #0C1A1A;
  --h26-ink-2: #122424;
  --h26-paper: #F4EFE6;
  --h26-paper-2: #EAE3D6;
  --h26-text: #17211F;
  --h26-muted: #5B6662;
  --h26-gold: #D89A26;
  --h26-gold-ink: #86590B;   /* 09.10: was #94650F — 4.44:1 on the paper, below AA for 13–16px text */
  --h26-line-dark: rgba(255, 255, 255, .09);
  --h26-line-paper: rgba(23, 33, 31, .12);
  --h26-radius: 20px;
  font-family: var(--font-family-manrope);
}

/* ---------- shared ---------- */
.home26 .h26-section { padding: clamp(72px, 9vw, 128px) 0; position: relative; }
.home26 .h26-paper { background: var(--h26-paper); color: var(--h26-text); }
.home26 .h26-dark { background: var(--h26-ink); color: #fff; }

.home26 .h26-eyebrow {
  display: inline-flex; align-items: center; gap: 10px; margin-bottom: 16px;
  font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
  color: var(--h26-gold);
}
.home26 .h26-eyebrow::before { content: ""; width: 28px; height: 1px; background: currentColor; }
.home26 .h26-paper .h26-eyebrow { color: var(--h26-gold-ink); }

.home26 .h26-title {
  margin: 0; font-family: var(--font-family-cormorant); font-weight: 500;
  font-size: clamp(36px, 4.6vw, 60px); line-height: 1.05; letter-spacing: -.01em;
  color: inherit;
}
.home26 .h26-title em { font-style: italic; color: var(--h26-gold); }
.home26 .h26-paper .h26-title em { color: var(--h26-gold-ink); }

.home26 .h26-head {
  display: flex; justify-content: space-between; align-items: flex-end; gap: 32px;
  margin-bottom: clamp(36px, 5vw, 56px);
}
.home26 .h26-lead { max-width: 420px; margin: 0; font-size: 17px; line-height: 1.6; color: var(--h26-muted); }

.home26 .h26-btn {
  display: inline-flex; align-items: center; gap: 10px; padding: 16px 26px;
  border-radius: 100px; font-weight: 700; font-size: 15px; text-decoration: none;
  transition: transform .25s ease, background .25s ease, color .25s ease;
}
.home26 .h26-btn svg { width: 18px; height: 18px; }
.home26 .h26-btn--dark { background: var(--h26-ink); color: #fff; }
.home26 .h26-btn--dark:hover { background: var(--h26-gold); color: var(--h26-ink); transform: translateY(-2px); }

.home26 .h26-center { margin-top: 40px; text-align: center; }
.home26 .h26-link {
  display: inline-flex; align-items: center; gap: 8px; font-weight: 700; color: var(--h26-text);
  text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 4px;
}
.home26 .h26-link svg { width: 18px; height: 18px; transition: transform .25s ease; }
.home26 .h26-link:hover { color: var(--h26-gold-ink); }
.home26 .h26-link:hover svg { transform: translateX(4px); }

/* ---------- 1. stats ---------- */
.home26 .h26-stats { background: var(--h26-ink); border-top: 1px solid var(--h26-line-dark); }
.home26 .h26-stats__list {
  display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding: 0; list-style: none;
}
.home26 .h26-stats__item {
  display: flex; flex-direction: column; gap: 6px; padding: 34px 28px;
  border-left: 1px solid var(--h26-line-dark);
}
.home26 .h26-stats__item:first-child { border-left: 0; padding-left: 0; }
.home26 .h26-stats__item strong {
  font-family: var(--font-family-cormorant); font-size: clamp(40px, 4vw, 56px); font-weight: 500;
  line-height: 1; background: var(--gradient-yellow); -webkit-background-clip: text; background-clip: text;
  color: transparent;
}
.home26 .h26-stats__item span { font-size: 15px; color: #A9B8B6; }

/* ---------- 2. practices bento ---------- */
.home26 .h26-bento { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.home26 .h26-card {
  position: relative; display: flex; flex-direction: column; gap: 18px; min-height: 250px;
  padding: 28px; border-radius: var(--h26-radius); overflow: hidden; isolation: isolate;
  background: #fff; border: 1px solid var(--h26-line-paper); color: var(--h26-text);
  text-decoration: none; transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.home26 .h26-card:hover {
  transform: translateY(-4px); border-color: transparent;
  box-shadow: 0 24px 48px -24px rgba(12, 26, 26, .35);
}
.home26 .h26-card--wide { grid-column: span 2; background: var(--h26-ink); color: #fff; border-color: transparent; }
.home26 .h26-card__img {
  position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover;
  transition: transform .8s ease;
}
.home26 .h26-card--wide::before {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(100deg, rgba(12, 26, 26, .95) 0%, rgba(12, 26, 26, .82) 45%, rgba(12, 26, 26, .35) 100%);
}
.home26 .h26-card--wide:hover .h26-card__img { transform: scale(1.05); }

.home26 .h26-card__icon {
  display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px;
  border-radius: 14px; background: var(--h26-paper); color: var(--h26-gold-ink);
}
.home26 .h26-card--wide .h26-card__icon { background: rgba(216, 154, 38, .14); color: var(--h26-gold); }
.home26 .h26-card__icon svg { width: 26px; height: 26px; }

.home26 .h26-card__body { display: flex; flex-direction: column; gap: 10px; margin-top: auto; }
.home26 .h26-card__title {
  font-family: var(--font-family-cormorant); font-size: 26px; font-weight: 500; line-height: 1.1;
}
.home26 .h26-card--wide .h26-card__title { font-size: 32px; max-width: 360px; }
.home26 .h26-card__text { font-size: 15px; line-height: 1.55; color: var(--h26-muted); }
.home26 .h26-card--wide .h26-card__text { color: #C3CFCD; max-width: 360px; }

.home26 .h26-card__arrow {
  position: absolute; top: 24px; right: 24px; display: inline-flex; align-items: center; justify-content: center;
  width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--h26-line-paper);
  transition: background .3s ease, color .3s ease, border-color .3s ease, transform .3s ease;
}
.home26 .h26-card--wide .h26-card__arrow { border-color: rgba(255, 255, 255, .25); }
.home26 .h26-card__arrow svg { width: 18px; height: 18px; }
.home26 .h26-card:hover .h26-card__arrow {
  background: var(--h26-gold); border-color: var(--h26-gold); color: var(--h26-ink); transform: rotate(45deg);
}

/* ---------- 3. steps ---------- */
.home26 .h26-steps {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 0; padding: 0; list-style: none;
  counter-reset: none;
}
.home26 .h26-step { position: relative; padding: 34px 28px 0 0; border-top: 1px solid var(--h26-line-dark); }
.home26 .h26-step::before {
  content: ""; position: absolute; top: -5px; left: 0; width: 9px; height: 9px; border-radius: 50%;
  background: var(--h26-gold); box-shadow: 0 0 0 6px rgba(216, 154, 38, .15);
}
.home26 .h26-step__num {
  display: block; margin-bottom: 18px; font-family: var(--font-family-cormorant); font-size: 22px;
  font-style: italic; color: var(--h26-gold);
}
.home26 .h26-step__title { margin: 0 0 10px; font-family: var(--font-family-cormorant); font-size: 28px; font-weight: 500; color: #fff; }
.home26 .h26-step__text { margin: 0; font-size: 15px; line-height: 1.6; color: #A9B8B6; }

/* ---------- 4. about ---------- */
.home26 .h26-about { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(32px, 6vw, 88px); align-items: center; }
.home26 .h26-about__photo { position: relative; margin: 0; }
.home26 .h26-about__photo img {
  display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 24px;
}
.home26 .h26-about__photo::after {
  content: ""; position: absolute; inset: 18px -18px -18px 18px; z-index: -1;
  border: 1px solid var(--h26-gold-ink); border-radius: 24px; opacity: .45;
}
.home26 .h26-about__photo { isolation: isolate; }
.home26 .h26-about__photo figcaption { margin-top: 30px; font-size: 14px; color: var(--h26-muted); }
.home26 .h26-about__text .h26-title { margin-bottom: 24px; }
.home26 .h26-about__text p { margin: 0 0 16px; font-size: 17px; line-height: 1.7; color: #39443F; }
.home26 .h26-checks { margin: 24px 0 32px; padding: 0; list-style: none; display: grid; gap: 12px; }
.home26 .h26-checks li { position: relative; padding-left: 34px; font-weight: 600; color: var(--h26-text); }
.home26 .h26-checks li::before {
  content: ""; position: absolute; left: 0; top: 1px; width: 22px; height: 22px; border-radius: 50%;
  background: var(--h26-ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23D89A26' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 12px no-repeat;
}

/* clients */
.home26 .h26-clients { margin-top: clamp(64px, 8vw, 104px); padding-top: 40px; border-top: 1px solid var(--h26-line-paper); }
.home26 .h26-clients__title {
  margin: 0 0 28px; text-align: center; font-size: 13px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: var(--h26-muted);
}
.home26 .h26-clients__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.home26 .h26-clients__item {
  display: flex; align-items: center; justify-content: center; height: 96px; padding: 16px 22px;
  background: #fff; border: 1px solid var(--h26-line-paper); border-radius: 16px;
}
.home26 .h26-clients__item img {
  width: 100%; max-width: 150px; height: 60px; object-fit: contain; filter: grayscale(1); opacity: .8;
  transition: filter .3s ease, opacity .3s ease;
}
.home26 .h26-clients__item:hover img { filter: none; opacity: 1; }

/* ---------- 5. blog strip on dark ---------- */
.home26 .blog-strip { background: var(--h26-ink); padding: clamp(72px, 9vw, 128px) 0; margin: 0; }

/* ---------- 6. FAQ ---------- */
.home26 .h26-faq { display: grid; grid-template-columns: 1fr 1.5fr; gap: clamp(32px, 6vw, 88px); align-items: start; }
.home26 .h26-faq__head { position: sticky; top: 160px; display: flex; flex-direction: column; align-items: flex-start; gap: 28px; }
.home26 .h26-faq__list { border-top: 1px solid var(--h26-line-paper); }
.home26 .h26-faq__item { border-bottom: 1px solid var(--h26-line-paper); }
.home26 .h26-faq__item summary {
  position: relative; padding: 26px 56px 26px 0; cursor: pointer; list-style: none;
  font-family: var(--font-family-cormorant); font-size: 25px; font-weight: 500; line-height: 1.25; color: var(--h26-text);
}
.home26 .h26-faq__item summary::-webkit-details-marker { display: none; }
.home26 .h26-faq__item summary::after {
  content: ""; position: absolute; right: 0; top: 50%; width: 36px; height: 36px; margin-top: -18px;
  border-radius: 50%; border: 1px solid var(--h26-line-paper);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317211F' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center / 14px no-repeat;
  transition: transform .3s ease, background-color .3s ease;
}
.home26 .h26-faq__item[open] summary::after { transform: rotate(45deg); background-color: var(--h26-gold); border-color: var(--h26-gold); }
.home26 .h26-faq__item summary:hover { color: var(--h26-gold-ink); }
.home26 .h26-faq__item p { margin: 0; padding: 0 56px 26px 0; font-size: 16px; line-height: 1.7; color: #39443F; }

/* ---------- 7. CTA ---------- */
.home26 .h26-cta__box {
  display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(32px, 5vw, 72px); align-items: center;
  padding: clamp(32px, 5vw, 64px); border-radius: 28px;
  background: radial-gradient(120% 140% at 0% 0%, rgba(216, 154, 38, .16) 0%, rgba(216, 154, 38, 0) 55%), var(--h26-ink-2);
  border: 1px solid var(--h26-line-dark);
}
.home26 .h26-cta__intro p { margin: 20px 0 28px; font-size: 17px; color: #A9B8B6; }
.home26 .h26-cta__phone {
  display: inline-flex; align-items: center; gap: 14px; font-size: clamp(22px, 2.4vw, 30px); font-weight: 700;
  color: #fff; text-decoration: none;
}
.home26 .h26-cta__phone svg {
  width: 52px; height: 52px; padding: 14px; border-radius: 50%; background: var(--gradient-yellow); color: var(--h26-ink);
}
.home26 .h26-cta__phone:hover { color: var(--h26-gold); }

/* the shared Livewire form, restyled for this card */
.home26 .h26-cta__form .blog-consulatanry-box { padding: 0; background: none; border: 0; }
.home26 .h26-cta__form .blog-consulatanry-box > .section-subtitle,
.home26 .h26-cta__form .blog-consulatanry-box > .section-title,
.home26 .h26-cta__form .form-shape { display: none; }
.home26 .h26-cta__form .form-wrap .row { margin-bottom: 0; }
.home26 .h26-cta__form .form-input {
  width: 100%; height: 60px; padding: 0 22px; border-radius: 14px; font-size: 16px; color: #fff;
  background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .18);
}
.home26 .h26-cta__form .form-input::placeholder { color: #A9B8B6; opacity: 1; }
.home26 .h26-cta__form .form-input:focus { outline: none; border-color: var(--h26-gold); background: rgba(255, 255, 255, .09); }
.home26 .h26-cta__form .btn-fill { width: 100%; justify-content: center; height: 60px; border-radius: 14px; }

/* ---------- responsive ---------- */
@media (max-width: 1199px) {
  .home26 .h26-bento { grid-template-columns: repeat(2, 1fr); }
  .home26 .h26-steps { grid-template-columns: repeat(2, 1fr); row-gap: 40px; }
  .home26 .h26-clients__grid { grid-template-columns: repeat(5, 1fr); }
}
@media (max-width: 991px) {
  .home26 .h26-stats__list { grid-template-columns: repeat(2, 1fr); }
  .home26 .h26-stats__item { padding: 26px 20px; border-top: 1px solid var(--h26-line-dark); }
  .home26 .h26-stats__item:nth-child(odd) { border-left: 0; padding-left: 0; }
  .home26 .h26-stats__item:nth-child(-n+2) { border-top: 0; }
  .home26 .h26-head { flex-direction: column; align-items: flex-start; }
  .home26 .h26-about, .home26 .h26-faq, .home26 .h26-cta__box { grid-template-columns: 1fr; }
  .home26 .h26-faq__head { position: static; }
  .home26 .h26-clients__grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 575px) {
  .home26 .h26-bento { grid-template-columns: 1fr; }
  .home26 .h26-card--wide { grid-column: auto; }
  .home26 .h26-card { min-height: 0; }
  .home26 .h26-card--wide { min-height: 300px; }
  .home26 .h26-steps { grid-template-columns: 1fr; }
  .home26 .h26-clients__grid { grid-template-columns: repeat(2, 1fr); }
  .home26 .h26-clients__item { height: 80px; }
  .home26 .h26-faq__item summary { font-size: 21px; }
  .home26 .h26-about__photo::after { inset: 12px -10px -12px 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .home26 *, .home26 *::before, .home26 *::after { transition: none !important; }
}

/* ---------- hero tweaks on the home page ---------- */
/* the facts strip below repeats the hero's trust list */
.hero .hero-offer__trust { display: none; }
.home26 .h26-stats { position: relative; z-index: 2; }

/* form button: gold, so it stands out on the dark card */
.home26 .h26-cta__form .btn-fill {
  background: var(--gradient-yellow); color: var(--h26-ink); border: 0; font-weight: 700;
}
.home26 .h26-cta__form .btn-fill .btn-icon-black { filter: brightness(0); }
.home26 .h26-cta__form .btn-fill:hover { filter: brightness(1.06); transform: translateY(-1px); }

/* practices: closing CTA card */
.home26 .h26-card--cta {
  justify-content: space-between; min-height: 250px;
  background: radial-gradient(120% 140% at 100% 0%, rgba(216, 154, 38, .22) 0%, rgba(216, 154, 38, 0) 60%), var(--h26-ink);
}
.home26 .h26-card--cta:hover { transform: none; box-shadow: none; }
.home26 .h26-card--cta .h26-card__body { margin-top: 0; }
.home26 .h26-card__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
.home26 .h26-btn--gold { background: var(--gradient-yellow); color: var(--h26-ink); }
.home26 .h26-btn--gold:hover { color: var(--h26-ink); transform: translateY(-2px); filter: brightness(1.06); }
.home26 .h26-link--light { color: #fff; }
.home26 .h26-link--light:hover { color: var(--h26-gold); }

/* the home page already ends with the lead form, so skip the footer's CTA band */
.f26 .f26-cta { display: none; }
.f26 { padding-top: 0; border-top: 1px solid rgba(255, 255, 255, .09); }

/* ---------- practices: photo on every card (08.10) ---------- */
/* wide cards: the photo fills the card (gradient from ::before) */
.home26 .h26-card--wide .h26-card__media { position: absolute; inset: 0; z-index: -2; }
.home26 .h26-card--wide .h26-card__img { position: static; width: 100%; height: 100%; object-fit: cover; }
.home26 .h26-card--wide::before {
  background: linear-gradient(100deg, rgba(12, 26, 26, .94) 0%, rgba(12, 26, 26, .78) 42%, rgba(12, 26, 26, .2) 100%);
}

/* regular cards: photo on top, icon chip overlapping its lower edge */
.home26 .h26-card:not(.h26-card--wide) { padding-top: 0; gap: 0; }
.home26 .h26-card:not(.h26-card--wide) .h26-card__media {
  position: relative; display: block; height: 176px; margin: 0 -28px; overflow: hidden;
}
.home26 .h26-card:not(.h26-card--wide) .h26-card__media::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(12, 26, 26, 0) 55%, rgba(12, 26, 26, .35) 100%);
}
.home26 .h26-card:not(.h26-card--wide) .h26-card__img {
  position: static; width: 100%; height: 100%; object-fit: cover; transition: transform .8s ease;
}
.home26 .h26-card:not(.h26-card--wide):hover .h26-card__img { transform: scale(1.06); }
.home26 .h26-card:not(.h26-card--wide) .h26-card__icon {
  position: relative; z-index: 1; margin: -26px 0 18px; background: #fff;
  box-shadow: 0 8px 20px -10px rgba(12, 26, 26, .45);
}
.home26 .h26-card:not(.h26-card--wide) .h26-card__body { margin-top: 0; padding-bottom: 2px; }
/* the arrow sits on the photo now */
.home26 .h26-card:not(.h26-card--wide) .h26-card__arrow {
  z-index: 1; border-color: rgba(255, 255, 255, .35); color: #fff;
  background: rgba(12, 26, 26, .35); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.home26 .h26-card { min-height: 0; }
.home26 .h26-card--wide { min-height: 300px; }
@media (max-width: 575px) {
  .home26 .h26-card:not(.h26-card--wide) .h26-card__media { height: 200px; }
}

/* practice icons, 08.10: crisper chips */
.home26 .h26-card__icon svg { width: 27px; height: 27px; }
.home26 .h26-card:not(.h26-card--wide) .h26-card__icon { border-radius: 16px; color: var(--h26-gold-ink); }
.home26 .h26-card--wide .h26-card__icon {
  border: 1px solid rgba(216, 154, 38, .4); background: rgba(12, 26, 26, .55);
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); color: #E8AE45;
}
.home26 .h26-card:hover .h26-card__icon { color: var(--h26-gold); }

/* Bug fix 08.10: the theme's scroll reveal (GSAP, inline transform) slid each
   column up by 50px with its own delay, and the card's CSS transform transition
   stretched that out, so cards sat at different heights and overlapped while
   scrolling. Cards now only fade in; the hover lift uses `translate`, which
   doesn't fight GSAP's `transform`. */
.home26 .h26-bento > .h26-card {
  transform: none !important;
  transition: translate .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.home26 .h26-bento > .h26-card:hover { translate: 0 -4px; }
.home26 .h26-bento > .h26-card--cta:hover { translate: none; }

/* ---------- about, 08.10: team photo, frame tied to the photo ---------- */
.home26 .h26-about { grid-template-columns: 1.1fr 1fr; }
.home26 .h26-about__photo { position: relative; margin: 0; padding: 0 22px 46px 0; }
.home26 .h26-about__photo::after { content: none; }           /* old frame also wrapped the caption */
.home26 .h26-about__frame { position: relative; display: block; isolation: isolate; }
.home26 .h26-about__frame::before {
  content: ""; position: absolute; inset: 22px -22px -22px 22px; z-index: -1;
  border: 1px solid rgba(148, 101, 15, .45); border-radius: 26px;
}
.home26 .h26-about__frame img {
  display: block; width: 100%; height: auto; aspect-ratio: 900 / 675; object-fit: cover;
  border-radius: 26px; box-shadow: 0 30px 60px -34px rgba(12, 26, 26, .55);
}
.home26 .h26-about__photo .h26-about__caption {
  position: absolute; left: 16px; top: 16px; margin: 0; padding: 8px 14px; border-radius: 100px;
  background: rgba(12, 26, 26, .55); border: 1px solid rgba(255, 255, 255, .14);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  font-size: 13px; font-weight: 600; color: #F4EFE6;
}
.home26 .h26-about__place {
  position: absolute; right: 0; bottom: 0; z-index: 1;
  display: flex; align-items: center; gap: 14px; max-width: 340px; padding: 16px 20px 16px 16px; border-radius: 20px;
  background: #fff; color: var(--h26-text); text-decoration: none;
  box-shadow: 0 24px 48px -22px rgba(12, 26, 26, .45);
  transition: translate .3s ease, box-shadow .3s ease;
}
.home26 .h26-about__place:hover { translate: 0 -3px; color: var(--h26-text); box-shadow: 0 30px 56px -22px rgba(12, 26, 26, .55); }
.home26 .h26-about__place-icon {
  flex: none; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px;
  border-radius: 14px; background: var(--h26-ink); color: var(--h26-gold);
}
.home26 .h26-about__place-icon svg { width: 24px; height: 24px; }
.home26 .h26-about__place-text { display: flex; flex-direction: column; gap: 3px; line-height: 1.3; }
.home26 .h26-about__place-text strong { font-size: 15px; font-weight: 700; }
.home26 .h26-about__place-text small { font-size: 13px; font-weight: 600; color: var(--h26-gold-ink); }
.home26 .h26-about__text .h26-title { font-size: clamp(32px, 3.4vw, 48px); line-height: 1.1; }

@media (max-width: 991px) {
  .home26 .h26-about { grid-template-columns: 1fr; }
}
@media (max-width: 575px) {
  .home26 .h26-about__photo { padding: 0 0 0 0; }
  .home26 .h26-about__frame::before { inset: 12px -8px -10px 12px; }
  .home26 .h26-about__place { position: relative; margin-top: 26px; max-width: none; }
  .home26 .h26-about__photo .h26-about__caption { font-size: 12px; left: 10px; top: 10px; }
}

/* ---------- clients, 08.10: marquee instead of boxed grid ---------- */
/* Most logos are small rasters inside 200x120 SVGs, so they are shown at a
   modest height, without boxes that exposed their low resolution. */
.home26 .h26-clients { padding-top: 48px; }
.home26 .h26-clients__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px 32px; flex-wrap: wrap; margin-bottom: 28px; }
.home26 .h26-clients__title { margin: 0; text-align: left; }
.home26 .h26-clients__text { margin: 0; max-width: 520px; font-size: 15px; color: var(--h26-muted); }
.home26 .h26-marquee {
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}
.home26 .h26-marquee__track { display: flex; width: max-content; background: var(--h26-paper); animation: h26Marquee 45s linear infinite; } /* backdrop for multiply: the mask isolates the strip */
.home26 .h26-marquee:hover .h26-marquee__track { animation-play-state: paused; }
.home26 .h26-marquee__list { display: flex; align-items: center; gap: 56px; margin: 0; padding: 0 28px; list-style: none; }
.home26 .h26-marquee__list li { flex: none; }
.home26 .h26-marquee__list img {
  display: block; width: auto; height: 84px;
  filter: grayscale(1) contrast(1.05); opacity: .62; mix-blend-mode: multiply;
  transition: filter .3s ease, opacity .3s ease;
}
.home26 .h26-marquee__list img:hover { filter: none; opacity: 1; }
@keyframes h26Marquee { to { transform: translateX(-50%); } }
@media (max-width: 575px) {
  .home26 .h26-marquee__list { gap: 32px; padding: 0 16px; }
  .home26 .h26-marquee__list img { height: 64px; }
}
@media (prefers-reduced-motion: reduce) {
  .home26 .h26-marquee { -webkit-mask-image: none; mask-image: none; }
  .home26 .h26-marquee__track { animation: none; width: auto; }
  .home26 .h26-marquee__list { flex-wrap: wrap; justify-content: center; }
  .home26 .h26-marquee__list[aria-hidden] { display: none; }
}

/* ---------- blog strip on the home page, 08.10 ---------- */
.home26 .blog-strip .related-services__head { align-items: flex-end; margin-bottom: clamp(32px, 4vw, 48px); }
.home26 .blog-strip .related-services__title {
  margin: 0; font-family: var(--font-family-cormorant); font-weight: 500; font-style: normal;
  font-size: clamp(36px, 4.6vw, 60px); line-height: 1.05; color: #fff;
}
.home26 .blog-strip .blog-card__media { position: relative; aspect-ratio: 16 / 10; }
.home26 .blog-strip .blog-card__media::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(12, 26, 26, 0) 60%, rgba(12, 26, 26, .55) 100%);
}
.home26 .blog-strip .blog-card__meta { font-size: 13px; letter-spacing: .02em; }
.home26 .blog-strip .blog-card__text { font-size: 15px; color: #A9B8B6; }

/* ---------- FAQ, 08.10: side card, numbered items, smooth open ---------- */
.home26 .h26-faq { grid-template-columns: .9fr 1.4fr; }
.home26 .h26-faq__head { gap: 0; }
.home26 .h26-faq__head .h26-title { margin-bottom: 18px; }
.home26 .h26-faq__lead { margin: 0 0 32px; max-width: 380px; font-size: 16px; line-height: 1.65; color: var(--h26-muted); }

.home26 .h26-faq__ask {
  width: 100%; max-width: 420px; padding: 26px 26px 24px; border-radius: 22px; color: #fff;
  background: radial-gradient(120% 140% at 100% 0%, rgba(216, 154, 38, .2) 0%, rgba(216, 154, 38, 0) 60%), var(--h26-ink);
  box-shadow: 0 30px 60px -36px rgba(12, 26, 26, .7);
}
.home26 .h26-faq__ask-title {
  display: flex; align-items: center; gap: 10px; margin: 0 0 8px;
  font-family: var(--font-family-cormorant); font-size: 25px; font-weight: 500; line-height: 1.2;
}
.home26 .h26-faq__ask-title i {
  flex: none; width: 8px; height: 8px; border-radius: 50%; background: #3DD68C; box-shadow: 0 0 0 4px rgba(61, 214, 140, .18);
}
.home26 .h26-faq__ask-text { margin: 0 0 20px; font-size: 14.5px; line-height: 1.6; color: #A9B8B6; }
.home26 .h26-faq__ask-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.home26 .h26-faq__ask-actions .h26-btn { padding: 14px 22px; }
.home26 .h26-faq__ask-actions .h26-btn svg { width: 18px; height: 18px; }
.home26 .h26-faq__tg { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; color: #fff; text-decoration: none; }
.home26 .h26-faq__tg:hover { color: var(--h26-gold); }

/* items */
.home26 .h26-faq__list { border-top: 0; display: grid; gap: 10px; }
.home26 .h26-faq__item {
  border: 1px solid var(--h26-line-paper); border-bottom: 1px solid var(--h26-line-paper); border-radius: 18px;
  background: rgba(255, 255, 255, .35); transition: background .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.home26 .h26-faq__item[open] { background: #fff; border-color: transparent; box-shadow: 0 22px 44px -30px rgba(12, 26, 26, .45); }
.home26 .h26-faq__item summary {
  display: flex; align-items: baseline; gap: 18px; padding: 22px 70px 22px 24px; font-size: 23px;
}
.home26 .h26-faq__item summary::after { right: 20px; }
.home26 .h26-faq__num {
  flex: none; font-family: var(--font-family-manrope); font-size: 13px; font-weight: 700; letter-spacing: .08em;
  color: var(--h26-gold-ink);
}
.home26 .h26-faq__a p { margin: 0; padding: 0 70px 24px 59px; font-size: 16px; line-height: 1.7; color: #39443F; }

/* smooth open/close where supported (Chromium 131+); elsewhere it just snaps */
@supports (interpolate-size: allow-keywords) {
  .home26 .h26-faq { interpolate-size: allow-keywords; }
  .home26 .h26-faq__item::details-content {
    height: 0; overflow: clip; transition: height .35s ease, content-visibility .35s allow-discrete;
  }
  .home26 .h26-faq__item[open]::details-content { height: auto; }
}

@media (max-width: 991px) {
  .home26 .h26-faq { grid-template-columns: 1fr; }
  .home26 .h26-faq__ask { max-width: none; }
}
@media (max-width: 575px) {
  .home26 .h26-faq__item summary { gap: 12px; padding: 18px 58px 18px 18px; font-size: 20px; }
  .home26 .h26-faq__item summary::after { right: 14px; }
  .home26 .h26-faq__a p { padding: 0 18px 20px 18px; }
}
/* the theme forces the text font on every span/p — keep heading font and colour */
.home26 .h26-faq__q { font-family: inherit; font-weight: inherit; }
.home26 .h26-faq__ask .h26-faq__ask-title { color: #fff; }

/* ---------- lead form, 08.10: facts + contacts left, form panel right ---------- */
.home26 .h26-cta__box { grid-template-columns: 1fr 1fr; align-items: stretch; }
.home26 .h26-cta__intro { display: flex; flex-direction: column; justify-content: center; }
.home26 .h26-cta__intro .h26-title { margin-bottom: 26px; }
.home26 .h26-cta__points { display: grid; gap: 12px; margin: 0 0 30px; padding: 0; list-style: none; }
.home26 .h26-cta__points li { position: relative; padding-left: 32px; font-size: 16px; font-weight: 600; color: #E4ECEA; }
.home26 .h26-cta__points li::before {
  content: ""; position: absolute; left: 0; top: 1px; width: 22px; height: 22px; border-radius: 50%;
  background: rgba(216, 154, 38, .16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23D89A26' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 12px no-repeat;
}
.home26 .h26-cta__intro .h26-cta__or { margin: 0 0 16px; font-size: 15px; color: #A3B3B2; }
.home26 .h26-cta__contacts { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 22px; }
.home26 .h26-cta__msg { display: flex; gap: 8px; }
.home26 .h26-cta__msg a {
  display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .16); transition: border-color .25s ease, background .25s ease;
}
.home26 .h26-cta__msg a:hover { border-color: var(--h26-gold); background: rgba(216, 154, 38, .1); }

.home26 .h26-cta__panel {
  padding: clamp(24px, 3vw, 36px); border-radius: 22px;
  background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .1);
}
.home26 .h26-cta__panel .h26-cta__panel-title {
  margin: 0 0 6px; font-family: var(--font-family-cormorant); font-size: 28px; font-weight: 500; color: #fff;
}
.home26 .h26-cta__panel .h26-cta__panel-text { display: flex; align-items: center; gap: 10px; margin: 0 0 22px; font-size: 15px; color: #A9B8B6; }
.home26 .h26-cta__panel-text i {
  flex: none; width: 8px; height: 8px; border-radius: 50%; background: #3DD68C; box-shadow: 0 0 0 4px rgba(61, 214, 140, .16);
}
/* the shared form: stack the two fields, labels come from placeholders */
.home26 .h26-cta__panel .form-wrap .row > .col-md-6 { flex: 0 0 100%; max-width: 100%; }
.home26 .h26-cta__panel .h26-cta__consent { margin: 14px 0 0; font-size: 13px; line-height: 1.5; color: #A3B3B2; }
.home26 .h26-cta__consent a { color: #E4ECEA; text-decoration: underline; text-underline-offset: 3px; }
.home26 .h26-cta__consent a:hover { color: var(--h26-gold); }

@media (max-width: 991px) {
  .home26 .h26-cta__box { grid-template-columns: 1fr; }
}

/* ---------- inner page head (services hub etc.), 08.10 ----------
   Top padding = header (132 / 90 / 72) + #wrapper shift (28 / 0 / 18) + air. */
.home26 .h26-page-hero {
  position: relative; overflow: hidden; padding: 210px 0 clamp(56px, 7vw, 96px); color: #fff;
  background:
    radial-gradient(60% 90% at 90% 0%, rgba(216, 154, 38, .16) 0%, rgba(216, 154, 38, 0) 60%),
    var(--h26-ink);
}
.home26 .h26-page-hero::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image: linear-gradient(90deg, rgba(255, 255, 255, .035) 1px, transparent 1px);
  background-size: calc(100% / 6) 100%;
  -webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 90%); mask-image: linear-gradient(180deg, #000 0%, transparent 90%);
}
.home26 .h26-page-hero__inner { position: relative; z-index: 1; max-width: 760px; }
.home26 .h26-page-hero__title {
  margin: 0 0 20px; font-family: var(--font-family-cormorant); font-weight: 500; font-style: italic;
  font-size: clamp(48px, 6.4vw, 92px); line-height: 1; letter-spacing: -.01em; color: #fff;
}
.home26 .h26-page-hero__lead { max-width: 560px; margin: 0 0 32px; font-size: 18px; line-height: 1.6; color: #B4C2C0; }
.home26 .h26-page-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; }
.home26 .h26-page-hero__phone { display: flex; flex-direction: column; line-height: 1.15; color: #fff; text-decoration: none; }
.home26 .h26-page-hero__phone small { font-size: 12px; color: #A3B3B2; }
.home26 .h26-page-hero__phone strong { font-size: 20px; font-weight: 800; }
.home26 .h26-page-hero__phone:hover { color: var(--h26-gold); }

/* services hub grid: 8 equal cards */
.home26 .h26-practices-page { padding-top: clamp(56px, 6vw, 88px); }
.home26 .h26-bento--even .h26-card { min-height: 0; }
.home26 .h26-bento--even .h26-card__body { gap: 8px; }
.home26 .h26-card__num { font-size: 12px; font-weight: 700; letter-spacing: .1em; color: var(--h26-gold-ink); }
.home26 .h26-bento--even .h26-card__title { margin: 0; font-size: 24px; font-weight: 500; line-height: 1.15; color: var(--h26-text); }
.home26 .h26-card__more {
  display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; font-size: 14px; font-weight: 700; color: var(--h26-gold-ink);
}
.home26 .h26-card__more svg { width: 16px; height: 16px; transition: translate .25s ease; }
.home26 .h26-card:hover .h26-card__more svg { translate: 4px 0; }

@media (max-width: 991px) { .home26 .h26-page-hero { padding-top: 140px; } }
@media (max-width: 767px) { .home26 .h26-page-hero { padding-top: 128px; } }
/* the library photo from the home hero, faded in on the right */
.home26 .h26-page-hero::before {
  content: ""; position: absolute; inset: 0 0 0 38%; pointer-events: none; opacity: .55;
  background: url("../images/banners/hero-library.webp") 70% center / cover no-repeat;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 45%, #000 80%, transparent 100%), linear-gradient(0deg, transparent 0%, #000 30%);
  -webkit-mask-composite: source-in; mask-image: linear-gradient(90deg, transparent 0%, #000 45%, #000 80%, transparent 100%), linear-gradient(0deg, transparent 0%, #000 30%);
  mask-composite: intersect;
}
@media (max-width: 767px) { .home26 .h26-page-hero::before { inset: 0; opacity: .25; } }

/* ---------- service page first screen, 08.10 (components/h26/service-hero) ----------
   Goal: the ad visitor sees relevance, the offer and a call button without
   scrolling (Clarity: 28% scroll depth from Google). Top padding = header +
   #wrapper shift + air. */
.home26 .h26-svc {
  position: relative; overflow: hidden; padding: 176px 0 clamp(40px, 5vw, 64px); color: #fff;
  background: radial-gradient(55% 80% at 95% 10%, rgba(216, 154, 38, .16) 0%, rgba(216, 154, 38, 0) 60%), var(--h26-ink);
}
.home26 .h26-svc__grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: clamp(28px, 4vw, 64px); align-items: center; }
.home26 .h26-svc__eyebrow {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin: 0 0 16px;
  font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--h26-gold);
}
.home26 .h26-svc__eyebrow span { color: inherit; }
.home26 .h26-svc__live { display: inline-flex; align-items: center; gap: 8px; letter-spacing: .04em; text-transform: none; font-weight: 600; }
.home26 .h26-svc__eyebrow .h26-svc__live { color: #B4C2C0; }
.home26 .h26-svc__live i { width: 7px; height: 7px; border-radius: 50%; background: #3DD68C; box-shadow: 0 0 0 4px rgba(61, 214, 140, .16); }
.home26 .h26-svc__title {
  margin: 0 0 12px; font-family: var(--font-family-cormorant); font-weight: 500; font-style: normal;
  font-size: clamp(36px, 4.2vw, 60px); line-height: 1.05; letter-spacing: -.01em; color: #fff;
}
.home26 .h26-svc .h26-svc__promise { margin: 0 0 22px; max-width: 600px; font-family: var(--font-family-cormorant); font-style: italic; font-size: clamp(20px, 1.8vw, 26px); line-height: 1.3; color: #E8AE45; }

.home26 .h26-svc__situations { margin: 0 0 22px; }
.home26 .h26-svc__situations-label { display: block; margin-bottom: 10px; font-size: 13px; font-weight: 600; color: #A3B3B2; }
.home26 .h26-svc__situations ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.home26 .h26-svc__situations li {
  padding: 8px 14px; border-radius: 100px; font-size: 14px; font-weight: 600; color: #E4ECEA;
  background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .12);
}
.home26 .h26-svc__situations li::before { content: none; }

.home26 .h26-svc .h26-svc__offer { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 0 0 24px; font-size: 15px; font-weight: 700; color: #fff; }
.home26 .h26-svc__offer span { display: inline-flex; align-items: center; gap: 8px; color: #fff; }
.home26 .h26-svc__offer b {
  display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 50%;
  background: var(--gradient-yellow); color: var(--h26-ink); font-size: 11px;
}

.home26 .h26-svc__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.home26 .h26-svc__call {
  display: inline-flex; align-items: center; gap: 12px; padding: 9px 28px 9px 9px; border-radius: 100px;
  background: var(--gradient-yellow); color: var(--h26-ink); text-decoration: none;
  box-shadow: 0 14px 40px -14px rgba(216, 154, 38, .65); transition: translate .25s ease, filter .25s ease;
}
.home26 .h26-svc__call:hover { color: var(--h26-ink); translate: 0 -2px; filter: brightness(1.05); }
.home26 .h26-svc__call-icon { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: var(--h26-ink); color: var(--h26-gold); }
.home26 .h26-svc__call-icon svg, .home26 .h26-svc__card-icon svg { width: 20px; height: 20px; }
.home26 .h26-svc__call-text { display: flex; flex-direction: column; line-height: 1.15; }
.home26 .h26-svc__call-text small { font-size: 12px; font-weight: 700; color: var(--h26-ink); }
.home26 .h26-svc__call-text strong { font-size: 20px; font-weight: 800; color: var(--h26-ink); }
.home26 .h26-svc__form { font-weight: 700; color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255, 255, 255, .4); padding-bottom: 2px; }
.home26 .h26-svc__form:hover { color: var(--h26-gold); border-color: var(--h26-gold); }

.home26 .h26-svc__messengers { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 18px; font-size: 14px; color: #A3B3B2; }
.home26 .h26-svc__messengers > span { color: #A3B3B2; }
.home26 .h26-svc__messengers a {
  display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border-radius: 100px; font-weight: 600; color: #E4ECEA;
  border: 1px solid rgba(255, 255, 255, .14); text-decoration: none; transition: border-color .25s ease;
}
.home26 .h26-svc__messengers a:hover { border-color: var(--h26-gold); color: #fff; }
.home26 .h26-svc__messengers img { width: 18px; height: 18px; }

.home26 .h26-svc__media { position: relative; padding: 0 0 28px 28px; }
.home26 .h26-svc__photo { position: relative; margin: 0; isolation: isolate; }
.home26 .h26-svc__photo::before { content: ""; position: absolute; inset: 18px -14px -14px 18px; z-index: -1; border: 1px solid rgba(216, 154, 38, .4); border-radius: 26px; }
.home26 .h26-svc__photo img {
  display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; max-height: calc(100vh - 300px); object-fit: cover;
  border-radius: 26px; box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .8);
}
.home26 .h26-svc__card {
  position: absolute; left: 0; bottom: 0; display: flex; align-items: center; gap: 12px; padding: 14px 20px 14px 14px; border-radius: 18px;
  background: rgba(18, 36, 36, .8); border: 1px solid rgba(255, 255, 255, .12); color: #fff; text-decoration: none;
  -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: 0 24px 48px -20px rgba(0, 0, 0, .7);
}
.home26 .h26-svc__card:hover { color: #fff; border-color: rgba(216, 154, 38, .55); }
.home26 .h26-svc__card-icon { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 14px; background: var(--gradient-yellow); color: var(--h26-ink); }
.home26 .h26-svc__card strong { display: flex; align-items: center; gap: 8px; font-size: 15px; color: #fff; }
.home26 .h26-svc__card strong i { width: 7px; height: 7px; border-radius: 50%; background: #3DD68C; box-shadow: 0 0 0 4px rgba(61, 214, 140, .16); }
.home26 .h26-svc__card small { display: block; font-size: 13px; color: #A9B8B6; }

.home26 .h26-svc__urgent {
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin-top: 28px; padding: 16px 22px; border-radius: 16px;
  background: rgba(216, 154, 38, .1); border: 1px solid rgba(216, 154, 38, .45); color: #F4EFE6; text-decoration: none; font-weight: 600;
}
.home26 .h26-svc__urgent span { color: #F4EFE6; }
.home26 .h26-svc__urgent:hover { color: #fff; background: rgba(216, 154, 38, .16); }
.home26 .h26-svc__urgent .h26-svc__urgent-icon {
  display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%;
  background: var(--gradient-yellow); color: var(--h26-ink); font-weight: 900;
}
.home26 .h26-svc__urgent strong { margin-left: auto; font-size: 18px; color: var(--h26-gold); white-space: nowrap; }

/* body text under the first screen: no extra top gap from the old template */
.h26-svc-body { padding-top: clamp(40px, 5vw, 72px); }

@media (max-width: 991px) {
  .home26 .h26-svc { padding-top: 120px; }
  .home26 .h26-svc__grid { grid-template-columns: minmax(0, 1fr); } /* plain 1fr grew to the nowrap chip row */
  .home26 .h26-svc__media { max-width: 560px; }
}
/* phones: everything that sells must fit before the first scroll */
@media (max-width: 767px) {
  .home26 .h26-svc { padding: 100px 0 32px; }
  .home26 .h26-svc__eyebrow { margin-bottom: 10px; font-size: 11px; }
  .home26 .h26-svc__title { font-size: 31px; margin-bottom: 8px; }
  .home26 .h26-svc .h26-svc__promise { font-size: 18px; margin-bottom: 14px; }
  .home26 .h26-svc__situations { margin-bottom: 14px; }
  .home26 .h26-svc__situations-label { display: none; }
  /* wrap, not a swipe row: half the chips were off screen and nobody swipes them (08.10) */
  .home26 .h26-svc__situations ul { gap: 6px; }
  .home26 .h26-svc__situations li { font-size: 12.5px; line-height: 1.25; padding: 6px 9px; }
  .home26 .h26-svc .h26-svc__offer { margin-bottom: 16px; font-size: 14px; gap: 6px 14px; }
  .home26 .h26-svc__actions { flex-direction: column; align-items: stretch; }
  .home26 .h26-svc__call { justify-content: center; }
  .home26 .h26-svc__form { align-self: center; }
  .home26 .h26-svc__media { display: none; }
  .home26 .h26-svc__urgent { margin-top: 20px; font-size: 14px; }
  .home26 .h26-svc__urgent strong { margin-left: 0; }
}

/* ---------- service page body as blocks, 08.10 (components/h26/service-body) ---------- */
.home26.h26-sb .h26-section { padding: clamp(64px, 8vw, 112px) 0; }

/* shared prose inside the blocks (admin HTML) */
.home26 .h26-sb-prose p { margin: 0 0 14px; font-size: 16px; line-height: 1.7; }
.home26 .h26-sb-prose p:last-child { margin-bottom: 0; }
.home26 .h26-sb-prose ul, .home26 .h26-sb-prose ol { display: grid; gap: 10px; margin: 0 0 16px; padding: 0; list-style: none; }
.home26 .h26-sb-prose li { position: relative; padding-left: 28px; font-size: 15.5px; line-height: 1.55; }
.home26 .h26-sb-prose li::before {
  content: ""; position: absolute; left: 0; top: 3px; width: 18px; height: 18px; border-radius: 50%;
  background: rgba(216, 154, 38, .16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B07A16' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 10px no-repeat;
}
.home26 .h26-paper .h26-sb-prose p, .home26 .h26-paper .h26-sb-prose li { color: #39443F; }
.home26 .h26-dark .h26-sb-prose p, .home26 .h26-dark .h26-sb-prose li { color: #C3CFCD; }
.home26 .h26-sb-prose strong { color: inherit; font-weight: 700; }

/* intro: title left, text right */
.home26 .h26-sb-intro__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.home26 .h26-sb-intro .h26-sb-prose p { font-size: 18px; line-height: 1.75; }
.home26 .h26-sb-intro .h26-sb-prose p:first-child::first-line { font-weight: 600; color: var(--h26-text); }

.home26 .h26-sb-lead { max-width: 760px; margin: -12px 0 28px; }

/* one group: list items become tiles */
.home26 .h26-sb-tiles > ul, .home26 .h26-sb-tiles > ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.home26 .h26-sb-tiles li {
  position: relative; padding: 20px 20px 20px 58px; border-radius: 18px; font-size: 15.5px; line-height: 1.5; font-weight: 500;
}
.home26 .h26-sb-tiles li::before {
  content: ""; position: absolute; left: 18px; top: 20px; width: 26px; height: 26px; border-radius: 50%;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230C1A1A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 13px no-repeat, var(--gradient-yellow); /* image first, gradient as a second layer */
}
.home26 .h26-dark .h26-sb-tiles li { color: #E4ECEA; background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .09); }
.home26 .h26-paper .h26-sb-tiles li { color: var(--h26-text); background: #fff; border: 1px solid var(--h26-line-paper); }
.home26 .h26-sb-tiles > p { margin: 18px 0 0; }

/* several groups: numbered cards */
.home26 .h26-sb-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.home26 .h26-sb-card { padding: clamp(22px, 2.4vw, 32px); border-radius: 22px; }
.home26 .h26-dark .h26-sb-card { background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .09); }
.home26 .h26-paper .h26-sb-card { background: #fff; border: 1px solid var(--h26-line-paper); box-shadow: 0 18px 40px -34px rgba(12, 26, 26, .5); }
.home26 .h26-sb-card__num { display: block; margin-bottom: 10px; font-size: 13px; font-weight: 700; letter-spacing: .1em; color: var(--h26-gold-ink); }
.home26 .h26-dark .h26-sb-card__num { color: var(--h26-gold); }
.home26 .h26-sb-card__title {
  margin: 0 0 16px; font-family: var(--font-family-cormorant); font-weight: 500; font-style: normal;
  font-size: clamp(22px, 1.9vw, 27px); line-height: 1.2;
}
.home26 .h26-dark .h26-sb-card__title { color: #fff; }
.home26 .h26-paper .h26-sb-card__title { color: var(--h26-text); }
.home26 .h26-sb-card .h26-sb-prose ul:last-child, .home26 .h26-sb-card .h26-sb-prose p:last-child { margin-bottom: 0; }
/* a note paragraph after a list inside a card */
.home26 .h26-sb-card .h26-sb-prose ul + p {
  margin-top: 4px; padding: 12px 14px; border-radius: 12px; font-size: 14.5px; font-style: italic;
}
.home26 .h26-paper .h26-sb-card .h26-sb-prose ul + p { background: var(--h26-paper); }
.home26 .h26-dark .h26-sb-card .h26-sb-prose ul + p { background: rgba(216, 154, 38, .08); color: #E4ECEA; }

@media (max-width: 1199px) {
  .home26 .h26-sb-tiles > ul, .home26 .h26-sb-tiles > ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .home26 .h26-sb-intro__grid, .home26 .h26-sb-cards { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 575px) {
  .home26 .h26-sb-tiles > ul, .home26 .h26-sb-tiles > ol { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .home26 .h26-sb-tiles li { padding: 16px 16px 16px 52px; }
  .home26 .h26-sb-tiles li::before { left: 16px; top: 16px; }
  .home26 .h26-sb-intro .h26-sb-prose p { font-size: 16px; }
}

/* block fixes: the theme makes <li> bold; lighter lead on dark bands; a lone last card spans the row */
.home26 .h26-sb-prose li { font-weight: 400; }
.home26 .h26-sb-tiles li { font-weight: 500; }
.home26 .h26-dark .h26-sb-band .h26-lead, .home26 .h26-sb-band.h26-dark .h26-lead { color: #A9B8B6; font-size: 17px; }
.home26 .h26-sb-cards > .h26-sb-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
@media (min-width: 992px) {
  .home26 .h26-sb-cards > .h26-sb-card:last-child:nth-child(odd) .h26-sb-prose ul { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
}

/* ---------- related services, 08.10 (components/related-services) ---------- */
.home26 .h26-related__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.home26 .h26-related__card {
  position: relative; display: flex; flex-direction: column; overflow: hidden; border-radius: 20px; text-decoration: none;
  background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .09); color: #fff;
  transform: none !important; /* scroll reveal fades only, see the bento fix */
  transition: translate .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.home26 .h26-related__card:hover { translate: 0 -4px; color: #fff; border-color: rgba(216, 154, 38, .55); box-shadow: 0 28px 56px -32px rgba(0, 0, 0, .8); }
.home26 .h26-related__media { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; }
.home26 .h26-related__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(12, 26, 26, 0) 50%, rgba(12, 26, 26, .6) 100%); }
.home26 .h26-related__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .8s ease; }
.home26 .h26-related__card:hover .h26-related__media img { transform: scale(1.06); }
.home26 .h26-related__body { position: relative; display: flex; align-items: center; gap: 14px; padding: 18px 18px 20px; flex: 1; }
.home26 .h26-related__icon {
  flex: none; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-top: -40px;
  border-radius: 14px; background: var(--h26-ink); border: 1px solid rgba(216, 154, 38, .45); color: var(--h26-gold);
  align-self: flex-start; position: relative; z-index: 1;
}
.home26 .h26-related__icon svg { width: 23px; height: 23px; }
.home26 .h26-related__title { flex: 1; font-family: var(--font-family-cormorant); font-size: 20px; font-weight: 500; line-height: 1.2; color: #fff; }
.home26 .h26-related__arrow {
  flex: none; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .2); color: #fff; transition: background .3s ease, color .3s ease, border-color .3s ease, rotate .3s ease;
}
.home26 .h26-related__arrow svg { width: 16px; height: 16px; }
.home26 .h26-related__card:hover .h26-related__arrow { background: var(--h26-gold); border-color: var(--h26-gold); color: var(--h26-ink); rotate: 45deg; }

.home26 .h26-related__card--cta {
  justify-content: center; gap: 10px; padding: 26px;
  background: radial-gradient(120% 140% at 100% 0%, rgba(216, 154, 38, .25) 0%, rgba(216, 154, 38, 0) 60%), #122424;
  border-color: rgba(216, 154, 38, .35);
}
.home26 .h26-related__cta-title { font-family: var(--font-family-cormorant); font-size: 24px; font-weight: 500; line-height: 1.15; color: #fff; }
.home26 .h26-related__cta-text { font-size: 14px; line-height: 1.55; color: #A9B8B6; }
.home26 .h26-related__cta-phone {
  align-self: flex-start; margin-top: 8px; padding: 10px 18px; border-radius: 100px; font-weight: 800;
  background: var(--gradient-yellow); color: var(--h26-ink);
}

@media (max-width: 1199px) { .home26 .h26-related__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) { .home26 .h26-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .home26 .h26-related__title { font-size: 17px; } .home26 .h26-related__arrow { display: none; } }
@media (max-width: 420px) { .home26 .h26-related__grid { grid-template-columns: minmax(0, 1fr); } }

/* ---------- articles strip with one post: a wide horizontal card ---------- */
@media (min-width: 768px) {
  .blog-strip--single .blog-card { flex-direction: row; }
  .blog-strip--single .blog-card__media { flex: 0 0 52%; aspect-ratio: auto; min-height: 340px; }
  .blog-strip--single .blog-card__body { justify-content: center; padding: clamp(28px, 4vw, 52px); }
  .blog-strip--single .blog-card__title { font-size: clamp(26px, 2.4vw, 34px); }
  .blog-strip--single .blog-card__text { font-size: 16.5px; }
}
/* posts strip outside the home page: same heading style as the other blocks */
.home26 .blog-strip .related-services__head > div .related-services__title { margin-top: 0; }

/* ---------- about page, 08.10 (pages/about.blade.php) ---------- */
.home26 .h26-about-hero {
  position: relative; overflow: hidden; padding: 190px 0 clamp(56px, 6vw, 88px); color: #fff;
  background: radial-gradient(55% 80% at 95% 10%, rgba(216, 154, 38, .16) 0%, rgba(216, 154, 38, 0) 60%), var(--h26-ink);
}
.home26 .h26-about-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 72px); align-items: center; }
.home26 .h26-about-hero .h26-page-hero__title { font-size: clamp(40px, 4.6vw, 68px); line-height: 1.04; margin-bottom: 22px; }
.home26 .h26-about-hero__lead p { margin: 0 0 14px; max-width: 580px; font-size: 17px; line-height: 1.7; color: #B4C2C0; }
.home26 .h26-about-hero__lead:first-of-type p { font-size: 19px; color: #E4ECEA; }
.home26 .h26-about-hero .h26-page-hero__actions { margin-top: 26px; }
.home26 .h26-about-hero__photo { position: relative; margin: 0; isolation: isolate; }
.home26 .h26-about-hero__photo::before { content: ""; position: absolute; inset: 20px -16px -16px 20px; z-index: -1; border: 1px solid rgba(216, 154, 38, .4); border-radius: 26px; }
.home26 .h26-about-hero__photo img { display: block; width: 100%; height: auto; aspect-ratio: 1600 / 801; object-fit: cover; border-radius: 26px; box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .8); }
.home26 .h26-about-hero__photo figcaption { margin-top: 26px; font-size: 14px; color: #A3B3B2; }

.home26 .h26-about-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.home26 .h26-about-card {
  display: flex; gap: 18px; padding: clamp(22px, 2.4vw, 30px); border-radius: 20px;
  background: #fff; border: 1px solid var(--h26-line-paper); box-shadow: 0 18px 40px -34px rgba(12, 26, 26, .5);
}
.home26 .h26-about-card__num { flex: none; font-family: var(--font-family-cormorant); font-size: 30px; font-style: italic; line-height: 1; color: var(--h26-gold-ink); }
.home26 .h26-about-card__text p { margin: 0; font-size: 16px; line-height: 1.7; color: #39443F; }
.home26 .h26-about-cards > .h26-about-card:last-child:nth-child(odd) { grid-column: 1 / -1; }

.home26 .h26-mission { text-align: center; }
.home26 .h26-mission__inner { max-width: 920px; margin: 0 auto; }
.home26 .h26-mission .h26-eyebrow { justify-content: center; }
.home26 .h26-mission__quote {
  position: relative; margin: 10px 0 24px; padding: 0; border: 0;
  font-family: var(--font-family-cormorant); font-style: italic; font-weight: 400;
  font-size: clamp(26px, 3vw, 42px); line-height: 1.3; color: #fff;
}
.home26 .h26-mission__quote::before {
  content: "“"; display: block; height: .55em; font-size: 2.6em; line-height: 1; color: var(--h26-gold);
}
.home26 .h26-mission__sign { margin: 0; font-size: 15px; font-weight: 600; color: var(--h26-gold); }

@media (max-width: 991px) {
  .home26 .h26-about-hero { padding-top: 130px; }
  .home26 .h26-about-hero__grid, .home26 .h26-about-cards { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
  .home26 .h26-about-hero { padding-top: 110px; }
  .home26 .h26-about-hero__lead:first-of-type p { font-size: 17px; }
  .home26 .h26-about-hero__photo::before { inset: 12px -8px -10px 12px; }
}
/* caption as a chip on the photo, so the gold frame only wraps the image */
.home26 .h26-about-hero__photo figcaption {
  position: absolute; left: 14px; top: 14px; margin: 0; padding: 7px 13px; border-radius: 100px;
  background: rgba(12, 26, 26, .6); border: 1px solid rgba(255, 255, 255, .14);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); font-size: 12.5px; font-weight: 600; color: #F4EFE6;
}

/* about hero, 08.10 fix: the caption covered a face — it goes under the photo,
   and the gold frame wraps only the image */
.home26 .h26-about-hero__photo::before { content: none; }
.home26 .h26-about-hero__frame { position: relative; display: block; isolation: isolate; }
.home26 .h26-about-hero__frame::before { content: ""; position: absolute; inset: 20px -16px -16px 20px; z-index: -1; border: 1px solid rgba(216, 154, 38, .4); border-radius: 26px; }
.home26 .h26-about-hero__photo figcaption {
  position: static; margin: 32px 0 0; padding: 0; background: none; border: 0;
  -webkit-backdrop-filter: none; backdrop-filter: none; font-size: 14px; font-weight: 500; color: #8B9F9F;
}
@media (max-width: 767px) { .home26 .h26-about-hero__frame::before { inset: 12px -8px -10px 12px; } .home26 .h26-about-hero__photo figcaption { margin-top: 22px; } }

/* ---------- blog index, 08.10 (blog/index.blade.php) ---------- */
.home26 .h26-blog { padding-top: clamp(48px, 6vw, 80px); }
.home26 .blog-featured { margin-bottom: 24px; }
@media (min-width: 768px) {
  .home26 .blog-featured .blog-card { flex-direction: row; }
  .home26 .blog-featured .blog-card__media { flex: 0 0 56%; aspect-ratio: auto; min-height: 380px; }
  .home26 .blog-featured .blog-card__body { justify-content: center; padding: clamp(28px, 4vw, 56px); }
  .home26 .blog-featured .blog-card__title { font-size: clamp(28px, 2.6vw, 38px); }
  .home26 .blog-featured .blog-card__text { font-size: 16.5px; }
}
.home26 .h26-blog .blog-card__media { position: relative; }
.home26 .h26-blog .blog-card__media::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(12, 26, 26, 0) 60%, rgba(12, 26, 26, .5) 100%);
}

/* ---------- contacts page, 08.10 (pages/contact-odessa.blade.php) ---------- */
.home26 .h26-contacts {
  position: relative; overflow: hidden; padding: 186px 0 clamp(56px, 6vw, 88px); color: #fff;
  background: radial-gradient(55% 80% at 95% 10%, rgba(216, 154, 38, .16) 0%, rgba(216, 154, 38, 0) 60%), var(--h26-ink);
}
.home26 .h26-contacts__head { max-width: 760px; margin-bottom: clamp(32px, 4vw, 48px); }
.home26 .h26-contacts .h26-page-hero__title { font-size: clamp(42px, 5vw, 72px); margin-bottom: 16px; }
.home26 .h26-contacts .h26-page-hero__lead { margin-bottom: 22px; }
.home26 .h26-contacts .h26-svc__offer { margin-bottom: 0; }

.home26 .h26-contacts__cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.home26 .h26-ccard {
  display: flex; flex-direction: column; gap: 8px; padding: 24px; border-radius: 22px; text-decoration: none; color: #fff;
  background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .1);
  transform: none !important; transition: translate .3s ease, border-color .3s ease, background .3s ease;
}
/* background-color only: the shorthand wiped the phone card's gold gradient on hover (08.10) */
.home26 a.h26-ccard:hover { translate: 0 -4px; color: #fff; border-color: rgba(216, 154, 38, .55); background-color: rgba(255, 255, 255, .06); }
.home26 .h26-ccard__icon {
  display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; margin-bottom: 8px;
  border-radius: 15px; background: rgba(216, 154, 38, .14); color: var(--h26-gold);
}
.home26 .h26-ccard__icon svg { width: 24px; height: 24px; }
.home26 .h26-ccard__label { font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #A3B3B2; }
.home26 .h26-ccard__value { font-size: 22px; font-weight: 800; line-height: 1.25; color: #fff; }
.home26 .h26-ccard__value--sm { font-size: 17px; font-weight: 700; word-break: break-word; }
.home26 .h26-ccard__text { margin-top: auto; padding-top: 6px; font-size: 14px; line-height: 1.5; color: #A9B8B6; }
.home26 .h26-ccard__link { margin-top: auto; padding-top: 6px; font-size: 14px; font-weight: 700; color: var(--h26-gold); }

.home26 .h26-ccard--phone {
  background: radial-gradient(120% 140% at 100% 0%, rgba(255, 205, 112, .35) 0%, rgba(255, 205, 112, 0) 60%), linear-gradient(125deg, #D89A26 14%, #FFCD70 86%);
  border-color: transparent; color: var(--h26-ink);
}
.home26 a.h26-ccard--phone:hover { color: var(--h26-ink); border-color: transparent; background-color: transparent; filter: brightness(1.05); box-shadow: 0 24px 48px -24px rgba(216, 154, 38, .55); }
.home26 .h26-ccard--phone .h26-ccard__icon { background: var(--h26-ink); color: var(--h26-gold); }
.home26 .h26-ccard--phone .h26-ccard__label, .home26 .h26-ccard--phone .h26-ccard__text { color: rgba(12, 26, 26, .72); }
.home26 .h26-ccard--phone .h26-ccard__value { color: var(--h26-ink); font-size: 24px; }

.home26 .h26-ccard__msg { display: flex; flex-wrap: wrap; gap: 6px; }
.home26 .h26-ccard__msg a {
  display: inline-flex; align-items: center; gap: 6px; padding: 7px 11px; border-radius: 100px; font-size: 13.5px; font-weight: 700;
  color: #E4ECEA; text-decoration: none; border: 1px solid rgba(255, 255, 255, .16); transition: border-color .25s ease;
}
.home26 .h26-ccard__msg a:hover { border-color: var(--h26-gold); color: #fff; }

/* map */
.home26 .h26-map__frame { position: relative; overflow: hidden; border-radius: 26px; border: 1px solid var(--h26-line-paper); box-shadow: 0 30px 60px -40px rgba(12, 26, 26, .6); }
.home26 .h26-map__frame iframe { display: block; width: 100%; height: clamp(360px, 45vw, 520px); border: 0; filter: grayscale(.35) contrast(1.05); }
.home26 .h26-map__card {
  position: absolute; left: 20px; bottom: 20px; display: flex; flex-direction: column; gap: 4px; max-width: 320px;
  padding: 18px 22px; border-radius: 18px; background: var(--h26-ink); color: #fff; text-decoration: none;
  box-shadow: 0 24px 48px -20px rgba(0, 0, 0, .6);
}
.home26 .h26-map__card strong { font-family: var(--font-family-cormorant); font-size: 22px; font-weight: 500; color: #fff; }
.home26 .h26-map__card span { font-size: 14.5px; color: #C3CFCD; }
.home26 .h26-map__card em { font-style: normal; font-size: 14px; font-weight: 700; color: var(--h26-gold); }
.home26 .h26-map__card:hover { color: #fff; }

@media (max-width: 1199px) { .home26 .h26-contacts__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 991px) { .home26 .h26-contacts { padding-top: 130px; } }
@media (max-width: 767px) {
  .home26 .h26-contacts { padding-top: 108px; }
  .home26 .h26-contacts__cards { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .home26 .h26-ccard { padding: 20px; }
  .home26 .h26-map__card { position: static; max-width: none; border-radius: 0; }
}

/* ---------- mobile pass, 08.10 ---------- */
/* Practices on phones: eight tall photo cards in one column took ~2000px of
   scroll. Each card becomes a compact row (thumbnail, title, line, arrow). */
@media (max-width: 575px) {
  .home26 .h26-bento { gap: 10px; }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) {
    display: grid; grid-template-columns: 88px minmax(0, 1fr) 32px; align-items: center; gap: 14px;
    min-height: 0; padding: 10px 14px 10px 10px; border-radius: 18px;
  }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta)::before { display: none; }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__media {
    position: relative; inset: auto; z-index: 0; display: block; width: 88px; height: 88px; margin: 0;
    border-radius: 13px; overflow: hidden;
  }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__media::after { display: none; }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__img { width: 100%; height: 100%; object-fit: cover; }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__icon { display: none; }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__body { gap: 4px; margin: 0; padding: 0; }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__title { max-width: none; margin: 0; font-size: 20px; line-height: 1.12; }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__text {
    max-width: none; font-size: 13.5px; line-height: 1.45;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__more { display: none; }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__arrow {
    position: static; width: 32px; height: 32px; color: var(--h26-gold-ink);
    background: var(--h26-paper); border: 0; -webkit-backdrop-filter: none; backdrop-filter: none;
  }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta) .h26-card__arrow svg { width: 15px; height: 15px; }
  /* featured ones stay dark */
  .home26 .h26-bento > .h26-card--wide:not(.h26-card--cta) .h26-card__arrow { background: rgba(216, 154, 38, .16); color: var(--h26-gold); }
  .home26 .h26-bento > .h26-card--wide:not(.h26-card--cta) .h26-card__text { color: #C3CFCD; }
  .home26 .h26-bento > .h26-card:not(.h26-card--cta):hover { translate: none; }
}
@media (max-width: 575px) {
  .home26 .h26-section { padding: 60px 0; }
  .home26.h26-sb .h26-section { padding: 56px 0; }
  /* steps: number beside the text, a vertical timeline instead of four tall blocks */
  .home26 .h26-steps { row-gap: 0; }
  .home26 .h26-step {
    display: grid; grid-template-columns: 38px minmax(0, 1fr); column-gap: 10px; padding: 22px 0 22px;
  }
  .home26 .h26-step__num { grid-row: span 2; margin: 2px 0 0; font-size: 20px; }
  .home26 .h26-step__title { margin: 0 0 6px; font-size: 23px; line-height: 1.15; }
  .home26 .h26-step__text { font-size: 14.5px; line-height: 1.55; }
}
/* blog strip on phones: a swipe row (next card peeks) instead of three ~560px cards stacked */
@media (max-width: 767px) {
  .blog-strip:not(.blog-strip--single) .row.g-4 {
    flex-wrap: nowrap; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory;
    scrollbar-width: none; -webkit-overflow-scrolling: touch; padding-bottom: 6px;
  }
  .blog-strip:not(.blog-strip--single) .row.g-4::-webkit-scrollbar { display: none; }
  .blog-strip:not(.blog-strip--single) .row.g-4 > * { flex: 0 0 86%; max-width: 86%; scroll-snap-align: start; }
}
/* FAQ on phones and tablets: the questions first, the "ask us" card after them */
@media (max-width: 991px) {
  .home26 .h26-faq { display: flex; flex-direction: column; gap: 0; }
  .home26 .h26-faq__head { display: contents; }
  .home26 .h26-faq__list { order: 1; margin-top: 10px; }
  .home26 .h26-faq__ask { order: 2; margin-top: 24px; }
}
/* lead form on phones: one frame, not a box inside a box, so the fields get the width */
@media (max-width: 575px) {
  .home26 .h26-cta__box { gap: 28px; padding: 26px 18px 18px; border-radius: 22px; }
  .home26 .h26-cta__panel { padding: 20px 16px; border-radius: 18px; }
  .home26 .h26-faq__item p { padding-right: 0; }
}
/* about cards on phones: number above the text, so the paragraph gets the full width */
@media (max-width: 575px) {
  .home26 .h26-about-card { flex-direction: column; gap: 8px; padding: 20px; }
  .home26 .h26-about-card__num { font-size: 24px; }
  .home26 .h26-about-card__text p { font-size: 15px; line-height: 1.65; }
}
/* contact cards on phones: icon at the side, half the height */
@media (max-width: 575px) {
  .home26 .h26-ccard { display: grid; grid-template-columns: 44px minmax(0, 1fr); column-gap: 14px; row-gap: 4px; padding: 16px 18px; border-radius: 18px; }
  .home26 .h26-ccard > * { grid-column: 2; }
  .home26 .h26-ccard > .h26-ccard__icon { grid-column: 1; grid-row: 1 / span 4; align-self: start; width: 44px; height: 44px; margin: 0; border-radius: 13px; }
  .home26 .h26-ccard__icon svg { width: 21px; height: 21px; }
  .home26 .h26-ccard__text, .home26 .h26-ccard__link { margin-top: 2px; padding-top: 0; }
  .home26 .h26-ccard--phone .h26-ccard__value { font-size: 22px; }
  .home26 .h26-ccard__msg a { min-height: 40px; }
}
/* contact icons, 08.10: 2D duotone vectors (gold gradient stroke + soft fill, gradients in the page <defs>) */
.home26 .h26-ccard__icon {
  width: 60px; height: 60px; border-radius: 18px;
  background: linear-gradient(145deg, rgba(216, 154, 38, .14), rgba(216, 154, 38, .03));
  border: 1px solid rgba(216, 154, 38, .22);
}
.home26 .h26-ccard--phone .h26-ccard__icon { background: var(--h26-ink); border-color: transparent; box-shadow: 0 10px 22px -12px rgba(12, 26, 26, .8); }
.home26 .h26-ccard__icon svg { width: 32px; height: 32px; overflow: visible; transition: transform .35s ease; }
.home26 .h26-ccard:hover .h26-ccard__icon svg { transform: scale(1.08); }
@media (max-width: 575px) {
  .home26 .h26-ccard > .h26-ccard__icon { width: 48px; height: 48px; border-radius: 14px; }
  .home26 .h26-ccard__icon svg { width: 25px; height: 25px; }
  .home26 .h26-ccard { grid-template-columns: 48px minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) { .home26 .h26-ccard:hover .h26-ccard__icon svg { transform: none; } }
/* related cards: icon chip like the contact cards (08.10) */
.home26 .h26-related__icon {
  width: 50px; height: 50px; margin-top: -44px; border-radius: 15px;
  background: linear-gradient(145deg, #1D2B28, var(--h26-ink)); border: 1px solid rgba(216, 154, 38, .35);
  box-shadow: 0 10px 22px -12px rgba(0, 0, 0, .8);
}
.home26 .h26-related__icon svg { width: 27px; height: 27px; }
/* home about: caption under the photo, not over the faces (08.10) */
.home26 .h26-about__photo .h26-about__caption {
  position: static; display: flex; align-items: center; gap: 10px; margin: 18px 0 0; padding: 0;
  background: none; border: 0; -webkit-backdrop-filter: none; backdrop-filter: none;
  font-size: 14px; font-weight: 600; line-height: 1.4; color: var(--h26-muted);
}
.home26 .h26-about__photo .h26-about__caption::before { content: ""; flex: none; width: 22px; height: 1px; background: var(--h26-gold-ink); }
@media (min-width: 1200px) {
  /* the route card hangs over the lower right corner; keep the caption left of it */
  .home26 .h26-about__photo .h26-about__caption { max-width: calc(100% - 380px); }
}
@media (max-width: 1199px) {
  .home26 .h26-about__photo { padding: 0; }
  .home26 .h26-about__place { position: relative; margin-top: 22px; max-width: none; }
}
@media (max-width: 575px) {
  .home26 .h26-about__photo .h26-about__caption { font-size: 13px; left: auto; top: auto; margin-top: 22px; }
}
/* links inside the admin text (ad landing pages link to the practices): the theme's
   link colour was dark on the dark bands — the linked words vanished (08.10) */
.home26.h26-sb .h26-sb-tiles a, .home26.h26-sb .h26-sb-card a, .home26.h26-sb .h26-sb-prose a {
  font-family: inherit; font-weight: 600; text-decoration: underline; text-decoration-thickness: 1px;
  text-underline-offset: 3px; transition: color .2s ease, text-decoration-color .2s ease;
}
.home26.h26-sb .h26-dark a { color: #E8AE45; text-decoration-color: rgba(232, 174, 69, .45); }
.home26.h26-sb .h26-dark a:hover { color: #FFCD70; text-decoration-color: currentColor; }
.home26.h26-sb .h26-paper a { color: var(--h26-gold-ink); text-decoration-color: rgba(148, 101, 15, .4); }
.home26.h26-sb .h26-paper a:hover { color: var(--h26-ink); text-decoration-color: currentColor; }

/* ---------- accessibility, 09.10: tap targets ≥ 44px, contrast ---------- */
.home26 .h26-cta__consent { color: #A3B3B2; }   /* was #8B9F9F, 4.39:1 */
.home26 .h26-link, .home26 .h26-faq__tg, .home26 .h26-svc__form, .home26 .h26-page-hero__phone {
  min-height: 44px;
}
.home26 .h26-link, .home26 .h26-faq__tg { display: inline-flex; align-items: center; }
.home26 .h26-svc__form { display: inline-flex; align-items: center; padding-bottom: 0; border-bottom: 0;
  text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .4); text-underline-offset: 6px; }
.home26 .h26-page-hero__phone { justify-content: center; }
.home26 .h26-svc__messengers a, .home26 .h26-ccard__msg a { min-height: 44px; }
/* the underline was a border-bottom: with 44px height it would drift away from the text */
.home26 .h26-link { padding-bottom: 0; border-bottom: 0; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; }
/* 09.10: muted dark-band grey (#8B9F9F) → #A3B3B2 everywhere above (was ~4.4:1 on ink).
   Plain paragraphs in the admin text took the theme's grey on the PAPER bands too (2.43:1) */
.home26.h26-sb .h26-paper .h26-sb-tiles > p, .home26.h26-sb .h26-paper .h26-sb-prose p,
.home26.h26-sb .h26-paper .h26-sb-lead p { color: var(--h26-muted); }
.home26.h26-sb .h26-dark .h26-sb-tiles > p { color: #B4C2C0; }
/* focus ring on the paper: #D89A26 is only ~2.3:1 there, WCAG wants ≥ 3:1 for the indicator */
.home26 .h26-paper :focus-visible, .home26 .h26-paper:focus-visible { outline-color: var(--h26-gold-ink) !important; box-shadow: none; }
/* 09.10: an ordered list in the admin text is a sequence of steps ("Що робити до приїзду
   адвоката", "Як ми працюємо") — numbered steps instead of ticks */
.home26 .h26-sb-tiles > ol { counter-reset: sb-step; }
.home26 .h26-sb-tiles > ol > li { counter-increment: sb-step; }
.home26 .h26-sb-tiles > ol > li::before {
  content: counter(sb-step); display: flex; align-items: center; justify-content: center;
  background: var(--gradient-yellow); color: var(--h26-ink);
  font-family: var(--font-family-cormorant); font-size: 15px; font-weight: 700; line-height: 1;
}
