/* =========================================================
   سبّاق لنقل الأثاث — common.css
   Concept: "يوم نقل عفشك" — every section is an hour of one moving day.
   :root + base + shared sections (tb, hdr, ft, pt, fq, prw, tst, prc,
   ci, svl, ctaf, ftr) + day bar + clock + reveal + slider
   ========================================================= */

:root {
  --sb-primary: #143d30;
  --sb-secondary: #e8553d;
  --sb-helper: #f6f1e6;
}

/* ===== base ===== */
*, *::before, *::after { box-sizing: border-box; }

.sb-body {
  --sb-ink: var(--sb-primary);
  --sb-text: color-mix(in srgb, var(--sb-primary) 84%, var(--sb-helper));
  --sb-muted: color-mix(in srgb, var(--sb-primary) 62%, var(--sb-helper));
  --sb-rule: color-mix(in srgb, var(--sb-primary) 16%, var(--sb-helper));
  --sb-paper: var(--sb-helper);
  --sb-sand: color-mix(in srgb, var(--sb-primary) 6%, var(--sb-helper));
  --sb-sand-2: color-mix(in srgb, var(--sb-primary) 11%, var(--sb-helper));
  --sb-accent: var(--sb-secondary);
  --sb-accent-soft: color-mix(in srgb, var(--sb-secondary) 14%, var(--sb-helper));
  --sb-on-ink: var(--sb-helper);
  --sb-on-ink-muted: color-mix(in srgb, var(--sb-helper) 72%, var(--sb-primary));
  --sb-ink-2: color-mix(in srgb, var(--sb-primary) 86%, var(--sb-helper));
  --sb-shadow: 0 1.5rem 3rem -1.25rem color-mix(in srgb, var(--sb-primary) 35%, transparent);
  --sb-ease: cubic-bezier(.2, .9, .25, 1);
  --sb-spring: cubic-bezier(.34, 1.56, .64, 1);
  --sb-pad: clamp(1.5rem, 4vw, 3rem);
  --sb-r: 1.5rem;
  --sb-arch: 50% 50% var(--sb-r) var(--sb-r) / 32% 32% var(--sb-r) var(--sb-r);

  margin: 0;
  direction: rtl;
  font-family: 'Alexandria', system-ui, sans-serif;
  font-weight: 400;
  font-size: 0.95rem;
  line-height: 1.8;
  color: var(--sb-text);
  background: var(--sb-paper);
  overflow-x: clip;
  padding-bottom: 5rem;
  -webkit-font-smoothing: antialiased;
}
:where(.sb-body) :where(img, iframe, video) { display: block; max-width: 100%; }
:where(.sb-body) :where(img) { height: auto; color: transparent; }
:where(.sb-body) :where(a) { color: inherit; text-decoration: none; }
:where(.sb-body) :where(ul, ol, dl, dd) { list-style: none; margin: 0; padding: 0; }
:where(.sb-body) :where(h1, h2, h3, p, figure, fieldset, legend) { margin: 0; padding: 0; }
:where(.sb-body) :where(fieldset) { border: 0; min-inline-size: 0; }
:where(.sb-body) :where(h1, h2, h3) { color: var(--sb-ink); line-height: 1.4; font-weight: 700; }
:where(.sb-body) :where(:focus-visible) { outline: 0.15rem solid var(--sb-accent); outline-offset: 0.2rem; border-radius: 0.4rem; }
:where(.sb-body) :where(button, input, select) { font: inherit; color: inherit; }
:where(.sb-body) :where(button) { cursor: pointer; }
:where(.sb-body) :where([id]) { scroll-margin-top: 6rem; }

.sb-wrap { width: min(100% - 2rem, 74rem); margin-inline: auto; }
.sb-skip {
  position: absolute; inset-inline-start: 1rem; top: 0.5rem; z-index: 100;
  padding: 0.5rem 1rem; border-radius: 999rem; background: var(--sb-accent); color: var(--sb-on-ink);
  transform: translateY(-200%);
}
.sb-skip:focus { transform: none; }

/* time stamp: the hour of the moving day this section stands for */
.sb-stamp {
  display: inline-flex; align-items: center; gap: 0.6rem;
  color: var(--sb-muted); font-size: 0.8rem; font-weight: 500;
  margin-bottom: 0.4rem;
}
.sb-stamp__time {
  padding: 0.05rem 0.65rem; border-radius: 999rem;
  background: var(--sb-ink); color: var(--sb-on-ink);
  font-weight: 600; font-variant-numeric: tabular-nums;
}
.sb-head { margin-bottom: 0.9rem; }
.sb-head--split { display: grid; gap: 0.5rem; align-items: end; }
.sb-head__title { font-size: 1.35rem; font-weight: 800; }
.sb-head__text { margin-top: 0.5rem; color: var(--sb-muted); font-size: 0.9rem; max-inline-size: 34rem; }

/* breadcrumbs (service + projects headers) */
.sb-crumbs__list { display: flex; flex-wrap: wrap; align-items: center; gap: 0.2rem 0.5rem; font-size: 0.78rem; color: var(--sb-muted); margin-bottom: 0.5rem; }
.sb-crumbs__item { display: inline-flex; align-items: center; gap: 0.5rem; }
.sb-crumbs__item + .sb-crumbs__item::before { content: ""; inline-size: 0.35rem; block-size: 0.35rem; border-radius: 50%; background: var(--sb-accent); }
.sb-crumbs__item[aria-current] { color: var(--sb-ink); font-weight: 600; }
.sb-crumbs__link { transition: color 0.25s; }
@media (hover: hover) { .sb-crumbs__link:hover { color: var(--sb-accent); } }

/* buttons: pill + round icon that slides */
.sb-btn {
  --sb-btn-bg: var(--sb-accent);
  --sb-btn-fg: var(--sb-on-ink);
  --sb-btn-dot: var(--sb-on-ink);
  --sb-btn-dot-fg: var(--sb-accent);
  --sb-btn-line: transparent;
  display: inline-flex; align-items: center; gap: 0.75rem;
  min-block-size: 3rem; padding-block: 0.3rem; padding-inline: 1.3rem 0.3rem;
  border-radius: 999rem; border: 0.0625rem solid var(--sb-btn-line);
  background: var(--sb-btn-bg); color: var(--sb-btn-fg);
  font-weight: 600; font-size: 0.92rem; line-height: 1.2;
  transition: background 0.35s, color 0.35s, border-color 0.35s;
}
.sb-btn__icon {
  display: grid; place-items: center; flex: none;
  inline-size: 2.4rem; block-size: 2.4rem; border-radius: 50%;
  background: var(--sb-btn-dot); color: var(--sb-btn-dot-fg);
  transition: transform 0.5s var(--sb-spring);
}
.sb-btn--line { --sb-btn-bg: transparent; --sb-btn-fg: var(--sb-ink); --sb-btn-line: var(--sb-ink); --sb-btn-dot: var(--sb-ink); --sb-btn-dot-fg: var(--sb-on-ink); }
.sb-btn--ink { --sb-btn-bg: var(--sb-ink); --sb-btn-dot: var(--sb-accent); --sb-btn-dot-fg: var(--sb-on-ink); }
@media (hover: hover) {
  .sb-btn:hover .sb-btn__icon { transform: translateX(-0.35rem) rotate(-12deg); }
  .sb-btn--fill:hover { --sb-btn-bg: var(--sb-ink); }
  .sb-btn--line:hover { --sb-btn-bg: var(--sb-ink); --sb-btn-fg: var(--sb-on-ink); --sb-btn-dot: var(--sb-accent); }
  .sb-btn--ink:hover { --sb-btn-bg: var(--sb-accent); --sb-btn-dot: var(--sb-ink); }
}

