@font-face{font-family:Glacial;src:url('/test/assets/GlacialIndifference-Regular.otf') format('opentype');font-weight:400;font-display:swap}@font-face{font-family:Glacial;src:url('/test/assets/GlacialIndifference-Bold.otf') format('opentype');font-weight:700;font-display:swap}@font-face{font-family:Roboto;src:url('/test/assets/Roboto.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--accent:#6126e8;--ink:#242429;--muted:#777;--line:#e8e8e8;--paper:#f5f5f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Glacial,Roboto,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}img{max-width:100%;height:auto}header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:#242429;color:white;gap:20px}header nav{display:flex;gap:28px;align-items:center;font-size:14px}.brand{display:inline-flex;align-items:center;gap:12px;letter-spacing:.04em;font-weight:700}.brand b{border:2px solid currentColor;border-radius:50%;width:38px;height:38px;display:grid;place-items:center}.nav-demo{background:white;color:var(--accent);padding:12px 22px;border-radius:3px;font-weight:700}.wrap{width:min(1140px,calc(100% - 40px));margin:auto}.section{padding:52px 0}h1,h2,h3,p{margin-top:0}h1{font-size:64px;line-height:1.12;font-weight:700}h2{font-size:30px;line-height:1.3;font-weight:400}h3{font-size:18px;line-height:1.4}p{margin-bottom:18px}.intro{text-align:center;color:#fff;background:radial-gradient(ellipse at 75% 10%,#655b7b,transparent 60%),linear-gradient(135deg,#20232d,#363447);padding:95px 20px 125px}.intro h1{max-width:900px;margin:15px auto 22px}.intro p{max-width:760px;margin:0 auto;font-size:20px}.intro .eyebrow{font-size:11px;letter-spacing:.16em;color:#d7d3e2}.browse-bar{position:relative;margin-top:-52px;background:white;padding:24px;display:grid;grid-template-columns:1fr 1fr 1fr .7fr;gap:24px;border-radius:4px;box-shadow:0 4px 20px #0001}.browse-bar>a{padding:8px 0;border-bottom:2px solid #ddd;line-height:1.6}.browse-bar small{display:block;color:#888;font-size:12px}.browse-bar .primary{padding:15px;text-align:center;align-self:center;border:0}.primary{background:var(--accent)!important;color:white!important;border-color:var(--accent)!important;border-radius:4px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.card{background:white;border-radius:4px;overflow:hidden;box-shadow:0 2px 4px #00000009}.card-cover{position:relative;display:block;aspect-ratio:1.35;overflow:hidden}.card-cover img{width:100%;height:100%;object-fit:cover}.card-shade{position:absolute;inset:0;background:linear-gradient(0deg,#15121ee8,transparent 85%)}.card-heading{position:absolute;left:24px;right:20px;bottom:18px;color:white}.card-heading span{font-size:10px;letter-spacing:.08em}.card-heading h2{font-size:22px;line-height:1.22;margin:8px 0}.card-heading p{font-size:13px;margin:0}.card-foot{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;gap:14px;font-size:12px;border-top:1px solid var(--line)}.card-foot a{color:var(--accent);white-space:nowrap}.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:24px 0}.category-grid a{display:flex;align-items:center;min-height:100px;background:white;border:1px solid var(--line);border-radius:4px;padding:20px;font-size:17px}.category-grid a:hover{border-color:var(--accent)}.cover{position:relative;height:430px;overflow:hidden;background:#30323a}.cover-img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}.shade{position:absolute;inset:0;background:linear-gradient(0deg,#10111bdd,#10111b22 95%)}.profile-name{position:absolute;left:30px;right:30px;bottom:32px;display:flex;align-items:center;gap:20px;color:white}.profile-name h1{font-size:34px;font-weight:400;margin:0 0 6px;line-height:1.25}.profile-name p{margin:0;font-size:16px}.avatar{width:75px;height:75px;flex:0 0 75px;background:#fff;color:#54436e;border-radius:50%;display:grid;place-items:center;font-size:30px}.tabs{background:white;display:flex;justify-content:center;gap:12px;overflow:auto;border-bottom:1px solid var(--line)}.tabs a{padding:18px 24px;white-space:nowrap;border-bottom:2px solid transparent}.tabs a:hover{border-color:var(--accent)}.actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:32px 0}.pill{display:inline-block;border:1px solid #d6d6d6;padding:9px 18px;border-radius:24px;font-size:14px;background:transparent;margin:3px 0}.pill:hover{border-color:var(--accent)}.columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px}.panel{background:white;border:1px solid #eee;border-radius:4px;padding:26px;margin-bottom:24px;box-shadow:0 2px 4px #00000003;overflow-wrap:anywhere}.panel>h2{font-size:20px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.panel p{font-size:15px}.panel p:last-child{margin-bottom:0}.muted,small{color:var(--muted)}.features{display:flex;flex-wrap:wrap;gap:8px}.features>*{font-size:13px;border:1px solid #eee;border-radius:3px;padding:8px 12px}.service{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #eee;padding:18px 0}.service:last-child{border:0}.service h3{margin:0 0 6px}.service p{color:#777;margin:0}.service strong{white-space:nowrap;color:var(--accent)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gallery img{width:100%;aspect-ratio:1;object-fit:cover;display:block;border-radius:3px}.steps{padding-left:22px}.steps li{padding:8px 0}.steps p{margin:4px 0;color:#777}.team{display:flex;gap:18px}.team .avatar{background:#f0edf7}.team h3{margin-bottom:6px}details{padding:15px 0;border-bottom:1px solid #eee}details:last-child{border:0}summary{cursor:pointer;list-style-position:outside;margin-left:16px;font-weight:700}details p{margin:15px 0 0}.review>b{color:var(--accent);font-size:13px}.review h3{margin-top:12px}.news>img{width:100%;aspect-ratio:1.8;object-fit:cover;margin-bottom:20px}.eyebrow{font-size:10px!important;letter-spacing:.1em}.offer{font-size:26px!important;color:var(--accent)}dl{margin:0}dl>div{border-bottom:1px solid #eee;padding:12px 0}dl>div:last-child{border:0}dt{font-size:12px;color:#888}dd{margin:4px 0 0;overflow-wrap:anywhere}dd a{color:var(--accent)}.demo-notice{padding:10px 20px;background:#fff1ce;color:#674e12;text-align:center;font-size:12px}.record-note{padding:7px 20px;background:#eee;text-align:center;font-size:11px;color:#666}footer{background:#242429;color:#bbb;padding:48px 0;margin-top:36px;font-size:13px}footer .brand{color:white;font-size:22px}footer p{margin:16px 0}footer a:hover{color:white}.no-art{height:100%;display:grid;place-items:center;background:#463958;color:white;font-size:72px}.skip{position:absolute;top:-100px;left:10px;background:white;padding:12px;z-index:9}.skip:focus{top:10px}:focus-visible{outline:3px solid #b589ff;outline-offset:4px}
@media(max-width:900px){header{padding:0 20px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.browse-bar{grid-template-columns:1fr 1fr}.columns{grid-template-columns:1fr}.profile-name h1{font-size:30px}h1{font-size:48px}.tabs{justify-content:flex-start}.tabs a{padding:16px}}
@media(max-width:600px){header{height:auto;min-height:90px;align-items:flex-start;padding:16px;flex-direction:column;gap:12px}header nav{width:100%;gap:16px;flex-wrap:wrap;font-size:12px}.nav-demo{padding:4px 10px}.intro{padding:65px 15px 95px}.intro h1{font-size:38px}.intro p{font-size:17px}.wrap{width:calc(100% - 28px)}.browse-bar{padding:18px;gap:18px;font-size:14px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid a{padding:15px;font-size:14px;min-height:90px}.grid{grid-template-columns:1fr}.section{padding:35px 0}.cover{height:330px}.profile-name{left:18px;right:18px;bottom:24px;gap:14px}.profile-name h1{font-size:25px}.avatar{width:55px;height:55px;flex-basis:55px;font-size:24px}.profile-name p{font-size:13px}.panel{padding:21px}.actions{gap:8px;padding:22px 0}.pill{font-size:13px;padding:8px 13px}.service{flex-direction:column;gap:5px}.demo-notice{font-size:10px}h2{font-size:25px}.tabs{font-size:13px}.tabs a{padding:15px 13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* CJM: identity -> profiles/actions -> offer/proof -> contact -> news. */
.cover{height:350px}.profile-name{left:max(30px,calc((100% - 1140px)/2));right:max(30px,calc((100% - 1140px)/2))}.profile-top{background:white;border-bottom:1px solid var(--line)}.profile-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;padding:18px 0 4px}.link-caption{font-size:10px;letter-spacing:.12em;color:#68646f;margin-right:8px}.profile-link{display:inline-flex;align-items:center;min-height:36px;font-size:14px;color:#4b405e}.google-link{font-weight:700}.profile-link:hover{text-decoration:underline}.profile-status{font-size:11px;color:#76707b;margin:5px 0 0}.profile-status.attention{background:#fff1ce;color:#674e12;padding:10px 14px;border-radius:4px;font-size:13px}.profile-top .actions{justify-content:flex-start;padding:12px 0 20px}.profile-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);grid-template-areas:"core contacts" "updates contacts";gap:0 24px;padding-top:30px}.profile-core{grid-area:core}.profile-contacts{grid-area:contacts}.profile-updates{grid-area:updates}.final-action{padding:25px 30px;background:#eee9f9;border-radius:5px;margin-bottom:25px}.final-action>p{margin:0;text-align:center}.final-action .actions{padding:15px 0 0}.profile-core,.profile-contacts,.profile-updates{min-width:0}
@media(max-width:900px){.profile-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"core" "contacts" "updates"}.profile-name{left:24px;right:24px}}
@media(max-width:600px){.cover{height:250px}.profile-name{left:18px;right:18px;bottom:22px}.profile-name h1{font-size:24px}.profile-links{gap:4px 16px;padding:12px 0 2px}.link-caption{width:100%;font-size:9px}.profile-link{font-size:13px;min-height:38px}.profile-top .actions{padding:8px 0 16px;gap:6px}.profile-layout{padding-top:20px}.profile-status{font-size:10px}.final-action{padding:20px}.profile-name>div{min-width:0;overflow-wrap:anywhere}}

/* Revision 5: links above cover; text is HTML, never burned into presentation art. */
html{scroll-padding-top:190px}.profile-heading{background:white;padding:25px 0 8px}.profile-identity{display:flex;align-items:center;gap:18px}.profile-identity .avatar{background:#f0edf7;color:var(--accent);width:62px;height:62px;flex-basis:62px}.profile-identity>div{min-width:0}.profile-heading h1{font-size:32px;line-height:1.2;margin:0 0 5px;overflow-wrap:anywhere}.profile-heading p{color:#716879;font-size:14px;margin:0}.profile-social-bar{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #e8e3ef;box-shadow:0 3px 10px #2012330a}.profile-social-bar .profile-links{padding:12px 0;gap:8px}.profile-social-bar .link-caption{width:100%;font-weight:700;font-size:10px;line-height:1.4}.profile-link{display:inline-flex;gap:7px;align-items:center;min-height:40px;padding:5px 10px;border:1px solid #e8e3ef;border-radius:5px;background:#fff;white-space:nowrap}.profile-link:hover{background:#f4f0fc;text-decoration:none;border-color:var(--accent)}.network-mark{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#f0edf7;color:#574464;font:bold 14px/1 Roboto,sans-serif;flex-shrink:0}.network-google .network-mark{color:#4285f4;background:#f2f6ff}.network-facebook .network-mark{background:#1877f2;color:white}.network-instagram .network-mark{background:#ad267a;color:white;font-size:21px}.network-youtube .network-mark{background:#dc2222;color:white;font-size:11px}.network-linkedin .network-mark{background:#0a66c2;color:white;font-size:11px}.network-x .network-mark{background:#202027;color:white}.network-pinterest .network-mark{background:#b51d2a;color:white}.clean-cover{height:230px}.clean-cover .cover-img{object-position:50% 40%}.logo-cover{background:white}.logo-cover .cover-img{object-fit:contain;padding:24px}.profile-top .actions{padding:10px 0 14px}.profile-top .profile-status{padding-top:8px}.card-logo .card-cover{aspect-ratio:1.9;background:white;padding:24px}.card-logo .card-cover img{object-fit:contain}.card-logo .card-heading{position:static;color:var(--ink);padding:18px 24px;background:white}.card-logo .card-heading span{color:#716879}.faq-answer{padding:18px 0;border-bottom:1px solid var(--line)}.faq-answer:first-of-type{padding-top:0}.faq-answer:last-child{border-bottom:0;padding-bottom:0}.faq-answer h3{margin-bottom:10px;font-size:18px}.faq-answer p{margin-bottom:0!important}
@media(max-width:600px){.profile-heading{padding:18px 0 8px}.profile-heading h1{font-size:24px}.profile-heading p{font-size:12px}.profile-identity{gap:12px}.profile-identity .avatar{width:46px;height:46px;flex-basis:46px;font-size:22px}.profile-social-bar .profile-links{gap:6px;padding:10px 0}.profile-link{font-size:12px;padding:5px 8px;min-height:40px}.network-mark{width:21px;height:21px;font-size:13px}.clean-cover{height:175px}.profile-top .actions{padding:8px 0 12px}.card-logo .card-heading{padding:16px 22px}}

/* Large cover is the business header; profiles stay on its upper edge. */
.clean-cover{height:440px}.clean-cover .shade{background:linear-gradient(0deg,#161322e8,transparent 95%)}.clean-cover .profile-name{bottom:35px}.clean-cover .profile-name h1{font-size:36px}.logo-cover{background:linear-gradient(120deg,#37313f,#504960)}.logo-cover .cover-img{position:absolute;top:28px;right:40px;width:240px;max-width:40%;height:150px;object-fit:contain;background:white;border-radius:7px;padding:20px}.logo-cover .shade{background:linear-gradient(0deg,#161322b8,transparent 65%);pointer-events:none}
@media(max-width:600px){.clean-cover{height:330px}.clean-cover .profile-name{bottom:26px}.clean-cover .profile-name h1{font-size:25px}.logo-cover .cover-img{top:20px;right:18px;width:145px;max-width:45%;height:105px;padding:12px}}

/* TRIZ: retain complete network inventory, reduce each control's footprint. */
.profile-social-bar .profile-links{gap:8px;align-items:flex-start}.profile-link{width:70px;min-height:60px;padding:5px 2px;display:inline-flex;flex-direction:column;justify-content:center;gap:3px;border-color:transparent;position:relative}.network-mark{width:29px;height:29px;font-size:15px}.network-label{font-size:10px;line-height:1.2;white-space:nowrap}.network-threads .network-mark,.network-tiktok .network-mark{background:#25252b;color:#fff}.network-whatsapp .network-mark{background:#19834a;color:white;font-size:10px}.network-telegram .network-mark{background:#1687b6;color:white}.network-messenger .network-mark{background:#3158d7;color:white}.network-bluesky .network-mark{background:#1682ed;color:white}.network-catalogue{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:18px;margin:25px 0}.network-example{display:flex;flex-direction:column;align-items:center;background:white;border:1px solid var(--line);padding:12px}.network-example small{font-size:11px}.network-example .profile-link{width:100%;min-width:80px}.network-google .network-mark{font-size:18px}
@media(max-width:600px){.profile-social-bar .profile-links{gap:6px}.profile-link{width:64px;min-height:58px;padding:4px 1px;gap:3px}.network-mark{width:27px;height:27px}.network-label{font-size:9px}html{scroll-padding-top:185px}}

.network-label{max-width:100%;white-space:normal;overflow-wrap:anywhere}.link-caption a{text-decoration:underline;color:var(--accent)}.profile-social-bar.extensive-profiles{position:static}

/* The portal menu stays at the top; cover and social links scroll normally. */
.profile-social-bar{position:static}

header{position:sticky;top:0;z-index:40}

html{scroll-behavior:auto}

/* Business identity, section navigation and contact form one persistent bar. */
header{position:static}.business-bar{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid #e5dfee;box-shadow:0 3px 12px #241b3510}.business-bar-inner{display:grid;grid-template-columns:minmax(0,1fr) 150px;grid-template-areas:"name contact" "nav nav";gap:0 20px;padding-top:12px}.business-bar-name{grid-area:name;align-self:center;font-size:19px;font-weight:700;line-height:1.25;padding:6px 0;overflow-wrap:anywhere}.business-contact{grid-area:contact;display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;font-size:16px;font-weight:700;text-align:center;align-self:center}.business-bar .tabs{grid-area:nav;justify-content:flex-start;border:0;gap:0;min-width:0;margin-top:4px}.business-bar .tabs a{padding:13px 12px;font-size:14px}.business-bar .tabs a:first-child{padding-left:0}.business-bar .tabs a:last-child{padding-right:0}.profile-top .profile-status{padding:10px 0;margin:0}
@media(min-width:1150px){.business-bar-inner{grid-template-columns:minmax(160px,260px) minmax(0,1fr) 150px;grid-template-areas:"name nav contact";gap:18px;padding:14px 0}.business-bar .tabs{margin:0;align-self:center}.business-bar .tabs a{font-size:13px;padding:13px 9px}.business-bar-name{font-size:17px}}
@media(max-width:600px){.business-bar-inner{grid-template-columns:minmax(0,1fr) 122px;gap:0 12px;padding-top:10px}.business-bar-name{font-size:15px;line-height:1.3}.business-contact{font-size:14px;padding:12px;min-height:46px}.business-bar .tabs a{font-size:12px;padding:12px 10px}.business-bar .tabs{margin-top:6px}html{scroll-padding-top:165px}}

/* Direct contact without opening a listing; generous, separate touch targets. */
.card-foot{gap:12px;flex-wrap:wrap}.card-foot .card-call{display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:48px;padding:9px 13px;border-radius:6px;background:#6430cf;color:#fff;line-height:1.25}.card-call span{font-size:14px;font-weight:700}.card-call small{font-size:12px;margin-top:3px;color:#fff}.card-foot .card-open{display:inline-flex;align-items:center;min-height:48px;padding:8px 4px}.card-call:hover{background:#4e239f}.card a:focus-visible,.business-contact:focus-visible{outline:3px solid #24212a;outline-offset:4px}

/* Decision first: compact visual header, offer/trust/contact, then supporting content. */
.clean-cover{height:280px}.clean-cover .profile-name{bottom:28px}.profile-layout{grid-template-areas:"core contacts";align-items:start}.supporting-content{padding-top:26px;padding-bottom:6px}.supporting-content .panel{max-width:none}.profile-contacts .panel:first-child{border-top:3px solid var(--accent)}
@media(max-width:900px){.profile-layout{grid-template-areas:"contacts" "core"}.profile-contacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.profile-contacts .panel:first-child{grid-column:1/-1}}
@media(max-width:600px){.clean-cover{height:220px}.clean-cover .profile-name{bottom:22px}.clean-cover .profile-name h1{font-size:24px}.profile-contacts{display:block}.supporting-content{padding-top:20px}.logo-cover .cover-img{width:110px;height:68px;top:12px;padding:8px}}

/* Group by visitor intent, not by platform popularity. No hidden overflow. */
.profile-social-bar .grouped-profiles{display:flex;align-items:stretch;gap:16px 24px;padding:16px 0;flex-wrap:wrap}.profile-group{margin:0;padding:0 20px 0 0;border-right:1px solid var(--line);min-width:0}.profile-group:last-child{border:0;padding-right:0}.profile-group h2{font-size:12px;line-height:1.4;letter-spacing:0;margin:0 0 8px;color:#51465f;font-weight:700}.profile-group-buttons{display:flex;flex-wrap:wrap;gap:6px}.profile-demo-caption{width:100%;margin:0;font-size:11px;color:#706777}.profile-demo-caption a{text-decoration:underline}.network-yelp .network-mark{background:#c82027;color:#fff}.network-yellow-pages .network-mark{background:#ffdc36;color:#222;font-size:11px}
@media(max-width:600px){.profile-social-bar .grouped-profiles{gap:14px}.profile-group{border:0;padding:0;max-width:100%}.profile-group-buttons{gap:4px}.profile-group h2{font-size:12px}}

/* TRIZ: semantic groups without visible headings or separate block height. */
.profile-social-bar .grouped-profiles{gap:8px 12px;padding:12px 0;align-items:center}.profile-group{padding:0 12px 0 0;border-right:1px solid #ded8e7;max-width:100%}.profile-group:last-child{padding:0;border:0}.profile-group-buttons{gap:4px}.grouped-profiles .profile-link{width:58px;min-height:54px;padding:4px 1px}.grouped-profiles .network-label{font-size:9px}.grouped-profiles .network-mark{width:27px;height:27px}
@media(max-width:700px){.profile-social-bar .grouped-profiles{display:flex;gap:6px;padding:10px 0}.grouped-profiles .profile-group,.grouped-profiles .profile-group-buttons{display:contents}.grouped-profiles .profile-link{width:58px;min-height:54px}}

/* Preserve small original portraits instead of stretching or cropping faces. */
.portrait-cover{background:#354c55}.portrait-cover .cover-img{object-fit:contain;object-position:right center}.portrait-cover .shade{background:linear-gradient(90deg,rgba(21,28,36,.85),rgba(21,28,36,.05))}
/* Address links stay recognizable and easy to tap without a map widget or JS. */
.address-link{color:#6028e8;text-decoration:underline;text-underline-offset:3px;display:inline-block;min-height:44px;padding:6px 0;overflow-wrap:anywhere}
.address-link:focus-visible{outline:3px solid #6028e8;outline-offset:4px;border-radius:3px}
#location .map-actions{padding:0;margin-top:16px;justify-content:flex-start;gap:10px}
#location .map-actions .pill{min-height:44px}

/* One address, one map: side by side, stacking on small phones. */
.location-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:16px;grid-column:1/-1;min-width:0}.location-row>.panel{min-width:0;padding:20px}.location-row>.panel:first-child{border-top:1px solid var(--line)}.location-row h2{font-size:21px}.business-map{display:block;width:100%;height:320px;border:0;border-radius:4px}.location-row .map-actions{flex-direction:column;align-items:flex-start}
@media(max-width:600px){.location-row{grid-template-columns:minmax(0,1fr);gap:0}.business-map{height:300px}}
.profile-contacts .location-row>.panel:first-child{grid-column:auto}
/* Consistent card rhythm: the same inset and gap as the upper sections. */
.profile-layout{--card-gap:24px;--card-inset:26px;gap:var(--card-gap);padding-top:var(--card-gap)}
.profile-core,.profile-contacts{display:grid;gap:var(--card-gap);align-content:start}
.profile-core>.panel,.profile-contacts>.panel,.location-row>.panel{margin:0;padding:var(--card-inset)}
.location-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--card-gap);align-items:stretch}
.location-row>.panel{display:flex;flex-direction:column}
.location-row h2{font-size:20px;margin-bottom:20px;padding-bottom:16px}
.location-row .business-map{flex:1;min-height:280px;height:320px}
#location .map-actions{gap:10px;margin-top:16px}
#location .map-actions .pill{margin:0;max-width:100%;white-space:normal}
.supporting-content{padding-top:24px}

@media(max-width:900px){.profile-contacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--card-gap)}}
@media(max-width:600px){.profile-layout{--card-gap:18px;--card-inset:21px}.profile-contacts,.location-row{grid-template-columns:minmax(0,1fr)}.profile-contacts>.panel:first-child{grid-column:auto}.supporting-content{padding-top:18px}}

.business-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:24px}.business-gallery figure{margin:0;min-width:0}.business-gallery{align-items:start}.business-gallery img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:8px}.business-gallery figure:only-child{width:100%;max-width:960px;margin-inline:auto}.business-gallery figcaption{font-size:14px;line-height:1.5;margin-top:10px}

.avatar.business-logo{overflow:hidden;background:#fff;padding:10px;flex-shrink:0}.avatar.business-logo img{display:block;width:100%;height:100%;object-fit:contain;border-radius:0}

.business-gallery.gallery-slider{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;align-items:flex-start}.gallery-slider>figure{flex:0 0 100%;scroll-snap-align:start;scroll-margin-top:150px}.gallery-slider img{max-width:960px;margin-inline:auto}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.gallery-controls .pill{min-height:44px;display:inline-flex;align-items:center}.gallery-controls span{white-space:nowrap;font-size:14px}.gallery-slider:focus-visible,.gallery-controls a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media(prefers-reduced-motion:reduce){html,.business-gallery.gallery-slider{scroll-behavior:auto}}

.department-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));gap:16px;align-items:stretch}.department-card{min-width:0;padding:18px 14px;border:1px solid var(--line);border-radius:8px;background:#faf9fc;display:flex;flex-direction:column;gap:16px}.department-card h3{margin:0;font-size:18px;line-height:1.3}.department-card p{margin:0!important}.department-card .pill{display:flex;align-items:center;justify-content:center;min-height:44px;width:100%;padding:8px 4px;font-size:14px;white-space:nowrap;background:white}.department-card ul{list-style:none;margin:0;padding:0;font-size:14px;line-height:1.65}.department-card li+li{margin-top:5px}.department-note{margin-top:20px!important;font-size:14px}

.website-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 24px;font-weight:700}

.business-offer{padding-block:22px;border-bottom:1px solid var(--line)}.business-offer p{font-size:19px;line-height:1.6;max-width:900px;margin-bottom:14px}#contacts,#demo-contact{scroll-margin-top:150px}@media(max-width:600px){.business-offer p{font-size:17px}#contacts,#demo-contact{scroll-margin-top:170px}}

/* Per-image focal point preserves the subject across responsive crops. */
.clean-cover:not(.logo-cover):not(.portrait-cover) .cover-img{object-position:var(--hero-x,50%) 40%}
@media(max-width:600px){.clean-cover:not(.logo-cover):not(.portrait-cover) .cover-img{object-position:var(--hero-mobile-x,var(--hero-x,50%)) 40%}}

/* Shared golden-section layout: main story / supporting contacts. */
:root{--composition-phi:1.61803398875}
@media(min-width:901px){.profile-layout,.columns{grid-template-columns:minmax(0,1.61803398875fr) minmax(0,1fr)}}
@media(max-width:900px){.profile-layout,.columns{grid-template-columns:minmax(0,1fr)}}

/* Covers span the entire page; golden-section columns apply to content only. */
#business-hero{width:100%;max-width:none;margin-inline:0;padding-inline:0;grid-column:1/-1;border-radius:0}
#business-hero:not(.logo-cover):not(.portrait-cover)>.cover-img{display:block;width:100%;max-width:none;height:100%;object-fit:cover}

/* Business taxonomy belongs immediately below the name. */
.business-directions a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.business-directions a:hover{text-decoration-thickness:2px}.business-directions a:focus-visible{outline:2px solid currentColor;outline-offset:4px}

/* Pair contact details with hours; no orphan half-width card. */
.profile-contacts{grid-template-columns:minmax(0,1fr)}
.contact-hours-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--card-gap);min-width:0;grid-column:1/-1}
.contact-hours-row>.panel{margin:0;padding:var(--card-inset);min-width:0;grid-column:auto}
@media(min-width:601px) and (max-width:900px){.contact-hours-row{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-hours-row>.panel:first-child{grid-column:auto}.contact-hours-row>.panel:only-child{grid-column:1/-1}}

/* Contact action is a highlighted peer in the business section menu. */
.business-bar-inner{grid-template-columns:minmax(0,1fr);grid-template-areas:"name" "nav";gap:4px;padding:10px 0}
.business-bar .tabs{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin:0;overflow:visible}
.business-bar .tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 10px;line-height:1.25}
.business-bar .tabs .business-contact{grid-area:auto;align-self:center;min-height:40px;padding:8px 16px;border:1px solid var(--accent);border-radius:6px;background:var(--accent);color:#fff;font-size:inherit;white-space:nowrap}
.business-bar .tabs .business-contact:hover{filter:brightness(.92)}
@media(min-width:1150px){.business-bar-inner{grid-template-columns:minmax(160px,260px) minmax(0,1fr);grid-template-areas:"name nav";gap:18px;padding:12px 0}}
@media(max-width:600px){.business-bar .tabs{gap:4px}.business-bar .tabs a{padding:8px;font-size:12px}.business-bar .tabs .business-contact{padding:8px 12px}}
/* Keep the highlighted final menu item padded on both sides. */
.business-bar .tabs a.business-contact,
.business-bar .tabs a.business-contact:last-child{padding:9px 18px;min-height:40px;border-radius:8px;line-height:1.25;font-weight:600;box-sizing:border-box}
.business-bar .tabs a.business-contact:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:600px){.business-bar .tabs a.business-contact,.business-bar .tabs a.business-contact:last-child{padding:9px 14px}}
.menu-rating{margin-left:6px;font-size:.88em;white-space:nowrap;color:#655019;background:#fff3cf;border-radius:4px;padding:2px 5px}

.business-bar .tabs a.business-reviews{padding:9px 14px;border:1px solid var(--accent);border-radius:8px;color:var(--accent);background:#fff;min-height:40px;box-sizing:border-box;font-weight:600}
.business-bar .tabs a.business-reviews:hover{background:#f3efff}
.business-bar .tabs a.business-reviews:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
#reviews{scroll-margin-top:180px}

.agent-choice{display:block;text-align:left;padding:0;border:0;min-width:0;max-width:100%}.agent-choice>summary{cursor:pointer;list-style:none}.agent-choice>summary::-webkit-details-marker{display:none}.agent-choice>summary::after{content:" ▾"}.agent-choice[open]>summary::after{content:" ▴"}.agent-options{padding:14px;margin-top:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.agent-options p{margin:0 0 10px;font-size:14px}.agent-options>div{display:flex;flex-wrap:wrap;gap:8px}.agent-options button:disabled{opacity:.65;cursor:not-allowed;font:inherit;background:#f4f2f7;color:#5c5664}.final-action .actions{align-items:flex-start}
/* Reviews is a plain section link; Contacts retains the accent. */
.business-bar .tabs a.business-reviews{border:0;background:transparent;color:inherit;border-radius:0;font-weight:inherit;padding:8px 10px;box-shadow:none}
.business-bar .tabs a.business-reviews:hover{background:transparent;color:var(--accent)}
@media(max-width:600px){.business-bar .tabs a.business-reviews{padding:8px}}

/* Owner: subcategories below business name, before section menu. */
.business-bar-inner{grid-template-columns:minmax(0,1fr);grid-template-areas:"name" "subcategories" "nav";gap:2px;padding:10px 0}
.business-bar-subcategories{grid-area:subcategories;margin:0;font-size:13px;line-height:1.45;color:#625a70;overflow-wrap:anywhere}
.business-bar-subcategories a{color:inherit;text-decoration:none}
.business-bar-subcategories a:hover{text-decoration:underline;color:var(--accent)}
.business-bar-subcategories a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:600px){.business-bar-subcategories{font-size:12px}}

/* Keep native details trigger aligned with sibling contact actions. */
.final-action .actions>.pill,.final-action .agent-choice>summary.pill{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:44px;margin:0;line-height:1.5}
