/* ==========================================================================
   Notícias de Maricá — "Oceanic Editorial"
   Modo claro (fundo #f8f9ff, gradiente teal-azul) e modo escuro (fundo
   #0b1326, teal mais vibrante #74d7ca) compartilham a mesma estrutura de
   página — só os tokens de cor abaixo mudam quando a classe "dark" é
   aplicada em <html> (ver assets/js/main.js). Nomes de variáveis
   simplificados (--bg, --text etc.) mapeiam 1:1 para os tokens do design
   system em oceanic_editorial/DESIGN.md e oceanic_editorial_dark/DESIGN.md
   — os valores exatos vêm de lá e dos mockups Stitch.
   ========================================================================== */

/* ---- Tokens: modo claro ---- */
:root{
  --bg:#f8f9ff;
  --surface-lowest:#ffffff;
  --surface-low:#eff4ff;
  --surface:#e6eeff;
  --surface-high:#dee9fc;
  --surface-highest:#d9e3f6;

  --text:#121c2a;
  --text-2:#3d4947;
  --outline:#6d7a77;
  --outline-variant:#bcc9c6;

  --primary:#00685f;
  --primary-container:#008378;
  --on-primary:#ffffff;
  --on-primary-container:#f4fffc;
  --primary-fixed:#89f5e7;
  --primary-fixed-dim:#6bd8cb;

  --secondary:#006399;
  --secondary-container:#7bc2ff;
  --on-secondary:#ffffff;
  --on-secondary-container:#004f7b;

  --tertiary:#b90538;
  --tertiary-container:#dc2c4f;
  --on-tertiary:#ffffff;

  --error:#ba1a1a;

  --font-heading:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  --font-body:'Source Serif 4',Georgia,'Times New Roman',serif;

  --radius-sm:0.5rem;   /* 8px  — botões/inputs */
  --radius-lg:1rem;     /* 16px — cards/imagens */
  --radius-full:9999px; /* pill — busca/chips   */

  --maxw:1200px;
  --gutter:24px;
  --margin-mobile:16px;
  --margin-desktop:40px;
  --unit:8px;
  --section-gap:64px;

  --shadow-card:0 4px 20px rgba(31,41,55,.05);

  --gradient-brand:linear-gradient(90deg,var(--primary-container) 0%,var(--secondary) 100%);
}

/* ---- Tokens: modo escuro ---- */
:root.dark{
  --bg:#0b1326;
  --surface-lowest:#060e20;
  --surface-low:#131b2e;
  --surface:#171f33;
  --surface-high:#222a3d;
  --surface-highest:#2d3449;

  --text:#f8fafc;
  --text-2:#cbd5e1;
  --outline:#879390;
  --outline-variant:#334155;

  --primary:#74d7ca;
  --primary-container:#008378;
  --on-primary:#003732;
  --on-primary-container:#f3fffc;
  --primary-fixed:#91f4e6;
  --primary-fixed-dim:#74d7ca;

  --secondary:#bcc7de;
  --secondary-container:#3e495d;
  --on-secondary:#263143;
  --on-secondary-container:#aeb9d0;

  --tertiary:#ffb2b7;
  --tertiary-container:#dc2c4f;
  --on-tertiary:#67001b;

  --error:#ffb4ab;

  --shadow-card:0 4px 20px rgba(0,0,0,.35);

  --gradient-brand:linear-gradient(90deg,var(--primary-container) 0%,var(--primary) 100%);
}

/* ---- Reset ---- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--font-body);
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  transition:background-color .2s ease,color .2s ease;
}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font:inherit;cursor:pointer;border:none;background:none;color:inherit;}
input{font:inherit;}
ul,ol{list-style:none;}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);}

.material-symbols-outlined{
  font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 24;
  line-height:1;
  user-select:none;
}

.container{max-width:var(--maxw);margin:0 auto;padding:0 var(--margin-desktop);}
@media (max-width:767px){ .container{padding:0 var(--margin-mobile);} }

/* ---- Utilitários ---- */
.chip{display:inline-block;background:var(--primary);color:var(--on-primary);font-family:var(--font-heading);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;border-radius:var(--radius-full);}
.chip--on-media{position:absolute;top:12px;left:12px;}
.section-title{font-family:var(--font-heading);font-weight:700;font-size:22px;color:var(--text);margin-bottom:24px;}
.section-title--rule{display:inline-block;border-bottom:2px solid var(--primary);padding-bottom:8px;}
.section-title--bar{border-left:4px solid var(--primary);padding-left:16px;}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 24px;border-radius:var(--radius-sm);font-family:var(--font-heading);font-size:14px;font-weight:700;transition:opacity .2s ease,box-shadow .2s ease;}
.btn--primary{background:var(--gradient-brand);color:var(--on-primary);}
.btn--primary:hover{opacity:.92;box-shadow:var(--shadow-card);}