/* ===== day progress bar + clock (core object) ===== */
.sb-day {
  position: fixed; inset-inline: 0; top: 0; z-index: 90; block-size: 0.22rem;
  background: var(--sb-sand-2); pointer-events: none;
}
.sb-day__fill {
  display: block; block-size: 100%;
  background: linear-gradient(to left, var(--sb-accent), var(--sb-ink));
  transform: scaleX(var(--sb-day-p, 0)); transform-origin: right;
}
.sb-clock {
  --sb-clock-face: var(--sb-paper);
  --sb-clock-ink: var(--sb-ink);
  --sb-clock-h: 240deg;
  --sb-clock-m: 0deg;
  position: relative; flex: none;
  inline-size: 4.5rem; block-size: 4.5rem; border-radius: 50%;
  background: var(--sb-clock-face);
  box-shadow: inset 0 0 0 0.2rem var(--sb-clock-ink);
}
.sb-clock::before {
  content: ""; position: absolute; inset: 0.35rem; border-radius: 50%;
  background: repeating-conic-gradient(var(--sb-clock-ink) 0 1.5deg, transparent 1.5deg 30deg);
  -webkit-mask: radial-gradient(circle, transparent 72%, var(--sb-primary) 73%);
  mask: radial-gradient(circle, transparent 72%, var(--sb-primary) 73%);
}
.sb-clock__hand {
  position: absolute; bottom: 50%; left: calc(50% - 0.1rem);
  inline-size: 0.2rem; border-radius: 0.2rem; background: var(--sb-clock-ink);
  transform-origin: 50% 100%;
}
.sb-clock__hand--h { block-size: 26%; transform: rotate(var(--sb-clock-h)); }
.sb-clock__hand--m { block-size: 36%; background: var(--sb-accent); transform: rotate(var(--sb-clock-m)); }
.sb-clock__pin { position: absolute; inset: calc(50% - 0.25rem); border-radius: 50%; background: var(--sb-clock-ink); }

/* ===== reveal (default = final state) ===== */
@media (prefers-reduced-motion: no-preference) {
  .sb-js:not(.sb-rvoff) [data-sb-rv] {
    transition:
      opacity 0.8s var(--sb-ease) var(--sb-rv-d, 0s),
      transform 0.9s var(--sb-ease) var(--sb-rv-d, 0s);
  }
  .sb-js:not(.sb-rvoff) [data-sb-rv="up"]:not(.sb-rv--in) { opacity: 0; transform: translateY(1.75rem); }
  .sb-js:not(.sb-rvoff) [data-sb-rv="unveil"]:not(.sb-rv--in) { opacity: 0; transform: translateY(2rem) scale(0.96); }
  .sb-js:not(.sb-rvoff) [data-sb-rv="unveil"] img { transition: transform 1.4s var(--sb-ease); }
  .sb-js:not(.sb-rvoff) [data-sb-rv="unveil"]:not(.sb-rv--in) img { transform: scale(1.15); }
}

/* ===== tb ===== */
.sb-tb { background: var(--sb-ink); color: var(--sb-on-ink-muted); font-size: 0.76rem; }
.sb-tb__inner { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; width: min(100% - 2rem, 74rem); margin-inline: auto; padding-block: 0.4rem; }
.sb-tb__live { display: flex; align-items: center; gap: 0.5rem; }
.sb-tb__dot { inline-size: 0.5rem; block-size: 0.5rem; border-radius: 50%; background: var(--sb-accent); flex: none; }
.sb-tb__links { display: none; gap: 1.25rem; }
.sb-tb__link { display: inline-flex; align-items: center; gap: 0.4rem; color: var(--sb-on-ink); transition: color 0.25s; }
.sb-tb__icon { color: var(--sb-accent); }
@media (prefers-reduced-motion: no-preference) {
  .sb-tb__dot, .sb-hdr__now-dot, .sb-fq__status::before { animation: sb-live 1.8s ease-in-out infinite; }
}
@keyframes sb-live { 50% { opacity: 0.25; transform: scale(0.7); } }
@media (hover: hover) { .sb-tb__link:hover { color: var(--sb-accent); } }

/* ===== hdr (floating pill) ===== */
.sb-hdr {
  --sb-hdr-bg: var(--sb-paper);
  position: sticky; top: 0.6rem; z-index: 60;
  margin: 0.6rem 0.6rem 0;
}
.sb-hdr__inner {
  position: relative;
  display: flex; align-items: center; gap: 0.5rem;
  min-block-size: 3.75rem; padding-inline: 1rem 0.45rem;
  background: var(--sb-hdr-bg); border: 0.0625rem solid var(--sb-rule); border-radius: 1.25rem;
  transition: box-shadow 0.3s;
}
.sb-hdr--stuck .sb-hdr__inner { box-shadow: var(--sb-shadow); }
.sb-hdr__logo { margin-inline-end: auto; }
.sb-hdr__logo-img { block-size: 2.2rem; inline-size: auto; aspect-ratio: 400 / 120; }
.sb-hdr__now { display: none; }
.sb-hdr__call {
  display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; border-radius: 50%;
  background: var(--sb-accent); color: var(--sb-on-ink);
}
.sb-hdr__call-num { display: none; }
.sb-hdr__burger {
  display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; border-radius: 50%;
  border: 0; background: var(--sb-ink); color: var(--sb-on-ink);
}
.sb-hdr__burger-bar, .sb-hdr__burger-bar::before, .sb-hdr__burger-bar::after {
  display: block; inline-size: 1.1rem; block-size: 0.125rem; border-radius: 0.1rem; background: currentColor;
  transition: transform 0.35s var(--sb-ease), background 0.2s;
}
.sb-hdr__burger-bar { position: relative; }
.sb-hdr__burger-bar::before, .sb-hdr__burger-bar::after { content: ""; position: absolute; inset-inline-start: 0; }
.sb-hdr__burger-bar::before { transform: translateY(-0.35rem); }
.sb-hdr__burger-bar::after { transform: translateY(0.35rem); }
.sb-hdr__burger[aria-expanded="true"] .sb-hdr__burger-bar { background: transparent; }
.sb-hdr__burger[aria-expanded="true"] .sb-hdr__burger-bar::before { transform: rotate(45deg); background: var(--sb-on-ink); }
.sb-hdr__burger[aria-expanded="true"] .sb-hdr__burger-bar::after { transform: rotate(-45deg); background: var(--sb-on-ink); }

