/* Isolated Memomaister preview: shared contact styling and catalogue visuals. */
.mm-service-icon {width:32px;height:32px;color:#9a704b;vertical-align:middle;}
body.mm-site #content .mm-visual-grid:has(> :only-child) {grid-template-columns:minmax(0,500px);}
body.mm-site #content .mm-contact-unified {
 background:#f0eee7!important;color:var(--mm-ink)!important;border:1px solid var(--mm-line)!important;
 border-radius:6px!important;padding:28px 32px!important;line-height:1.75!important;
}
body.mm-site #content .mm-contact-unified :is(p,small,strong,a) {color:var(--mm-ink)!important;}
body.mm-site #content .mm-contact-unified a {text-underline-offset:4px;}
body.mm-site #content .contacts-card {border-radius:6px!important;border-color:var(--mm-line)!important;background:var(--mm-surface)!important;}
body.mm-site #content a.mm-contact-link {
 display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:46px;max-width:100%;
 padding:10px 16px!important;margin:4px 6px 4px 0!important;box-sizing:border-box;
 border:1px solid #ae8e6d!important;border-radius:3px!important;background:transparent!important;color:var(--mm-ink)!important;
 font:400 14px/1.5 Arial,sans-serif!important;text-decoration:none!important;overflow-wrap:anywhere;
}
body.mm-site #content a.mm-contact-link:hover {background:#eee9df!important;color:var(--mm-ink)!important;}
/* Messenger links must stay legible inside the dark contact section. */
body.mm-site #content .mm-contact a.mm-contact-link {background:#343b2b!important;color:#fffdf7!important;border-color:#c6b394!important;font-size:16px!important;transition:none!important;}
body.mm-site #content .mm-contact a.mm-contact-link:is(:hover,:focus-visible) {background:#fffdf7!important;color:#282d23!important;border-color:#fffdf7!important;}
body.mm-site #content .mm-contact a.mm-contact-link:focus-visible {outline-color:#fffdf7!important;}
body.mm-site #content :is(.wp-block-button__link,.fl-button,.button) {
 border-radius:3px!important;background:var(--mm-green)!important;color:#fff!important;
 border:1px solid var(--mm-green)!important;min-height:46px;padding:11px 20px!important;
 font:400 14px/1.5 Arial,sans-serif!important;box-shadow:none!important;text-decoration:none!important;
}
body.mm-site #content :is(a,button):focus-visible {outline:3px solid var(--mm-accent)!important;outline-offset:4px!important;}
body.mm-site #content .mm-catalog-preview {padding-block:32px 48px!important;}
body.mm-site #content .mm-catalog-preview h2 {margin-top:0!important;}
body.mm-site #content .mm-visual-intro {max-width:800px;color:var(--mm-muted);font-size:15px!important;}
body.mm-site #content .mm-visual-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px;}
body.mm-site #content .mm-visual-card {margin:0!important;padding:0!important;min-width:0;border:1px solid var(--mm-line);border-radius:5px;overflow:hidden;background:var(--mm-surface);}
body.mm-site #content .mm-visual-open {display:flex;aspect-ratio:1;align-items:center;justify-content:center;background:#f6f6f4;padding:12px;}
body.mm-site #content .mm-visual-open {position:relative;display:block!important;}
body.mm-site #content .mm-visual-open picture {display:block;width:100%;height:100%;}
body.mm-site #content .mm-visual-open img {position:absolute;inset:12px;display:block;width:calc(100% - 24px)!important;height:calc(100% - 24px)!important;object-fit:contain!important;margin:0!important;}
body.mm-site #content .mm-visual-card figcaption {padding:18px 20px!important;margin:0;}
body.mm-site #content .mm-visual-card h3 {font:400 23px/1.25 Georgia,serif!important;margin:0 0 12px!important;}
body.mm-site #content .mm-visual-card figcaption p {font:13px/1.6 Arial,sans-serif!important;color:var(--mm-muted);margin:0 0 12px!important;}
body.mm-site #content .mm-visual-original {font:14px/1.5 Arial,sans-serif!important;text-decoration:underline!important;text-underline-offset:4px;color:#775336!important;}
.mm-visual-dialog {box-sizing:border-box;width:min(1000px,94vw);max-width:94vw;max-height:94dvh;padding:20px;border:1px solid #e2e1d9;border-radius:6px;background:#faf9f6;color:#282b25;}
.mm-visual-dialog::backdrop {background:rgba(25,29,22,.76);}
.mm-visual-dialog img {display:block;width:100%;height:min(65dvh,700px);object-fit:contain;background:#f6f6f4;}
.mm-visual-dialog header {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;}
.mm-visual-dialog h2 {font:400 25px/1.25 Georgia,serif;margin:0;}
.mm-visual-dialog p {font:14px/1.5 Arial,sans-serif;margin:14px 0 0;}
.mm-visual-dialog button {min-height:44px;min-width:44px;border:1px solid #ae8e6d;border-radius:3px;padding:9px 14px;color:#282b25;background:#faf9f6;font:14px/1.5 Arial,sans-serif;}
.mm-visual-dialog button:focus-visible {outline:3px solid #9a704b;outline-offset:3px;}
.mm-visual-dialog nav {display:flex;justify-content:space-between;gap:12px;margin-top:14px;}
.mm-visual-dialog nav[hidden] {display:none;}
@media(max-width:760px) {body.mm-site #content .mm-visual-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:650px) {
 body.mm-site #content .mm-visual-grid {grid-template-columns:minmax(0,1fr);}
 body.mm-site #content .mm-contact-unified {padding:20px!important;}
 .mm-visual-dialog {padding:14px;}
 .mm-visual-dialog h2 {font-size:21px;}
 .mm-visual-dialog img {height:58dvh;}
}