.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:inherit;transition:background-color .2s ease,color .2s ease;flex:none;}
.icon-btn:hover{background:rgba(0,0,0,.06);}
:root.dark .icon-btn:hover{background:rgba(255,255,255,.08);}
.theme-toggle .icon-moon{display:none;}
:root.dark .theme-toggle .icon-sun{display:none;}
:root.dark .theme-toggle .icon-moon{display:inline-flex;}
.is-disabled{opacity:.45;cursor:default;}

/* ==========================================================================
   TOPNAVBAR
   ========================================================================== */
.site-header{background:var(--primary-container);position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(0,0,0,.08);}
.site-header__row{display:flex;align-items:center;gap:16px;padding:16px var(--margin-mobile);}
@media (min-width:768px){ .site-header__row{padding:16px 0;} }

.site-logo{font-family:var(--font-heading);font-weight:800;font-size:20px;color:var(--on-primary-container);white-space:nowrap;flex:none;}
@media (min-width:768px){ .site-logo{font-size:26px;} }

.main-nav{display:flex;align-items:center;gap:8px;overflow-x:auto;flex:1;order:3;flex-basis:100%;margin-top:12px;padding-bottom:2px;scrollbar-width:none;}
.main-nav::-webkit-scrollbar{display:none;}
.main-nav a{flex:none;font-family:var(--font-heading);font-size:13px;font-weight:600;color:var(--on-primary-container);white-space:nowrap;padding:8px 16px;border-radius:var(--radius-full);background:rgba(255,255,255,.08);transition:background-color .2s ease,opacity .2s ease;opacity:.9;}
.main-nav a:hover,.main-nav a.is-active{opacity:1;background:rgba(255,255,255,.2);}
.main-nav__home{display:inline-flex;}

.site-header__actions{display:flex;align-items:center;gap:4px;margin-left:auto;order:2;color:var(--on-primary-container);flex:none;}
.site-header__actions .icon-btn:hover{background:rgba(255,255,255,.15);}

@media (min-width:1024px){
  .site-header__row{flex-wrap:nowrap;}
  .main-nav{order:0;flex-basis:auto;margin-top:0;justify-content:center;flex:1;}
  .main-nav a{background:none;opacity:.85;padding:8px 4px;}
  .main-nav a:hover,.main-nav a.is-active{background:none;opacity:1;text-decoration:underline;text-decoration-color:var(--primary-fixed);text-underline-offset:6px;}
  .main-nav__home{display:none;}
  .site-header__actions{order:2;}
}

.search-bar{max-height:0;overflow:hidden;background:var(--surface-low);transition:max-height .25s ease;}
.search-bar.is-open{max-height:76px;}
.search-bar__inner{display:flex;align-items:center;gap:10px;padding:14px var(--margin-mobile);position:relative;}
@media (min-width:768px){ .search-bar__inner{padding:14px 0;} }
.search-bar__icon{position:absolute;left:calc(var(--margin-mobile) + 12px);color:var(--text-2);}
.search-bar__inner input{flex:1;background:var(--surface-lowest);border:1px solid var(--outline-variant);border-radius:var(--radius-full);padding:10px 16px 10px 40px;color:var(--text);}
.search-bar__inner input:focus{outline:none;border-color:var(--primary);}
.search-bar__inner button{background:var(--primary);color:var(--on-primary);border-radius:var(--radius-full);padding:0 20px;font-family:var(--font-heading);font-size:13px;font-weight:700;}

/* ==========================================================================
   NEWS TICKER
   ========================================================================== */
.ticker{background:var(--surface-low);border-top:1px solid rgba(255,255,255,.15);overflow:hidden;}
.ticker__inner{display:flex;align-items:center;height:36px;gap:16px;}
.ticker__label{flex:none;font-family:var(--font-heading);font-weight:800;font-size:12px;letter-spacing:.05em;color:var(--primary);}
.ticker__viewport{flex:1;overflow:hidden;}
.ticker__track{display:flex;width:max-content;white-space:nowrap;animation:ndm-ticker 32s linear infinite;}
@keyframes ndm-ticker{ 0%{transform:translateX(0);} 100%{transform:translateX(-50%);} }
.ticker__item{font-family:var(--font-heading);font-size:13px;color:var(--text);}
.ticker__sep{color:var(--outline);margin:0 20px;}
@media (prefers-reduced-motion:reduce){ .ticker__track{animation:none;} }

