/* Shared public header and approved NO TABOO layout. */
:root { --header-rule: #bfc2b8; }
body[data-page="journal"] { --journal-grey:#e9eae4; --journal-gutter:max(56px,calc((100vw - 1440px)/2)); background:var(--journal-grey); }
body[data-page="journal"] .nt-site { width:100%; max-width:none; margin:0; padding:0 0 64px; background:var(--journal-grey); }
body[data-page="journal"] .journal-full-hero { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); width:100%; max-width:none; margin:0; border:0; border-radius:0; min-height:0; background:var(--ink); color:var(--paper); overflow:hidden; }
body[data-page="journal"] .journal-full-copy { min-width:0; display:block; padding:0 56px 56px var(--journal-gutter); }
body[data-page="journal"] .site-breadcrumb { color:var(--muted); }
body[data-page="journal"] .site-breadcrumb .current span { color:var(--ink); }
body[data-page="journal"] .journal-hero-brand { padding:24px 0 0; margin:0!important; border:0; min-height:0; color:var(--paper); }
body[data-page="journal"] .journal-hero-brand a { display:flex; align-items:center; flex-wrap:wrap; gap:14px; }
body[data-page="journal"] .journal-hero-brand strong { font-size:44px; line-height:1; }
body[data-page="journal"] .journal-hero-brand small { padding:6px 0 6px 14px; border-left:1px solid #73776a; font-size:10px; letter-spacing:.12em; }
body[data-page="journal"] h1.journal-hero-themes { font-size:clamp(62px,6.5vw,100px); line-height:.98; letter-spacing:-.015em; margin:38px 0 24px; }
body[data-page="journal"] h1.journal-hero-themes em { font-style:normal; color:var(--lime); }
body[data-page="journal"] p.journal-hero-themes { font-size:11px; line-height:1.5; font-weight:700; text-transform:uppercase; letter-spacing:.08em; margin:18px 0 30px; color:var(--lime); }
body[data-page="journal"] .nt-unified-hero h1 { font-size:clamp(40px,4vw,64px); line-height:1.06; margin:0 0 24px; }
body[data-page="journal"] .journal-full-copy>p:not(.journal-hero-themes) { font-size:16px; line-height:1.65; max-width:560px; margin:0 0 28px; }
body[data-page="journal"] .journal-full-art { display:flex; align-items:center; justify-content:center; min-width:0; padding:60px 35px; background:var(--lime); color:var(--ink); container-type:inline-size; }
body[data-page="journal"] .journal-full-art>span { display:block; font-family:'Barlow Condensed',Impact,sans-serif; font-size:clamp(100px,38cqw,230px); font-weight:800; line-height:.94; letter-spacing:.015em; transform:rotate(-6deg); }
body[data-page="journal"] .journal-full-art>span>span { color:var(--paper); }
body[data-page="journal"] :is(.nt-home-nav,.nt-home-list,.nt-home-outro,.nt-unified-layout,.nt-next,.nt-end) { width:calc(100% - 112px); max-width:1440px; margin-left:auto; margin-right:auto; }
body[data-page="journal"] .nt-home-nav { margin-top:0; padding-block:22px; border-top:0; border-bottom:1px solid #bec2b7; }
body[data-page="journal"] .nt-home-nav a { background-color:transparent; }
@media(max-width:1100px){
  body[data-page="journal"] { --journal-gutter:32px; }
  body[data-page="journal"] .journal-full-copy { padding-right:32px; }
  body[data-page="journal"] :is(.nt-home-nav,.nt-home-list,.nt-home-outro,.nt-unified-layout,.nt-next,.nt-end) { width:calc(100% - 64px); }
}
@media(max-width:760px){
  body[data-page="journal"] { --journal-gutter:20px; }
  body[data-page="journal"] .journal-full-hero { grid-template-columns:1fr; }
  body[data-page="journal"] .journal-full-copy { padding:0 20px 36px; }
  body[data-page="journal"] .journal-hero-brand { padding-top:20px; }
  body[data-page="journal"] .journal-hero-brand strong { font-size:38px; }
  body[data-page="journal"] .journal-hero-brand small { font-size:8px; padding-left:12px; }
  body[data-page="journal"] h1.journal-hero-themes { font-size:clamp(55px,12.5vw,82px); margin-top:28px; }
  body[data-page="journal"] .nt-unified-hero h1 { font-size:clamp(37px,9.5vw,60px); }
  body[data-page="journal"] .journal-full-copy>p:not(.journal-hero-themes) { font-size:15px; }
  body[data-page="journal"] .journal-full-art { min-height:300px; padding:40px 24px; }
  body[data-page="journal"] .journal-full-art>span { font-size:clamp(100px,36cqw,165px); }
  body[data-page="journal"] :is(.nt-home-nav,.nt-home-list,.nt-home-outro,.nt-unified-layout,.nt-next,.nt-end) { width:calc(100% - 40px); }
}
html #site-header { background:var(--paper); }
html .topline { min-height:28px; padding-block:7px; align-items:center; }
html #site-header .header { height:84px; min-height:0; gap:24px; position:relative; }
html #site-header .header::after { content:""; display:block; position:absolute; bottom:0; left:50%; width:100vw; transform:translateX(-50%); border-bottom:1px solid var(--header-rule); pointer-events:none; }
html #site-header .brand-group { gap:12px; }
html #site-header .header .logo { font-size:49px; gap:8px; }
html #site-header .header .brand-mark { width:40px; height:40px; border-radius:7px; }
html #site-header .header .brand-mark svg { width:32px; height:32px; }
html #site-header .menu-toggle { width:44px; height:44px; padding:10px; }
html #site-header .account { gap:12px; }
html #site-header .account .button { height:44px; min-height:44px; border-radius:5px; }
html .site-breadcrumb { margin:0 auto; min-height:44px; padding:0; display:flex; align-items:center; font-size:10px; letter-spacing:.045em; }
html .site-breadcrumb ol { justify-content:flex-start; width:100%; min-width:0; }
html .site-breadcrumb .current { min-width:0; flex-shrink:1; }
html .site-breadcrumb .current span { overflow:hidden; text-overflow:ellipsis; }
html .site-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; }
html .site-breadcrumb a,
html .site-breadcrumb a:is(:hover,:focus-visible,:active) {
  text-decoration:none!important;
  background-image:none!important;
  border-bottom:0;
  box-shadow:none;
  transition:color .16s ease;
}
html .site-breadcrumb a::before,
html .site-breadcrumb a::after { display:none; }
html .site-breadcrumb a:is(:hover,:focus-visible),
body[data-page="journal"] .site-breadcrumb a:is(:hover,:focus-visible) { color:var(--ink); }
html .nt-masthead { margin-top:0!important; min-height:64px; padding:12px 0; border:0; border-bottom:1px solid var(--header-rule); border-radius:0; }
html .nt-masthead strong { font-size:40px; }
html .nt-masthead small { font-size:10px; }
html .kx-hero { padding-top:40px; padding-bottom:48px; }
html .kx-hero h1 { font-size:clamp(62px,6.5vw,88px); }
html .account-flow { padding-top:40px; }
body[data-page="inscription"] .header .account-entry { display:none; }
@media(max-width:1100px){
  html #site-header .header { gap:14px; }
  html #site-header .header-journey { gap:0; }
  html #site-header .header-journey a { font-size:13px; }
}
@media(max-width:900px){ html #site-header .header-journey { display:none; } }
@media(max-width:760px){
  html .topline { min-height:27px; padding-block:8px; }
  html #site-header .header { height:76px; gap:8px; }
  html #site-header .brand-group { gap:3px; }
  html #site-header .header .logo { font-size:38px; gap:6px; }
  html #site-header .header .brand-mark { width:31px; height:31px; border-radius:6px; }
  html #site-header .header .brand-mark svg { width:27px; height:27px; }
  html #site-header .menu-toggle { width:44px; min-width:44px; height:44px; padding:10px; }
  html #site-header .account { display:flex; flex-direction:row; gap:7px; }
  html #site-header .account-entry { padding-inline:11px; font-size:10px; }
  html #site-header .app-download { display:flex; width:44px; min-width:44px; padding:10px; }
  html #site-header .app-download span { display:none; }
  html .site-breadcrumb { min-height:40px; font-size:9px; }
  html .site-breadcrumb a { min-height:40px; }
  html .kx-hero { padding-top:28px; padding-bottom:36px; }
  html .kx-hero h1 { font-size:clamp(52px,12vw,70px); }
  html .nt-masthead { min-height:62px; padding:12px 0; }
  html .nt-masthead strong { font-size:34px; }
  html .nt-masthead small { font-size:8px; }
  html .account-flow { padding-top:28px; }
}
@media(max-width:370px){
  html #site-header .header { gap:4px; }
  html #site-header .header .logo { font-size:30px; gap:4px; }
  html #site-header .header .brand-mark { width:28px; height:28px; }
  html #site-header .brand-group { gap:0; }
  html #site-header .account { gap:5px; }
  html #site-header .account-entry { font-size:9px; padding-inline:8px; }
  html #site-header .app-download { width:44px; min-width:44px; }
}