/* mobile nav: plain list without JS, collapsible sheet with JS */
.sb-hdr__nav { order: 5; flex-basis: 100%; }
.sb-hdr__inner { flex-wrap: wrap; }
.sb-hdr__menu { display: flex; flex-direction: column; padding-block-end: 0.6rem; }
.sb-hdr__item { display: flex; flex-wrap: wrap; align-items: center; border-top: 0.0625rem solid var(--sb-rule); }
.sb-hdr__link { flex: 1; padding: 0.65rem 0.25rem; font-weight: 600; color: var(--sb-ink); transition: color 0.25s; }
.sb-hdr__link[aria-current="page"] { color: var(--sb-accent); }
.sb-hdr__ddbtn {
  display: grid; place-items: center; inline-size: 2.4rem; block-size: 2.4rem; border-radius: 50%;
  border: 0.0625rem solid var(--sb-rule); background: transparent; color: var(--sb-ink); font-size: 0.75rem;
}
.sb-hdr__ddbtn i { transition: transform 0.35s var(--sb-ease); }
.sb-hdr__ddbtn[aria-expanded="true"] i { transform: rotate(180deg); }
.sb-hdr__dd { flex-basis: 100%; display: grid; gap: 0.15rem; padding-block-end: 0.5rem; }
.sb-hdr__ddlink {
  display: flex; align-items: center; gap: 0.6rem; padding: 0.4rem 0.5rem; border-radius: 0.75rem;
  font-size: 0.88rem; color: var(--sb-text); transition: background 0.25s, color 0.25s;
}
.sb-hdr__ddlink[aria-current="page"] { color: var(--sb-accent); }
.sb-hdr__ddicon {
  display: grid; place-items: center; inline-size: 2rem; block-size: 2rem; border-radius: 50%;
  background: var(--sb-accent-soft); color: var(--sb-accent); font-size: 0.8rem; flex: none;
}
@media (hover: hover) {
  .sb-hdr__link:hover { color: var(--sb-accent); }
  .sb-hdr__ddlink:hover { background: var(--sb-sand); color: var(--sb-ink); }
}
.sb-js .sb-hdr__nav {
  position: absolute; inset-inline: 0; top: calc(100% + 0.4rem);
  padding: 0.25rem 1rem; border-radius: 1.25rem;
  background: var(--sb-hdr-bg); border: 0.0625rem solid var(--sb-rule); box-shadow: var(--sb-shadow);
  max-block-size: calc(100svh - 7rem); overflow-y: auto;
}
.sb-js .sb-hdr__nav:not(.sb-hdr__nav--open) { display: none; }
.sb-js .sb-hdr__item--dd:not(.sb-hdr__item--open) .sb-hdr__dd { display: none; }
.sb-js .sb-hdr__item:first-child { border-top: 0; }
@media (prefers-reduced-motion: no-preference) {
  .sb-js .sb-hdr__nav--open { animation: sb-sheet 0.45s var(--sb-ease) both; }
}
@keyframes sb-sheet { from { opacity: 0; transform: translateY(-0.6rem) scale(0.98); } }

/* ===== ft (مميزاتنا: hour ruler) ===== */
.sb-ft { padding-block: var(--sb-pad); }
.sb-ft__ruler {
  block-size: 1.5rem; margin-bottom: 0.75rem;
  background:
    linear-gradient(var(--sb-ink), var(--sb-ink)) bottom / 100% 0.125rem no-repeat,
    repeating-linear-gradient(to left, var(--sb-ink) 0 0.125rem, transparent 0.125rem 6rem) bottom / 100% 100% no-repeat,
    repeating-linear-gradient(to left, var(--sb-rule) 0 0.0625rem, transparent 0.0625rem 1.5rem) bottom / 100% 50% no-repeat;
  transform-origin: right;
}
.sb-ft__list { display: grid; gap: 0.5rem; }
.sb-ft__item {
  position: relative;
  display: grid; grid-template-columns: 2.75rem 1fr; column-gap: 0.75rem; align-items: start;
  padding: 0.9rem 0.9rem 0.9rem 0.75rem; border-radius: var(--sb-r);
  background: var(--sb-sand);
}
.sb-ft__chip {
  grid-column: 2; justify-self: start;
  padding: 0 0.6rem; border-radius: 999rem; margin-bottom: 0.3rem;
  background: var(--sb-accent-soft); color: var(--sb-accent); font-size: 0.75rem; font-weight: 600;
}
.sb-ft__icon {
  grid-row: 1 / span 3; grid-column: 1;
  display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; border-radius: 50%;
  border: 0.0625rem solid var(--sb-ink); color: var(--sb-ink); font-size: 1.1rem;
  transition: transform 0.6s var(--sb-spring), background 0.3s, color 0.3s;
}
.sb-ft__name { grid-column: 2; font-size: 0.98rem; }
.sb-ft__desc { grid-column: 2; margin-top: 0.15rem; color: var(--sb-muted); font-size: 0.86rem; line-height: 1.7; }
@media (prefers-reduced-motion: no-preference) {
  .sb-ft__ruler { transition: transform 1.4s var(--sb-ease); }
  .sb-js:not(.sb-rvoff) .sb-ft__ruler:not(.sb-rv--in) { transform: scaleX(0); }
}
@media (hover: hover) {
  .sb-ft__item:hover .sb-ft__icon { background: var(--sb-accent); color: var(--sb-on-ink); border-color: var(--sb-accent); transform: rotate(-20deg) scale(1.08); }
}

