/* RadioMeteo 2027 | 1.0.26.25 | compact visual scale ~80%.
 * ALL WordPress pages/archives/home/editorial cards/Companion widget FRAMES.
 * Deliberately excludes map tiles, Leaflet internals, plugin coordinate systems,
 * chart axes/canvas, modal hit targets and the 44px touch controls.
 * The menu typography is exempt from reduction: it has to be MORE readable.
 * Loaded last. CSS only: no content, Polylang, API or Companion changes.
 */
:root {
 --max: 1248px; /* 1560 -> 1248: exactly 80% of old maximum content width */
 --rm27-ui-scale: .8;
 --rm27-round: 12px;
 --rm27-shadow: 0 8px 22px rgba(13,46,75,.10);
}
html { font-size: 90%; } /* responsive safe: proportionately compacts rem-based WordPress content */
body {
 font-size: 14px; line-height: 1.56;
 font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
}
/* Width and vertical rhythm: forms, archives, long pages, posts and Gutenberg. */
.wrap { width: min(var(--max), calc(100% - 76px)); }
body:not(.home) main.wrap { padding-top: 14px; padding-bottom: 38px; }
main.rm2027-home { padding-top: 10px; }
.content-layout { grid-template-columns: minmax(0,1fr) 234px; gap: 28px; padding-bottom: 45px; }
.content-layout:not(:has(> .sidebar)) {grid-template-columns:minmax(0,1fr)}
.post-grid { gap: 17px; }
.sidebar {gap: 14px;}
.sidebar .widget, .rm-home-extra-widgets .widget {padding: 15px;}
.article-content, .rm-block-page__content, .rm-contest-page__editor-content { font-size: 14px; line-height:1.62; }
.article-content p, .rm-block-page__content p, .rm-contest-page__editor-content p {line-height:1.64;}
main :is(.article-content,.rm-block-page__content,.rm-contest-page__editor-content) > :is(h2,h2.wp-block-heading),
main .wp-block-group:not(.has-background)>h2.wp-block-heading:first-child {font-size:clamp(18px,1.6vw,22px);padding:9px 12px;border-radius:7px;}
.article-content .source-box, .article-meta, .empty-state p, .filter-pill,
.notice-inline,.nav-links,.page-numbers,.article-content table {font-size:13px;}
.article-content td,.article-content th {padding:9px;}
h1 {font-size:clamp(27px,4vw,45px)}
h2 {font-size:clamp(21px,2.2vw,27px)}
h3 {font-size:clamp(17px,1.45vw,21px)}
p {margin-bottom:.85rem}
/* HEADER: compact geometry, deliberately higher legibility than prior condensed 12px/800. */
.site-header.rm2027-header {z-index:55;}
.rm2027-header .wrap.rm2027-header-inner {width:min(1320px,calc(100% - 52px));min-height:61px;gap:10px;}
.rm2027-header .rm2027-brand{gap:7px;}
.rm2027-header .rm2027-brand-mark {width:47px;height:37px;}
.rm2027-header .rm2027-brand-name {font-size:26px;letter-spacing:-.8px;font-weight:750;}
.rm2027-header .primary-menu {gap:4px;}
.rm2027-header .primary-menu>li>a {
 font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;
 font-size:14px; font-weight:650; letter-spacing:.005em; line-height:1.35;
 padding:8px 7px; min-height:37px; border-radius:7px;
 background:#124568; border:1px solid #4a82a2; color:#fff;
 text-shadow:0 1px 0 #001a2e45;
}
.rm2027-header .primary-menu>li>a:hover,
.rm2027-header .primary-menu>li.current-menu-item>a,
.rm2027-header .primary-menu>li.current-menu-ancestor>a,
.rm2027-header .primary-menu>li.current-menu-parent>a {
 color:#fff; background:#136b90; border-color:#65e3f4;
 text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1.5px;
}
.rm2027-header .primary-menu .sub-menu{min-width:200px;max-width:275px;border-radius:9px;max-height:calc(100vh - 72px);}
.rm2027-header .primary-menu .sub-menu a{font-size:14px;font-weight:600;line-height:1.38;padding:10px 12px!important;}
.rm2027-header .primary-menu .sub-menu a:hover,
.rm2027-header .primary-menu .sub-menu a:focus-visible{background:#145e80;color:#fff!important;}
.rm2027-header .header-actions{gap:6px;}
.rm2027-header .language-switcher{border-radius:8px;padding:2px;}
.rm2027-header .language-switcher a,.rm2027-header .language-switcher span{font-size:12px;padding:4px 6px;}
.rm2027-header .search-toggle.rm2027-search-link{min-width:42px;max-width:42px;min-height:39px;padding:8px;justify-content:center;border-radius:9px;}
.rm2027-header .search-toggle.rm2027-search-link span{display:none;}
.rm2027-header .menu-toggle {width:44px;height:44px;}
/* FEATURE / TITLE BANNERS: smaller by 20% and physically SEPARATED from header. */
.rm2027-hero {height:216px;}
.rm2027-hero__copy {padding-top:25px;}
.rm2027-kicker {font-size:11px;margin-bottom:8px;gap:10px;}
.rm2027-kicker:before {width:26px;height:2px;}
main.rm2027-home .rm2027-hero h1 {font-size:clamp(29px,2.5vw,37px)!important;max-width:625px;line-height:1.16;margin-bottom:10px;}
.rm2027-hero p:not(.rm2027-kicker) {font-size:clamp(14px,1.08vw,17px);line-height:1.42;}
body:not(.home) .page-heading,body:not(.home) .rm-posts-index__header {
 padding:30px clamp(18px,2.4vw,36px);margin:0 0 21px;
 border-radius:0 0 14px 14px;box-shadow:0 4px 15px #061c3423;
}
body:not(.home) .page-heading:before,body:not(.home) .rm-posts-index__header:before{width:27px;height:2px;margin-bottom:8px;}
body:not(.home) .page-heading h1,body:not(.home) .rm-posts-index__header h1 {font-size:clamp(25px,2.5vw,35px);margin-bottom:10px;}
body:not(.home) .page-heading .eyebrow,body:not(.home) .rm-posts-index__header .eyebrow {font-size:11px;}
body:not(.home) .page-heading p,body:not(.home) .page-heading .archive-description,
body:not(.home) .page-heading .article-meta,body:not(.home) .rm-posts-index__intro {font-size:13px;line-height:1.5;}
/* Home SIX photo service cards, including all artwork and icon holders. */
.rm2027-home-main {margin-top:-67px;padding-bottom:36px;}
.rm2027-home .rm-home-services{margin-bottom:24px;}
.rm2027-home .rm-home-services__grid{gap:13px;}
.rm2027-home .rm-home-services__card {min-height:90px;padding:12px 13px;gap:12px;border-radius:11px;}
.rm2027-home .rm-home-services__symbol{width:58px;height:58px;min-width:58px;padding:11px;}
.rm2027-home .rm-home-services__symbol img{width:34px;height:34px;}
.rm2027-home .rm-home-services__copy strong{font-size:clamp(14px,.98vw,16px);}
.rm2027-home .rm-home-services__copy small{font-size:11px;line-height:1.34;}
.rm2027-home .rm-home-services__arrow{width:29px;height:29px;right:11px;bottom:10px;font-size:17px;border-width:1px;}
/* Home editorial two bands; original WP featured images stay untouched. */
.rm2027-home .section-head h2{font-size:clamp(22px,1.8vw,28px);}
.rm2027-home .section-head a{font-size:13px;}
main.rm2027-home .rm2027-home-news{margin-bottom:24px!important;}
main.rm2027-home .rm2027-editorial-featured{margin-bottom:22px;}
main.rm2027-home .rm2027-editorial-featured>.section-head{margin-bottom:17px;}
main.rm2027-home .rm2027-editorial-lead{gap:17px;grid-template-columns:minmax(0,1fr) minmax(204px,24.5%);}
main.rm2027-home .rm2027-editorial-featured__grid{gap:13px!important;}
main.rm2027-home .rm2027-editorial-featured__grid>.post-card>.card-body{gap:6px;padding:12px;}
main.rm2027-home .rm2027-editorial-featured__grid>.post-card .card-body h3{font-size:clamp(14px,.97vw,16px);}
main.rm2027-home .rm2027-editorial-featured__grid>.post-card .card-more{font-size:12px;}
main.rm2027-home .rm2027-editorial-more{padding:21px 20px 23px;}
main.rm2027-home .rm2027-editorial-more__grid{gap:13px!important;}
main.rm2027-home .rm2027-editorial-more__grid>.post-card>.card-media{height:94px;}
main.rm2027-home .rm2027-editorial-more__grid>.post-card>.card-body{padding:10px 12px 11px;gap:5px;}
main.rm2027-home .rm2027-editorial-more__grid>.post-card h3{font-size:clamp(14px,.92vw,15px);}
main.rm2027-home .rm2027-editorial-more__grid>.post-card .card-body>p{font-size:11px;}
main.rm2027-home .rm2027-editorial-spotlight{padding:18px;border-radius:12px;gap:10px;}
main.rm2027-home .rm2027-editorial-spotlight__photo{max-height:120px;}
.post-card{border-radius:11px;}
.post-card .card-body{padding:13px;}
.post-card .card-body h3{font-size:clamp(15px,1vw,17px);line-height:1.3;}
.post-card .card-body p{font-size:13px;line-height:1.5;}
.post-card .card-body>.tag{font-size:11px!important;padding:4px 7px;}
.post-card .card-body>.card-meta,.post-card .card-meta{font-size:11px;margin-top:6px;padding-top:8px;}
body:not(.home) .post-grid{gap:16px;}
body:not(.home) .post-card .card-media{aspect-ratio:16/8.5;}
/* Widgets, article/sidebar panels, widget headings — 80% rhythm, no data/JS alterations. */
main.rm2027-home .rm2027-home-widgets{margin-top:25px!important;padding:20px clamp(14px,1.65vw,23px) 23px!important;border-radius:13px;}
main.rm2027-home .rm2027-home-widgets__heading{margin-bottom:16px;}
main.rm2027-home .rm2027-home-widgets__heading h2{font-size:clamp(22px,1.85vw,27px);}
main.rm2027-home .rm2027-home-widgets>.sidebar{gap:14px!important;}
main.rm2027-home .rm2027-home-widgets>.sidebar>.widget {padding:0 15px 15px!important;border-radius:12px!important;}
main.rm2027-home .rm2027-home-widgets>.sidebar>.widget>h2,
main.rm2027-home .rm2027-home-widgets>.sidebar>.widget>h3,
main.rm2027-home .rm2027-home-widgets>.sidebar>.widget>.wp-block-heading,
main.rm2027-home .rm2027-home-widgets>.sidebar>.widget>.wp-block-group>h2:first-child {
 font-size:15px!important;padding:13px 15px!important;margin:0 -15px 14px!important;
}
main.rm2027-home .rm2027-home-widgets .mini-event{grid-template-columns:39px minmax(0,1fr);gap:10px;padding:10px 0;}
main.rm2027-home .rm2027-home-widgets .mini-event .date-box strong{font-size:20px;}
main.rm2027-home .rm2027-home-widgets .mini-event h3{font-size:13px!important;}
main.rm2027-home .rm2027-home-widgets .mini-event small{font-size:11px!important;}
main.rm2027-home .rm2027-home-widgets .rmc-prop-widget-card{gap:11px;}
main.rm2027-home .rm2027-home-widgets .rmc-prop-widget-best{padding:11px;}
main.rm2027-home .rm2027-home-widgets .rmc-prop-widget-metrics strong{font-size:14px;}
main.rm2027-home .rm2027-home-widgets .rm-home-activations li{padding:10px 0;}
main.rm2027-home .rm2027-home-widgets .rm-home-activations li strong{font-size:13px;}
main.rm2027-home .rm2027-home-widgets .rm-home-activations li small{font-size:11px;}
body:not(.home) .sidebar>.widget {border-radius:11px;padding:14px;}
body:not(.home) .sidebar>.widget>h2,body:not(.home) .sidebar>.widget>h3 {font-size:14px;padding:10px 12px;margin-bottom:12px;}
.sidebar .widget h2,.sidebar .widget h3{font-size:16px;}
.sidebar .widget li,.sidebar .widget p{font-size:14px;line-height:1.52;}
/* Operational services: ONLY cosmetic frames, not map canvases, tiles or scientific charts. */
.rm-contest-page,.rm-block-page,.rm-posts-index{padding-bottom:51px;}
.rm-block-page{padding-top:0;}
.rm-contest-page .calendar-controls,.calendar-controls{padding:14px;gap:12px;margin-bottom:16px;}
.event-list{gap:12px;}
.event-card,.rmc-calendar .event-card{padding:18px;gap:16px;grid-template-columns:54px minmax(0,1fr);}
.event-card h3{font-size:17px;}
.event-card p{font-size:13px;}
.event-card .date-box strong{font-size:27px;}
.calendar-controls label{font-size:12px;}
.calendar-day{min-height:76px;}
.rm-posts-index__header{margin-bottom:19px;}
.rm-weather-grid{gap:8px;}
.rm-weather-card{padding:11px;}
.rm-weather-value{font-size:20px;}
/* Footer reduction matches 80% page geometry. */
.site-footer,.site-footer p,.site-footer a,.site-footer li{font-size:13px;}
.site-footer h2,.site-footer h3{font-size:15px;}
.site-footer .footer-bottom,.site-footer .footer-bottom a{font-size:12px;}
.site-footer .footer-grid{gap:24px;}
.site-footer .rm2027-brand-mark{width:39px;height:34px;}
.site-footer .rm2027-brand-name{font-size:22px;}
/* A keyboard focus must remain obvious after menu contrast update. */
.rm2027-header .primary-menu a:focus-visible,.rm2027-header .submenu-toggle:focus-visible{outline:3px solid #4ee8ff;outline-offset:2px;}
/* Preserve minimum comfortable tap targets; keep menu nav labels legible. */
@media (max-width:1360px) {
 .wrap{width:calc(100% - 32px)}
 .rm2027-header .wrap.rm2027-header-inner{width:calc(100% - 32px);min-height:58px;gap:8px;}
 .rm2027-header .nav-wrap{max-height:min(75vh,610px);}
 .rm2027-header .primary-menu>li>a{font-size:15px;padding:12px 14px;min-height:44px;letter-spacing:0;}
 .rm2027-header .primary-menu .sub-menu a{font-size:14px;min-height:44px;}
 .rm2027-header .submenu-toggle{width:44px;height:44px;min-width:44px;}
 .rm2027-header .menu-toggle{width:44px;height:44px;min-width:44px;min-height:44px;}
 main.rm2027-home .rm2027-editorial-lead{grid-template-columns:minmax(0,1fr);}
}
@media (max-width:760px) {
 body{font-size:14px;}
 .wrap{width:calc(100% - 28px)}
 body:not(.home) main.wrap{padding-top:10px;}
 main.rm2027-home{padding-top:8px;}
 .rm2027-hero{height:194px;}
 .rm2027-hero__copy{padding-top:21px;}
 main.rm2027-home .rm2027-hero h1{font-size:29px!important;}
 .rm2027-hero p:not(.rm2027-kicker){font-size:14px;}
 .rm2027-home-main{margin-top:-44px;}
 .rm2027-home .rm-home-services__grid{gap:10px;}
 .rm2027-home .rm-home-services__card{min-height:85px;padding:10px 12px;}
 .rm2027-home .rm-home-services__symbol{width:48px;height:48px;min-width:48px;padding:9px;}
 .rm2027-home .rm-home-services__symbol img{width:29px;height:29px;}
 .rm2027-home .rm-home-services__copy strong{font-size:14px;}
 .rm2027-home .rm-home-services__copy small{font-size:11px;}
 body:not(.home) .page-heading,body:not(.home) .rm-posts-index__header{padding:22px 17px;margin-bottom:17px;}
 body:not(.home) .page-heading h1,body:not(.home) .rm-posts-index__header h1{font-size:26px;}
 body:not(.home) .page-heading p{font-size:13px;}
 .article-content,.rm-block-page__content,.rm-contest-page__editor-content{font-size:14px;}
 .content-layout{grid-template-columns:minmax(0,1fr);gap:16px;}
 .rm2027-home .sidebar{grid-template-columns:repeat(2,minmax(0,1fr));}
 .event-card,.rmc-calendar .event-card{grid-template-columns:45px minmax(0,1fr);gap:11px;padding:14px;}
 .calendar-controls input,.calendar-controls select,.calendar-controls button{min-height:44px;}
}
@media (max-width:550px) {
 .wrap{width:calc(100% - 24px);}
 .rm2027-header .wrap.rm2027-header-inner{width:calc(100% - 18px);gap:4px;}
 .rm2027-header .rm2027-brand{gap:4px;}
 .rm2027-header .rm2027-brand-mark{width:34px;height:33px;}
 .rm2027-header .rm2027-brand-name{font-size:21px;letter-spacing:-.6px;}
 .rm2027-header .language-switcher a,.rm2027-header .language-switcher span{font-size:11px;padding:4px 5px;}
 .rm2027-header .header-actions{gap:4px;}
 .rm2027-header .search-toggle.rm2027-search-link{width:40px;min-width:40px;max-width:40px;}
 .rm2027-hero{height:184px;}
 main.rm2027-home .rm2027-hero h1{font-size:clamp(24px,7.3vw,28px)!important;}
 .rm2027-home-main{margin-top:-38px;}
 .rm2027-home .rm-home-services__card{min-height:82px;}
 .rm2027-home .rm-home-services__copy strong{font-size:15px;}
 .rm2027-home .rm-home-services__copy small{font-size:12px;}
 main.rm2027-home .rm2027-editorial-featured__grid,
 main.rm2027-home .rm2027-editorial-more__grid{grid-template-columns:minmax(0,1fr)!important;}
 main.rm2027-home .rm2027-editorial-more{padding:15px 13px 16px;}
 main.rm2027-home .rm2027-editorial-more__grid>.post-card>.card-media{height:110px;}
 main.rm2027-home .rm2027-home-widgets{padding:16px 11px 19px!important;}
 main.rm2027-home .rm2027-home-widgets>.sidebar{grid-template-columns:minmax(0,1fr)!important;}
 .rm2027-home .sidebar{grid-template-columns:minmax(0,1fr);}
 .rm2027-header .menu-toggle{min-width:44px;width:44px;min-height:44px;height:44px;}
}
@media (max-width:370px) {
 .rm2027-header .rm2027-brand-mark{width:29px;height:31px;}
 .rm2027-header .rm2027-brand-name{font-size:19px;}
}
@media (prefers-reduced-motion:reduce) { .post-card,.rm2027-home .rm-home-services__card{transition:none;} }