/* ==========================================================================
   LAYOUT DA HOME
   ========================================================================== */
.site-main{padding:32px 0 var(--section-gap);}
.hero-section{margin-bottom:var(--section-gap);}
.home-layout{display:flex;flex-direction:column;gap:var(--section-gap);}
.home-layout__main{flex:1;min-width:0;}
.home-layout__side{flex:none;display:flex;flex-direction:column;gap:32px;}
@media (min-width:1024px){
  .home-layout{flex-direction:row;align-items:flex-start;gap:var(--gutter);}
  .home-layout__side{width:340px;}
}

/* ==========================================================================
   DESTAQUE (HERO) — uma marcação, dois arranjos via CSS (ver ndm_card_hero())
   ========================================================================== */
.hero-card__media{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-high);box-shadow:var(--shadow-card);aspect-ratio:4/3;}
.hero-card__media-link{position:absolute;inset:0;z-index:1;}
.hero-card__media img{width:100%;height:100%;object-fit:cover;}

.hero-card__overlay{position:static;padding:20px;background:var(--surface-lowest);color:var(--text);}
.hero-card__top{margin-bottom:12px;}
.hero-card__title{font-family:var(--font-heading);font-weight:700;font-size:24px;line-height:1.3;margin-bottom:12px;}
.hero-card__title a:hover{color:var(--primary);}
.hero-card__dek{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--text-2);margin-bottom:16px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.hero-card__meta{display:flex;align-items:center;gap:6px;font-family:var(--font-heading);font-size:12px;color:var(--text-2);}
.hero-card__meta .material-symbols-outlined{font-size:16px;}

@media (min-width:1024px){
  .hero-card__media{aspect-ratio:auto;height:500px;}
  .hero-card__overlay{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:40px;background:linear-gradient(to top,rgba(6,14,32,.88),rgba(6,14,32,.35) 60%,transparent);color:#ffffff;}
  .hero-card__title{font-family:var(--font-heading);font-weight:800;font-size:40px;letter-spacing:-.02em;line-height:1.15;}
  .hero-card__dek{color:rgba(255,255,255,.85);font-size:18px;}
  .hero-card__meta{color:rgba(255,255,255,.7);}
}

/* ==========================================================================
   GRADE "ÚLTIMAS NOTÍCIAS" — card único, vira lista horizontal no mobile e
   card vertical com imagem grande no desktop (ver ndm_card_grid()).
   ========================================================================== */
.grid-cards{display:flex;flex-direction:column;gap:20px;}
.grid-card{display:flex;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--outline-variant);}
.grid-card__media{position:relative;flex:none;width:33%;aspect-ratio:4/3;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface-high);display:block;}
.grid-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.grid-card:hover .grid-card__media img{transform:scale(1.05);}
.grid-card__body{flex:1;min-width:0;display:flex;flex-direction:column;}
.grid-card__body h3{font-family:var(--font-heading);font-weight:700;font-size:16px;line-height:1.35;color:var(--text);margin-bottom:6px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.grid-card:hover h3{color:var(--primary);}
.grid-card__excerpt{display:none;}
.grid-card__meta{display:flex;align-items:center;justify-content:space-between;margin-top:auto;font-family:var(--font-heading);font-size:12px;color:var(--text-2);}
.grid-card__time{display:flex;align-items:center;gap:4px;}
.grid-card__time .material-symbols-outlined{font-size:14px;}
.grid-card__more{display:none;color:var(--primary);font-weight:700;}

@media (min-width:640px){ .grid-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gutter);} }

@media (min-width:768px){
  .grid-card{flex-direction:column;gap:0;padding-bottom:0;border-bottom:none;background:var(--surface-lowest);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);}
  .grid-card__media{width:100%;aspect-ratio:16/9;border-radius:0;}
  .grid-card__body{padding:24px;gap:0;}
  .grid-card__body h3{font-size:19px;margin-bottom:12px;}
  .grid-card__excerpt{display:block;font-family:var(--font-body);font-size:15px;color:var(--text-2);margin-bottom:16px;flex:1;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .grid-card__more{display:inline;}
}

