/* Reference layouts: contacts + reviews. Private ayami_site_live_v1 only. */
html.av-page body#main #content .av-contacts-v211 [hidden],
html.av-page body#main #content .av-reviews-screen [hidden] {display:none!important}
html.av-page body#main #content .av-contacts-v211 {width:100%;min-width:0}
html.av-page body#main #content .av-contacts-v211 [data-av-contact-cards] {margin-bottom:20px}
html.av-page body#main #content .av-contacts-v211 [data-av-contact-cards] .contacts,
html.av-page body#main #content .av-contacts-v211 [data-av-contact-cards] .contacts-wrapper {margin:0!important;padding:0!important;width:100%!important;max-width:none!important;position:static!important;background:transparent!important;border:0!important}
html.av-page body#main #content .av-contacts-v211 [data-av-contact-cards] .row {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;margin:0!important}
html.av-page body#main #content .av-contacts-v211 .row::before,
html.av-page body#main #content .av-contacts-v211 .row::after {display:none!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-card {float:none!important;width:auto!important;min-width:0!important;padding:20px!important;margin:0!important;background:white!important;border:1px solid var(--av-line)!important;border-radius:12px!important;display:flex!important;align-items:center!important;min-height:120px!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-card table {border:0!important;margin:0!important;width:100%!important;table-layout:auto!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-card td {border:0!important;padding:0!important;vertical-align:middle!important;line-height:1.5!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-card td.icon {width:80px!important;padding-right:16px!important}
html.av-page body#main #content .av-contact-emblem {display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 64px!important;width:64px!important;height:64px!important;border-radius:50%!important;background:var(--av-soft)!important;color:var(--av-green)!important}
html.av-page body#main #content .av-contact-emblem svg {width:28px!important;height:28px!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-card .dark_table {display:block!important;font-weight:700!important;font-size:16px!important;line-height:24px!important;margin-bottom:6px!important;color:var(--av-ink)!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-card [itemprop] {font-size:15px!important;line-height:23px!important;overflow-wrap:anywhere;color:var(--av-muted)!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-card [itemprop] a {color:var(--av-ink)!important;text-decoration:none!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-layout {display:grid;grid-template-columns:minmax(0,1fr);gap:24px;padding:20px;background:white;border:1px solid var(--av-line);border-radius:12px;margin-bottom:20px;align-items:stretch;min-width:0}
html.av-page body#main #content .av-contacts-v211 .av-contact-layout.av-has-map {grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr)}
html.av-page body#main #content .av-contacts-v211 .av-contact-map {min-width:0;min-height:420px;background:#f5f7fa;border:0;border-radius:8px;overflow:hidden;position:relative;padding:0}
html.av-page body#main #content .av-contacts-v211 .av-contact-map .contacts-page-map,
html.av-page body#main #content .av-contacts-v211 .av-contact-map .bx-yandex-view-layout,
html.av-page body#main #content .av-contacts-v211 .av-contact-map .bx-yandex-view-map,
html.av-page body#main #content .av-contacts-v211 .av-contact-map .bx-google-view-layout,
html.av-page body#main #content .av-contacts-v211 .av-contact-map .bx-google-view-map {margin:0!important;padding:0!important;width:100%!important;max-width:none!important;height:100%!important;position:static!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-map .bx-yandex-map,
html.av-page body#main #content .av-contacts-v211 .av-contact-map .bx-google-map {width:100%!important;height:100%!important;min-height:420px!important;position:absolute!important;inset:0!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-location {padding:4px 0;background:none;border:0;border-radius:0;min-width:0}
html.av-page body#main #content .av-contacts-v211 .av-has-map .av-contact-location {padding-left:24px;border-left:1px solid var(--av-line)}
html.av-page body#main #content .av-contacts-v211 h2 {font-size:24px!important;line-height:31px!important;font-weight:700!important;margin:0 0 12px!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-location>p {font-size:15px;line-height:23px;margin:0 0 10px;color:var(--av-muted);overflow-wrap:anywhere}
html.av-page body#main #content .av-contacts-v211 .av-contact-route,
html.av-page body#main #content .av-contacts-v211 [data-av-contact-question] .btn {display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;width:100%!important;min-height:48px!important;height:auto!important;padding:12px 16px!important;border-radius:8px!important;font-size:15px!important;line-height:22px!important;font-weight:600!important;text-decoration:none!important;box-shadow:none!important;margin:0!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-route {color:white!important;background:var(--av-green)!important;border:1px solid var(--av-green)!important;margin-top:18px!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-route svg,
html.av-page body#main #content .av-contacts-v211 .av-contact-delivery svg {width:20px;height:20px;flex:0 0 20px}
html.av-page body#main #content .av-contacts-v211 [data-av-contact-question] {margin-top:10px}
html.av-page body#main #content .av-contacts-v211 [data-av-contact-question] .btn {color:var(--av-green)!important;background:white!important;border:1px solid var(--av-green)!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-departments {margin-top:24px;padding-top:20px;border-top:1px solid var(--av-line)}
html.av-page body#main #content .av-contacts-v211 .av-contact-departments [itemprop="description"] {float:none!important;width:100%!important;padding:0!important;margin:0!important;min-width:0!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-departments h3 {font-size:18px!important;line-height:25px!important;font-weight:700!important;margin:0 0 10px!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-departments h3:not(:first-child) {margin-top:18px!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-departments p {font-size:14px!important;line-height:21px!important;margin:0 0 9px!important;overflow-wrap:anywhere}
html.av-page body#main #content .av-contacts-v211 .av-contact-departments ol {list-style:none!important;padding:0!important;margin:0!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-departments li {padding:0!important;margin:0!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-departments li::before {display:none!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-pickup {padding:24px;background:white;border:1px solid var(--av-line);border-radius:12px}
html.av-page body#main #content .av-contacts-v211 .av-contact-pickup>p {font-size:15px;line-height:23px;color:var(--av-muted);margin:0 0 12px}
html.av-page body#main #content .av-contacts-v211 .av-contact-pickup .ajax_items {padding:0!important;margin:0!important;background:transparent!important;border:0!important;overflow-x:auto}
html.av-page body#main #content .av-contacts-v211 .av-contact-pickup .contacts,
html.av-page body#main #content .av-contacts-v211 .av-contact-pickup .maxwidth-theme {padding:0!important;margin:0!important;width:100%!important;max-width:none!important;position:static!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-pickup .row {margin:0!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-pickup [class*="col-"] {padding:0!important}
html.av-page body#main #content .av-contacts-v211 .contacts-stores {width:100%!important;margin:0!important}
html.av-page body#main #content .av-contacts-v211 .contacts-stores td {padding:14px 12px!important;border-color:var(--av-line)!important;line-height:22px!important;font-size:14px!important}
html.av-page body#main #content .av-contacts-v211 .contacts-stores h4 {margin:0!important;font-size:16px!important;line-height:24px!important}
html.av-page body#main #content .av-contacts-v211 .av-contact-delivery {display:inline-flex;align-items:center;gap:8px;color:var(--av-green);font-size:14px;margin-top:16px;text-decoration:none;font-weight:600}
html.av-page body#main #content .av-review-external img {width:64px!important;height:18px!important;object-fit:contain!important}
/* Review list uses its own template; the homepage and linked reviews keep native templates. */
html.av-page body#main #content .av-review-toolbar {display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin:0 0 14px}
html.av-page body#main #content .av-review-toolbar h1 {font-size:32px!important;line-height:40px!important;margin:0!important;font-weight:700!important}
html.av-page body#main #content .av-review-toolbar .av-review-add {min-height:44px!important;height:auto!important;margin:0!important;padding:11px 24px!important;font-size:14px!important;line-height:22px!important;border-radius:8px!important;box-shadow:none!important;white-space:normal!important}
html.av-page body#main #content .av-review-intro {display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px;font-size:14px;line-height:22px;color:var(--av-muted)}
html.av-page body#main #content .av-review-intro p {margin:0!important}
html.av-page body#main #content .av-review-external {display:inline-flex;align-items:center;gap:8px;color:var(--av-green);font-size:14px;line-height:22px;text-decoration:none}
html.av-page body#main #content .av-review-external svg {width:18px;height:18px}
html.av-page body#main #content .av-reviews-view {margin:0!important;padding:0!important;border:0!important;background:none!important}
html.av-page body#main #content .av-reviews-list {display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px!important;list-style:none!important;padding:0!important;margin:0!important;width:100%!important}
html.av-page body#main #content .av-reviews-list::before,
html.av-page body#main #content .av-reviews-list::after,
html.av-page body#main #content .av-review-card::before {display:none!important}
html.av-page body#main #content .av-review-card {display:flex!important;align-items:flex-start!important;gap:18px!important;padding:24px!important;margin:0!important;background:white!important;border:1px solid var(--av-line)!important;border-radius:12px!important;width:100%!important;min-width:0!important;float:none!important;box-shadow:none!important}
html.av-page body#main #content .av-review-avatar {display:flex;flex:0 0 56px;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#f0f3f7;color:#9aa5b5;overflow:hidden}
html.av-page body#main #content .av-review-avatar svg {width:30px;height:30px}
html.av-page body#main #content .av-review-avatar img {width:100%!important;height:100%!important;object-fit:contain!important;background:white}
html.av-page body#main #content .av-review-content {flex:1;min-width:0}
html.av-page body#main #content .av-review-head {display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px}
html.av-page body#main #content .av-review-head strong {display:block;font-size:16px;line-height:24px;color:var(--av-ink);font-weight:700}
html.av-page body#main #content .av-review-date,
html.av-page body#main #content .av-review-post {display:block;color:var(--av-muted);font-size:13px;line-height:21px}
html.av-page body#main #content .av-review-rating {display:flex;gap:3px;flex-shrink:0;padding-top:2px}
html.av-page body#main #content .av-review-rating svg {width:17px;height:17px;fill:#e4e9ee;stroke:#e4e9ee;stroke-width:1}
html.av-page body#main #content .av-review-rating svg.av-filled-star {fill:#e7ac38;stroke:#e7ac38}
html.av-page body#main #content .av-review-text {font-size:15px!important;line-height:24px!important;color:var(--av-ink)!important;overflow-wrap:anywhere}
html.av-page body#main #content .av-review-text p {font-size:inherit!important;line-height:inherit!important;margin:0 0 10px!important}
html.av-page body#main #content .av-review-text p:last-child {margin-bottom:0!important}
html.av-page body#main #content .av-review-response {display:flex;gap:14px;margin-top:18px;padding:16px;background:#f5f8fb;border-radius:8px;min-width:0}
html.av-page body#main #content .av-review-response>div {flex:1;min-width:0}
html.av-page body#main #content .av-review-response .av-review-avatar {width:42px;height:42px;flex-basis:42px}
html.av-page body#main #content .av-review-response strong {display:block;font-size:14px;line-height:22px;margin-bottom:6px}
html.av-page body#main #content .av-review-more {padding:9px 14px!important;margin:14px 0 0!important;min-height:40px!important;font-size:14px!important;line-height:22px!important}
html.av-page body#main #content .av-review-videos {display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:16px}
html.av-page body#main #content .av-review-videos iframe,
html.av-page body#main #content .av-review-videos video {width:100%;max-width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:8px}
html.av-page body#main #content .av-review-files {display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
html.av-page body#main #content .av-review-files a {display:flex;flex-direction:column;padding:12px 14px;background:#f5f8fb;border:1px solid var(--av-line);border-radius:8px;color:var(--av-ink);font-size:14px}
html.av-page body#main #content .av-review-files a span {font-size:12px;color:var(--av-muted)}
html.av-page body#main #content .av-review-pagination {margin-top:20px!important;margin-bottom:20px!important}
html.av-page body#main #content .av-reviews-empty {padding:48px 20px;background:white;border:1px solid var(--av-line);border-radius:12px;text-align:center}
html.av-page body#main #content .av-review-empty-icon {display:inline-flex;align-items:center;justify-content:center;width:90px;height:90px;border-radius:50%;background:#f0f5fb;color:var(--av-ink);margin-bottom:20px}
html.av-page body#main #content .av-review-empty-icon svg {width:42px;height:42px}
html.av-page body#main #content .av-reviews-empty h2 {text-align:center!important;font-size:24px!important;line-height:32px!important;margin:0 0 12px!important}
html.av-page body#main #content .av-reviews-empty p {margin:0!important;color:var(--av-muted);font-size:15px;line-height:24px}
html.av-page body#main #content .av-review-help {display:flex;align-items:center;gap:16px;margin-top:24px;padding:20px 24px;background:white;border:1px solid var(--av-line);border-radius:12px;text-decoration:none;color:var(--av-ink)}
html.av-page body#main #content .av-review-help>span:nth-child(2) {flex:1;min-width:0}
html.av-page body#main #content .av-review-help strong {display:block;font-size:16px;line-height:24px;margin-bottom:5px}
html.av-page body#main #content .av-review-help span span {font-size:14px;line-height:22px;color:var(--av-muted)}
html.av-page body#main #content .av-review-help>svg {width:22px;height:22px;flex:0 0 22px}
html.av-page body#main #content .av-reviews-screen a:focus-visible,
html.av-page body#main #content .av-contacts-v211 a:focus-visible,
html.av-page body#main #content .av-contacts-v211 button:focus-visible {outline:2px solid var(--av-green);outline-offset:3px}
@media(min-width:1900px){
 html.av-page body#main #content .av-review-card {padding:28px!important}
 html.av-page body#main #content .av-contacts-v211 .av-contact-layout.av-has-map {grid-template-columns:minmax(0,2fr) minmax(380px,1fr)}
}
@media(max-width:1000px){
 html.av-page body#main #content .av-contacts-v211 [data-av-contact-cards] .row {grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 html.av-page body#main #content .av-contacts-v211 .av-contact-card {min-height:100px!important;padding:16px!important}
}
@media(max-width:760px){
 html.av-page body#main #content .av-contacts-v211 .av-contact-layout,
 html.av-page body#main #content .av-contacts-v211 .av-contact-layout.av-has-map {grid-template-columns:minmax(0,1fr);padding:16px;gap:20px}
 html.av-page body#main #content .av-contacts-v211 .av-has-map .av-contact-location {padding:0;border:0}
 html.av-page body#main #content .av-contacts-v211 .av-contact-map,
 html.av-page body#main #content .av-contacts-v211 .av-contact-map .bx-yandex-map,
 html.av-page body#main #content .av-contacts-v211 .av-contact-map .bx-google-map {min-height:300px!important;height:300px!important}
 html.av-page body#main #content .av-contacts-v211 .av-contact-pickup {padding:18px}
 html.av-page body#main #content .av-review-toolbar {gap:12px}
 html.av-page body#main #content .av-review-toolbar h1 {font-size:28px!important;line-height:36px!important}
 html.av-page body#main #content .av-review-toolbar .av-review-add {width:100%!important}
 html.av-page body#main #content .av-review-card {padding:18px!important;gap:12px!important}
 html.av-page body#main #content .av-review-avatar {width:40px;height:40px;flex-basis:40px}
 html.av-page body#main #content .av-review-head {flex-direction:column;gap:6px}
 html.av-page body#main #content .av-review-response {margin-left:-52px;padding:12px;gap:10px}
 html.av-page body#main #content .av-review-help {padding:16px;gap:12px}
 html.av-page body#main #content .av-review-help .av-contact-emblem {width:48px!important;height:48px!important;flex-basis:48px!important}
}
/* 2.11.1: compact pickup summary, with real CMS hours alongside it. */
html.av-page body#main #content .av-contacts-v211 .av-contact-pickup {display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:24px;align-items:start;min-height:0;height:auto}
html.av-page body#main #content .av-contacts-v211 .av-pickup-info p {margin:0!important;font-size:15px!important;line-height:23px!important;color:var(--av-muted)!important}
html.av-page body#main #content .av-contacts-v211 .av-pickup-info .av-contact-delivery {margin-top:10px!important;line-height:22px!important}
html.av-page body#main #content .av-contacts-v211 [data-av-contact-stores] {min-width:0;border-left:1px solid var(--av-line);padding-left:24px}
html.av-page body#main #content .av-contacts-v211 .av-pickup-stores {display:grid;gap:16px}
html.av-page body#main #content .av-contacts-v211 .av-pickup-store {min-width:0}
html.av-page body#main #content .av-contacts-v211 .av-pickup-store h3 {font-size:16px!important;line-height:24px!important;font-weight:600!important;margin:0 0 6px!important}
html.av-page body#main #content .av-contacts-v211 .av-pickup-schedule,
html.av-page body#main #content .av-contacts-v211 .av-pickup-schedule p {margin:0!important;padding:0!important;font-size:14px!important;line-height:21px!important;color:var(--av-muted)!important;overflow-wrap:anywhere}
html.av-page body#main #content .av-contacts-v211 .av-pickup-detail {display:inline-block;margin-top:8px;font-size:14px;line-height:22px;color:var(--av-green);text-decoration:none}
@media(max-width:760px){
 html.av-page body#main #content .av-contacts-v211 .av-contact-pickup {grid-template-columns:minmax(0,1fr);gap:16px}
 html.av-page body#main #content .av-contacts-v211 [data-av-contact-stores] {border-left:0;border-top:1px solid var(--av-line);padding-left:0;padding-top:16px}
}