/* ===== pt (ليه تختارنا: arch photo + numbered editorial list) ===== */
.sb-pt { padding-block: var(--sb-pad); background: var(--sb-sand); }
.sb-pt__inner { display: grid; gap: 1.5rem; }
.sb-pt__media { position: relative; justify-self: center; inline-size: min(100%, 22rem); }
.sb-pt__arch { aspect-ratio: 4 / 5; overflow: hidden; border-radius: var(--sb-arch); background: var(--sb-sand-2); }
.sb-pt__img { inline-size: 100%; block-size: 100%; object-fit: cover; }
.sb-pt__seal {
  position: absolute; inset-inline-start: -0.75rem; bottom: -0.75rem;
  display: grid; place-items: center; inline-size: 7rem; block-size: 7rem; border-radius: 50%;
  background: var(--sb-accent); color: var(--sb-on-ink); box-shadow: var(--sb-shadow);
}
.sb-pt__ring { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; fill: currentColor; font-size: 1.05rem; font-family: inherit; font-weight: 600; }
.sb-pt__seal-icon { font-size: 1.6rem; }
@media (prefers-reduced-motion: no-preference) { .sb-pt__ring { animation: sb-spin 22s linear infinite; } }
@keyframes sb-spin { to { transform: rotate(-360deg); } }
.sb-pt__title { font-size: 1.35rem; font-weight: 800; }
.sb-pt__lead { margin-top: 0.5rem; font-size: 0.95rem; color: var(--sb-muted); }
/* points = tiles: axis icon + axis chip + big outlined number; tile fills green on hover */
.sb-pt__list { margin-top: 1rem; display: grid; gap: 0.6rem; counter-reset: sb-pt; }
.sb-pt__item {
  --sb-pt-num: color-mix(in srgb, var(--sb-primary) 22%, var(--sb-helper));
  position: relative; isolation: isolate; overflow: hidden; counter-increment: sb-pt;
  display: grid; grid-template-columns: 2.6rem 1fr; column-gap: 0.75rem; align-content: start;
  padding: 0.95rem 1rem 1rem; border-radius: 1.25rem;
  background: var(--sb-paper); border: 0.0625rem solid var(--sb-rule);
  transition: border-color 0.35s, transform 0.5s var(--sb-spring), box-shadow 0.4s;
}
.sb-pt__item::before {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: var(--sb-ink); transform: scaleY(0); transform-origin: bottom; transition: transform 0.5s var(--sb-ease);
}
.sb-pt__item::after {
  content: counter(sb-pt, decimal-leading-zero);
  position: absolute; inset-inline-end: 0.85rem; top: 0.45rem;
  font-size: 2rem; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums;
  color: transparent; -webkit-text-stroke: 0.0625rem var(--sb-pt-num);
  transition: -webkit-text-stroke-color 0.35s;
}
.sb-pt__icon {
  grid-row: 1 / span 3; display: grid; place-items: center; inline-size: 2.6rem; block-size: 2.6rem; border-radius: 50%;
  background: var(--sb-accent-soft); color: var(--sb-accent); font-size: 1rem;
  transition: background 0.35s, color 0.35s, transform 0.6s var(--sb-spring);
}
.sb-pt__axis {
  justify-self: start; margin-bottom: 0.2rem; padding-inline-end: 2.5rem;
  color: var(--sb-accent); font-size: 0.7rem; font-weight: 600;
}
.sb-pt__name { font-size: 1rem; transition: color 0.35s; }
.sb-pt__desc { margin-top: 0.15rem; color: var(--sb-muted); font-size: 0.86rem; line-height: 1.7; transition: color 0.35s; }
@media (hover: hover) {
  .sb-pt__item:hover { border-color: var(--sb-ink); transform: translateY(-0.2rem); box-shadow: var(--sb-shadow); }
  .sb-pt__item:hover::before { transform: none; }
  .sb-pt__item:hover::after { -webkit-text-stroke-color: var(--sb-accent); }
  .sb-pt__item:hover .sb-pt__icon { background: var(--sb-accent); color: var(--sb-on-ink); transform: rotate(-12deg) scale(1.08); }
  .sb-pt__item:hover .sb-pt__name { color: var(--sb-on-ink); }
  .sb-pt__item:hover .sb-pt__desc { color: var(--sb-on-ink-muted); }
}

/* ===== fq (WhatsApp-style conversation) ===== */
.sb-fq { padding-block: var(--sb-pad); }
.sb-fq__inner { display: grid; gap: 1rem; }
.sb-fq__aside .sb-btn { margin-top: 0.9rem; }
.sb-fq__chat { border-radius: var(--sb-r); background: var(--sb-sand); overflow: hidden; border: 0.0625rem solid var(--sb-rule); }
.sb-fq__bar { display: flex; align-items: center; gap: 0.7rem; padding: 0.7rem 1rem; background: var(--sb-ink); color: var(--sb-on-ink); }
.sb-fq__avatar { display: grid; place-items: center; inline-size: 2.4rem; block-size: 2.4rem; border-radius: 50%; background: var(--sb-accent); }
.sb-fq__who { display: grid; font-weight: 600; font-size: 0.9rem; line-height: 1.4; }
.sb-fq__status { display: inline-flex; align-items: center; gap: 0.35rem; font-weight: 400; font-size: 0.72rem; color: var(--sb-on-ink-muted); }
.sb-fq__status::before { content: ""; inline-size: 0.45rem; block-size: 0.45rem; border-radius: 50%; background: var(--sb-accent); }
.sb-fq__list { display: grid; gap: 0.9rem; padding: 1rem 0.8rem 1.2rem; }
.sb-fq__pair { display: grid; gap: 0.35rem; }
.sb-fq__q, .sb-fq__a { max-inline-size: 88%; padding: 0.55rem 0.85rem; font-size: 0.88rem; line-height: 1.7; }
.sb-fq__q {
  justify-self: end; border-radius: 1rem 1rem 0.25rem 1rem;
  background: var(--sb-paper); color: var(--sb-ink); font-weight: 600;
  box-shadow: 0 0.1rem 0 var(--sb-rule);
}
.sb-fq__a {
  justify-self: start; border-radius: 1rem 1rem 1rem 0.25rem;
  background: var(--sb-ink); color: var(--sb-on-ink);
}

/* ===== slider (shared, used by tst) ===== */
.sb-sl__track {
  display: flex; gap: 1rem;
  overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scroll-behavior: smooth;
  scrollbar-width: none; padding: 1rem 0.5rem 1.75rem; margin-inline: -0.5rem;
}
.sb-sl__track::-webkit-scrollbar { display: none; }
.sb-sl__track > * { flex: 0 0 auto; scroll-snap-align: start; }
.sb-sl__track--drag { scroll-snap-type: none; scroll-behavior: auto; cursor: grabbing; user-select: none; }
.sb-sl__track--drag img { pointer-events: none; }
.sb-sl__ctrl { display: flex; gap: 0.5rem; }
.sb-sl__btn {
  display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; border-radius: 50%;
  border: 0.0625rem solid var(--sb-ink); background: transparent; color: var(--sb-ink);
  transition: background 0.3s, color 0.3s, transform 0.4s var(--sb-spring);
}
.sb-sl__btn:disabled { opacity: 0.35; cursor: default; }
@media (hover: hover) {
  .sb-sl__btn:not(:disabled):hover { background: var(--sb-ink); color: var(--sb-on-ink); transform: scale(1.08); }
  .sb-sl__track { cursor: grab; }
}

/* ===== prw (case files) ===== */
.sb-prw { padding-block: var(--sb-pad); }
.sb-prw__grid { display: grid; grid-template-columns: 1fr 1fr; grid-auto-rows: 11rem; gap: 0.5rem; }
.sb-prw__item { position: relative; overflow: hidden; border-radius: var(--sb-r); background: var(--sb-sand-2); }
.sb-prw__item--big { grid-column: 1 / -1; grid-row: span 1; }
.sb-prw__fig { position: absolute; inset: 0; }
.sb-prw__img { inline-size: 100%; block-size: 100%; object-fit: cover; transition: transform 1.1s var(--sb-ease); }
.sb-prw__cap {
  position: absolute; inset-inline: 0.5rem; bottom: 0.5rem;
  padding: 0.45rem 0.7rem; border-radius: 1rem;
  background: var(--sb-paper); box-shadow: var(--sb-shadow);
}
.sb-prw__route { font-size: 0.72rem; color: var(--sb-muted); display: flex; align-items: center; gap: 0.35rem; }
.sb-prw__route i { color: var(--sb-accent); transition: transform 0.5s var(--sb-ease); }
.sb-prw__name { font-size: 0.85rem; line-height: 1.45; }
.sb-prw__tag {
  position: absolute; top: -0.75rem; inset-inline-end: 0.7rem;
  padding: 0 0.6rem; border-radius: 999rem; background: var(--sb-accent); color: var(--sb-on-ink);
  font-size: 0.7rem; font-weight: 600;
}
@media (hover: hover) {
  .sb-prw__item:hover .sb-prw__img { transform: scale(1.06); }
  .sb-prw__item:hover .sb-prw__route i { transform: translateX(-0.4rem); }
}

