/* Home (loaded only on /, after pages.css). Every selector targets hm- classes or the .hm wrapper after the hero, never the protected
   hero search card or its parents' layout (.hero, .hero-grid and their public-v12.css rules are unchanged). */
.hero .hm-title{font-size:clamp(36px,3.6vw,52px);letter-spacing:-.03em;line-height:1.04;margin:18px 0 18px}
.hero .hm-title span{display:block}
.hm-lead{font-size:clamp(17px,1.5vw,19px)}.hm h2{font-size:clamp(32px,3.4vw,46px)}
.hm-steps{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px}
.hm-steps li{display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.75);border:1px solid var(--line)}
.hm-step-ico{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:14px;background:var(--dark);color:#e3b574}
.hm-step-ico .ab-ico{width:22px;height:22px}
.hm-steps b{display:block;font-family:Georgia,"Times New Roman",serif;font-size:19px;color:var(--ink)}.hm-steps span{font-size:14px;color:var(--muted);line-height:1.5}
.hm-trust{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hm-trust-list{list-style:none;margin-top:0;margin-bottom:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}
.hm-trust-list li{display:flex;gap:14px;align-items:flex-start;padding:28px 20px;border-right:1px solid var(--line)}.hm-trust-list li:last-child{border-right:0}
.hm-trust-list .ab-ico{width:44px;height:44px;flex-basis:44px;padding:10px;border-radius:13px;background:var(--ab-tint);color:var(--warm)}
.hm-trust-list b{display:block;font-size:15px}.hm-trust-list span{display:block;font-size:13px;color:var(--muted);line-height:1.5;margin-top:3px}
.hm-sample-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,88px);align-items:center}
.hm-points{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px}
.hm-points li{display:flex;gap:12px;align-items:center;font-size:16px;color:#5b544b}.hm-points b{color:var(--ink)}
.hm-points .ab-ico{width:38px;height:38px;flex-basis:38px;padding:8px;border-radius:12px;background:var(--ab-tint);color:var(--warm)}
.hm-card{position:relative;padding:clamp(24px,3vw,36px);border-radius:var(--ab-radius);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.hm-card-flag{display:inline-block;margin-bottom:18px;padding:7px 12px;border-radius:999px;background:var(--dark);color:#e3b574;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.hm-card-head{display:flex;gap:16px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}
.hm-avatar{display:grid;place-items:center;flex:0 0 72px;width:72px;height:72px;border-radius:50%;background:linear-gradient(145deg,#c68727,#7e4a0b);color:#fff}.hm-avatar .ab-ico{width:34px;height:34px}
.hm-card-head strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:24px}.hm-card-head small{color:var(--muted);font-size:14px}
.hm-card-rows{margin:6px 0 0}.hm-card-rows>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #f0e6d8}
.hm-card-rows dt{font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.hm-card-rows dd{margin:0;text-align:right;font-weight:750;color:var(--ink);font-size:14px;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px}
.hm-card-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.hm-card-tags span{padding:7px 11px;border-radius:10px;background:#fff8ee;border:1px solid #e6d5bd;font-size:12px;font-weight:800}
.hm-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.hm-card-actions span{display:inline-flex;align-items:center;gap:6px;padding:9px 13px;border-radius:12px;background:var(--soft);border:1px solid var(--line);font-size:13px;font-weight:800;color:var(--ink)}
.hm-card-actions .ab-ico{width:16px;height:16px;color:var(--warm)}
.hm-layer{background:var(--dark);color:#fff}
.hm-layer h2{color:#fff}.hm-layer p{color:#d8cfc3}.hm-layer .ab-kicker{color:#e3b574}
.hm-layer-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,6vw,88px);align-items:center}
.hm-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:850;color:#e3b574;border-bottom:2px solid rgba(227,181,116,.5)}.hm-link .ab-ico{width:18px;height:18px}
.hm-clarity .hm-link{color:#75480f;border-color:var(--warm)}
.hm-net{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:8px}
.hm-net .n1:after,.hm-net .n2:after,.hm-net .n3:after,.hm-net .n4:before,.hm-net .n5:before,.hm-net .n6:before{content:"";position:absolute;left:50%;width:2px;height:14px;background:rgba(227,181,116,.6)}.hm-net .n1:after,.hm-net .n2:after,.hm-net .n3:after{bottom:-15px}.hm-net .n4:before,.hm-net .n5:before,.hm-net .n6:before{top:-15px}
.hm-net span{position:relative;display:flex;align-items:center;gap:10px;padding:14px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);font-weight:800;font-size:14px;color:#fff}
.hm-net span .ab-ico{width:22px;height:22px;flex-basis:22px;color:#e3b574}
.hm-net .hm-net-core{grid-column:1/-1;grid-row:2;justify-content:center;padding:22px;background:var(--warm);border-color:var(--warm);font-family:Georgia,"Times New Roman",serif;font-size:22px}
.hm-net .hm-net-core .ab-ico{color:#fff;width:28px;height:28px}
.hm-net .n1{grid-row:1;grid-column:1}.hm-net .n2{grid-row:1;grid-column:2}.hm-net .n3{grid-row:1;grid-column:3}
.hm-net .n4{grid-row:3;grid-column:1}.hm-net .n5{grid-row:3;grid-column:2}.hm-net .n6{grid-row:3;grid-column:3}
.hm-clarity{background:var(--soft);border-bottom:1px solid var(--line)}
.hm-clarity .ab-head-center{max-width:900px}
.hm-clarity-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hm-clarity-list li{padding:clamp(26px,3vw,36px);border-radius:24px;background:#fff;border:1px solid var(--line)}
.hm-clarity-list>li>.ab-ico{width:52px;height:52px;padding:13px;border-radius:16px;background:var(--ab-tint);color:var(--warm);margin-bottom:16px}
.hm-clarity-list p{margin:0;font-size:16px}
.hm-more{text-align:center;margin:36px 0 0}
.hm-pro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,88px);align-items:center}
.hm-pro-photo{margin:0;border-radius:var(--ab-radius);overflow:hidden;box-shadow:var(--shadow);background:var(--soft)}.hm-pro-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
@media(max-width:980px){.hm-trust-list{grid-template-columns:1fr 1fr}.hm-trust-list li:nth-child(2){border-right:0}.hm-sample-grid,.hm-layer-grid,.hm-pro-grid{grid-template-columns:1fr}}
@media(max-width:860px){.hm-clarity-list{grid-template-columns:1fr}}
@media(max-width:560px){.hm-trust-list{grid-template-columns:1fr}.hm-trust-list li{border-right:0;border-bottom:1px solid var(--line);padding:20px 4px}.hm-net{grid-template-columns:1fr 1fr}.hm-net .n1,.hm-net .n2,.hm-net .n3,.hm-net .n4,.hm-net .n5,.hm-net .n6{grid-row:auto;grid-column:auto}.hm-net .hm-net-core{grid-row:1}.hm-net span:before,.hm-net span:after{display:none}.hm-card-rows>div{flex-direction:column;align-items:flex-start}.hm-card-rows dd{justify-content:flex-start;text-align:left}}
.hm-popular{padding-bottom:clamp(40px,5vw,72px)}
.hm-popular-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:32px}.hm-popular-head h2{margin-bottom:0}
.hm-popular-head p{max-width:420px;margin:0;font-size:15px}
.hm-popular-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}
.hm-popular-grid>div{padding:clamp(22px,3vw,32px);border-radius:var(--ab-radius);background:#fff;border:1px solid var(--line);box-shadow:var(--softshadow)}
.hm-popular-grid h3{font-size:20px;margin:0 0 16px}
.hm-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.hm-chips a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:999px;background:var(--dark);color:#fff;font-weight:800;font-size:14px;transition:transform .2s,background .2s}
.hm-chips a:hover{background:#2c271f;transform:translateY(-1px)}.hm-chips .ab-ico{width:17px;height:17px;flex-basis:17px;color:#e3b574}
.hm-chips.is-soft a{background:#fff8ee;color:var(--ink);border:1px solid #e6d5bd}.hm-chips.is-soft a:hover{background:#fbf0df}.hm-chips.is-soft .ab-ico{color:var(--warm)}
.hm-explore{background:linear-gradient(180deg,#fffdf9,#faf5ed);border-top:1px solid var(--line)}
.hm-explore-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.hm-tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:320px;height:100%;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#fff;box-shadow:var(--softshadow);transition:transform .25s,box-shadow .25s}
.hm-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.hm-tile.has-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hm-tile.has-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,24,21,0) 35%,rgba(26,24,21,.88))}
.hm-tile-body{position:relative;z-index:1;display:grid;gap:6px;padding:22px}
.hm-tile-body b{font-family:Georgia,"Times New Roman",serif;font-size:24px;color:var(--ink)}.hm-tile-body span{font-size:14px;color:var(--muted);line-height:1.5}
.hm-tile.has-photo .hm-tile-body b,.hm-tile.is-dark .hm-tile-body b,.hm-tile.is-warm .hm-tile-body b{color:#fff}
.hm-tile.has-photo .hm-tile-body span,.hm-tile.is-dark .hm-tile-body span{color:#e8dfd2}.hm-tile.is-warm .hm-tile-body span{color:#fff7ec}
.hm-tile.is-dark{background:var(--dark);border-color:var(--dark)}.hm-tile.is-warm{background:linear-gradient(145deg,var(--warm),#7e4a0b);border-color:var(--warm)}
.hm-tile-mark{position:absolute;top:22px;left:22px;display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:#fff;color:var(--warm)}
.hm-tile-mark img{width:46px;height:46px}.hm-tile-mark .ab-ico{width:30px;height:30px}
@media(max-width:1080px){.hm-explore-grid{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.hm-popular-head{flex-direction:column;align-items:flex-start}.hm-popular-grid{grid-template-columns:1fr}}
@media(max-width:560px){.hm-explore-grid{grid-template-columns:1fr}.hm-tile{min-height:240px}}
/* 2026-10-24: on stacked (mobile/tablet) layouts the Find a Doctor card comes first. Order only: the protected card's markup,
   styles and the desktop two-column layout are unchanged. */
@media(max-width:980px){.hero .hero-grid>.hero-search-large{order:-1}.hero .hero-grid>.hero-story .hm-title{margin-top:8px}}
