/* Shared responsive constraints; retain each layout's photo proportions. */
:where(.rosalia-journal,.rosalia-editorial,.rosalia-grid-page) { min-width:0; }
:where(.journal-copy,.journal-photo,.editorial-card,.grid-post-item,.journal-most-read-card,.rosalia-footer-subscribe-inner) { min-width:0; }
:where(.journal-copy h2,.editorial-card h2,.grid-post-item .entry-title,.journal-most-read-card h3) { overflow-wrap:anywhere; }
:where(.journal-story-filters,.pin-filters) { max-width:100%; overscroll-behavior-inline:contain; }
:where(.journal-story-filters,.pin-filters) a:focus-visible { outline:2px solid currentColor; outline-offset:-3px; }
:where(.rosalia-journal,.rosalia-editorial,.rosalia-grid-page) :where(button,a,input,textarea):focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.rosalia-grid-page .pin-scroll-status { overflow-wrap:anywhere; }
body.dark-mode .rosalia-grid-page .grid-post-item { background:#202020!important; color:#eee!important; border-color:#444!important; }
body.dark-mode .rosalia-grid-page .grid-post-item :is(.entry-title a,.rosalia-card-summary,.entry-meta-top,.share-label,.like-btn,.share-icon) { color:#eee!important; }
body.dark-mode .rosalia-grid-page .pin-filters a { background:#222; color:#ddd; border-color:#555; }
body.dark-mode .rosalia-grid-page .pin-filters a.active { background:#fff; color:#111; }
@media(max-width:760px) {
 :where(.journal-story-actions,.post-footer-meta,.rosalia-footer-inline-form) { flex-wrap:wrap; }
 .rosalia-grid-page .pin-intro p { margin-top:10px; }
 .rosalia-grid-page .pin-filters a { min-height:40px; display:inline-flex; align-items:center; box-sizing:border-box; }
 .rosalia-grid-page .grid-post-item .post-footer-meta { gap:8px; }
 .rosalia-grid-page .grid-post-item .post-share-box { flex-wrap:wrap; gap:8px; }
 :where(.rosalia-footer-inline-form,.journal-newsletter-form) input[type=email] { min-width:0; max-width:100%; font-size:16px!important; }
}
@media(max-width:420px) {
 .rosalia-grid-page .rosalia-grid-stories { columns:1!important; column-gap:0!important; }
 .rosalia-grid-page .grid-post-item .entry-title { font-size:16px!important; line-height:1.35!important; }
 .rosalia-grid-page .grid-post-item .rosalia-card-summary { font-size:12px!important; line-height:1.5!important; }
 .rosalia-grid-page .grid-post-item .entry-meta-top { font-size:10px!important; }
 .rosalia-grid-page .grid-post-item .pin-save { min-height:36px; display:inline-flex; align-items:center; }
 .rosalia-journal .journal-featured-overlay { height:auto; min-height:600px; }
 .rosalia-journal .journal-featured-overlay .journal-copy { padding-inline:18px; }
 .rosalia-footer-inline-form { width:100%; }
 .rosalia-footer-inline-form button { min-height:44px; }
}
@media(prefers-reduced-motion:reduce) {
 :where(.rosalia-journal,.rosalia-editorial,.rosalia-grid-page) *, :where(.rosalia-journal,.rosalia-editorial,.rosalia-grid-page) *::before { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
}

/* Preserve all header controls when the publication has a long site name. */
@media(max-width:600px) {
 .header-top-inner { gap:10px; }
 .header-top-inner > .header-left { flex:1 1 auto; min-width:0; }
 .header-top-inner .header-blog-name { display:block; flex:0 1 auto; min-width:0; margin-right:8px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; line-height:44px; }
 .header-top-inner .header-blog-name .custom-logo { max-width:100%; max-height:44px; width:auto; object-fit:contain; }
 .header-top-inner > .header-right { flex:0 0 auto; }
}

/* A primary menu is one row; use the existing drawer if its contents cannot fit. */
@media(min-width:992px) {
 #masthead .main-navigation > ul, #masthead .main-navigation > div > ul { flex-wrap:nowrap; }
 #masthead .header-blog-name { flex-shrink:0; white-space:nowrap; }
}
#masthead .rosalia-menu-measure { position:fixed!important; left:0!important; top:0!important; display:block!important; width:max-content!important; max-width:none!important; height:auto!important; min-height:0!important; padding:0!important; margin:0!important; visibility:hidden!important; transform:none!important; pointer-events:none!important; }
#masthead .rosalia-menu-measure > ul { display:flex!important; flex-direction:row!important; flex-wrap:nowrap!important; gap:18px!important; width:max-content!important; padding:0!important; margin:0!important; }
#masthead .rosalia-menu-measure > ul > li { display:block!important; width:auto!important; flex:none!important; }
#masthead .rosalia-menu-measure > ul > li > a { display:block!important; height:44px!important; line-height:44px!important; padding:0!important; font-size:11px!important; white-space:nowrap!important; }
#masthead .rosalia-menu-measure ul ul, #masthead .rosalia-menu-measure button { display:none!important; }
@media(min-width:992px) {
 #masthead.rosalia-menu-collapsed .header-top-inner { display:flex; align-items:center; min-height:80px; }
 #masthead.rosalia-menu-collapsed .header-left { display:flex; gap:24px; min-width:0; }
 #masthead.rosalia-menu-collapsed .mobile-menu-toggle { display:block; flex:0 0 44px; width:44px; height:44px; margin:0; padding:12px 11px; }
 #masthead.rosalia-menu-collapsed #site-navigation { position:fixed; inset:0 auto 0 0; display:block; width:min(360px,85vw); height:100dvh; padding:80px 28px 28px; margin:0; box-sizing:border-box; background:var(--rosalia-chrome-bg); z-index:10000; overflow-y:auto; transform:translateX(-110%); visibility:hidden; transition:transform .25s ease,visibility .25s; }
 #masthead.rosalia-menu-collapsed #site-navigation.active { transform:translateX(0); visibility:visible; }
 #masthead.rosalia-menu-collapsed #site-navigation ul { display:flex; flex-direction:column; flex-wrap:nowrap; gap:8px; align-items:stretch; }
 #masthead.rosalia-menu-collapsed #site-navigation li { width:100%; }
 #masthead.rosalia-menu-collapsed #site-navigation li a { display:block; height:auto; min-height:44px; line-height:1.5; padding:12px 0; white-space:normal; }
 #masthead.rosalia-menu-collapsed #site-navigation li.menu-item-has-children { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; }
 #masthead.rosalia-menu-collapsed #site-navigation li.menu-item-has-children > a { flex:1; }
 #masthead.rosalia-menu-collapsed #site-navigation li.menu-item-has-children > a::after { display:none; }
 #masthead.rosalia-menu-collapsed #site-navigation .sub-menu-toggle { display:flex; align-items:center; justify-content:center; flex:0 0 44px; height:44px; padding:10px; color:inherit; background:none; border:0; }
 #masthead.rosalia-menu-collapsed #site-navigation ul ul { position:static; display:none; width:100%; opacity:1; visibility:visible; transform:none; background:none; box-shadow:none; border:0; padding:0 0 0 16px; }
 #masthead.rosalia-menu-collapsed #site-navigation .open-submenu > ul { display:flex; }
}

#masthead .rosalia-menu-measure > ul > li.menu-item-has-children > a { padding-right:20px!important; }
