/* The audiovisual pilot: native editable blocks, isolated from the site theme. */
.mcpr-page {
 --mcpr-ink:#292d2c; --mcpr-text:#6d6259; --mcpr-wine:#9c4634; --mcpr-wine-dark:#743126;
 --mcpr-copper:#b37b55; --mcpr-line:#e3d7ca; --mcpr-cream:#f7f0e6; --mcpr-paper:#fffdf9;
 display:block; float:none; flex:1 1 100%; align-self:stretch; min-width:0; width:100%; max-width:none; margin:0;
 background:var(--mcpr-paper); color:var(--mcpr-ink); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.65;
}
.mcpr-page *, .mcpr-page *::before, .mcpr-page *::after { box-sizing:border-box; }
.entry-content > .mcpr-page.alignfull, .wp-block-post-content > .mcpr-page.alignfull {
 --mcpr-page-width:min(1600px,calc(100vw - 24px)); width:var(--mcpr-page-width); max-width:none;
 margin-inline:calc((100% - var(--mcpr-page-width))/2) !important;
}
/* Keep the theme header and featured media, removing only its duplicate title. */
body.mcpr-ranking-page .entry-header .entry-title, body.mcpr-ranking-page .wp-block-post-title { display:none; }
body.mcpr-ranking-page main:has(.mcpr-page) { margin-top:0 !important; }
body.mcpr-ranking-page main > .wp-block-group.alignfull:has(> .wp-block-post-content .mcpr-page) { padding-top:0 !important; }
body.mcpr-ranking-page .entry-header:has(> .entry-title):not(:has(img,picture,video)) { display:none; }
body.mcpr-ranking-page .entry-content:has(.mcpr-page) { margin-top:0 !important; }
body.mcpr-ranking-page { background-color:#fffdf9 !important; }
body.mcpr-ranking-page #page, body.mcpr-ranking-page #content.site-content { background:transparent; }
/* Astra gives alignfull a viewport width and all root groups extra padding.
   Give this page a normal full-width content parent instead of two breakouts. */
body.mcpr-ranking-page.ast-no-sidebar #content > .ast-container:has(.mcpr-page) { width:100%; max-width:none; margin:0; padding:0; }
body.mcpr-ranking-page.ast-no-sidebar #primary:has(.mcpr-page) { float:none; flex:1 1 100%; min-width:0; width:100%; margin:0 !important; padding:0 !important; }
body.mcpr-ranking-page .ast-article-single:has(.mcpr-page) { min-width:0; margin:0; padding:0 !important; border:0; background:transparent; }
body.mcpr-ranking-page .ast-article-single .entry-content:has(> .mcpr-page) { width:100%; max-width:none; margin:0; padding:0; }
body.mcpr-ranking-page #primary .ast-article-single .entry-content > .mcpr-page.alignfull { --mcpr-page-width:100%; width:100% !important; max-width:100% !important; margin:0 !important; padding:0 !important; }
.mcpr-page .mcpr-page__shell { container:mcpr-page / inline-size; width:min(1180px,calc(100% - 64px)); max-width:none; min-width:0; margin-inline:auto; }
.mcpr-page :is(.mcpr-page__hero,.mcpr-page__rankings,.mcpr-page__faq,.mcpr-page__business) { width:100%; max-width:none; margin-block:0; }
.mcpr-page :is(.mcpr-page__hero-grid,.mcpr-page__hero-copy,.mcpr-page__visual,.mcpr-page__services,.mcpr-page__utility,.mcpr-page__search-panel,.mcpr-page__ranking-slot,.mcpr-page__faq-intro,.mcpr-page__faq-list,.mcpr-page__business-card,.mcpr-page__business-copy,.mcpr-page__explore) { min-width:0; max-width:none; margin-block:0; }
.mcpr-page :is(.mcpr-page__title,.mcpr-page__heading) { color:var(--mcpr-ink); font-family:Georgia,"Times New Roman",serif; font-weight:500; letter-spacing:-.04em; text-wrap:balance; }
.mcpr-page .mcpr-page__heading { margin:0 0 14px; font-size:clamp(1.7rem,2.7vw,2.25rem); line-height:1.18; }
.mcpr-page .mcpr-page__eyebrow { margin:0 0 10px; color:var(--mcpr-wine); font-size:.68rem; font-weight:750; line-height:1.5; letter-spacing:.13em; text-transform:uppercase; }
.mcpr-page a { text-underline-offset:4px; }
.mcpr-page :is(a,button,input,summary):focus-visible { outline:3px solid var(--mcpr-wine); outline-offset:4px; }
.mcpr-page [id] { scroll-margin-top:22px; }

/* Film-inspired artwork supports the title; the real listings remain the focus. */
.mcpr-page .mcpr-page__hero { position:relative; padding-top:15px; border-top:1px solid #eee4d8; background:linear-gradient(115deg,#fcf8f0 12%,#f5eadb); }
.mcpr-page .mcpr-page__hero > .mcpr-page__shell { position:relative; z-index:1; }
.mcpr-page .mcpr-page__breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:3px 10px; margin:0 0 12px; color:#8b7a6b; font-size:.71rem; line-height:1.5; }
.mcpr-page .mcpr-page__breadcrumb a { display:inline-flex; align-items:center; min-height:28px; color:#806d5d; text-decoration:none; }
.mcpr-page .mcpr-page__breadcrumb a:hover { color:var(--mcpr-wine); text-decoration:underline; }
.mcpr-page .mcpr-page__breadcrumb > span { color:#bca48d; }
.mcpr-page .mcpr-page__hero-grid { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr); align-items:center; gap:24px; padding-bottom:24px; }
.mcpr-page .mcpr-page__title { max-width:760px; margin:0; font-size:clamp(2.4rem,4vw,3.7rem); line-height:1.05; letter-spacing:-.047em; }
.mcpr-page .mcpr-page__title em { display:block; color:var(--mcpr-wine); font-weight:400; }
.mcpr-page .mcpr-page__lead { max-width:58ch; margin:15px 0 0; color:var(--mcpr-text); font-size:.94rem; line-height:1.6; }
.mcpr-page .mcpr-page__services { display:flex; flex-wrap:wrap; gap:5px 14px; margin-top:15px; }
.mcpr-page .mcpr-page__services p { display:inline-flex; align-items:center; gap:7px; margin:0; padding:4px 0; color:#8c725d; font-size:.72rem; line-height:1.4; }
.mcpr-page .mcpr-page__services p::before { flex:0 0 auto; width:4px; height:4px; border-radius:50%; background:#b78662; content:""; }
.mcpr-page .mcpr-page__hero-actions { margin:18px 0 0; }
.mcpr-page .mcpr-page__button .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:46px; padding:10px 18px; border:1px solid var(--mcpr-wine); border-radius:8px; background:var(--mcpr-wine); color:#fff; font:inherit; font-size:.81rem; font-weight:650; line-height:1.4; text-decoration:none; box-shadow:0 4px 9px rgb(122 55 35 / 8%); }
.mcpr-page .mcpr-page__button .wp-block-button__link:hover { background:var(--mcpr-wine-dark); border-color:var(--mcpr-wine-dark); }
.mcpr-page .mcpr-page__button--hero .wp-block-button__link > span { font-size:1.1rem; }
.mcpr-page .mcpr-page__visual { position:relative; align-self:stretch; min-height:265px; background:url("ranking-audiovisual.svg") center 40% / contain no-repeat; }
.mcpr-page .mcpr-page__visual-caption { position:absolute; inset:auto 5% 1px auto; margin:0; color:#9c7758; font-family:Georgia,"Times New Roman",serif; font-size:1.1rem; font-style:italic; }

/* Secondary navigation and search never add a tall form above the cards. */
.mcpr-page .mcpr-page__utility { position:relative; display:flex; align-items:center; justify-content:space-between; gap:10px 20px; padding-block:5px; border-top:1px solid #e4d4c1; }
.mcpr-page .mcpr-page__jump { display:flex; flex-wrap:wrap; align-items:center; gap:0 25px; margin:0; }
.mcpr-page .mcpr-page__jump p { margin:0; }
.mcpr-page .mcpr-page__jump a { display:inline-flex; align-items:center; min-height:44px; color:#7b6451; font-size:.76rem; font-weight:550; text-decoration:none; }
.mcpr-page .mcpr-page__jump a:hover { color:var(--mcpr-wine); text-decoration:underline; }
.mcpr-page .mcpr-page__search-drawer { position:relative; flex:0 0 auto; margin:0; padding:0; border:0; background:none; }
.mcpr-page .mcpr-page__search-drawer > summary { display:flex; align-items:center; gap:12px; min-height:44px; padding:5px 0 5px 10px; color:var(--mcpr-wine); font-size:.76rem; font-weight:650; list-style:none; cursor:pointer; }
.mcpr-page .mcpr-page__search-drawer > summary::-webkit-details-marker { display:none; }
.mcpr-page .mcpr-page__search-drawer > summary::after { color:#a48063; font-size:1.1rem; font-weight:400; content:"+"; }
.mcpr-page .mcpr-page__search-drawer[open] > summary::after { content:"−"; }
.mcpr-page .mcpr-page__search-drawer > .mcpr-page__search-panel { position:absolute; top:calc(100% + 4px); right:0; z-index:30; width:380px; max-width:calc(100vw - 56px); padding:20px; border:1px solid #dfcbb7; border-radius:12px; background:#fffdf9; box-shadow:0 16px 40px rgb(68 43 26 / 16%); }
.mcpr-page .mcpr-page__search { margin:0; }
.mcpr-page .mcpr-page__search .wp-block-search__label { display:block; margin:0 0 10px; color:var(--mcpr-ink); font-size:.83rem; font-weight:650; }
.mcpr-page .mcpr-page__search .wp-block-search__inside-wrapper { display:flex; gap:4px; min-width:0; padding:3px; border:1px solid #cdb9a7; border-radius:7px; background:#fff; }
.mcpr-page .mcpr-page__search .wp-block-search__input { flex:1 1 0; min-width:0; width:0; min-height:44px; margin:0; padding:8px 9px; border:0; border-radius:4px; background:transparent; color:var(--mcpr-ink); font:inherit; font-size:.84rem; box-shadow:none; }
.mcpr-page .mcpr-page__search .wp-block-search__input::placeholder { color:#958575; opacity:1; }
.mcpr-page .mcpr-page__search .wp-block-search__button { flex:0 0 auto; min-height:44px; margin:0; padding:8px 14px; border:1px solid var(--mcpr-wine); border-radius:4px; background:var(--mcpr-wine); color:#fff; font:inherit; font-size:.8rem; font-weight:650; cursor:pointer; }
.mcpr-page .mcpr-page__search .wp-block-search__button:hover { background:var(--mcpr-wine-dark); border-color:var(--mcpr-wine-dark); }

/* Keep the three Premium slots and every organic result dynamic. */
.mcpr-page .mcpr-page__rankings { padding-block:28px 36px; }
.mcpr-page .prp-selection__header { padding-bottom:19px; }
.mcpr-page .prp-selection__header > h2 { color:var(--mcpr-ink); font-family:Georgia,"Times New Roman",serif; font-size:1.9rem; font-weight:600; letter-spacing:-.035em; }
/* Replace only the plugin's labelled demo imagery, never a company's photo. */
.mcpr-page--audiovisual .prp-ranking__photo:has(.prp-ranking__example-label) > img[src*="/assets/premium-example-"] { content:url("ranking-audiovisual.svg"); padding:9px; background:#f2e5d5; object-fit:contain; }
.mcpr-page .mcpr-page__organic-head { margin:30px 0 19px; padding-top:22px; border-top:1px solid var(--mcpr-line); }
.mcpr-page .mcpr-page__organic-head :is(h2,h3) { margin:0; color:var(--mcpr-ink); font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.5rem,2.5vw,2rem); font-weight:500; line-height:1.2; letter-spacing:-.035em; }
.mcpr-page .mcpr-ranking { gap:16px; margin:0; padding:0; list-style:none; }
.mcpr-page .mcpr-ranking .mcpr-ranking__item { grid-template-columns:220px minmax(0,1fr) 250px; min-height:196px; margin:0; border:1px solid #e4d7c8; border-radius:14px; background:#fffdfb; box-shadow:0 5px 18px rgb(94 61 34 / 4%); }
.mcpr-page .mcpr-ranking .mcpr-ranking__item--without-map { grid-template-columns:220px minmax(0,1fr); }
.mcpr-page .mcpr-ranking .mcpr-ranking__photo { position:relative; min-height:196px; background:#f4e9dc; }
.mcpr-page .mcpr-ranking .mcpr-ranking__photo img { position:absolute; inset:0; width:100%; height:100%; min-height:0; object-fit:cover; }
.mcpr-page .mcpr-ranking .mcpr-ranking__photo img[src$=".svg"] { object-fit:contain; padding:14px; }
.mcpr-page .mcpr-ranking .mcpr-ranking__content { align-items:flex-start; padding:21px 25px; }
.mcpr-page .mcpr-ranking .mcpr-ranking__content h3 { margin-bottom:10px; font-family:Georgia,"Times New Roman",serif; font-size:1.42rem; font-weight:600; line-height:1.28; letter-spacing:-.025em; }
.mcpr-page .mcpr-ranking .mcpr-ranking__position { display:inline-grid; place-items:center; min-width:29px; min-height:29px; margin-right:5px; padding:2px 5px; border:1px solid #e6d3c1; border-radius:7px; background:#faf0e5; color:var(--mcpr-wine); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:.78rem; font-weight:750; vertical-align:3px; }
.mcpr-page .mcpr-ranking .mcpr-ranking__rating { width:fit-content; margin:0 0 9px; padding:3px 8px; border:1px solid #ede1cf; border-radius:5px; background:#fcf6eb; color:#77624d; font-size:.8rem; line-height:1.5; }
.mcpr-page .mcpr-ranking .mcpr-ranking__address { margin-bottom:9px; color:#807365; font-size:.82rem; }
.mcpr-page .mcpr-ranking .mcpr-ranking__maps-link { display:inline-flex; align-items:center; min-height:44px; padding:5px 10px; border:1px solid #e3cdb9; border-radius:6px; color:var(--mcpr-wine); font-size:.77rem; font-weight:650; text-decoration:none; }
.mcpr-page .mcpr-ranking .mcpr-ranking__maps-link:hover { background:#f8eee3; border-color:#bd8a68; }
.mcpr-page .mcpr-ranking .mcpr-ranking__map { min-height:196px; border-left-color:#e4d7c8; }
.mcpr-page .mcpr-ranking .mcpr-ranking__map iframe { min-height:196px; }
.mcpr-page .mcpr-updated { margin:14px 0 0; color:#948474; font-size:.73rem; text-align:right; }
.mcpr-page .mcpr-empty { padding:23px; border:1px solid var(--mcpr-line); border-radius:12px; background:var(--mcpr-cream); color:var(--mcpr-text); }

/* Only practical questions and the business invitation follow the listings. */
.mcpr-page .mcpr-page__faq { container:mcpr-editorial / inline-size; padding-block:36px; border-block:1px solid #eaded1; background:#f7f1e8; }
.mcpr-page .mcpr-page__faq-grid { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:60px; }
.mcpr-page .mcpr-page__faq-intro > p:last-child { max-width:31ch; margin:0; color:var(--mcpr-text); font-size:.87rem; }
.mcpr-page .mcpr-page__faq-list { display:grid; gap:9px; }
.mcpr-page .mcpr-page__faq-item { min-width:0; margin:0; padding:0 18px; border:1px solid #e4d6c5; border-radius:10px; background:#fffdf8; }
.mcpr-page .mcpr-page__faq-item summary { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:60px; padding:14px 0; color:#594a3e; font-size:.87rem; font-weight:600; line-height:1.45; list-style:none; cursor:pointer; }
.mcpr-page .mcpr-page__faq-item summary::-webkit-details-marker { display:none; }
.mcpr-page .mcpr-page__faq-item summary::after { flex:0 0 auto; color:#a66d47; font-size:1.25rem; font-weight:400; content:"+"; }
.mcpr-page .mcpr-page__faq-item[open] summary::after { content:"−"; }
.mcpr-page .mcpr-page__faq-item summary:hover { color:var(--mcpr-wine); }
.mcpr-page .mcpr-page__faq-item > p { margin:0; padding:0 14px 17px 0; color:var(--mcpr-text); font-size:.83rem; line-height:1.7; }
.mcpr-page .mcpr-page__business { padding-block:30px 18px; }
.mcpr-page .mcpr-page__business-card { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:24px 38px; padding:29px 32px; border:1px solid #e0c8b4; border-radius:14px; background:linear-gradient(110deg,#f7ebde,#f2dfd0); }
.mcpr-page .mcpr-page__business-card .mcpr-page__heading { margin-bottom:10px; font-size:1.85rem; }
.mcpr-page .mcpr-page__business-copy > p:last-child { max-width:62ch; margin:0; color:#7c6653; font-size:.86rem; }
.mcpr-page .mcpr-page__business-actions { margin:0; }
.mcpr-page .mcpr-page__explore { display:flex; flex-wrap:wrap; align-items:center; gap:0 24px; padding-top:15px; }
.mcpr-page .mcpr-page__explore p { margin:0; color:#9a8877; font-size:.72rem; }
.mcpr-page .mcpr-page__explore p:first-child { margin-right:auto; }
.mcpr-page .mcpr-page__explore a { display:inline-flex; align-items:center; gap:9px; min-height:44px; color:#856045; font-weight:550; text-decoration:none; }
.mcpr-page .mcpr-page__explore a:hover { color:var(--mcpr-wine); text-decoration:underline; }

@container mcpr-page (max-width:980px) {
 .mcpr-page .mcpr-page__hero-grid { grid-template-columns:minmax(0,1.55fr) minmax(230px,1fr); }
 .mcpr-page .mcpr-page__title { font-size:2.9rem; }
 .mcpr-page .mcpr-page__visual { min-height:260px; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__item { grid-template-columns:minmax(150px,24%) minmax(0,1fr) minmax(180px,25%); }
 .mcpr-page .mcpr-ranking .mcpr-ranking__item--without-map { grid-template-columns:minmax(150px,26%) minmax(0,1fr); }
 .mcpr-page .mcpr-ranking .mcpr-ranking__content { padding:18px; }
}
@container mcpr-page (max-width:740px) {
 .mcpr-page .mcpr-page__hero-grid { grid-template-columns:minmax(0,1fr); padding-bottom:21px; }
 .mcpr-page .mcpr-page__hero-copy { position:relative; z-index:1; }
 .mcpr-page .mcpr-page__title { max-width:600px; font-size:2.65rem; }
 .mcpr-page .mcpr-page__lead { max-width:50ch; }
 .mcpr-page .mcpr-page__visual { display:none; }
 .mcpr-page .mcpr-page__services { gap:4px 12px; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__item { grid-template-areas:"photo content" "map map"; grid-template-columns:120px minmax(0,1fr); min-height:0; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__item--without-map { grid-template-areas:"photo content"; grid-template-columns:120px minmax(0,1fr); }
 .mcpr-page .mcpr-ranking .mcpr-ranking__photo { min-height:172px; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__content { padding:15px 18px; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__content h3 { font-size:1.23rem; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__map { height:100px; min-height:0; border-top:1px solid #e4d7c8; border-left:0; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__map iframe { height:100px; min-height:0; }
 .mcpr-page .mcpr-page__business-card { grid-template-columns:minmax(0,1fr); gap:19px; padding:24px; }
 .mcpr-page .mcpr-page__explore p:first-child { flex:1 1 100%; margin:0 0 4px; }
}
@container mcpr-page (max-width:440px) {
 .mcpr-page .mcpr-page__title { max-width:340px; font-size:2.2rem; line-height:1.08; }
 .mcpr-page .mcpr-page__lead { max-width:40ch; margin-top:12px; font-size:.86rem; }
 .mcpr-page .mcpr-page__eyebrow { font-size:.63rem; letter-spacing:.095em; }
 .mcpr-page .mcpr-page__services { margin-top:12px; gap:4px 12px; }
 .mcpr-page .mcpr-page__services p { font-size:.66rem; }
 .mcpr-page .mcpr-page__hero-actions { margin-top:15px; }
 .mcpr-page .mcpr-page__utility { gap:8px; }
 .mcpr-page .mcpr-page__jump { gap:0 15px; }
 .mcpr-page .mcpr-page__jump a, .mcpr-page .mcpr-page__search-drawer > summary { font-size:.68rem; }
 .mcpr-page .mcpr-page__search-drawer > summary { gap:7px; padding-left:0; }
 .mcpr-page .prp-selection__header > h2 { font-size:1.6rem; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__item, .mcpr-page .mcpr-ranking .mcpr-ranking__item--without-map { grid-template-columns:88px minmax(0,1fr); border-radius:11px; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__photo { min-height:168px; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__content { padding:13px 12px; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__content h3 { margin-bottom:8px; font-size:1.08rem; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__position { min-width:24px; min-height:24px; margin-right:3px; font-size:.68rem; vertical-align:1px; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__rating { padding:2px 6px; font-size:.72rem; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__address { margin-bottom:6px; font-size:.75rem; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__maps-link { font-size:.73rem; }
 .mcpr-page .mcpr-page__business-card { padding:23px 19px; }
 .mcpr-page .mcpr-page__business-card .mcpr-page__heading { font-size:1.6rem; }
 .mcpr-page .mcpr-page__business-actions, .mcpr-page .mcpr-page__business-actions .mcpr-page__button, .mcpr-page .mcpr-page__business-actions .wp-block-button__link { width:100%; }
}
@container mcpr-editorial (max-width:740px) {
 .mcpr-page .mcpr-page__faq-grid { grid-template-columns:minmax(0,1fr); gap:23px; }
 .mcpr-page .mcpr-page__faq-intro > p:last-child { max-width:60ch; }
}
@media (max-width:740px) {
 .mcpr-page .mcpr-page__hero::after { position:absolute; inset:45px 0 auto auto; width:190px; height:150px; background:url("ranking-audiovisual.svg") center / contain no-repeat; opacity:.1; content:""; pointer-events:none; }
 .mcpr-page .mcpr-page__faq-grid { grid-template-columns:minmax(0,1fr); gap:23px; }
}
@media (max-width:600px) {
 .mcpr-page .mcpr-page__shell { width:calc(100% - 32px); }
 .mcpr-page .mcpr-page__hero { padding-top:11px; }
 .mcpr-page .mcpr-page__breadcrumb { margin-bottom:12px; gap:3px 8px; font-size:.66rem; }
 .mcpr-page .mcpr-page__rankings { padding-block:23px 29px; }
 .mcpr-page .mcpr-page__faq { padding-block:28px; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__item { grid-template-areas:"photo content"; }
 .mcpr-page .mcpr-ranking .mcpr-ranking__map { display:none; }
 .mcpr-page .mcpr-page__search .wp-block-search__input { font-size:16px; }
}
@media (prefers-reduced-motion:no-preference) {
 .mcpr-page .mcpr-page__button .wp-block-button__link, .mcpr-page .mcpr-page__search .wp-block-search__button { transition:background-color .15s ease,border-color .15s ease; }
}