/* ===== tst (phones fan) ===== */
.sb-tst { padding-block: var(--sb-pad); background: var(--sb-sand); overflow: hidden; }
.sb-tst__item { inline-size: 58%; }
.sb-tst__phone {
  position: relative; padding: 0.45rem; border-radius: 1.75rem;
  background: var(--sb-ink); box-shadow: var(--sb-shadow);
  transform: rotate(-2.5deg); transition: transform 0.6s var(--sb-spring);
}
.sb-tst__item:nth-child(even) .sb-tst__phone { transform: rotate(2.5deg) translateY(0.75rem); }
.sb-tst__phone::before {
  content: ""; position: absolute; top: 0.85rem; left: calc(50% - 1.5rem); z-index: 2;
  inline-size: 3rem; block-size: 0.35rem; border-radius: 999rem; background: var(--sb-ink);
}
.sb-tst__img { inline-size: 100%; aspect-ratio: 3 / 5; object-fit: cover; border-radius: 1.35rem; background: var(--sb-paper); }
@media (hover: hover) {
  .sb-tst__item:hover .sb-tst__phone { transform: rotate(0) translateY(-0.5rem); }
}

/* ===== prc (quote builder → WhatsApp, no invented prices) ===== */
.sb-prc { padding-block: var(--sb-pad); background: var(--sb-sand); }
.sb-prc__inner { display: grid; gap: 1.25rem; }
.sb-prc__promise { margin-top: 0.9rem; display: grid; gap: 0.4rem; }
.sb-prc__p { display: flex; align-items: center; gap: 0.6rem; font-size: 0.88rem; font-weight: 500; color: var(--sb-ink); }
.sb-prc__p i { display: grid; place-items: center; inline-size: 2rem; block-size: 2rem; border-radius: 50%; background: var(--sb-accent-soft); color: var(--sb-accent); font-size: 0.8rem; flex: none; }
.sb-prc__form {
  display: grid; gap: 1rem; padding: 1rem; border-radius: 1.75rem;
  background: var(--sb-ink); color: var(--sb-on-ink);
}
.sb-prc__legend { font-weight: 700; font-size: 0.95rem; margin-bottom: 0.5rem; color: var(--sb-on-ink); }
.sb-prc__opts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.4rem; }
.sb-prc__opts--pills { display: flex; flex-wrap: wrap; }
.sb-prc__opt { position: relative; display: block; cursor: pointer; }
.sb-prc__input { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; margin: 0; opacity: 0; cursor: pointer; }
.sb-prc__card {
  display: grid; justify-items: center; gap: 0.25rem; padding: 0.6rem 0.25rem; border-radius: 1rem;
  border: 0.0625rem solid color-mix(in srgb, var(--sb-helper) 25%, transparent);
  font-size: 0.78rem; text-align: center; line-height: 1.4;
  transition: background 0.3s, color 0.3s, border-color 0.3s, transform 0.4s var(--sb-spring);
}
.sb-prc__card i { font-size: 1.15rem; color: var(--sb-accent); transition: color 0.3s; }
.sb-prc__pill {
  display: inline-block; padding: 0.35rem 0.85rem; border-radius: 999rem;
  border: 0.0625rem solid color-mix(in srgb, var(--sb-helper) 25%, transparent);
  font-size: 0.8rem; transition: background 0.3s, color 0.3s, border-color 0.3s;
}
.sb-prc__input:checked + .sb-prc__card,
.sb-prc__input:checked + .sb-prc__pill { background: var(--sb-paper); color: var(--sb-ink); border-color: var(--sb-paper); }
.sb-prc__input:checked + .sb-prc__card { transform: translateY(-0.15rem); }
.sb-prc__input:focus-visible + .sb-prc__card,
.sb-prc__input:focus-visible + .sb-prc__pill { outline: 0.15rem solid var(--sb-accent); outline-offset: 0.15rem; }
.sb-prc__opt--featured .sb-prc__card { border-color: var(--sb-accent); }
.sb-prc__opt--featured .sb-prc__card::after {
  content: "بيت كامل"; position: absolute; top: -0.55rem; left: 50%; transform: translateX(-50%);
  padding: 0 0.5rem; border-radius: 999rem; background: var(--sb-accent); color: var(--sb-on-ink);
  font-size: 0.62rem; font-weight: 600; white-space: nowrap;
}
.sb-prc__route { display: grid; gap: 0.5rem; }
.sb-prc__field { display: grid; gap: 0.2rem; }
.sb-prc__label { font-size: 0.78rem; color: var(--sb-on-ink-muted); }
.sb-prc__text {
  inline-size: 100%; min-block-size: 2.75rem; padding: 0.4rem 1rem; border-radius: 999rem;
  border: 0.0625rem solid color-mix(in srgb, var(--sb-helper) 25%, transparent);
  background: var(--sb-ink-2); color: var(--sb-on-ink); font-size: 0.9rem;
}
.sb-prc__text::placeholder { color: var(--sb-on-ink-muted); }
.sb-prc__summary { min-block-size: 1.5rem; font-size: 0.82rem; color: var(--sb-on-ink-muted); }
.sb-prc__summary:empty { display: none; }
.sb-prc__send { justify-self: start; border: 0; }
@media (hover: hover) {
  .sb-prc__card:hover, .sb-prc__pill:hover { border-color: var(--sb-accent); }
}

