/*
Theme Name: Nexo Site
Theme URI: https://nexo.local
Author: Nexo Editorial
Description: Portal de notícias responsivo, acessível e orientado a conteúdo editorial.
Version: 2.5.0
Text Domain: nexo-site
*/
:root { --nexo-primary:#052b4c; --nexo-primary-deep:#031f38; --nexo-ink:#0a2342; --nexo-gold:#d9a51d; --nexo-gold-hover:#b9810d; --nexo-muted:#667085; --nexo-line:#e4e7ec; --nexo-surface:#f6f7f9; --nexo-body:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; --nexo-heading:Georgia,"Times New Roman",serif; --nexo-max:1240px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:#fff; color:var(--nexo-ink); font-family:var(--nexo-body); font-size:14px; line-height:1.5; margin:0; }
body.nexo-menu-open { overflow:hidden; }
a { color:inherit; text-decoration-thickness:1px; text-underline-offset:3px; }
a:hover { color:var(--nexo-gold-hover); }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible { outline:3px solid var(--nexo-gold); outline-offset:3px; }
img { height:auto; max-width:100%; }
.screen-reader-text { clip:rect(1px,1px,1px,1px); clip-path:inset(50%); height:1px; overflow:hidden; position:absolute; width:1px; word-wrap:normal !important; }
.screen-reader-text:focus { background:#fff; clip:auto !important; clip-path:none; color:#111; display:block; height:auto; left:8px; padding:12px; position:fixed; top:8px; width:auto; z-index:100000; }
.nexo-shell { margin-inline:auto; width:min(var(--nexo-max),calc(100% - 48px)); }
/* The masthead lives in one blue editorial band: navigation on the left,
 * an oversized centered identity mark, and search on the right.  The header
 * reserves enough space below the floating mark so it never covers content. */
.nexo-header { margin-bottom:28px; position:relative; z-index:20; }
.nexo-header-bar { background:var(--nexo-primary); color:#fff; min-height:70px; }
.nexo-header-bar-inner { align-items:center; display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); min-height:70px; position:relative; }
.nexo-desktop-navigation { min-width:0; }
.nexo-header .nexo-navigation { background:transparent; color:#fff; }
.nexo-brand { align-items:center; display:flex; grid-column:2; justify-content:center; position:relative; z-index:2; }
.nexo-brand-mark { align-items:center; background:var(--nexo-primary); border:4px solid #fff; border-radius:50%; box-shadow:0 6px 16px rgba(1,20,39,.28); color:#fff; display:flex; height:84px; justify-content:center; overflow:hidden; text-decoration:none; transform:translateY(18px); width:84px; }
.nexo-brand-mark img { display:block; height:100%; max-width:none; object-fit:cover; width:100%; }
.nexo-brand-mark span { align-items:center; background:var(--nexo-primary); border-radius:50%; display:flex; font-size:2rem; font-weight:800; height:100%; justify-content:center; width:100%; }
.nexo-header-actions { align-items:center; display:flex; gap:12px; grid-column:3; justify-content:flex-end; min-width:0; }
.nexo-search { width:min(320px,28vw); }
.nexo-search form { align-items:center; background:#fff; border:1px solid rgba(255,255,255,.65); border-radius:5px; display:flex; min-height:40px; padding:2px 8px; }
.nexo-search label { flex:1; min-width:0; }
.nexo-search .search-field { background:transparent; border:0; color:var(--nexo-ink); font:inherit; min-width:0; padding:6px 8px; width:100%; }
.nexo-search .search-field::placeholder { color:#748096; }
.nexo-search .search-submit { background:transparent; border:0; color:var(--nexo-primary); cursor:pointer; font-size:.72rem; font-weight:800; padding:7px; text-transform:uppercase; }
.nexo-search-toggle { display:none; }
.nexo-menu-toggle { background:var(--nexo-gold); border:0; border-radius:5px; cursor:pointer; display:none; height:44px; padding:9px; width:48px; }
.nexo-menu-toggle span { background:#fff; display:block; height:3px; margin:4px auto; transition:opacity .18s ease,transform .18s ease; width:24px; }
body.nexo-menu-open .nexo-menu-toggle span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
body.nexo-menu-open .nexo-menu-toggle span:nth-child(2) { opacity:0; }
body.nexo-menu-open .nexo-menu-toggle span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
.nexo-menu-panel { display:none; }
.nexo-menu-panel-head { display:none; }
.nexo-primary-menu,.nexo-dropdown-menu { list-style:none; margin:0; padding:0; }
.nexo-primary-menu { align-items:stretch; display:flex; }
.nexo-primary-menu > li { margin:0; position:relative; }
.nexo-primary-menu > li > a,.nexo-dropdown-toggle { align-items:center; background:transparent; border:0; color:#fff; cursor:pointer; display:flex; font-family:var(--nexo-body); font-size:.79rem; font-weight:800; gap:7px; letter-spacing:.01em; min-height:48px; padding:15px 18px; text-decoration:none; text-transform:uppercase; }
.nexo-primary-menu > li + li > a,.nexo-primary-menu > li + li > .nexo-dropdown-toggle { border-left:1px solid rgba(255,255,255,.28); }
.nexo-primary-menu > li > a:hover,.nexo-primary-menu > li > a:focus-visible,.nexo-dropdown:hover > .nexo-dropdown-toggle,.nexo-dropdown:focus-within > .nexo-dropdown-toggle,.nexo-dropdown--open > .nexo-dropdown-toggle { box-shadow:inset 0 -4px 0 var(--nexo-gold); color:#fff; }
.nexo-dropdown-menu { background:#fff; border:1px solid #d9e0e8; box-shadow:0 14px 32px rgba(2,29,53,.17); left:0; min-width:240px; opacity:0; padding:7px 0; pointer-events:none; position:absolute; top:100%; transform:translateY(-6px); transition:opacity .16s ease,transform .16s ease,visibility .16s ease; visibility:hidden; z-index:40; }
.nexo-dropdown:hover > .nexo-dropdown-menu,.nexo-dropdown:focus-within > .nexo-dropdown-menu,.nexo-dropdown--open > .nexo-dropdown-menu { opacity:1; pointer-events:auto; transform:translateY(0); visibility:visible; }
.nexo-dropdown-menu li { margin:0; position:relative; }
.nexo-dropdown-menu a { align-items:center; color:var(--nexo-primary); display:flex; font-size:.84rem; font-weight:700; justify-content:space-between; line-height:1.25; min-height:39px; padding:9px 37px 9px 14px; text-decoration:none; }
.nexo-dropdown-menu a:hover,.nexo-dropdown-menu a:focus-visible { background:#f4f7fa; color:var(--nexo-gold-hover); outline-offset:-3px; }
.nexo-dropdown-menu .nexo-dropdown-menu { left:calc(100% - 1px); top:-8px; }
.nexo-submenu-toggle { align-items:center; background:transparent; border:0; color:#6d7c91; cursor:pointer; display:flex; font-size:1.25rem; height:39px; justify-content:center; padding:0; position:absolute; right:0; top:0; width:38px; }
.nexo-submenu-toggle:hover,.nexo-submenu-toggle:focus-visible { color:var(--nexo-gold-hover); }
.nexo-menu-empty { color:var(--nexo-muted); font-size:.83rem; padding:12px 14px; white-space:nowrap; }
.nexo-menu-overlay { display:none; }
.nexo-main { min-height:55vh; padding:28px 0 64px; }
.nexo-home-layout { display:grid; gap:32px; grid-template-columns:minmax(0,1fr) 360px; }
.nexo-lead-media-wrap,.nexo-secondary-media-wrap { position:relative; }
.nexo-story-media { background:var(--nexo-primary); display:block; overflow:hidden; position:relative; text-decoration:none; }
.nexo-story-media img { display:block; height:100%; object-fit:cover; transition:transform .3s ease; width:100%; }
.nexo-story-media:hover img { transform:scale(1.03); }
.nexo-story-media--placeholder { align-items:center; aspect-ratio:16 / 9; background:var(--nexo-primary); display:flex; justify-content:center; }
.nexo-story-media--placeholder span { color:#fff; font-family:var(--nexo-heading); font-size:clamp(3rem,8vw,6rem); font-weight:800; }
.nexo-media--lead { aspect-ratio:16 / 9; }
.nexo-category-badge { background:var(--nexo-gold); bottom:14px; color:#fff; font-size:.74rem; font-weight:900; left:14px; letter-spacing:.01em; padding:7px 10px; position:absolute; text-transform:uppercase; }
.nexo-lead-copy { border-bottom:1px solid var(--nexo-line); padding:16px 0 21px; }
.nexo-lead-copy h1 { font-family:var(--nexo-heading); font-size:clamp(1.72rem,2.8vw,2.62rem); letter-spacing:-.035em; line-height:1.1; margin:0; }
.nexo-lead-copy h1 a,.nexo-secondary-story h2 a { text-decoration:none; }
.nexo-lead-copy p { color:var(--nexo-muted); font-family:var(--nexo-heading); font-size:clamp(.94rem,1.15vw,1.04rem); line-height:1.42; margin:9px 0 13px; }
.nexo-byline { align-items:center; color:#5e6a7d; display:flex; flex-wrap:wrap; font-family:var(--nexo-heading); font-size:.93rem; gap:11px; }
.nexo-byline strong { color:var(--nexo-ink); }
.nexo-secondary-grid { display:grid; gap:22px; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:26px; }
.nexo-secondary-story { display:grid; grid-template-areas:"media" "title" "excerpt"; min-width:0; }
.nexo-secondary-media-wrap { align-self:start; aspect-ratio:16 / 9; grid-area:media; }
.nexo-secondary-media-wrap .nexo-story-media { aspect-ratio:16 / 9; height:100%; }
.nexo-secondary-story h2 { font-family:var(--nexo-heading); font-size:clamp(1rem,1.25vw,1.14rem); grid-area:title; letter-spacing:-.018em; line-height:1.22; margin:8px 0 5px; }
.nexo-secondary-story p { color:var(--nexo-muted); font-family:var(--nexo-heading); font-size:.84rem; grid-area:excerpt; line-height:1.38; margin:0; }
.nexo-home-sidebar { border-left:1px solid var(--nexo-line); padding-left:18px; }
.nexo-news-list + .nexo-news-list { margin-top:28px; }
.nexo-news-list h2 { border-left:5px solid var(--nexo-gold); font-family:var(--nexo-heading); font-size:1.38rem; letter-spacing:-.028em; line-height:1.1; margin:6px 0 10px; padding-left:12px; }
.nexo-news-list ol { list-style:none; margin:0; padding:0; }
.nexo-news-list li { border-top:1px solid var(--nexo-line); display:grid; gap:12px; grid-template-columns:54px 1fr; padding:13px 0; }
.nexo-news-list time { color:#697487; font-family:var(--nexo-heading); font-size:.88rem; }
.nexo-news-list li > span { color:var(--nexo-gold); font-family:var(--nexo-heading); font-size:1.45rem; line-height:1; }
.nexo-news-list a { font-family:var(--nexo-heading); font-size:.92rem; font-weight:700; line-height:1.24; text-decoration:none; }
.nexo-all-news { border-top:1px solid var(--nexo-line); display:block; font-family:var(--nexo-body); font-size:.82rem; font-weight:800; margin-top:1px; padding-top:14px; text-decoration:none; text-transform:uppercase; }
.nexo-all-news span { color:var(--nexo-gold); font-size:1.1rem; }
.nexo-meta { align-items:center; color:var(--nexo-muted); display:flex; flex-wrap:wrap; font-family:var(--nexo-body); font-size:.69rem; font-weight:700; gap:7px; letter-spacing:.015em; text-transform:uppercase; }
.nexo-meta span:first-child { color:var(--nexo-gold-hover); }
.nexo-meta > * + *::before { color:#aab3bc; content:"•"; margin-right:7px; }
.nexo-story-card { min-width:0; }
.nexo-story-card-body { padding-top:11px; }
.nexo-story-card h2 { font-family:var(--nexo-heading); font-size:1rem; letter-spacing:-.018em; line-height:1.24; margin:6px 0; }
.nexo-story-card h2 a { text-decoration:none; }
.nexo-story-card p { color:var(--nexo-muted); font-family:var(--nexo-heading); font-size:.82rem; line-height:1.42; margin:7px 0 0; }
.nexo-card-grid { display:grid; gap:28px 22px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.nexo-card-grid .nexo-story-media { aspect-ratio:16 / 9; }
.nexo-listing-header { border-bottom:2px solid var(--nexo-primary); margin-bottom:30px; padding-bottom:17px; }
.nexo-listing-header > span { color:var(--nexo-gold-hover); display:block; font-size:.75rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.nexo-listing-header h1 { font-family:var(--nexo-heading); font-size:clamp(1.75rem,3vw,2.7rem); letter-spacing:-.035em; line-height:1.12; margin:3px 0 7px; }
.nexo-listing-header p { color:var(--nexo-muted); margin:0; }
.nexo-empty-news,.nexo-empty-list { border:1px solid var(--nexo-line); color:var(--nexo-muted); padding:40px; }
.nexo-empty-news h1 { color:var(--nexo-ink); font-family:var(--nexo-heading); font-size:2.6rem; margin:0; }
.entry { max-width:820px; }
.entry-header { margin-bottom:30px; }
.nexo-breadcrumb { color:var(--nexo-muted); display:block; font-size:.79rem; margin-bottom:18px; }
.nexo-breadcrumb a { color:var(--nexo-primary); font-weight:700; text-decoration:none; }
.nexo-breadcrumb span { color:#a3adb5; margin:0 6px; }
.entry-title { color:var(--nexo-ink); font-family:var(--nexo-heading); font-size:clamp(1.7rem,3vw,2.55rem); letter-spacing:-.035em; line-height:1.1; margin:8px 0 14px; }
.nexo-article .entry-header > .nexo-meta { margin:0; }
.nexo-entry-rule { border-top:1px solid var(--nexo-line); margin-top:16px; width:100%; }
.entry-content { color:#27323c; font-family:var(--nexo-heading); font-size:clamp(.96rem,1.12vw,1.04rem); line-height:1.68; }
.entry-content > :first-child { margin-top:0; }
.entry-content h2,.entry-content h3 { color:var(--nexo-ink); font-family:var(--nexo-heading); letter-spacing:-.025em; line-height:1.15; margin-top:2.15em; }
.entry-content h2 { font-size:1.75em; }
.entry-content h3 { font-size:1.36em; }
.entry-content a { color:var(--nexo-primary); font-weight:700; }
.entry-content figure { margin:2.1em auto; text-align:center; }
.entry-content figcaption { color:var(--nexo-muted); font-family:var(--nexo-body); font-size:.78rem; line-height:1.4; margin-top:7px; }

/* Contact pages are authored by the connector but presented by the theme.
 * Field labels and controls form one responsive column on every viewport. */
.entry-content .nexo-contact-form { background:var(--nexo-surface); border:1px solid var(--nexo-line); border-radius:8px; margin:2rem 0 0; max-width:660px; padding:clamp(20px,4vw,32px); }
.nexo-contact-form > p { margin:0 0 17px; }
.nexo-contact-form > p:last-of-type { margin-bottom:0; }
.nexo-contact-form label { color:var(--nexo-ink); display:grid; font-family:var(--nexo-body); font-size:.86rem; font-weight:800; gap:7px; line-height:1.25; }
.nexo-contact-form input:not([type="hidden"]),.nexo-contact-form textarea { appearance:none; background:#fff; border:1px solid #b9c4d0; border-radius:5px; box-shadow:none; color:var(--nexo-ink); display:block; font:inherit; line-height:1.45; max-width:none; padding:11px 12px; transition:border-color .16s ease,box-shadow .16s ease; width:100%; }
.nexo-contact-form input:not([type="hidden"]) { min-height:45px; }
.nexo-contact-form textarea { min-height:150px; resize:vertical; }
.nexo-contact-form input:focus,.nexo-contact-form textarea:focus { border-color:var(--nexo-primary); box-shadow:0 0 0 3px color-mix(in srgb,var(--nexo-primary) 16%,transparent); outline:0; }
.nexo-contact-form button[type="submit"] { background:var(--nexo-primary); border:1px solid var(--nexo-primary); border-radius:5px; color:#fff; cursor:pointer; font:700 .83rem var(--nexo-body); margin-top:20px; padding:12px 17px; text-transform:uppercase; }
.nexo-contact-form button[type="submit"]:hover,.nexo-contact-form button[type="submit"]:focus-visible { background:var(--nexo-gold-hover); border-color:var(--nexo-gold-hover); color:#fff; }
.nexo-category-header { border-bottom:1px solid var(--nexo-line); }
.nexo-category-header h1 { margin-top:0; }
.nexo-category-description > :last-child { margin-bottom:0; }

.nexo-pagination { border-top:1px solid var(--nexo-line); margin-top:38px; padding-top:22px; }
.nexo-pagination .nav-links { display:flex; flex-wrap:wrap; gap:8px; }
.nexo-pagination a,.nexo-pagination .current { border:1px solid var(--nexo-line); padding:7px 11px; text-decoration:none; }
.nexo-pagination .current { background:var(--nexo-primary); border-color:var(--nexo-primary); color:#fff; }
.nexo-footer { background:var(--nexo-primary-deep); border-top:4px solid var(--nexo-gold); color:#cad8e5; margin-top:68px; padding:50px 0; }
.nexo-footer-grid { display:grid; gap:38px; grid-template-columns:1.15fr 1fr 1fr; }
.nexo-footer strong { color:#fff; display:block; font-size:.92rem; margin-bottom:10px; }
.nexo-footer-brand > strong { font-family:var(--nexo-heading); font-size:1.4rem; letter-spacing:-.03em; }
.nexo-footer p { color:#b9c7d5; font-size:.9rem; margin:0 0 15px; }
.nexo-footer small { color:#8ea4b8; }
.nexo-footer-menu ul { columns:2; gap:16px; list-style:none; margin:0; padding:0; }
.nexo-footer-menu li { break-inside:avoid; margin-bottom:8px; }
.nexo-footer-menu a { color:#dce7f0; font-size:.86rem; text-decoration:none; }
.nexo-footer-note { border-left:1px solid rgba(255,255,255,.18); padding-left:28px; }
.nexo-footer-note p { font-size:.86rem; }
.nexo-404-search { margin:28px 0; max-width:420px; }
.nexo-button-link { background:#fff; color:var(--nexo-primary); display:inline-block; font-family:var(--nexo-body); font-size:.88rem; font-weight:800; padding:10px 14px; text-decoration:none; }
.nexo-hp { display:none !important; }
@media (max-width:1080px) { .nexo-home-layout { grid-template-columns:minmax(0,1fr) 305px; gap:26px; } .nexo-secondary-grid { gap:16px; } .nexo-footer-grid { grid-template-columns:1fr 1fr; } .nexo-footer-note { border-left:0; border-top:1px solid rgba(255,255,255,.18); grid-column:1 / -1; padding:25px 0 0; } }
@media (max-width:767px) {
  body { font-size:14px; }
  .nexo-shell { width:min(var(--nexo-max),calc(100% - 32px)); }
  .nexo-header { margin-bottom:18px; }
  .nexo-header-bar { min-height:58px; }
  .nexo-header-bar-inner { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; min-height:58px; padding:0; }
  .nexo-desktop-navigation { display:none; }
  .nexo-menu-toggle { align-self:center; background:transparent; border-radius:4px; display:block; grid-column:1; height:44px; justify-self:start; padding:9px; width:44px; }
  .nexo-menu-toggle span { background:#fff; height:2px; margin:5px auto; width:23px; }
  body.nexo-menu-open .nexo-menu-toggle span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
  body.nexo-menu-open .nexo-menu-toggle span:nth-child(2) { opacity:0; }
  body.nexo-menu-open .nexo-menu-toggle span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
  .nexo-brand { grid-column:2; height:58px; justify-self:center; }
  .nexo-brand-mark { background:transparent; border:0; border-radius:6px; box-shadow:none; height:38px; transform:none; width:38px; }
  .nexo-brand-mark img { object-fit:contain; }
  .nexo-brand-mark span { background:transparent; border-radius:0; font-size:1.35rem; }
  .nexo-header-actions { display:block; grid-column:3; justify-self:end; position:static; }
  .nexo-search-toggle { align-items:center; background:transparent; border:0; color:#fff; cursor:pointer; display:flex; height:44px; justify-content:center; padding:8px; position:relative; width:44px; }
  .nexo-search-icon { fill:none; height:22px; stroke:currentColor; stroke-linecap:round; stroke-width:2; width:22px; }
  .nexo-search-close { display:none; font-family:Arial,sans-serif; font-size:2rem; font-weight:300; line-height:1; }
  body.nexo-search-open .nexo-search-icon { display:none; }
  body.nexo-search-open .nexo-search-close { display:block; }
  .nexo-search { display:none; position:absolute; right:0; top:calc(100% + 8px); width:min(360px,calc(100vw - 32px)); z-index:30; }
  body.nexo-search-open .nexo-search { display:block; }
  .nexo-search form { border-color:#d8e0e8; box-shadow:0 10px 24px rgba(2,29,53,.2); min-height:46px; padding:3px 7px; }
  .nexo-search .search-field { font-family:var(--nexo-body); font-size:.95rem; padding:8px; }
  .nexo-search .search-submit { font-size:.68rem; padding:7px 8px; }
  .nexo-menu-panel { display:block; }
  html:not(.nexo-js) .nexo-menu-toggle,html:not(.nexo-js) .nexo-search-toggle { display:none; }
  html:not(.nexo-js) .nexo-search { display:block; position:relative; right:auto; top:auto; width:100%; }
  html.nexo-js body.nexo-menu-open .nexo-header { z-index:1002; }
  html.nexo-js .nexo-menu-panel { background:var(--nexo-primary-deep); bottom:0; color:#fff; display:block; max-width:340px; overflow-y:auto; padding:18px 22px 30px; pointer-events:none; position:fixed; right:0; top:0; transform:translateX(105%); transition:transform .24s ease,visibility .24s ease; visibility:hidden; width:88vw; z-index:2; }
  html.nexo-js body.nexo-menu-open .nexo-menu-panel { pointer-events:auto; transform:translateX(0); visibility:visible; }
  html.nexo-js .nexo-menu-panel-head { align-items:center; border-bottom:1px solid rgba(255,255,255,.25); display:flex; font-size:1.2rem; justify-content:space-between; padding-bottom:14px; }
  html.nexo-js .nexo-menu-panel-head button { background:transparent; border:0; color:#fff; cursor:pointer; font-size:2.15rem; line-height:1; padding:0; }
  .nexo-menu-panel .nexo-navigation { background:transparent; }
  .nexo-primary-menu { display:block; padding:12px 0 7px; }
  .nexo-primary-menu > li + li > a,.nexo-primary-menu > li + li > .nexo-dropdown-toggle { border-left:0; }
  .nexo-primary-menu > li > a,.nexo-dropdown-toggle { border-bottom:1px solid rgba(255,255,255,.18); justify-content:space-between; padding:13px 0; position:relative; width:100%; z-index:1; }
  .nexo-primary-menu > li > a:hover,.nexo-primary-menu > li > a:focus-visible,.nexo-dropdown:hover > .nexo-dropdown-toggle,.nexo-dropdown:focus-within > .nexo-dropdown-toggle,.nexo-dropdown--open > .nexo-dropdown-toggle { box-shadow:none; color:#f1ca63; }
  .nexo-dropdown-menu,.nexo-dropdown-menu .nexo-dropdown-menu { background:transparent; border:0; box-shadow:none; display:block; left:auto; min-width:0; opacity:1; padding:0 0 0 14px; pointer-events:auto; position:static; transform:none; transition:none; visibility:visible; width:100%; }
  html.nexo-js .nexo-dropdown-menu { display:none; }
  html.nexo-js .nexo-dropdown--open > .nexo-dropdown-menu { display:block; }
  .nexo-dropdown-menu li { border-bottom:1px solid rgba(255,255,255,.18); }
  .nexo-dropdown-menu a { color:#fff; min-height:43px; padding:12px 38px 12px 0; }
  .nexo-dropdown-menu a:hover,.nexo-dropdown-menu a:focus-visible { background:transparent; color:#f1ca63; }
  .nexo-submenu-toggle { color:#fff; height:43px; right:0; top:0; }
  .nexo-dropdown--open > .nexo-submenu-toggle { color:#f1ca63; transform:rotate(90deg); }
  .nexo-menu-empty { color:#d2dce6; padding:12px 0; }
  .nexo-menu-overlay { background:rgba(1,16,31,.62); inset:0; position:fixed; z-index:1000; }
  .nexo-menu-overlay:not([hidden]) { display:block; }
  .nexo-main { padding:24px 0 44px; }
  .nexo-home-layout,.nexo-secondary-grid,.nexo-card-grid,.nexo-footer-grid { grid-template-columns:1fr; }
  .nexo-home-sidebar { border-left:0; border-top:1px solid var(--nexo-line); margin-top:30px; padding:24px 0 0; }
  .nexo-lead-copy h1 { font-size:clamp(1.55rem,7.1vw,2.05rem); line-height:1.12; }
  .nexo-lead-copy p { font-size:.91rem; line-height:1.42; }
  .nexo-secondary-grid { gap:0; margin-top:20px; }
  .nexo-secondary-story { align-items:start; border-bottom:1px solid var(--nexo-line); gap:8px; grid-template-areas:"title" "media" "excerpt"; grid-template-columns:minmax(0,1fr); padding:16px 0; }
  .nexo-secondary-story .nexo-secondary-media-wrap { align-self:start; width:100%; }
  .nexo-secondary-story .nexo-category-badge { bottom:8px; font-size:.63rem; left:8px; padding:5px 7px; }
  .nexo-secondary-story h2 { font-size:1rem; line-height:1.22; margin:0; }
  .nexo-secondary-story p { display:-webkit-box; font-size:.8rem; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-clamp:2; line-height:1.38; margin:1px 0 0; overflow:hidden; }
  .nexo-news-list li { grid-template-columns:52px 1fr; }
  .nexo-footer-note { border-left:0; border-top:1px solid rgba(255,255,255,.18); grid-column:auto; padding:25px 0 0; }
  .nexo-footer-menu ul { columns:1; }
  .entry-title { font-size:clamp(1.55rem,6.2vw,1.95rem); line-height:1.1; margin:7px 0 13px; }
  .nexo-breadcrumb { font-size:.75rem; margin-bottom:13px; }
  .nexo-article .entry-header > .nexo-meta { font-size:.65rem; }
  .nexo-entry-rule { margin-top:13px; }
  .entry-content { font-size:.95rem; line-height:1.64; }
  .entry-content .nexo-contact-form { margin-top:1.55rem; padding:18px; }
  .nexo-contact-form textarea { min-height:135px; }
  .nexo-contact-form button[type="submit"] { min-height:45px; width:100%; }
}

/* Category rails keep large editorial taxonomies easy to explore without
 * expanding the page vertically. Cards scroll horizontally by pointer, wheel
 * or touch and retain visible keyboard focus. */
.nexo-category-rails { margin-top: 48px; }
.nexo-category-rail { border-bottom: 1px dashed #cbd3dc; padding: 0 0 34px; margin: 0 0 34px; }
.nexo-category-rail-head { align-items: baseline; display: flex; gap: 18px; justify-content: space-between; margin-bottom: 15px; }
.nexo-category-rail-head h2 { border-left: 5px solid var(--nexo-gold); font-family: var(--nexo-heading); font-size: 1.6rem; letter-spacing: -.028em; line-height: 1.1; margin: 0; padding-left: 12px; }
.nexo-category-rail-head h2 a, .nexo-rail-card h3 a { text-decoration: none; }
.nexo-category-rail-head > a { color: var(--nexo-primary); flex: 0 0 auto; font-size: .76rem; font-weight: 800; text-decoration: none; text-transform: uppercase; }
.nexo-category-rail-head > a span { color: var(--nexo-gold); font-size: 1rem; }
.nexo-rail-track { display: grid; gap: 18px; grid-auto-columns: minmax(220px, 260px); grid-auto-flow: column; grid-template-rows: 1fr; overflow-x: auto; overscroll-behavior-inline: contain; padding: 2px 2px 12px; scrollbar-color: var(--nexo-gold) #edf0f3; scroll-padding-inline: 2px; scroll-snap-type: inline proximity; }
.nexo-rail-card { min-width: 0; scroll-snap-align: start; }
.nexo-rail-card h3 { display:-webkit-box; font-family: var(--nexo-heading); font-size: 1rem; letter-spacing: -.018em; line-height: 1.22; margin: 0 0 8px; min-height:3.66em; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; line-clamp:3; }
.nexo-rail-card .nexo-media--rail { aspect-ratio: 16 / 9; }
.nexo-rail-card p { color: var(--nexo-muted); display: -webkit-box; font-family: var(--nexo-heading); font-size: .82rem; line-height: 1.4; margin: 8px 0 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; }
@media (max-width: 767px) {
  .nexo-category-rails { margin-top: 34px; }
  .nexo-category-rail { margin-bottom: 27px; padding-bottom: 27px; }
  .nexo-category-rail-head { margin-bottom: 12px; }
  .nexo-category-rail-head h2 { font-size: 1.3rem; }
  .nexo-category-rail-head > a { font-size: .68rem; }
  .nexo-rail-track { gap: 13px; grid-auto-columns: minmax(218px, 74vw); padding-bottom: 11px; }
  .nexo-rail-card h3 { font-size: .95rem; }
  .nexo-rail-card p { font-size: .79rem; }
}
