:root {
  --bg: #f7f7f4;
  --ink: #18201f;
  --muted: #66706d;
  --line: #dfe4df;
  --surface: #ffffff;
  --primary: #0f766e;
  --accent: #f59e0b;
}

* { box-sizing: border-box; }
body { margin: 0; font-family: Arial, "Noto Sans Thai", sans-serif; color: var(--ink); background: var(--bg); }
button, input, textarea, select { font: inherit; }
a { color: inherit; text-decoration: none; }

.admin-body { display: grid; grid-template-columns: 240px 1fr; min-height: 100vh; }
.sidebar { background: #10201e; color: white; padding: 24px 16px; }
.brand { font-size: 24px; font-weight: 800; margin-bottom: 28px; }
.nav-item { width: 100%; border: 0; background: transparent; color: #b9c7c3; text-align: left; padding: 12px 14px; border-radius: 8px; cursor: pointer; }
.nav-item.active { background: #24433f; color: white; }
.admin-main { padding: 28px; }
.topbar { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin-bottom: 24px; }
.topbar h1 { margin: 2px 0 0; font-size: 30px; }
.eyebrow { margin: 0; color: var(--primary); font-weight: 800; text-transform: uppercase; font-size: 12px; letter-spacing: 0; }
.password-box { display: grid; gap: 6px; max-width: 280px; width: 100%; }
.panel { display: none; }
.panel.active { display: block; }
.workspace-grid { display: grid; grid-template-columns: minmax(360px, 680px) 1fr; gap: 24px; align-items: start; }
.editor, .setup, .table-wrap { background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 20px; }
.section-title { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.section-title h2 { margin: 0; font-size: 18px; }
.section-title.compact { margin-top: 18px; }
label { display: grid; gap: 7px; color: var(--muted); font-size: 13px; font-weight: 700; margin-bottom: 12px; }
input, textarea, select { width: 100%; border: 1px solid var(--line); border-radius: 8px; padding: 11px 12px; background: white; color: var(--ink); }
input[type="color"] { height: 44px; padding: 4px; }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.branch-editor { display: grid; gap: 12px; margin-bottom: 12px; }
.branch-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1.4fr 1.4fr auto 38px;
  gap: 10px;
  align-items: end;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
  background: #fbfbf8;
}
.branch-row label { margin-bottom: 0; }
.branch-active { align-self: center; margin-top: 20px; white-space: nowrap; }
.branch-add { margin-bottom: 8px; }
.actions, .card-actions { display: flex; gap: 10px; align-items: center; }
.primary-btn, .secondary-btn, .icon-btn, .card-actions button, .card-actions a { border: 1px solid var(--line); border-radius: 8px; padding: 11px 14px; cursor: pointer; background: white; }
.primary-btn { background: var(--primary); color: white; border-color: var(--primary); font-weight: 800; }
.secondary-btn { background: #eef5f2; color: #163d39; }
.icon-btn { width: 38px; height: 38px; padding: 0; font-size: 24px; }
.page-list { display: grid; gap: 10px; }
.page-card { background: white; border: 1px solid var(--line); border-radius: 8px; padding: 14px; display: flex; justify-content: space-between; gap: 14px; align-items: center; }
.page-card span { display: block; color: var(--muted); font-size: 13px; margin-top: 4px; }
table { width: 100%; border-collapse: collapse; background: white; }
th, td { text-align: left; padding: 12px; border-bottom: 1px solid var(--line); font-size: 14px; }
code { background: #eef2ef; padding: 2px 5px; border-radius: 4px; }

.landing-body { background: #fffaf6; }
.landing-shell { min-height: 100vh; }
.hero { min-height: 78vh; background-size: cover; background-position: center; color: white; display: flex; flex-direction: column; overflow: hidden; }
.landing-nav { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px min(6vw, 72px); }
.landing-nav strong { font-size: 24px; }
.landing-nav a { border: 1px solid rgba(255,255,255,.45); border-radius: 8px; padding: 10px 14px; }
.hero-content { width: min(820px, 92vw); margin: auto 0; padding: 32px min(6vw, 72px) 72px; }
.offer { display: inline-block; background: var(--accent); color: #1d1400; padding: 8px 12px; border-radius: 8px; font-weight: 800; }
.hero h1 { font-size: clamp(34px, 5vw, 58px); line-height: 1.12; margin: 16px 0; letter-spacing: 0; max-width: 12em; overflow-wrap: break-word; }
.hero-content > p:not(.offer) { font-size: 20px; line-height: 1.65; color: rgba(255,255,255,.88); max-width: 760px; }
.hero-cta { display: inline-block; margin-top: 18px; background: var(--primary); color: white; padding: 14px 18px; border-radius: 8px; font-weight: 800; }
.trust-band { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--line); }
.trust-band div { padding: 22px min(4vw, 44px); border-right: 1px solid var(--line); }
.trust-band strong, .trust-band span { display: block; }
.trust-band span { color: var(--muted); margin-top: 4px; }
.lead-section { display: grid; grid-template-columns: 1fr minmax(320px, 520px); gap: 42px; padding: 70px min(6vw, 72px); align-items: start; }
.lead-section h2 { font-size: 42px; margin: 8px 0 14px; }
.lead-section p { color: var(--muted); line-height: 1.7; }
.lead-form { border: 1px solid var(--line); border-radius: 8px; padding: 22px; background: #fbfbf8; }
.check { grid-template-columns: auto 1fr; align-items: center; color: var(--ink); font-weight: 400; }
.check input { width: auto; }
.form-status { min-height: 24px; color: var(--primary); font-weight: 800; }
.not-found { padding: 60px; font-size: 24px; }

.clinic-hero {
  min-height: 760px;
  background-size: cover;
  background-position: center;
  color: white;
}

.clinic-nav {
  backdrop-filter: blur(12px);
  background: rgba(30, 10, 18, .38);
  border-bottom: 1px solid rgba(255,255,255,.16);
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 10px;
}

.clinic-hero-inner {
  width: min(1180px, 92vw);
  margin: 0 auto;
  min-height: 660px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 390px;
  gap: 44px;
  align-items: center;
  padding: 48px 0 70px;
}

.hero-copy {
  max-width: 720px;
}

.clinic-hero h1 {
  margin: 18px 0;
  font-size: clamp(40px, 5.4vw, 70px);
  line-height: 1.08;
  letter-spacing: 0;
  overflow-wrap: break-word;
}

.clinic-hero .hero-copy > p:not(.offer) {
  font-size: 20px;
  line-height: 1.72;
  color: rgba(255,255,255,.9);
  max-width: 720px;
}

.hero-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 24px;
}

.hero-bullets {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 22px;
}

.hero-bullets span {
  border: 1px solid rgba(255,255,255,.32);
  background: rgba(255,255,255,.1);
  border-radius: 8px;
  padding: 9px 12px;
  color: rgba(255,255,255,.92);
  font-weight: 700;
}

.ghost-cta {
  display: inline-block;
  border: 1px solid rgba(255,255,255,.5);
  color: white;
  padding: 14px 18px;
  border-radius: 8px;
  font-weight: 800;
}

.hero-form {
  background: rgba(255,250,246,.96);
  color: var(--ink);
  box-shadow: 0 24px 70px rgba(0,0,0,.24);
}

.hero-form h2 {
  margin: 0 0 16px;
  font-size: 24px;
}

.form-intro {
  color: var(--muted);
  line-height: 1.55;
  margin: -4px 0 14px;
}

.cred-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  background: #2b0f1b;
  color: white;
}

.cred-strip div {
  padding: 24px min(3vw, 38px);
  border-right: 1px solid rgba(255,255,255,.14);
}

.cred-strip strong,
.cred-strip span {
  display: block;
}

.cred-strip strong {
  font-size: 24px;
  color: #f1c86b;
}

.cred-strip span {
  margin-top: 5px;
  color: rgba(255,255,255,.74);
  line-height: 1.5;
}

.clinic-section {
  padding: 72px min(6vw, 72px);
}

.section-heading {
  width: min(720px, 100%);
  margin-bottom: 26px;
}

.section-heading h2,
.promo-section h2,
.doctor-section h2,
.consult-section h2 {
  margin: 8px 0 12px;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1.18;
  letter-spacing: 0;
}

.service-grid,
.branch-grid,
.program-grid,
.promo-grid,
.review-grid,
.flow-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.service-grid article,
.branch-grid article,
.program-card,
.program-tile,
.promo-grid article,
.review-grid article,
.flow-grid article {
  border: 1px solid #eaded3;
  background: white;
  border-radius: 8px;
  padding: 20px;
  min-height: 150px;
}

.branch-section {
  padding-bottom: 0;
}

.branch-grid article {
  min-height: 190px;
  background: #fffdf9;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.branch-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: auto;
}

.branch-inbox {
  display: inline-block;
  border-radius: 8px;
  padding: 12px 14px;
  font-weight: 800;
}

.branch-inbox {
  background: #111;
  color: white;
}

.branch-label {
  display: inline-block;
  color: #8a6828;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.service-grid strong,
.branch-grid strong,
.program-card strong,
.program-tile strong,
.promo-grid strong,
.review-grid strong,
.flow-grid strong {
  display: block;
  font-size: 20px;
  color: #3a1020;
  margin-bottom: 10px;
}

.service-grid span,
.branch-grid span,
.program-card span,
.promo-section p,
.program-card p,
.promo-grid p,
.review-grid p,
.flow-grid span,
.doctor-section p,
.consult-section p {
  color: var(--muted);
  line-height: 1.7;
}

.program-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}

.program-tile {
  border: 0;
  background: transparent;
  padding: 0;
  min-height: 0;
  text-align: center;
}

.program-open {
  display: block;
  width: 100%;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
}

.program-open img {
  width: 100%;
  aspect-ratio: 1 / .78;
  object-fit: cover;
  border-radius: 8px;
  display: block;
  box-shadow: 0 12px 30px rgba(0,0,0,.1);
}

.program-visual {
  width: 100%;
  aspect-ratio: 1 / .78;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  text-align: left;
  padding: 22px;
  color: white;
  overflow: hidden;
  position: relative;
  box-shadow: 0 12px 30px rgba(0,0,0,.1);
  background:
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.28), transparent 24%),
    linear-gradient(135deg, #1f1f1f, #7a5a1e);
}

.program-visual::before,
.program-visual::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.program-visual::before {
  inset: 18px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 8px;
}

.program-visual::after {
  right: -42px;
  top: -42px;
  width: 150px;
  height: 150px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
}

.program-visual span,
.program-visual strong,
.program-visual em {
  position: relative;
  z-index: 1;
}

.program-visual span {
  display: inline-block;
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 999px;
  padding: 7px 11px;
  font-style: normal;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 12px;
}

.program-visual strong {
  font-size: clamp(24px, 3vw, 38px);
  line-height: 1.08;
  margin: 0 0 8px;
  color: white;
}

.program-visual em {
  font-style: normal;
  color: rgba(255,255,255,.82);
  line-height: 1.45;
}

.program-visual.large {
  aspect-ratio: 1 / .9;
  min-height: 360px;
}

.visual-thread { background: radial-gradient(circle at 75% 24%, rgba(255,255,255,.22), transparent 25%), linear-gradient(135deg, #2a1b2f, #b48a56); }
.visual-thread::before { border-top: 2px solid rgba(255,255,255,.55); transform: skewY(-8deg); }
.visual-botox { background: radial-gradient(circle at 76% 22%, rgba(255,255,255,.24), transparent 24%), linear-gradient(135deg, #102033, #4a8ab8); }
.visual-botox::before { border-style: dashed; }
.visual-filler { background: radial-gradient(circle at 78% 18%, rgba(255,255,255,.25), transparent 24%), linear-gradient(135deg, #311525, #cf7f99); }
.visual-filler::before { border-radius: 40% 60% 45% 55%; }
.visual-skin { background: radial-gradient(circle at 72% 22%, rgba(255,255,255,.34), transparent 22%), linear-gradient(135deg, #174238, #61bfa4); }
.visual-skin::before { border-radius: 999px; }
.visual-peptide { background: radial-gradient(circle at 76% 18%, rgba(255,255,255,.25), transparent 24%), linear-gradient(135deg, #273119, #93a84a); }
.visual-peptide::before { border-radius: 24px; border-style: dotted; }
.visual-drip { background: radial-gradient(circle at 76% 20%, rgba(255,255,255,.24), transparent 24%), linear-gradient(135deg, #17243d, #6da9d7); }
.visual-drip::before { border-radius: 8px 8px 40px 40px; }
.visual-laser { background: radial-gradient(circle at 76% 20%, rgba(255,255,255,.28), transparent 24%), linear-gradient(135deg, #30141b, #d05d5d); }
.visual-laser::before { border-left: 2px solid rgba(255,255,255,.72); transform: skewX(-18deg); }
.visual-consult { background: radial-gradient(circle at 76% 20%, rgba(255,255,255,.24), transparent 24%), linear-gradient(135deg, #191919, #7b6a50); }
.visual-consult::before { border-radius: 8px; }

.program-tile strong {
  color: #3a1020;
  font-size: 22px;
  margin: 18px 0 8px;
}

.program-detail-btn {
  border: 0;
  border-radius: 999px;
  background: #e5f2fb;
  color: #2b6fa3;
  padding: 9px 15px;
  font-weight: 800;
  cursor: pointer;
}

.program-detail {
  margin-top: 58px;
  display: grid;
  grid-template-columns: minmax(280px, 470px) 1fr;
  gap: 34px;
  align-items: start;
  padding-top: 8px;
}

.program-detail-media img {
  width: 100%;
  border-radius: 8px;
  display: block;
  box-shadow: 0 16px 38px rgba(0,0,0,.12);
}

.program-detail-copy span {
  display: inline-block;
  background: #e5f2fb;
  color: #2b6fa3;
  border-radius: 8px;
  padding: 6px 10px;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 12px;
}

.program-detail-copy h3 {
  margin: 0 0 12px;
  color: #2b6fa3;
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.14;
}

.program-detail-copy p,
.program-detail-copy li {
  color: var(--ink);
  line-height: 1.75;
}

.program-detail-copy ul {
  margin: 16px 0 0;
  padding-left: 20px;
}

.program-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.ghost-light-cta {
  display: inline-block;
  border: 1px solid #eaded3;
  border-radius: 8px;
  padding: 14px 18px;
  color: #3a1020;
  font-weight: 800;
}

.program-card p,
.promo-grid p,
.review-grid p {
  margin: 0;
}

.program-card .fit {
  margin: 0 0 10px;
  color: #3a1020;
  font-weight: 800;
}

.select-program {
  margin-top: 16px;
  border: 1px solid #eaded3;
  border-radius: 8px;
  background: #fff4e4;
  color: #3a1020;
  padding: 10px 12px;
  font-weight: 800;
  cursor: pointer;
}

.promo-cards-section {
  background:
    radial-gradient(circle at 18% 8%, rgba(215,168,79,.18), transparent 22%),
    radial-gradient(circle at 82% 12%, rgba(255,255,255,.75), transparent 20%),
    #f7f2e9;
}

.promo-cards-section .section-heading {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.promo-cards-section .section-heading h2 {
  font-size: clamp(38px, 5vw, 58px);
}

.promo-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 30px 22px;
}

.promo-card {
  border: 0;
  background: transparent;
  padding: 0;
  min-height: 0;
  text-align: center;
}

.promo-poster {
  width: 100%;
  aspect-ratio: 1 / .86;
  border: 0;
  border-radius: 8px;
  padding: 20px;
  color: white;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  text-align: left;
  box-shadow: 0 12px 28px rgba(0,0,0,.13);
  position: relative;
  overflow: hidden;
}

.promo-poster::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 8px;
}

.promo-poster span,
.promo-poster strong,
.promo-poster em {
  position: relative;
  z-index: 1;
}

.promo-poster span {
  display: inline-block;
  background: rgba(255,255,255,.2);
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 10px;
}

.promo-poster strong {
  color: white;
  font-size: clamp(22px, 3vw, 34px);
  line-height: 1.05;
  margin: 0 0 8px;
}

.promo-poster em {
  font-style: normal;
  color: #fff2cb;
  font-weight: 800;
}

.promo-card h3 {
  margin: 16px 0 8px;
  color: #3a1020;
  font-size: 18px;
}

.promo-detail-btn {
  border: 0;
  border-radius: 999px;
  background: white;
  color: #3a1020;
  padding: 9px 15px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
}

.promo-detail {
  display: grid;
  grid-template-columns: minmax(280px, 420px) 1fr;
  gap: 34px;
  align-items: start;
  margin-top: 58px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(234,222,211,.8);
  border-radius: 8px;
  padding: 26px;
}

.promo-detail-poster {
  min-height: 360px;
  border-radius: 8px;
  padding: 26px;
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  position: relative;
  overflow: hidden;
}

.promo-detail-poster::before {
  content: "";
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 8px;
}

.promo-detail-poster span,
.promo-detail-poster strong,
.promo-detail-poster em {
  position: relative;
  z-index: 1;
}

.promo-detail-poster span {
  display: inline-block;
  background: rgba(255,255,255,.2);
  border-radius: 999px;
  padding: 7px 11px;
  font-weight: 800;
  margin-bottom: 12px;
}

.promo-detail-poster strong {
  color: white;
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.05;
  margin-bottom: 10px;
}

.promo-detail-poster em {
  color: #fff2cb;
  font-style: normal;
  font-weight: 800;
}

.promo-detail-copy span {
  display: inline-block;
  background: #fff4e4;
  color: #7b5a19;
  border-radius: 999px;
  padding: 7px 11px;
  font-weight: 800;
  margin-bottom: 12px;
}

.promo-detail-copy h3 {
  color: #3a1020;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1.1;
  margin: 0 0 12px;
}

.promo-detail-copy p,
.promo-detail-copy li {
  color: var(--ink);
  line-height: 1.75;
}

.promo-detail-copy ul {
  margin: 16px 0 0;
  padding-left: 20px;
}

.review-section {
  background: #fffaf6;
}

.review-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.review-grid article {
  min-height: 220px;
}

.stars {
  color: #d7a84f;
  font-size: 18px;
  margin-bottom: 12px;
  letter-spacing: 0;
}

.medical-note {
  margin-top: 18px;
  padding: 14px 16px;
  background: #fff4e4;
  border-left: 4px solid var(--accent);
  border-radius: 8px;
}

.flow-section {
  background: #fffaf6;
}

.flow-grid article {
  min-height: 138px;
}

.faq-section {
  background: white;
}

.faq-list {
  display: grid;
  gap: 10px;
  max-width: 920px;
}

.faq-list details {
  border: 1px solid #eaded3;
  border-radius: 8px;
  background: #fffdf9;
  padding: 16px 18px;
}

.faq-list summary {
  cursor: pointer;
  font-weight: 800;
  color: #3a1020;
}

.faq-list p {
  color: var(--muted);
  line-height: 1.7;
  margin-bottom: 0;
}

.promo-section {
  margin: 0 min(6vw, 72px) 72px;
  padding: 34px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  background: #3a1020;
  color: white;
  border-radius: 8px;
}

.promo-section p {
  color: rgba(255,255,255,.78);
  max-width: 720px;
}

.doctor-section {
  display: grid;
  grid-template-columns: minmax(280px, 420px) 1fr;
  gap: 42px;
  align-items: center;
  padding: 0 min(6vw, 72px) 82px;
}

.doctor-photo {
  min-height: 360px;
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(58,16,32,.06), rgba(201,154,61,.2)),
    url("https://images.unsplash.com/photo-1666214280557-f1b5022eb634?auto=format&fit=crop&w=900&q=80");
  background-size: cover;
  background-position: center;
}

.consult-section {
  display: grid;
  grid-template-columns: minmax(280px, 420px) 1fr;
  gap: 42px;
  align-items: center;
  padding: 0 min(6vw, 72px) 82px;
}

.consult-panel {
  min-height: 320px;
  border-radius: 8px;
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  color: white;
  background:
    linear-gradient(145deg, rgba(17,17,17,.82), rgba(215,168,79,.58)),
    url("https://images.unsplash.com/photo-1629909613654-28e377c37b09?auto=format&fit=crop&w=900&q=85");
  background-size: cover;
  background-position: center;
}

.consult-panel strong {
  font-size: 34px;
  line-height: 1.12;
  margin-bottom: 10px;
}

.consult-panel span {
  color: rgba(255,255,255,.84);
  line-height: 1.6;
}

.sticky-contact {
  position: fixed;
  left: 50%;
  bottom: 16px;
  transform: translateX(-50%);
  z-index: 20;
  display: none;
  grid-template-columns: repeat(2, 1fr);
  width: min(420px, calc(100vw - 28px));
  background: #111;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 18px 50px rgba(0,0,0,.32);
}

.sticky-contact a {
  color: white;
  text-align: center;
  padding: 12px 8px;
  font-weight: 800;
  border-right: 1px solid rgba(255,255,255,.14);
}

.sticky-contact a:last-child {
  background: var(--accent);
  color: #201400;
  border-right: 0;
}

@media (max-width: 900px) {
  .admin-body { grid-template-columns: 1fr; }
  .sidebar { display: flex; gap: 8px; align-items: center; overflow-x: auto; }
  .brand { margin: 0 16px 0 0; }
  .nav-item { width: auto; white-space: nowrap; }
  .topbar, .workspace-grid, .lead-section { grid-template-columns: 1fr; display: grid; }
  .field-row, .trust-band, .clinic-hero-inner, .cred-strip, .service-grid, .branch-grid, .program-grid, .program-detail, .promo-grid, .promo-detail, .review-grid, .flow-grid, .doctor-section, .consult-section { grid-template-columns: 1fr; }
  .branch-row { grid-template-columns: 1fr; }
  .branch-active { margin-top: 0; }
  .admin-main { padding: 18px; }
  .hero { min-height: auto; }
  .landing-nav { padding: 14px 20px; align-items: flex-start; }
  .landing-nav strong { font-size: 20px; }
  .landing-nav a { font-size: 14px; padding: 9px 11px; }
  .hero-content { padding: 34px 20px 54px; width: 100%; }
  .hero h1 { font-size: clamp(30px, 9vw, 42px); line-height: 1.16; max-width: 100%; }
  .hero-content > p:not(.offer) { font-size: 17px; line-height: 1.6; }
  .nav-links { display: none; }
  .clinic-hero { min-height: auto; }
  .clinic-hero-inner { min-height: auto; padding: 40px 0 44px; gap: 26px; }
  .clinic-hero h1 { font-size: clamp(32px, 10vw, 44px); line-height: 1.14; }
  .clinic-hero .hero-copy > p:not(.offer) { font-size: 17px; line-height: 1.62; }
  .cred-strip div { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
  .clinic-section { padding: 50px 20px; }
  .program-grid { gap: 28px; }
  .program-detail { margin-top: 42px; }
  .promo-section { margin: 0 20px 50px; padding: 24px; display: grid; }
  .promo-detail { padding: 18px; margin-top: 40px; }
  .promo-detail-poster { min-height: 260px; }
  .doctor-section { padding: 0 20px 56px; gap: 24px; }
  .doctor-photo { min-height: 280px; }
  .consult-section { padding: 0 20px 56px; gap: 24px; }
  .consult-panel { min-height: 260px; }
  .sticky-contact { display: grid; }
  .landing-body { padding-bottom: 68px; }
}

@media (max-height: 720px) and (min-width: 901px) {
  .hero { min-height: 680px; }
  .hero h1 { font-size: clamp(34px, 4.4vw, 50px); }
  .hero-content { padding-top: 24px; padding-bottom: 54px; }
}
