/* Approved ornament: exact Reading Moroccan Dress asset and paint behavior. */
html body .em-approved-zellige:not(.em-pattern-clean):not(.em-clean-before):not(.em-clean-after):is(#context,#explore,#connections,#route-voices,#voices,#imperial-gallery,#explore-well,#guides,#home-regions,#morocco-in-details,#events-festivals,#details,#places,#begin,#intro,#why,#start,#practice,#understand,#architecture,#power,#map,#continue,#stories){
 position:relative!important;isolation:isolate!important;background-image:none!important;
}
html body .em-approved-zellige:not(.em-pattern-clean):not(.em-clean-before):not(.em-clean-after):is(#context,#explore,#connections,#route-voices,#voices,#imperial-gallery,#explore-well,#guides,#home-regions,#morocco-in-details,#events-festivals,#details,#places,#begin,#intro,#why,#start,#practice,#understand,#architecture,#power,#map,#continue,#stories)::before{
 content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;
 pointer-events:none!important;display:block!important;background-color:transparent!important;
 background-image:url('/assets/tagine-v1/meknes-zellige.png')!important;
 background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;
 opacity:.07!important;mix-blend-mode:normal!important;mask-image:none!important;transform:none!important;
}
html body .em-approved-zellige:not(.em-pattern-clean):not(.em-clean-before):not(.em-clean-after):is(#context,#explore,#connections,#route-voices,#voices,#imperial-gallery,#explore-well,#guides,#home-regions,#morocco-in-details,#events-festivals,#details,#places,#begin,#intro,#why,#start,#practice,#understand,#architecture,#power,#map,#continue,#stories)::after{background-image:none!important;}
html body .em-pattern-clean:not(.em-approved-zellige):not(.em-ornament-zellige):not(.em-ornament-camel):is(#context,#explore,#connections,#route-voices,#voices,#imperial-gallery,#explore-well,#guides,#home-regions,#morocco-in-details,#events-festivals,#details,#places,#begin,#intro,#why,#start,#practice,#understand,#architecture,#power,#map,#continue,#stories,.rc-section,.pl-section,.lr-guide,.lr-questions,.about-story),
html body .em-pattern-clean:not(.em-approved-zellige):not(.em-ornament-zellige):not(.em-ornament-camel):is(#context,#explore,#connections,#route-voices,#voices,#imperial-gallery,#explore-well,#guides,#home-regions,#morocco-in-details,#events-festivals,#details,#places,#begin,#intro,#why,#start,#practice,#understand,#architecture,#power,#map,#continue,#stories,.rc-section,.pl-section,.lr-guide,.lr-questions,.about-story)::before,
html body .em-pattern-clean:not(.em-approved-zellige):not(.em-ornament-zellige):not(.em-ornament-camel):is(#context,#explore,#connections,#route-voices,#voices,#imperial-gallery,#explore-well,#guides,#home-regions,#morocco-in-details,#events-festivals,#details,#places,#begin,#intro,#why,#start,#practice,#understand,#architecture,#power,#map,#continue,#stories,.rc-section,.pl-section,.lr-guide,.lr-questions,.about-story)::after{background-image:none!important;}

/* City component dimensions come from the frozen, rendered Meknès master. */
body[data-em-city-geometry] :is(.em-landmarks-final,.em-nearby-final)>.em-shell{
 width:min(1500px,calc(100% - 96px))!important;max-width:none!important;margin-inline:auto!important;padding-inline:0!important;
}
body[data-em-city-geometry] .em-landmarks-final>.em-shell{
 display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;gap:60px!important;align-items:center!important;
}
html body[data-em-city-geometry] .em-landmarks-final.em-section .em-landmark-visual{
 position:relative!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;
 min-height:670px!important;aspect-ratio:auto!important;padding:28px!important;box-sizing:border-box!important;
 border:0!important;gap:0!important;border-radius:28px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;
}
html body[data-em-city-geometry] .em-landmarks-final.em-section .em-landmark-visual img{
 position:static!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;
 min-height:0!important;min-width:0!important;margin:0!important;aspect-ratio:1!important;object-fit:cover!important;clip-path:circle(50%)!important;border-radius:0!important;
}
body[data-em-city-geometry] .em-landmark-visual-card{
 width:100%!important;max-width:none!important;min-height:0!important;aspect-ratio:1!important;
 box-sizing:border-box!important;border-radius:50%!important;display:flex!important;flex-direction:column!important;
 justify-content:center!important;align-items:center!important;text-align:center!important;padding:32px!important;
}
/* Keep long placeholder copy readable at the exact master diameter. */
body[data-em-city-geometry] .em-landmark-visual-column{min-width:0;}
body[data-em-city-geometry] .em-landmark-visual-card .em-kicker{color:#203646!important;margin:0 0 16px!important;}
body[data-em-city-geometry] .em-landmark-visual-card h3{
 font:700 clamp(23px,2.3vw,34px)/1.1 Georgia,"Times New Roman",serif!important;
 color:#203646!important;margin:0!important;max-width:22ch;
}
body[data-em-city-geometry] .em-landmark-placeholder-copy{
 padding:28px;border-radius:28px;background:#203646;color:#fffaf2;margin-top:24px;
}
body[data-em-city-geometry] .em-landmark-placeholder-copy p{font:15.2px/1.78 Arial,Helvetica,sans-serif;margin:0;color:inherit!important;}
body[data-em-city-geometry] .em-landmark-placeholder-copy p+p{margin-top:18px;}
/* Preserve the two established nested circle/placeholder wrappers. */
html body[data-em-city-geometry] .em-landmarks-final.em-section .em-landmark-visual>:is(.em-landmark-circle-image,.em-landmark-circle-placeholder){
 width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;
 aspect-ratio:1!important;padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;overflow:hidden!important;
}
html body[data-em-city-geometry] .em-landmarks-final.em-section .em-landmark-visual>p{
 position:absolute!important;inset:auto 28px 8px!important;margin:0!important;text-align:center!important;
}
body[data-em-city-geometry] .em-nearby-grid-final{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;align-items:stretch!important;max-width:none!important;
}
body[data-em-city-geometry] .em-nearby-final .em-nearby-card{
 width:auto!important;min-width:0!important;max-width:none!important;min-height:0!important;height:100%!important;
 box-sizing:border-box!important;padding:0!important;margin:0!important;display:flex!important;flex-direction:column!important;
 border-width:1px!important;border-radius:22px!important;overflow:hidden!important;
}
body[data-em-city-geometry] .em-nearby-final .em-nearby-copy{padding:28px 28px 22px!important;}
body[data-em-city-geometry] .em-nearby-final .em-nearby-copy-landscape,
body[data-em-city-geometry] .em-nearby-final .em-nearby-card:nth-child(3) .em-nearby-copy{padding-bottom:8px!important;}
html body[data-em-city-geometry] .em-nearby-final .em-nearby-grid-final .em-info-card.em-nearby-card .em-nearby-photo{
 width:auto!important;height:auto!important;flex:none!important;margin:auto 18px 18px!important;padding:0!important;
}
html body[data-em-city-geometry] .em-nearby-final .em-nearby-grid-final .em-nearby-card .em-nearby-photo .em-nearby-photo-frame{
 width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:16/10!important;
 box-sizing:border-box!important;border-width:1px!important;padding:0!important;border-radius:20px!important;overflow:hidden!important;
}
html body[data-em-city-geometry] .em-nearby-final .em-nearby-grid-final .em-nearby-card .em-nearby-photo .em-nearby-photo-frame img{
 display:block!important;width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important;
}
body[data-em-city-geometry] .em-nearby-final .em-nearby-card h3{
 font:700 20.48px/1.08 Georgia,"Times New Roman",serif!important;margin:0 0 10px!important;text-align:left!important;
}
body[data-em-city-geometry] .em-nearby-final .em-nearby-card p{
 font:15.2px/1.78 Arial,Helvetica,sans-serif!important;margin:0!important;text-align:left!important;
}
body[data-em-city-geometry] .em-nearby-final .em-nearby-text-card{padding:28px!important;}
body[data-em-city-geometry] .em-nearby-final .em-nearby-text-card p+p{margin-top:18px!important;}
@media(max-width:980px){
 body[data-em-city-geometry] :is(.em-landmarks-final,.em-nearby-final)>.em-shell{width:min(860px,calc(100% - 32px))!important;}
 body[data-em-city-geometry] .em-landmarks-final>.em-shell{grid-template-columns:minmax(0,1fr)!important;}
 html body[data-em-city-geometry] .em-landmarks-final.em-section .em-landmark-visual{min-height:520px!important;}
 body[data-em-city-geometry] .em-nearby-grid-final{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:620px){
 body[data-em-city-geometry] :is(.em-landmarks-final,.em-nearby-final)>.em-shell{width:calc(100% - 24px)!important;}
 body[data-em-city-geometry] .em-nearby-grid-final{grid-template-columns:minmax(0,1fr)!important;}
 body[data-em-city-geometry] .em-landmark-visual-card{padding:22px!important;}
 body[data-em-city-geometry] .em-landmark-visual-card p{font-size:13px!important;line-height:1.5!important;}
}