/* ==========================================================================
   SIDEBAR: WIDGETS (clima, em alta, vídeos)
   ========================================================================== */
.widget{background:var(--surface-lowest);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-card);}
.widget h3{display:flex;align-items:center;gap:8px;font-family:var(--font-heading);font-weight:700;font-size:18px;color:var(--text);margin-bottom:16px;}

.widget--weather{background:var(--gradient-brand);color:var(--on-primary-container);box-shadow:var(--shadow-card);}
.widget--weather__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;}
.widget--weather__head h3{margin-bottom:0;color:var(--on-primary-container);}
.widget--weather__temp{text-align:center;margin-bottom:16px;}
.widget--weather__deg{font-family:var(--font-heading);font-weight:800;font-size:40px;}
.widget--weather__temp p{font-family:var(--font-heading);font-size:13px;opacity:.85;margin-top:4px;}
.widget--weather__foot{display:flex;justify-content:space-between;font-family:var(--font-heading);font-size:12px;opacity:.85;}

.rank-list{display:flex;flex-direction:column;gap:16px;}
.rank-item{display:flex;gap:14px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--outline-variant);}
.rank-item:last-child{border-bottom:none;padding-bottom:0;}
.rank-item__num{font-family:var(--font-heading);font-weight:800;font-size:18px;color:var(--primary);flex:none;line-height:1.3;}
.rank-item__body h4{font-family:var(--font-heading);font-weight:600;font-size:14px;line-height:1.35;color:var(--text);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.rank-item__body a:hover{color:var(--primary);}
.rank-item__cat{font-family:var(--font-heading);font-size:11px;color:var(--text-2);margin-top:4px;}

.widget--video__thumb{position:relative;aspect-ratio:16/9;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--surface-high),var(--surface));display:flex;align-items:center;justify-content:center;margin-bottom:12px;overflow:hidden;}
.widget--video__thumb .material-symbols-outlined{font-size:48px;color:var(--text-2);}
.widget--video__duration{position:absolute;bottom:8px;right:8px;background:rgba(0,0,0,.7);color:#fff;font-size:11px;padding:2px 8px;border-radius:4px;font-family:var(--font-heading);}
.widget--video p{font-family:var(--font-heading);font-size:13px;font-weight:600;color:var(--text);}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.site-footer{background:var(--text);color:var(--bg);margin-top:0;padding:48px 0 0;}
:root.dark .site-footer{background:var(--surface-lowest);color:var(--text);border-top:1px solid var(--outline-variant);}
.site-footer__grid{display:grid;grid-template-columns:1fr;gap:32px;padding-bottom:32px;}
@media (min-width:768px){ .site-footer__grid{grid-template-columns:2fr 1fr 1fr;} }
.site-footer__logo{font-family:var(--font-heading);font-weight:800;font-size:22px;color:var(--primary-fixed);margin-bottom:12px;}
:root.dark .site-footer__logo{color:var(--primary);}
.site-footer__about p{opacity:.85;font-family:var(--font-body);font-size:15px;max-width:34ch;}
.site-footer__col h3{font-family:var(--font-heading);font-weight:700;font-size:16px;margin-bottom:16px;}
.site-footer__col a{display:block;font-family:var(--font-heading);font-size:14px;opacity:.85;margin-bottom:10px;transition:opacity .2s ease;}
.site-footer__col a:hover{opacity:1;text-decoration:underline;}
.site-footer__social{display:flex;gap:12px;}
.social-icon{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;}
:root.dark .social-icon{background:var(--surface-high);}
.social-icon:hover{background:rgba(255,255,255,.22);}
.site-footer__bottom{border-top:1px solid rgba(255,255,255,.15);padding:20px 0;text-align:center;font-family:var(--font-heading);font-size:12px;opacity:.75;}
:root.dark .site-footer__bottom{border-top-color:var(--outline-variant);}

/* ==========================================================================
   ARTIGO
   ========================================================================== */
.article{max-width:760px;margin:0 auto;}
.article__kicker{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap;}
.article__published{font-family:var(--font-heading);font-size:13px;color:var(--text-2);}
.article__title{font-family:var(--font-heading);font-weight:800;font-size:28px;line-height:1.25;letter-spacing:-.01em;color:var(--text);margin-bottom:24px;text-wrap:balance;}
@media (min-width:768px){ .article__title{font-size:42px;} }

.article__byline{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);padding:16px 0;margin-bottom:32px;}
.article__author{display:flex;align-items:center;gap:12px;}
.article__avatar img{width:48px;height:48px;border-radius:50%;object-fit:cover;}
.article__author-name{font-family:var(--font-heading);font-weight:700;font-size:14px;color:var(--text);}
.article__author-role{font-family:var(--font-heading);font-size:12px;color:var(--text-2);}
.article__actions{display:flex;gap:8px;}
.article__actions .icon-btn{background:var(--surface-low);}
.article__actions .icon-btn:hover{background:var(--primary-container);color:var(--on-primary-container);}

