/* =============================================
   Yayin Detay v2 - Bağımsız Stiller (Beyaz Tema)
   yayinlar-v2.html ile uyumlu tasarım
   ============================================= */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#ffffff;--bg2:#f8f8f6;--bg3:#f0f0ee;
  --dark:#0c1a1a;--txt:#1a1a1a;--txt2:#6b7280;--txt3:#9ca3af;
  --gold:#8B1A2B;--goldh:#a62639;
  --brd:rgba(0,0,0,.08);
  --serif:'Libre Baskerville',Georgia,serif;
  --sans:'DM Sans',sans-serif;
  --logo:'Nunito',sans-serif;
}
html{font-size:16px;scroll-behavior:smooth;overflow-x:clip}
body{font-family:var(--sans);background:var(--bg);color:var(--txt);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit;transition:all .3s}
ul,ol{list-style:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}

/* Prevent initial layout flash while publication content is loading */
#pub-main{min-height:60vh}
body.pub-loading .v2-ftr{opacity:0;visibility:hidden;pointer-events:none}
body.pub-ready .v2-ftr{opacity:1;visibility:visible;transition:opacity .25s ease}


        /* Language selector */
        .lang{display:inline-flex;align-items:center;position:relative;cursor:pointer;transform:translateY(2px)}
        .lang-btn{display:flex;align-items:center;gap:6px;font-family:var(--sans);font-size:.75rem;font-weight:700;color:#fff;background:none;border:none;cursor:pointer;padding:0 4px;transition:all .2s;letter-spacing:.05em;text-transform:uppercase;line-height:1}
        .lang-flag{width:18px;height:12px;object-fit:cover;border-radius:2px;display:block}
.lang-btn.active{opacity:1}
        .lang-btn:not(.active){opacity:.5}
        .lang-sep{color:rgba(255,255,255,.3);font-size:.6rem;opacity:0;max-width:0;overflow:hidden;transition:all .9s cubic-bezier(.23,1,.32,1);transform:translateX(-6px);padding:0}
        .lang .lang-btn:not(.active){opacity:0;max-width:0;overflow:hidden;transition:all .9s cubic-bezier(.23,1,.32,1);transform:translateX(-6px);padding:0}
        .lang:hover .lang-sep{opacity:1;max-width:20px;transform:translateX(0);padding:0 2px}
        .lang:hover .lang-btn:not(.active){opacity:.5;max-width:70px;transform:translateX(0);padding:0 4px}
        .lang:hover .lang-btn:not(.active):hover{opacity:.8}

/* Container */
.container{max-width:1200px;margin:0 auto;padding:0 48px}

/* ===== HEADER (floating on hero) ===== */
.hdr{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:24px 48px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo img{height:40px;width:auto}
.logo-t{font-family:var(--logo);font-size:1.1rem;color:#fff;white-space:nowrap}
.logo-b{font-weight:800}.logo-l{font-weight:400;color:rgba(255,255,255,.7);margin-left:.3em}
.nav{display:flex;align-items:center}
.nav ul{display:flex;list-style:none;gap:28px;align-items:center}
.nav a{font-size:.8125rem;font-weight:400;color:rgba(255,255,255,.65);text-decoration:none;transition:color .3s}
.nav a:hover,.nav a.act{color:#fff}
.ns{color:rgba(255,255,255,.3);font-size:.5rem;user-select:none}
.nr{display:flex;align-items:center;gap:24px}
.nc{display:inline-flex;align-items:center;padding:10px 24px;background:var(--gold);color:#fff;font-size:.8125rem;font-weight:600;text-decoration:none;border-radius:50px;transition:all .3s}
.nc:hover{background:var(--goldh)}
.mt{display:none;flex-direction:column;gap:5px;padding:8px;cursor:pointer;background:none;border:none}
.mt span{display:block;width:24px;height:2px;background:#fff}

/* ===== NO-IMAGE HEADER (beyaz bg) ===== */
body.no-image .hdr{position:relative;background:var(--bg2);border-bottom:1px solid var(--brd);padding:20px 48px}
body.no-image .logo-t{color:var(--txt)}
body.no-image .logo-b{color:#9d3535}
body.no-image .logo-l{color:var(--txt2)}
body.no-image .nav a{color:var(--txt2)}
body.no-image .nav a:hover,body.no-image .nav a.act{color:var(--txt)}
body.no-image .ns{color:var(--txt3)}
body.no-image .mt span{background:var(--txt)}

/* ===== PREMIUM LIGHT HERO ===== */
.pub-hero {
  position: relative;
  min-height: 400px;
  display: flex;
  align-items: flex-end;
  padding: 130px 0 60px;
  overflow: hidden;
  background: #f8f8f6 !important; /* Light background #f8f8f6 */
  border-bottom: 1px solid var(--brd);
}
.pub-hero .container {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 48px;
}
.pub-hero-left {
  max-width: 760px;
  position: relative;
  z-index: 3;
}
.pub-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 56px;
  align-items: end;
}
.pub-hero-illustration-frame {
  position: relative;
  width: 240px;
  aspect-ratio: 4 / 3;
  z-index: 2;
  justify-self: end;
  align-self: end;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(12, 26, 26, .08);
  background: #fff;
  box-shadow: 0 18px 44px rgba(12, 26, 26, .09);
}
.pub-hero-illustration {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.pub-hero-watermark-frame {
  position: absolute;
  right: 100px;
  bottom: 24px;
  width: 180px;
  height: 180px;
  z-index: 1;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.65;
}
.pub-hero-watermark {
  width: 100%;
  height: 100%;
  color: rgba(197, 160, 89, 0.16); /* Very soft gold tint */
}
.pub-bc {display: flex; align-items: center; gap: 10px; font-size: .85rem; margin-bottom: 16px}
.pub-bc a {color: var(--txt3); text-decoration: none}
.pub-bc a:hover {color: var(--txt)}
.pub-bc span {color: var(--txt3)}
.pub-hero h1 {font-family: var(--serif); font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 400; color: var(--txt); line-height: 1.3; margin-bottom: 20px}
.pub-summary {font-size: 1.0625rem; line-height: 1.7; color: var(--txt2); margin-bottom: 24px}
.pub-meta {display: flex; align-items: center; gap: 16px; flex-wrap: wrap}
.pub-meta-item {display: flex; align-items: center; gap: 6px; font-size: .875rem; color: var(--txt2)}
.pub-meta-item svg {width: 16px; height: 16px}
.pub-meta-divider {width: 4px; height: 4px; background: var(--txt3); border-radius: 50%}
.pub-cat-badge {display: inline-block; padding: 6px 14px; background: var(--txt); color: #fff; border-radius: 20px; font-size: .75rem; font-weight: 500; text-transform: none !important}

/* Adjust layout for smaller screens */
@media (max-width: 992px) {
  .pub-hero-vector-accent {
    right: 48px;
    width: 150px;
    height: 150px;
    opacity: 0.12;
  }
}
@media (max-width: 768px) {
  .pub-hero-vector-accent {
    display: none; /* Hide accent on mobile to save space */
  }
}

/* ===== ARTICLE CONTENT ===== */
.pub-content{padding:80px 0}
.pub-content .container{max-width:1200px;padding:0 48px}
.pub-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:64px;align-items:start}

.pub-sidebar-left{display:none}

.pub-article{text-align:left;text-justify:auto;font-family:var(--sans);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}
.pub-article h2,.pub-article h2 *{font-family:var(--serif)!important;font-size:1.5rem!important;font-weight:400!important;color:#1a1a1a!important;margin:48px 0 24px!important;text-align:left!important;line-height:1.4!important;letter-spacing:0!important;text-transform:none!important}
.pub-article h2:first-child{margin-top:0!important}
.pub-article h3,.pub-article h3 *{font-family:var(--sans)!important;font-size:1.25rem!important;font-weight:600!important;color:#1a1a1a!important;margin:32px 0 16px!important;text-align:left!important;line-height:1.4!important}
.pub-article p,.pub-article p *,.pub-article span{font-family:var(--sans)!important;font-size:1.0625rem!important;font-weight:400!important;line-height:1.85!important;color:#555!important;margin-bottom:24px!important;hyphens:none!important;-webkit-hyphens:none!important}
.pub-article p,.pub-article p *,.pub-article span{text-align:justify!important;text-justify:inter-word!important}
.pub-article p span{margin-bottom:0!important}
.pub-article ul,.pub-article ol{margin:0 0 24px 0!important;padding-left:24px!important;text-align:left!important;list-style-position:outside!important}
.pub-article li,.pub-article li *{font-family:var(--sans)!important;font-size:1rem!important;font-weight:400!important;line-height:1.8!important;color:#555!important;margin-bottom:12px!important}
.pub-article ul{list-style:disc!important}
.pub-article ol{list-style:decimal!important}
.pub-article blockquote{margin:40px 0!important;padding:28px 32px!important;background:var(--bg2)!important;border-left:4px solid var(--txt)!important;border-radius:0 8px 8px 0!important}
.pub-article blockquote p,.pub-article blockquote p *,.pub-article blockquote span{font-family:var(--serif)!important;font-style:italic!important;font-size:1rem!important;line-height:1.85!important;color:#444!important;margin-bottom:0!important;text-align:justify!important}
.pub-article blockquote p:last-child{margin-bottom:0!important}
.pub-article strong,.pub-article b{font-weight:600!important;color:#1a1a1a!important}
.pub-article em,.pub-article i{font-style:italic!important}
.pub-article a{color:#0066cc!important;text-decoration:underline!important;text-underline-offset:3px!important}
.pub-article a:hover{color:#004499!important}
.pub-article img{max-width:100%!important;height:auto!important;margin:32px 0!important;border-radius:8px!important}

/* Footnotes inside pub-article */
.pub-article sup{font-size:.75rem;vertical-align:super;line-height:0}
.pub-article sup a{color:var(--gold)!important;text-decoration:none!important;padding:0 2px;font-weight:600}
.pub-article sup a:hover{color:var(--goldh)!important;text-decoration:underline!important}
.pub-article .footnotes{margin-top:60px;padding-top:24px;border-top:1px solid var(--brd)}
.pub-article .footnotes hr{display:none}
.pub-article .footnotes ol{padding-left:20px!important;margin:0!important}
.pub-article .footnotes li{font-size:.9rem!important;color:var(--txt2)!important;margin-bottom:12px!important;line-height:1.6!important;font-style:italic!important}
.pub-article .footnotes li p{font-size:.9rem!important;margin-bottom:0!important;display:inline;font-style:italic!important}
.pub-article .footnotes .footnote-backref{margin-left:6px;text-decoration:none!important;color:var(--txt3)!important;font-style:normal!important}

/* Legal Disclaimer */
.pub-disclaimer{margin-top:60px;padding:24px 32px;background:var(--bg2);border-left:4px solid var(--gold);border-radius:0 12px 12px 0}
.pub-disclaimer h4{font-family:var(--sans);font-size:.85rem;font-weight:700;color:var(--txt3);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}
.pub-disclaimer p{font-family:var(--sans)!important;font-size:.9rem!important;line-height:1.6!important;color:var(--txt2)!important;margin:0!important;font-style:italic!important}

/* Sources box */
.pub-sources-box{
  margin:56px 0 32px;
  padding:18px 20px;
  background:#f7f7f8;
  border:1px solid #e5e7eb;
  border-radius:10px;
}
.pub-sources-box .pub-sources-title{
  font-family:var(--sans)!important;
  font-size:.9rem!important;
  font-weight:500!important;
  color:#6b7280!important;
  margin:0 0 12px!important;
  text-transform:none!important;
  letter-spacing:.01em!important;
}
.pub-sources-box p,.pub-sources-box li{
  font-size:.95rem!important;
  line-height:1.7!important;
  color:#4b5563!important;
  margin-bottom:10px!important;
}
.pub-sources-box h2,.pub-sources-box h3{
  font-family:var(--sans)!important;
  font-size:.95rem!important;
  font-weight:500!important;
  margin:10px 0 6px!important;
  color:#4b5563!important;
}

/* ===== SIDEBAR ===== */
.pub-sidebar{position:sticky;top:96px;align-self:start;max-height:calc(100vh - 110px);overflow-y:auto;overflow-x:hidden;margin-top:0}
.pub-sidebar{scrollbar-width:none;-ms-overflow-style:none}
.pub-sidebar::-webkit-scrollbar{width:0;height:0;display:none}

/* Keep side panels sticky on publication detail (desktop/tablet) */
@media (min-width: 981px){
  .pub-content,
  .pub-content .container,
  .pub-grid{overflow:visible !important}
  .pub-sidebar{
    position:sticky !important;
    top:96px !important;
    align-self:start !important;
    max-height:calc(100vh - 110px);
    overflow-y:auto;
    overflow-x:hidden;
  }
  .toc-sec-new{max-height:none;overflow:visible}
}

/* Related Areas */
.related-areas{margin-bottom:24px}
.related-areas h3{font-family:var(--serif);font-size:1.25rem;font-weight:400;margin-bottom:16px;text-decoration:underline;text-underline-offset:4px}
.ra-tags{display:flex;flex-wrap:wrap;gap:8px}
.ra-tag{display:inline-flex;align-items:center;padding:6px 16px;background:var(--bg2);color:var(--txt);border:1px solid var(--brd);border-radius:50px;font-size:.85rem;font-weight:500;transition:all .2s;text-decoration:none}
.ra-tag:hover{background:var(--gold);color:#fff;border-color:var(--gold)}

.related-authors{margin-bottom:28px}
.related-authors h3{font-family:var(--serif);font-size:1.25rem;font-weight:400;margin-bottom:8px;text-decoration:underline;text-underline-offset:4px}
.related-authors-sub{font-size:.875rem;color:var(--txt3);margin-bottom:24px}
.authors-list{display:flex;flex-direction:column;gap:24px}
.author-person{display:flex;gap:16px;text-decoration:none;transition:transform .2s}
a.author-person:hover{transform:translateX(4px)}
.author-img{width:100px;height:120px;border-radius:8px;overflow:hidden;flex-shrink:0}
.author-img img{width:100%;height:100%;object-fit:cover}
.author-info{display:flex;flex-direction:column;justify-content:center}
.author-info h4{font-size:1rem;font-weight:600;color:var(--txt);margin-bottom:4px}
.author-info .role{font-size:.875rem;color:var(--txt3);margin-bottom:6px}
.author-info .email{font-size:.8125rem;color:var(--txt2);text-decoration:none}
.author-info .email:hover{color:var(--txt);text-decoration:underline}

/* Share */
.share-sec{padding:22px;background:var(--bg2);border-radius:10px;margin-bottom:32px}
.share-sec h4{font-size:.875rem;font-weight:600;color:var(--txt3);margin-bottom:16px;text-transform:uppercase;letter-spacing:.05em}
.share-btns{display:flex;gap:12px}
.share-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--brd);border-radius:8px;color:var(--txt2);transition:all .2s;text-decoration:none}
.share-btn:hover{background:var(--txt);border-color:var(--txt);color:#fff}
.share-btn svg{width:18px;height:18px}

/* Sidebar TOC */
.toc-sec-new{margin-bottom:28px;padding:0;max-height:none;overflow:visible;overflow-x:hidden}
.toc-sec-new h3{font-family:var(--serif);font-size:1.25rem;font-weight:400;margin-bottom:16px;color:var(--txt);text-decoration:underline;text-underline-offset:4px}
.toc-list-new{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.toc-list-new .toc-item a{display:flex;align-items:flex-start;gap:8px;text-decoration:none;color:#8b8f98;font-size:.86rem;line-height:1.45;transition:color .2s,transform .2s}
.toc-list-new .toc-label{min-width:0;overflow-wrap:anywhere;word-break:normal}
.toc-list-new .toc-item a:hover{color:#4b5563;transform:translateX(2px)}
.toc-list-new .toc-dot{color:var(--gold);font-size:1rem;line-height:1;margin-top:3px;opacity:.28;transform:scale(.72);transition:all .2s;width:10px;flex-shrink:0}
.toc-list-new .toc-item.active a{color:#111827;font-weight:500}
.toc-list-new .toc-item.active .toc-dot{opacity:1;transform:scale(1)}
.toc-list-new .level-h2{margin-left:0}
.toc-list-new .level-h3{margin-left:16px}
@media (max-width: 1024px){.pub-sidebar-left{display:none}}

/* ===== RELATED PUBLICATIONS ===== */
.related-pubs{padding:100px 0;background:var(--bg2)}
.related-pubs h2{font-family:var(--serif);font-size:1.75rem;font-weight:400;margin-bottom:48px;text-align:center}
.rp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rp-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.06);border:1px solid var(--brd);transition:all .3s;display:flex;flex-direction:column;height:380px;text-decoration:none}
.rp-card:hover{transform:translateY(-5px);box-shadow:0 12px 32px rgba(0,0,0,.1)}
.rp-card-img{height:160px;flex-shrink:0;overflow:hidden;background:var(--bg3)}
.rp-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.rp-card:hover .rp-card-img img{transform:scale(1.05)}
.rp-card-body{flex:1;display:flex;flex-direction:column;padding:18px}
.rp-card-body .date{font-size:.75rem;color:var(--txt3);margin-bottom:8px}
.rp-author{font-size:.74rem;font-weight:600;color:var(--txt2);margin:-2px 0 8px}
.rp-card-body h3{font-family:var(--serif);font-size:1rem;font-weight:400;color:var(--txt);line-height:1.4;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rp-card-body .summary{font-size:.84rem;line-height:1.55;color:var(--txt2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:auto}
.rp-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:14px}
.rp-cat{display:inline-block;padding:5px 14px;background:rgba(139,26,43,0.08);border-radius:20px;font-size:.72rem;font-weight:500;color:#8b1a2b}
.rp-more{font-size:.8rem;font-weight:500;color:var(--gold);display:flex;align-items:center;gap:4px}
.rp-more svg{width:14px;height:14px}

/* ===== NOT FOUND ===== */
.pub-not-found{text-align:center;padding:150px 20px}
.pub-not-found h2{font-family:var(--serif);font-size:1.75rem;color:var(--txt);margin-bottom:16px}
.pub-not-found p{color:var(--txt2);margin-bottom:32px}
.pub-not-found .btn-back{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;background:var(--txt);color:#fff;font-size:.875rem;font-weight:600;border-radius:50px;text-decoration:none;transition:all .3s}
.pub-not-found .btn-back:hover{background:var(--dark)}

/* ===== READING PROGRESS ===== */
.rp-container{position:fixed;top:0;left:0;right:0;height:4px;background:rgba(0,0,0,.05);z-index:9999;opacity:0;transition:opacity .3s}
.rp-container.visible{opacity:1}
.rp-bar{height:100%;width:0%;background:linear-gradient(90deg,var(--gold) 0%,#a62639 50%,var(--gold) 100%);background-size:200% 100%;animation:rpShimmer 2s ease infinite;transition:width .1s ease-out;border-radius:0 2px 2px 0;box-shadow:0 0 10px rgba(139,26,43,.3)}
@keyframes rpShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.rp-info{position:fixed;top:16px;right:24px;display:flex;align-items:center;gap:6px;padding:8px 16px;background:rgba(255,255,255,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.1);opacity:0;transform:translateY(-10px);transition:all .3s;z-index:9999}
.rp-container.visible .rp-info{opacity:1;transform:translateY(0)}
.rp-pct{font-size:.875rem;font-weight:700;color:var(--gold);font-family:var(--sans)}
.rp-txt{font-size:.75rem;color:#888;font-family:var(--sans)}
.rp-container.complete .rp-bar{background:linear-gradient(90deg,#22c55e 0%,#16a34a 100%);animation:none}
.rp-container.complete .rp-pct{color:#22c55e}
.rp-container.complete .rp-info::before{content:'✓';margin-right:4px;color:#22c55e;font-weight:bold}

/* ===== FOOTER ===== */
.ftr{background:var(--dark);padding:60px 0 0}
.ftr-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.1)}
.ftr-brand .logo-t{color:#fff}
.ftr-addr{font-size:.875rem;color:rgba(255,255,255,.5);line-height:1.7;margin-top:16px}
.ftr-cta h3{font-family:var(--serif);font-size:1.5rem;font-weight:400;color:#fff;margin-bottom:12px}
.ftr-cta h3 span{color:var(--gold)}
.ftr-cta p{font-size:.9rem;color:rgba(255,255,255,.55);margin-bottom:24px;line-height:1.7}
.ftr-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;background:#fff;color:var(--txt);font-size:.875rem;font-weight:600;text-decoration:none;border-radius:50px;transition:all .3s}
.ftr-btn:hover{background:var(--gold);color:#fff}
.ftr-bottom{padding:24px 0;display:flex;justify-content:space-between;align-items:center}
.ftr-bottom p{font-size:.75rem;color:rgba(255,255,255,.35)}
.ftr-links{display:flex;gap:20px}
.ftr-links a{font-size:.75rem;color:rgba(255,255,255,.4);text-decoration:none}.ftr-links a:hover{color:#fff}

/* ===== ANIMATIONS ===== */
@keyframes fiu{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.pub-content{animation:none!important;transform:none!important}
.pub-content .container,.pub-grid{transform:none!important}
.related-pubs{animation:fiu .6s ease .2s both}

/* ===== BACK TO TOP ===== */
.back-to-top{position:fixed;bottom:32px;right:32px;width:48px;height:48px;background:#fff;border:1px solid var(--brd);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--txt2);box-shadow:0 4px 12px rgba(0,0,0,.08);opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s cubic-bezier(.4,0,.2,1);z-index:999;cursor:pointer}
.back-to-top:hover{background:var(--gold);color:#fff;border-color:var(--gold);transform:translateY(-3px) scale(1.05);box-shadow:0 8px 24px rgba(139,26,43,.2)}
.back-to-top svg{width:22px;height:22px}
.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}

/* ===== RESPONSIVE ===== */
@media(max-width:1440px){
  .pub-grid{gap:40px}
}
@media(max-width:980px){
  .hdr,.container{padding-left:28px;padding-right:28px}
  .pub-hero .container{padding-left:28px;padding-right:28px}
  .pub-grid{grid-template-columns:1fr;gap:60px}
  .pub-sidebar{position:static;margin-top:0}
  .rp-grid{grid-template-columns:repeat(2,1fr)}
  .pub-hero-grid {
    grid-template-columns: minmax(0, 1fr) 220px;
    gap: 32px;
  }
  .pub-hero-illustration-frame {
    width: 220px;
  }
  .pub-hero-watermark-frame {
    width: 140px;
    height: 140px;
    right: 48px;
    bottom: 20px;
  }
}
@media(max-width:768px){
  .hdr{padding:16px 20px}
  .nav,.nr{display:none}
  .mt{display:flex}
  .container{padding-left:20px;padding-right:20px}
  .pub-hero .container{padding-left:20px;padding-right:20px}
  .pub-hero{min-height:auto;padding:100px 0 40px}
  .pub-hero-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .pub-hero-right {
    justify-content: center;
  }
  .pub-hero-illustration-frame {
    width: min(100%, 280px);
    justify-self: start;
  }
  .pub-hero-watermark-frame {
    display: none;
  }
  .pub-content{padding:60px 0}
  .rp-grid{grid-template-columns:1fr}
  .rp-card{height:auto}
  .related-pubs{padding:60px 0}
  .rp-info{top:12px;right:16px;padding:6px 12px}
  .rp-pct{font-size:.75rem}
  .rp-txt{display:none}
  .ftr-grid{grid-template-columns:1fr}
  .ftr-bottom{flex-direction:column;gap:12px;text-align:center}
  .back-to-top{bottom:20px;right:20px;width:40px;height:40px}
  .back-to-top svg{width:18px;height:18px}
}

/* ===== Publication mobile fit pass ===== */
@media(max-width: 768px) {
  .hdr {
    width: 100%;
    min-width: 0;
    padding: 12px 16px;
  }

  .logo {
    min-width: 0;
    gap: 8px;
  }

  .logo img {
    height: 36px;
    flex: 0 0 auto;
  }

  .logo-t {
    display: flex;
    flex-direction: column;
    min-width: 0;
    font-size: .95rem;
    line-height: 1.04;
    white-space: normal;
  }

  .logo-l {
    margin-left: 0;
    font-size: .78rem;
  }

  .mt {
    min-width: 42px;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    margin-right: -8px;
  }

  .pub-hero {
    padding: 92px 0 36px;
  }

  .pub-hero h1 {
    font-size: clamp(1.6rem, 8vw, 2.2rem);
    line-height: 1.18;
    overflow-wrap: anywhere;
    text-wrap: balance;
  }

  .pub-summary {
    font-size: .98rem;
    line-height: 1.65;
  }

  .pub-bc,
  .pub-meta {
    gap: 8px;
  }

  .pub-meta-divider {
    display: none;
  }

  .pub-content {
    padding: 44px 0;
  }

  .pub-content .container {
    padding-left: 18px;
    padding-right: 18px;
  }

  .pub-grid {
    gap: 36px;
  }

  .pub-article p,
  .pub-article p *,
  .pub-article span {
    font-size: 1rem !important;
    line-height: 1.75 !important;
    text-align: left !important;
  }

  .pub-article h2,
  .pub-article h2 * {
    font-size: 1.35rem !important;
    line-height: 1.3 !important;
    margin: 36px 0 18px !important;
  }

  .pub-article blockquote {
    margin: 28px 0 !important;
    padding: 22px 20px !important;
  }

  .pub-disclaimer {
    margin-top: 40px;
    padding: 20px;
  }

  .rp-card {
    min-height: 0;
  }
}

@media(max-width: 420px) {
  .container,
  .pub-hero .container,
  .pub-content .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .logo-t {
    font-size: .88rem;
  }

  .logo-l {
    font-size: .72rem;
  }
}