/* ===== ci ===== */
.sb-ci { padding-block: var(--sb-pad); }
.sb-ci__inner { display: grid; gap: 1.25rem; }
.sb-ci__title { font-size: 1.35rem; font-weight: 800; }
.sb-ci__num {
  position: relative; display: inline-block; margin-top: 0.4rem;
  font-size: clamp(1.8rem, 8vw, 2.6rem); font-weight: 800; line-height: 1.2; white-space: nowrap;
  color: var(--sb-ink); font-variant-numeric: tabular-nums; letter-spacing: -0.02em;
}
.sb-ci__num::after {
  content: ""; position: absolute; inset-inline: 0; bottom: 0; block-size: 0.3rem; border-radius: 999rem;
  background: var(--sb-accent); transform: scaleX(0.25); transform-origin: left; transition: transform 0.6s var(--sb-ease);
}
.sb-ci__cta { margin-top: 0.9rem; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.sb-ci__list { display: grid; gap: 0.5rem; }
.sb-ci__item { display: flex; align-items: flex-start; gap: 0.75rem; padding: 0.75rem 0.9rem; border-radius: var(--sb-r); background: var(--sb-sand); }
.sb-ci__icon { display: grid; place-items: center; flex: none; inline-size: 2.5rem; block-size: 2.5rem; border-radius: 50%; border: 0.0625rem solid var(--sb-ink); color: var(--sb-ink); }
.sb-ci__label { font-size: 0.92rem; }
.sb-ci__val { font-size: 0.86rem; color: var(--sb-muted); }
.sb-ci__link { color: var(--sb-ink); font-weight: 600; }
.sb-ci__social { display: flex; gap: 0.4rem; margin-top: 0.2rem; }
.sb-ci__soc { display: grid; place-items: center; inline-size: 2.1rem; block-size: 2.1rem; border-radius: 50%; background: var(--sb-sand-2); color: var(--sb-ink); transition: background 0.3s, color 0.3s; }
.sb-ci__map {
  position: relative; display: grid; place-items: center; aspect-ratio: 16 / 10;
  border-radius: var(--sb-r); overflow: hidden; background: var(--sb-sand-2);
}
.sb-ci__maplink { display: inline-flex; align-items: center; gap: 0.5rem; color: var(--sb-ink); font-weight: 600; }
.sb-ci__maplink i { color: var(--sb-accent); font-size: 1.4rem; }
.sb-ci__frame { position: absolute; inset: 0; z-index: 1; inline-size: 100%; block-size: 100%; border: 0; filter: grayscale(0.6) sepia(0.15); }
@media (hover: hover) {
  .sb-ci__num:hover::after { transform: scaleX(1); }
  .sb-ci__soc:hover { background: var(--sb-accent); color: var(--sb-on-ink); }
}

/* ===== svl (metro lines) ===== */
.sb-svl { padding-block: var(--sb-pad); background: var(--sb-sand); }
.sb-svl__lines { display: grid; gap: 1.25rem; }
.sb-svl__line { --sb-line-c: var(--sb-ink); position: relative; }
.sb-svl__line--b { --sb-line-c: var(--sb-accent); }
.sb-svl__line--c { --sb-line-c: color-mix(in srgb, var(--sb-primary) 55%, var(--sb-secondary)); }
.sb-svl__name {
  display: inline-block; margin-bottom: 0.6rem; padding: 0.1rem 0.85rem; border-radius: 999rem;
  background: var(--sb-line-c); color: var(--sb-on-ink); font-size: 0.85rem; font-weight: 600;
}
.sb-svl__stops { position: relative; display: grid; gap: 0.15rem; padding-inline-start: 1.6rem; }
.sb-svl__stops::before {
  content: ""; position: absolute; inset-inline-start: 0.45rem; top: 0.6rem; bottom: 0.6rem; inline-size: 0.3rem; border-radius: 999rem;
  background: var(--sb-line-c); transform-origin: top; transition: transform 1.2s var(--sb-ease);
}
.sb-svl__stop { position: relative; font-size: 0.9rem; font-weight: 500; color: var(--sb-ink); padding-block: 0.1rem; }
.sb-svl__stop::before {
  content: ""; position: absolute; inset-inline-start: -1.4rem; top: calc(50% - 0.5rem);
  inline-size: 1rem; block-size: 1rem; border-radius: 50%;
  background: var(--sb-paper); box-shadow: inset 0 0 0 0.22rem var(--sb-line-c);
  transition: transform 0.4s var(--sb-spring), background 0.3s;
}
@media (prefers-reduced-motion: no-preference) {
  .sb-js:not(.sb-rvoff) .sb-svl__line:not(.sb-rv--in) .sb-svl__stops::before { transform: scaleY(0); }
}
@media (hover: hover) {
  .sb-svl__stop:hover::before { transform: scale(1.35); background: var(--sb-line-c); }
}

/* ===== post card (blog list + related articles) ===== */
.sb-bll__grid { display: grid; gap: 0.9rem; }
.sb-post {
  position: relative; display: flex; flex-direction: column; overflow: hidden;
  border-radius: var(--sb-r); background: var(--sb-sand); border: 0.0625rem solid var(--sb-rule);
  transition: transform 0.5s var(--sb-spring), box-shadow 0.4s, border-color 0.3s;
}
.sb-post--hide { display: none; }
.sb-post__fig { aspect-ratio: 16 / 10; overflow: hidden; background: var(--sb-sand-2); }
.sb-post__img { inline-size: 100%; block-size: 100%; object-fit: cover; transition: transform 0.9s var(--sb-ease); }
.sb-post__body { display: flex; flex-direction: column; flex: 1; padding: 0.9rem 1rem 1rem; }
.sb-post__cat { display: inline-flex; align-items: center; gap: 0.4rem; color: var(--sb-accent); font-size: 0.75rem; font-weight: 600; }
.sb-post__title { margin-top: 0.3rem; font-size: 1.02rem; line-height: 1.5; }
.sb-post__link { transition: color 0.3s; }
.sb-post__link::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.sb-post__excerpt {
  margin-top: 0.35rem; color: var(--sb-muted); font-size: 0.86rem; line-height: 1.7;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.sb-post__meta { margin-top: auto; padding-top: 0.75rem; display: flex; gap: 0.4rem; color: var(--sb-muted); font-size: 0.74rem; }
.sb-post:focus-within { outline: 0.15rem solid var(--sb-accent); outline-offset: 0.2rem; }
.sb-post__link:focus-visible { outline: none; }
@media (hover: hover) {
  .sb-post:hover { transform: translateY(-0.3rem); box-shadow: var(--sb-shadow); border-color: var(--sb-ink); }
  .sb-post:hover .sb-post__img { transform: scale(1.06); }
  .sb-post:hover .sb-post__link { color: var(--sb-accent); }
}

/* ===== ctaf (floating dock) ===== */
.sb-ctaf {
  position: fixed; inset-inline: 0.6rem; bottom: 0.6rem; z-index: 70;
  display: flex; justify-content: center; pointer-events: none;
}
.sb-ctaf > * { pointer-events: auto; }
.sb-ctaf__dock {
  flex: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 0.3rem; padding: 0.3rem;
  border-radius: 999rem; background: var(--sb-paper); box-shadow: var(--sb-shadow); border: 0.0625rem solid var(--sb-rule);
}
.sb-ctaf__btn {
  display: flex; align-items: center; justify-content: center; gap: 0.5rem;
  min-block-size: 3.1rem; border-radius: 999rem; font-weight: 700; font-size: 0.95rem;
  transition: transform 0.4s var(--sb-spring);
}
.sb-ctaf__btn--call { background: var(--sb-accent); color: var(--sb-on-ink); }
.sb-ctaf__btn--wa { background: var(--sb-ink); color: var(--sb-on-ink); }
.sb-ctaf__btn i { font-size: 1.1rem; }
.sb-ctaf__up {
  position: absolute; inset-inline-end: 0; bottom: calc(100% + 0.6rem);
  display: grid; place-items: center; inline-size: 2.9rem; block-size: 2.9rem; border-radius: 50%;
  background: var(--sb-paper); color: var(--sb-ink); border: 0.0625rem solid var(--sb-rule); box-shadow: var(--sb-shadow);
  transition: opacity 0.4s, visibility 0.4s, transform 0.5s var(--sb-spring), background 0.3s, color 0.3s;
}
.sb-js .sb-ctaf__up:not(.sb-ctaf__up--on) { opacity: 0; visibility: hidden; transform: translateY(0.75rem) scale(0.8); }
@media (hover: hover) {
  .sb-ctaf__btn:hover { transform: translateY(-0.15rem); }
  .sb-ctaf__up:hover { background: var(--sb-ink); color: var(--sb-on-ink); }
}

/* ===== ftr (6:00 م — the day is done) ===== */
.sb-ftr {
  margin-top: var(--sb-pad);
  border-radius: 2rem 2rem 0 0;
  background: var(--sb-ink); color: var(--sb-on-ink-muted);
  padding-top: 1.5rem;
}
.sb-ftr__end {
  display: flex; align-items: center; gap: 1rem;
  padding-bottom: 1.25rem; margin-bottom: 1.25rem; border-bottom: 0.0625rem solid color-mix(in srgb, var(--sb-helper) 15%, transparent);
}
.sb-clock--end { --sb-clock-h: 180deg; --sb-clock-face: var(--sb-ink-2); --sb-clock-ink: var(--sb-on-ink); inline-size: 3.75rem; block-size: 3.75rem; }
.sb-ftr__done { display: grid; color: var(--sb-on-ink); font-weight: 700; font-size: 1.05rem; line-height: 1.5; }
.sb-ftr__done-time { color: var(--sb-accent); font-size: 0.85rem; font-variant-numeric: tabular-nums; }
.sb-ftr__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem 1rem; padding-bottom: 1.5rem; }
.sb-ftr__about, .sb-ftr__grid > :last-child { grid-column: 1 / -1; }
.sb-ftr__logo-img { block-size: 2.4rem; inline-size: auto; aspect-ratio: 400 / 120; }
.sb-ftr__text { margin-block: 0.6rem 0.8rem; font-size: 0.86rem; }
.sb-ftr__social { display: flex; gap: 0.4rem; }
.sb-ftr__soc {
  display: grid; place-items: center; inline-size: 2.3rem; block-size: 2.3rem; border-radius: 50%;
  border: 0.0625rem solid color-mix(in srgb, var(--sb-helper) 30%, transparent); color: var(--sb-on-ink);
  transition: background 0.3s, border-color 0.3s, transform 0.4s var(--sb-spring);
}
.sb-ftr__heading { color: var(--sb-on-ink); font-size: 0.95rem; margin-bottom: 0.5rem; }
.sb-ftr__links, .sb-ftr__contact { display: grid; gap: 0.25rem; font-size: 0.86rem; }
.sb-ftr__link { color: var(--sb-on-ink); transition: color 0.25s; }
.sb-ftr__link i, .sb-ftr__plain i { color: var(--sb-accent); }
.sb-ftr__bottom { border-top: 0.0625rem solid color-mix(in srgb, var(--sb-helper) 15%, transparent); }
.sb-ftr__copy { padding-block: 0.9rem; font-size: 0.8rem; }
@media (prefers-reduced-motion: no-preference) {
  .sb-clock--end .sb-clock__hand { transition: transform 1.6s var(--sb-ease); }
  .sb-js:not(.sb-rvoff) .sb-clock--end:not(.sb-rv--in) .sb-clock__hand--m { transform: rotate(-720deg); }
  .sb-js:not(.sb-rvoff) .sb-clock--end:not(.sb-rv--in) .sb-clock__hand--h { transform: rotate(120deg); }
}
@media (hover: hover) {
  .sb-ftr__link:hover { color: var(--sb-accent); }
  .sb-ftr__soc:hover { background: var(--sb-accent); border-color: var(--sb-accent); transform: translateY(-0.2rem); }
}

/* ===================== breakpoints (min-width only) ===================== */
@media (min-width: 481px) {
  .sb-tst__item { inline-size: 42%; }
  .sb-prc__opts { grid-template-columns: repeat(5, 1fr); }
  .sb-prc__route { grid-template-columns: 1fr 1fr; }
}

@media (min-width: 601px) {
  .sb-bll__grid { grid-template-columns: 1fr 1fr; }
  .sb-tb__links { display: flex; }
  .sb-ft__list { grid-template-columns: 1fr 1fr; }
  .sb-prw__grid { grid-template-columns: repeat(3, 1fr); grid-auto-rows: 12rem; }
  .sb-prw__item--big { grid-column: span 2; grid-row: span 2; }
  .sb-ci__list { grid-template-columns: 1fr 1fr; }
  .sb-ftr__grid { grid-template-columns: repeat(3, 1fr); }
  .sb-ftr__about { grid-column: 1 / -1; }
  .sb-ftr__grid > :last-child { grid-column: auto; }
}

@media (min-width: 769px) {
  .sb-body { font-size: 1rem; padding-bottom: 5.5rem; }
  .sb-head--split { grid-template-columns: 1fr auto; gap: 2rem; }
  .sb-head__title, .sb-pt__title, .sb-ci__title { font-size: 1.9rem; }
  .sb-pt__inner { grid-template-columns: 5fr 7fr; gap: 3rem; align-items: start; }
  .sb-pt__media { inline-size: 100%; max-inline-size: 24rem; position: sticky; top: 7rem; }
  .sb-pt__list { grid-template-columns: 1fr 1fr; gap: 0.75rem; }
  .sb-fq__inner { grid-template-columns: 4fr 7fr; gap: 2.5rem; align-items: start; }
  .sb-fq__aside { position: sticky; top: 7rem; }
  .sb-fq__list { padding: 1.25rem 1.5rem 1.5rem; }
  .sb-fq__q, .sb-fq__a { max-inline-size: 75%; }
  .sb-tst__item { inline-size: 30%; }
  .sb-prc__inner { grid-template-columns: 5fr 7fr; gap: 2.5rem; align-items: start; }
  .sb-prc__form { padding: 1.5rem; }
  .sb-prc__route { grid-template-columns: 1.3fr 1fr; }
  .sb-ci__inner { grid-template-columns: 1.1fr 1fr; gap: 2rem; align-items: center; }
  .sb-ci__num { font-size: clamp(2rem, 4.2vw, 3.6rem); }
  .sb-ci__map { grid-column: 1 / -1; aspect-ratio: 21 / 8; }
  .sb-svl__lines { gap: 1.75rem; }
  .sb-svl__stops { display: flex; padding-inline-start: 0; padding-top: 1.5rem; gap: 0; }
  .sb-svl__stops::before { inset-inline: 0; top: 0.35rem; bottom: auto; inline-size: auto; block-size: 0.3rem; transform-origin: right; }
  .sb-svl__stop { flex: 1; text-align: center; font-size: 0.85rem; }
  .sb-svl__stop::before { inset-inline-start: calc(50% - 0.5rem); top: -1.5rem; }
  .sb-ctaf { inset-inline: 0; bottom: 1rem; }
  .sb-ctaf__dock { flex: none; display: flex; }
  .sb-ctaf__btn { padding-inline: 1.5rem; }
  .sb-ctaf__up { position: fixed; inset-inline-end: 1.25rem; bottom: 1rem; }
  .sb-ftr { border-radius: 3rem 3rem 0 0; padding-top: 2.25rem; }
  .sb-ftr__done { font-size: 1.4rem; }
  .sb-clock--end { inline-size: 4.75rem; block-size: 4.75rem; }
}
@media (min-width: 769px) and (prefers-reduced-motion: no-preference) {
  .sb-js:not(.sb-rvoff) .sb-svl__line:not(.sb-rv--in) .sb-svl__stops::before { transform: scaleX(0); }
}

@media (min-width: 1025px) {
  .sb-bll__grid { grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
  .sb-hdr { margin-inline: 1.25rem; }
  .sb-hdr__inner { flex-wrap: nowrap; padding-inline: 1.5rem 0.5rem; min-block-size: 4.25rem; gap: 1rem; border-radius: 999rem; }
  .sb-hdr__logo { margin-inline-end: 0; }
  .sb-hdr__logo-img { block-size: 2.5rem; }
  .sb-hdr__burger { display: none; }
  .sb-js .sb-hdr__nav:not(.sb-hdr__nav--open), .sb-js .sb-hdr__nav, .sb-hdr__nav {
    display: block; position: static; order: 0; flex: 1; flex-basis: auto;
    padding: 0; border: 0; border-radius: 0; box-shadow: none; max-block-size: none; overflow: visible; background: none; animation: none;
  }
  .sb-hdr__menu { flex-direction: row; justify-content: center; gap: 0.15rem; padding: 0; }
  .sb-hdr__item { position: relative; flex-wrap: nowrap; border: 0; }
  .sb-js .sb-hdr__item:first-child { border: 0; }
  .sb-hdr__link { flex: none; padding: 0.45rem 0.9rem; border-radius: 999rem; font-size: 0.9rem; transition: background 0.25s, color 0.25s; }
  .sb-hdr__item--dd .sb-hdr__link { padding-inline-end: 0.2rem; }
  .sb-hdr__ddbtn { border: 0; inline-size: 1.8rem; block-size: 1.8rem; font-size: 0.65rem; }
  .sb-hdr__dd, .sb-js .sb-hdr__item--dd:not(.sb-hdr__item--open) .sb-hdr__dd {
    display: grid; grid-template-columns: 1fr 1fr; gap: 0.25rem;
    position: absolute; top: calc(100% + 1rem); left: 50%; z-index: 5;
    inline-size: 32rem; padding: 0.6rem; border-radius: 1.5rem;
    background: var(--sb-hdr-bg); border: 0.0625rem solid var(--sb-rule); box-shadow: var(--sb-shadow);
    opacity: 0; visibility: hidden; transform: translate(-50%, 0.75rem);
    transition: opacity 0.3s, transform 0.4s var(--sb-ease), visibility 0.3s;
  }
  .sb-hdr__dd::before { content: ""; position: absolute; inset-inline: 0; top: -1.1rem; block-size: 1.1rem; }
  .sb-hdr__item--dd:hover .sb-hdr__dd,
  .sb-hdr__item--dd:focus-within .sb-hdr__dd,
  .sb-js .sb-hdr__item--dd:not(.sb-hdr__item--open):hover .sb-hdr__dd,
  .sb-js .sb-hdr__item--dd:not(.sb-hdr__item--open):focus-within .sb-hdr__dd,
  .sb-js .sb-hdr__item--dd.sb-hdr__item--open .sb-hdr__dd { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
  .sb-hdr__ddlink { padding: 0.5rem 0.6rem; }
  .sb-hdr__call { inline-size: auto; block-size: auto; display: flex; gap: 0.6rem; padding: 0.35rem 0.35rem 0.35rem 1.1rem; border-radius: 999rem; }
  .sb-hdr__call-icon { display: grid; place-items: center; inline-size: 2.4rem; block-size: 2.4rem; border-radius: 50%; background: var(--sb-on-ink); color: var(--sb-accent); order: 2; }
  .sb-hdr__call-num { display: inline; font-weight: 700; font-size: 0.95rem; }
  .sb-ft__ruler { block-size: 2rem; margin-bottom: 0; }
  .sb-ft__list { grid-template-columns: repeat(4, 1fr); gap: 1rem; }
  .sb-ft__item { grid-template-columns: 1fr; padding: 1.5rem 1rem 1rem; border-radius: 0 0 var(--sb-r) var(--sb-r); background: none; border-inline-start: 0.0625rem solid var(--sb-rule); }
  .sb-ft__item::before { content: ""; position: absolute; top: 0; inset-inline-start: -0.3rem; inline-size: 0.6rem; block-size: 0.6rem; border-radius: 50%; background: var(--sb-accent); }
  .sb-ft__chip, .sb-ft__name, .sb-ft__desc { grid-column: 1; }
  .sb-ft__icon { grid-row: auto; margin-bottom: 0.6rem; inline-size: 3.25rem; block-size: 3.25rem; font-size: 1.3rem; }
  .sb-ft__chip { order: -1; }
  .sb-prw__grid { grid-auto-rows: 14rem; gap: 0.75rem; }
  .sb-prw__cap { inset-inline: 0.75rem; bottom: 0.75rem; padding: 0.6rem 0.9rem; }
  .sb-prw__name { font-size: 0.95rem; }
  .sb-tst__item { inline-size: calc((100% - 4rem) / 5); }
  .sb-ftr__grid { grid-template-columns: 1.5fr 1fr 0.8fr 1fr; gap: 2rem; }
  .sb-ftr__about { grid-column: auto; }
}
@media (min-width: 1025px) and (hover: hover) {
  .sb-hdr__link:hover { background: var(--sb-sand); }
}

@media (min-width: 1281px) {
  .sb-head__title, .sb-pt__title, .sb-ci__title { font-size: 2.3rem; }
  .sb-hdr__now {
    display: inline-flex; align-items: center; gap: 0.45rem; flex: none;
    padding: 0.3rem 0.8rem; border-radius: 999rem; background: var(--sb-sand); font-size: 0.78rem; color: var(--sb-muted);
  }
  .sb-hdr__now-dot { inline-size: 0.5rem; block-size: 0.5rem; border-radius: 50%; background: var(--sb-accent); }
  .sb-hdr__now-time { color: var(--sb-ink); font-weight: 700; font-variant-numeric: tabular-nums; }
  .sb-prw__grid { grid-auto-rows: 15rem; }
}

@media (min-width: 1441px) {
  .sb-body { font-size: 1.05rem; }
}

@media (min-width: 1921px) {
  .sb-wrap, .sb-tb__inner { width: min(100% - 4rem, 88rem); }
}

@media (prefers-reduced-motion: reduce) {
  .sb-body *, .sb-body *::before, .sb-body *::after { transition-duration: 0.01ms !important; animation: none !important; scroll-behavior: auto !important; }
}