.article__figure{margin-bottom:32px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);}
.article__figure img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;}
.article__figure figcaption{padding:12px 16px;background:var(--surface-low);color:var(--text-2);font-family:var(--font-heading);font-size:12px;}

.prose{font-family:var(--font-body);font-size:18px;line-height:1.6;color:var(--text);}
.prose > * + *{margin-top:1.3em;}
.prose > p:first-of-type{font-family:var(--font-body);font-weight:700;font-size:1.2em;line-height:1.55;color:var(--text-2);}
.prose h2{font-family:var(--font-heading);font-weight:700;font-size:24px;color:var(--text);margin-top:1.6em;}
.prose h3{font-family:var(--font-heading);font-weight:600;font-size:20px;color:var(--text);}
.prose blockquote{border-left:4px solid var(--primary);background:var(--surface-low);padding:16px 24px;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-style:italic;color:var(--text-2);}
.prose ul,.prose ol{padding-left:1.4em;}
.prose ul{list-style:disc;}
.prose ol{list-style:decimal;}
.prose li + li{margin-top:.4em;}
.prose a{color:var(--primary);text-decoration:underline;}
.prose strong{font-weight:700;}
.prose figure{margin:0;}
.prose img{border-radius:var(--radius-sm);}

.tag-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px;padding-top:24px;border-top:1px solid var(--outline-variant);}
.tag-pill{background:var(--surface);color:var(--text-2);font-family:var(--font-heading);font-size:12px;font-weight:600;padding:6px 16px;border-radius:var(--radius-full);transition:background-color .2s ease,color .2s ease;}
.tag-pill:hover{background:var(--primary-container);color:var(--on-primary-container);}

.related-section{max-width:1000px;margin:var(--section-gap) auto 0;}
.related-grid{display:grid;grid-template-columns:1fr;gap:var(--gutter);}
@media (min-width:768px){ .related-grid{grid-template-columns:repeat(3,1fr);} }
.related-card{display:flex;flex-direction:column;background:var(--surface-lowest);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:box-shadow .2s ease;}
.related-card:hover{box-shadow:0 8px 28px rgba(31,41,55,.12);}
.related-card__media{position:relative;aspect-ratio:4/3;background:var(--surface-high);}
.related-card__media img{width:100%;height:100%;object-fit:cover;}
.related-card__body{padding:20px;flex:1;display:flex;flex-direction:column;gap:8px;}
.related-card__body h4{font-family:var(--font-heading);font-weight:700;font-size:16px;line-height:1.35;color:var(--text);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.related-card:hover .related-card__body h4{color:var(--primary);}
.related-card__body p{font-family:var(--font-body);font-size:13px;color:var(--text-2);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

/* ==========================================================================
   PÁGINAS ESTÁTICAS / 404 / BUSCA / PAGINAÇÃO
   ========================================================================== */
.static-page{max-width:760px;margin:0 auto;}
.static-page h1{font-family:var(--font-heading);font-weight:800;font-size:32px;margin-bottom:24px;color:var(--text);}

.section-head{margin-bottom:24px;}

.pagination{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--section-gap);justify-content:center;}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--outline-variant);color:var(--text-2);font-family:var(--font-heading);font-size:14px;font-weight:600;transition:background-color .2s ease,color .2s ease;}
.pagination .page-numbers.current,.pagination .page-numbers:hover{background:var(--primary-container);color:var(--on-primary-container);border-color:var(--primary-container);}
.empty-state{color:var(--text-2);padding:var(--section-gap) 0;text-align:center;font-family:var(--font-body);}

.not-found{text-align:center;padding:var(--section-gap) 0;display:flex;flex-direction:column;align-items:center;gap:16px;}
.not-found__code{font-family:var(--font-heading);font-weight:800;font-size:80px;color:var(--primary-container);opacity:.35;}
.not-found h1{font-family:var(--font-heading);font-weight:700;font-size:26px;color:var(--text);}
.not-found p{color:var(--text-2);max-width:44ch;font-family:var(--font-body);}
