
/* «Волгоград сегодня» v0.9 — news-first editorial design system.
   Self-contained design tokens; no proprietary fonts or borrowed media assets. */
:root{
  --ink:#17243a;--ink2:#36445a;--dim:#667588;--accent:#bd3149;
  --teal:#197467;--border:#e3e7ea;--soft:#f5f6f6;--paper:#faf9f6;
  --white:#fff;--w:1296px;--editorial-radius:6px;
}
html{scroll-padding-top:22px}
body{background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;letter-spacing:-.008em}
a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bd314988;outline-offset:3px}
img{max-width:100%}
.utility{background:var(--ink);letter-spacing:.075em}
.utility-inner{height:33px}.utility-signal{background:var(--accent)!important}
.utility-links a{color:#d6e0ea!important}
.site-header{background:#fff;border-bottom:1px solid #dfe4e8}
.masthead{min-height:90px}
.logo{gap:12px;letter-spacing:-.05em}.logo:hover{color:var(--ink)}
.logo-monogram{background:var(--ink)!important;color:white!important;border-radius:5px!important;width:52px!important;height:52px!important;display:flex;align-items:center;justify-content:center;line-height:1!important;font-family:Georgia,serif!important;font-weight:700;font-size:36px!important;letter-spacing:-.1em!important}
.logo-monogram span{color:#f05b6f;font-family:Georgia,serif}
.logo-wordmark strong{font-size:25px!important;letter-spacing:-.065em!important}
.logo-wordmark>span{font-size:8px!important;letter-spacing:.21em!important;color:#657187!important}
.logo-wordmark i{color:var(--accent)!important}
.masthead-link{font-weight:700!important;color:#41506a!important}
.submit-tip{background:var(--accent)!important;border-color:var(--accent)!important;border-radius:4px!important;box-shadow:none!important;padding:13px 17px!important;color:white!important}
.submit-tip:hover{background:#a8243d!important;color:#fff!important}
.navigation-line{border-top:1px solid var(--border)!important}
.navigation-inner{min-height:51px!important}
.top-nav{gap:29px}.top-nav a{font-size:12px!important;font-weight:760!important;color:#2e3d53!important}
.top-nav a:hover{color:var(--accent)!important}
.header-search{border-radius:5px!important;border:1px solid var(--border)!important;background:#f8fafb!important;min-width:200px}
.header-search input{color:var(--ink)!important;background:transparent!important}
.header-search button{color:var(--ink)!important}
.portal-home{padding-top:0!important}
.home-kicker{min-height:39px!important;border-bottom:1px solid var(--border)!important;display:flex;align-items:center;gap:18px;color:#738092;font-size:10px;letter-spacing:.025em}
.home-kicker-label{display:flex;align-items:center;color:var(--accent);font-weight:900;font-size:10px;letter-spacing:.10em}
.home-kicker-label:before{content:"";display:inline-block;flex:none;width:5px;height:5px;background:var(--accent);border-radius:50%;margin-right:9px}
.home-kicker>a{font-size:10px;color:var(--teal)!important;font-weight:700}
.home-heading{grid-template-columns:minmax(0,1.1fr) minmax(230px,.9fr);align-items:end;padding:24px 0 14px!important;gap:35px!important}
.home-heading .eyebrow{margin-bottom:6px!important;color:#6b7a88;font-size:9px;letter-spacing:.16em}
.home-heading h1{font-size:clamp(34px,3.25vw,50px)!important;letter-spacing:-.06em!important;line-height:1.14!important;font-weight:850!important}
.home-heading h1 em{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:.94em;color:var(--accent);font-weight:400;letter-spacing:-.05em}
.home-heading>p{font-size:12px!important;line-height:1.6!important;max-width:440px!important;margin:0 0 3px!important;border-left:0!important;border-top:2px solid #d5dadd;padding:11px 0 0!important;color:#68788b!important}
.portal-headlines{margin:12px 0 30px!important}
.home-section-line{padding-bottom:11px!important;margin-bottom:14px!important;border-color:#d8dfe2!important}
.home-section-line .eyebrow{font-size:9px!important;color:var(--accent)!important;letter-spacing:.15em;margin-bottom:3px!important}
.home-section-line h2{font-size:clamp(22px,2.25vw,32px)!important;letter-spacing:-.055em!important}
.section-more{color:var(--ink)!important;text-decoration:underline;text-decoration-color:#c6d0da;text-underline-offset:4px;font-size:11px!important}
.portal-hero-grid{grid-template-columns:minmax(0,1.68fr) minmax(280px,.9fr);gap:14px!important;align-items:stretch}
.portal-feature .news-card.featured{border-radius:var(--editorial-radius)!important;box-shadow:none!important;background:#fff!important;color:var(--ink)!important;min-height:0!important;border:1px solid var(--border)!important}
.portal-feature .news-card.featured .card-media{height:clamp(210px,22vw,320px)!important;background:#2b4b54!important}
.portal-feature .news-card.featured .card-media img{width:100%;height:100%;object-fit:cover;display:block}
.portal-feature .news-card.featured .card-body{padding:19px 25px 23px!important;background:#fff!important;color:var(--ink)!important;min-height:0!important}
.portal-feature .news-card.featured:not(.has-image) .card-body{background:linear-gradient(155deg,#1c3049,#13243a)!important;min-height:370px!important;color:#fff!important}
.portal-feature .news-card.featured:not(.has-image) h3{color:#fff!important}
.portal-feature .news-card.featured .featured-bubble{margin-bottom:5px!important;background:var(--accent)!important;color:#fff!important;font-weight:800;letter-spacing:.12em;font-size:9px;border-radius:3px}
.portal-feature .news-card.featured h3{font-size:clamp(26px,2.65vw,40px)!important;line-height:1.15!important;letter-spacing:-.056em!important;color:var(--ink)!important;margin:7px 0 9px!important}
.portal-feature .news-card.featured p{color:#657386!important;font-size:13px!important;line-height:1.56!important;margin-bottom:10px!important}
.portal-feature .news-card.featured:not(.has-image) p{color:#d7e2ee!important}
.portal-feature .news-card.featured .card-kicker{color:var(--accent)!important;margin-bottom:2px!important}
.portal-feature .news-card.featured .card-meta{padding-top:11px!important;border-color:var(--border)!important;color:#637284!important;font-size:10px!important}
.portal-feature .news-card.featured:not(.has-image) .card-meta{border-color:#ffffff36!important;color:#d7e2ee!important}
.portal-brief{padding:20px 23px!important;background:#fff;border:1px solid var(--border);border-radius:var(--editorial-radius)!important}
.brief-heading{font-size:17px!important;letter-spacing:-.025em;padding-bottom:13px!important}
.brief-heading>span{font-size:9px!important;letter-spacing:.05em!important;color:var(--accent)!important;font-weight:800}
.brief-item{padding:14px 0!important;gap:14px!important}
.brief-item strong{font-size:14px!important;line-height:1.43!important;letter-spacing:-.015em!important}
.brief-item small:first-child{font-size:10px!important;text-transform:uppercase!important;font-weight:750;color:var(--accent)!important}
.brief-number{font-family:Georgia,serif;font-size:22px!important;line-height:1;color:#acb6c3!important}
.brief-item:hover strong{color:var(--accent)}
.brief-bottom{color:var(--accent)!important}
.city-tools-heading{margin:26px 0 12px;display:flex;align-items:baseline;gap:15px}
.city-tools-heading .eyebrow{color:var(--accent);margin:0;font-size:9px}
.city-tools-heading h2{margin:0;font-size:20px;font-weight:800;letter-spacing:-.04em}
.home-services{box-shadow:none!important;border-radius:var(--editorial-radius)!important;border-color:var(--border)!important}
.home-services>a{min-height:87px!important;padding:13px 17px!important;gap:11px!important}
.home-services .service-icon{background:#f2f3f6!important;color:var(--ink)!important;width:38px!important;height:38px!important;flex:0 0 38px!important;border-radius:4px!important;font-size:23px!important}
.home-services strong{font-size:12px!important}.home-services small{font-size:10px!important;margin-top:2px!important;line-height:1.4!important}
.service-arr{color:var(--accent)!important}
.district-module{margin:12px 0 0!important;border-radius:var(--editorial-radius)!important;border:1px solid var(--border)!important;background:#f2f5f5!important;padding:12px 18px!important}
.district-mark{color:var(--accent)!important}
.district-picker button{background:var(--ink)!important;border-radius:4px!important}
.portal-latest{margin:42px 0 44px!important}
.portal-news-grid{gap:15px!important}
.portal-news-grid .news-card{border-radius:var(--editorial-radius)!important;min-height:0!important;border-color:var(--border)!important;box-shadow:none!important}
.portal-news-grid .card-media{height:165px!important}
.portal-news-grid .card-body{padding:17px 18px 18px!important}
.portal-news-grid .card-body h3{font-size:19px!important;line-height:1.31!important;margin:6px 0 12px!important}
.portal-news-grid .card-body p{line-height:1.55!important}
.portal-news-grid .card-meta{margin-top:auto!important;padding-top:12px!important}
.news-card:hover{transform:none!important;box-shadow:0 10px 28px #15243a0e!important}
.news-card:hover h3{color:var(--accent)}
.news-card.featured:hover h3{color:var(--accent)!important}
.portal-empty{border-radius:var(--editorial-radius)!important}
.portal-local{background:var(--ink)!important;border-radius:var(--editorial-radius)!important;margin:50px 0!important;padding:43px!important}
.portal-local .eyebrow{color:#96d4c5!important}.portal-local h2 em{color:#ffabb1!important}
.portal-stories{margin:50px 0!important}
.story-tiles a{border-radius:var(--editorial-radius)!important}
.reader-cta{background:#1a3046!important;border-radius:var(--editorial-radius)!important;margin:52px 0!important}
.bulletins-block{margin:48px 0}
.site-footer{background:var(--ink)!important}
.footer-brand-mark{color:#fc7d8a!important}
/* Article: an actual reading surface, not a landing page */
.article-v09{padding-top:37px!important;grid-template-columns:minmax(0,810px) minmax(220px,300px);gap:65px!important}
.article-v09 .story h1{font-size:clamp(36px,4.1vw,58px)!important;line-height:1.11!important;letter-spacing:-.065em!important}
.article-v09 .story-lead{font-size:clamp(17px,1.5vw,21px);max-width:740px;color:#506176;line-height:1.65}
.article-v09 .article-title-group{margin-top:5px;padding-bottom:7px;border-bottom:0}
.article-v09 .story-meta{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:14px 0;color:#617186}
.article-v09 .cover img{border-radius:var(--editorial-radius)}
.article-v09 .cover figcaption{line-height:1.5;font-size:11px}
.article-v09 .story-content{font-family:Georgia,"Times New Roman",serif;font-size:19px!important;line-height:1.83!important;color:#263447;max-width:750px}
.article-v09 .story-content h2{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-size:28px!important;letter-spacing:-.045em}
.article-v09 .story-content blockquote{font-size:21px;line-height:1.55;border-left:3px solid var(--accent);background:#f8f4f4}
.article-v09 .story-content a{color:#a92342;text-underline-offset:3px}
.article-v09 .source-note{border-left:3px solid var(--teal)!important;background:#eef4f1!important}
.article-v09 .article-utility{font-size:12px;color:var(--teal)}
.article-v09 .sidebar-box{border:1px solid var(--border);border-radius:var(--editorial-radius)}
/* Motion and accessibility */
.mobile-menu-btn{min-height:43px}
.header-search button,.submit-tip,.district-picker button{min-width:42px}
@media(min-width:851px){.top-nav a:first-child{color:var(--accent)!important}}
@media(max-width:1150px){.home-services>a{padding:12px 10px!important}.home-services small{font-size:9px!important}.top-nav{gap:15px}}
@media(max-width:850px){
  .masthead{min-height:73px!important}.logo-monogram{width:43px!important;height:43px!important;font-size:29px!important}
  .logo-wordmark strong{font-size:20px!important}.logo-wordmark>span{font-size:7px!important}
  .mobile-menu-btn{background:#f5f7f9!important;border:1px solid var(--border)!important;color:var(--ink)!important}
  .navigation-line{border-top:1px solid var(--border)}
  .home-heading{grid-template-columns:1fr;gap:8px!important;padding:18px 0 13px!important}
  .home-heading h1{font-size:clamp(30px,5.3vw,48px)!important}
  .home-heading>p{max-width:640px!important;padding-top:8px!important;font-size:12px!important}
  .portal-hero-grid{grid-template-columns:1fr!important}
  .portal-feature .news-card.featured .card-media{height:300px!important}
  .portal-brief{padding:12px 20px!important;display:grid!important;grid-template-columns:1fr 1fr;column-gap:18px}
  .brief-heading,.brief-bottom{grid-column:1/-1}
  .home-services{grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-v09{grid-template-columns:1fr!important}
  .article-v09 .story-content{font-size:18px!important}
}
@media(max-width:580px){
  .wrap{width:min(calc(100% - 30px),var(--w))!important}
  .utility-inner{height:28px!important}.utility{font-size:9px!important}
  .masthead{min-height:68px!important}.logo-wordmark strong{font-size:19px!important}
  .home-kicker{min-height:32px!important}.home-kicker-date{display:none}
  .home-kicker>a{display:block!important;font-size:9px!important}
  .home-heading{padding:14px 0 9px!important}
  .home-heading .eyebrow{font-size:8px!important}
  .home-heading h1{font-size:clamp(29px,9vw,39px)!important;line-height:1.12!important}
  .home-heading>p{font-size:11px!important;line-height:1.5!important;padding-top:6px!important}
  .home-section-line h2{font-size:23px!important}
  .portal-headlines{margin:12px 0 24px!important}
  .portal-feature .news-card.featured .card-media{height:195px!important}
  .portal-feature .news-card.featured .card-body{padding:17px 18px 19px!important}
  .portal-feature .news-card.featured h3{font-size:27px!important;line-height:1.16!important}
  .portal-feature .news-card.featured p{font-size:12px!important}
  .portal-brief{display:block!important;padding:14px 18px!important}
  .brief-item{padding:13px 0!important}.brief-item strong{font-size:13px!important}.brief-number{font-size:19px!important}
  .city-tools-heading{margin-top:25px;gap:7px;flex-direction:column}.city-tools-heading h2{font-size:20px}
  .home-services>a{min-height:85px!important;padding:10px!important;gap:8px!important}
  .home-services .service-icon{width:31px!important;height:31px!important;flex-basis:31px!important;font-size:19px!important}
  .home-services strong{font-size:11px!important}.home-services small{font-size:9px!important}
  .district-module{padding:12px!important}.district-picker{width:100%}
  .portal-latest{margin:36px 0!important}.portal-news-grid{grid-template-columns:1fr!important}
  .portal-news-grid .card-media{height:180px!important}
  .portal-local{padding:25px 22px!important}
  .article-v09{padding-top:20px!important}.article-v09 .story h1{font-size:clamp(31px,9vw,40px)!important}
  .article-v09 .story-content{font-size:18px!important;line-height:1.76!important}
  .article-v09 .story-content h2{font-size:23px!important}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Final UX refinement: news headline must be visible in the first viewport. */
@media (min-width:851px){.portal-feature .news-card.featured .card-media{height:244px!important}}
@media (max-width:580px){
  .portal-feature .news-card.featured .card-media{height:155px!important}
  .logo-wordmark{min-width:0}.masthead-actions{flex:0 0 auto}
  .home-services>a{min-width:0}.district-module{min-width:0}
}
@media (max-width:360px){
  .wrap{width:calc(100% - 24px)!important}
  .logo-monogram{width:38px!important;height:38px!important;font-size:26px!important}
  .logo-wordmark strong{font-size:17px!important}
  .logo-wordmark>span{font-size:6px!important;letter-spacing:.10em!important}
  .mobile-menu-btn{font-size:11px!important;padding:8px!important;gap:4px!important}
  .district-picker button{padding:0 9px!important;min-width:0!important}
  .home-kicker{gap:6px!important}.home-kicker>a{font-size:9px!important}
  .footer-inner{min-width:0}.site-footer{max-width:100%;overflow-x:clip}
}
