/* =========================================================================
   Nermin Şayır — görsel sistem
   Taşıyıcı fikir: "perspektif". Düz görünen şeyin derinliği vardır.
   Cesaret tek yerde harcanır: hero derinlik sahnesi + belge kartları.
   ========================================================================= */

:root{
  /* --- Mürekkep ve nötrler: gri değil, sıcak alçı ailesi --- */
  --ink:#17141b;
  --ink-soft:#3a3440;
  --muted:#736c79;
  --muted-2:#9a939f;
  --line:#e6ded7;
  --line-strong:#cbc0b8;
  --shell:#f7f3ef;
  --shell-2:#efe8e1;
  --paper:#ffffff;

  /* --- Tek marka sinyali --- */
  --brand:#ce1b28;
  --brand-deep:#9c1420;
  --brand-wash:#fdeff0;

  /* --- Sadece belgeler için: kâğıt/mühür altını --- */
  --gild:#b98c3c;

  --ok:#146c4c;
  --bad:#b02430;

  /* --- Gölge: gri değil, mürekkep tonlu ve katmanlı --- */
  --sh-1:0 1px 2px rgba(23,20,27,.05), 0 2px 8px rgba(23,20,27,.04);
  --sh-2:0 2px 4px rgba(23,20,27,.05), 0 14px 30px -10px rgba(23,20,27,.14);
  --sh-3:0 4px 8px rgba(23,20,27,.06), 0 34px 64px -22px rgba(23,20,27,.3);

  /* --- Yarıçap hiyerarşiyle değişir, her şeye aynı değer verilmez --- */
  --r-xs:6px;
  --r-sm:10px;
  --r-md:16px;
  --r-lg:26px;

  --container:1160px;
  --header-h:76px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.16,1,.3,1);

  --font-display:"Bricolage Grotesque","Segoe UI",system-ui,-apple-system,sans-serif;
  --font-text:"Newsreader",Georgia,"Times New Roman",serif;
  --font-ui:"Bricolage Grotesque","Segoe UI",system-ui,-apple-system,sans-serif;

  /* Desktop/mobile media boundary. Read by scrollcraft.js as --sc-mobile-bp
     so the runtime, the <picture> source and the preload hints in
     partials/head.php always split at the same width. */
  --sc-mobile-bp:720;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}
/* CMS copy is unbounded: a long title, a pasted URL or a hashtag has no
   break opportunity and overflows its column at narrow widths. Breaking
   the word is the fix; clipping the page only hides it. */
body,h1,h2,h3,h4,p,li,dd,dt,blockquote,figcaption,td,th,summary{overflow-wrap:break-word}
/* Grid and flex items default to min-width:auto, so one long child refuses
   to shrink and widens the whole track. */
.container>*,.v6-wrap>*,.prose>*{min-width:0}
img,video,svg,iframe{max-width:100%}
body{
  margin:0;background:var(--paper);color:var(--ink-soft);
  font-family:var(--font-text);font-size:17px;line-height:1.75;
  font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
body.nav-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:var(--brand-deep);text-decoration-thickness:1.5px;text-underline-offset:3px;transition:color .18s var(--ease)}
a:hover{color:var(--brand)}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
::selection{background:var(--ink);color:#fff}

.container{width:min(calc(100% - 44px),var(--container));margin-inline:auto}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-link{position:fixed;left:18px;top:-90px;z-index:9999;background:var(--ink);color:#fff;padding:11px 17px;border-radius:var(--r-xs);box-shadow:var(--sh-2);font-family:var(--font-ui);font-weight:600}
.skip-link:focus{top:18px;color:#fff}/* ---------- Tipografi ---------- */


h1,h2,h3,h4,h5,h6{
  margin:0 0 .5em;color:var(--ink);font-family:var(--font-display);
  font-weight:640;letter-spacing:-.028em;line-height:1.06;text-wrap:balance;
}
h1{font-size:clamp(2.55rem,5vw,4.3rem);font-weight:660;letter-spacing:-.035em}
h2{font-size:clamp(1.95rem,3.3vw,3rem)}
h3{font-size:clamp(1.2rem,1.7vw,1.45rem);letter-spacing:-.018em}
p{margin:0 0 1.1em;max-width:70ch}
.lead{font-size:clamp(1.1rem,1.5vw,1.28rem);line-height:1.7;color:var(--ink-soft)}/* Eyebrow artık tracked-out büyük harf etiket değil:
   içeriği konumlandıran küçük bir işaret. */


.eyebrow{
  display:inline-flex;align-items:baseline;gap:9px;margin-bottom:14px;
  color:var(--brand);font-family:var(--font-ui);font-size:.9rem;font-weight:600;
  letter-spacing:0;text-transform:none;text-decoration:none;
}
.eyebrow::before{content:"";align-self:center;width:20px;height:1px;background:var(--brand);opacity:.55}
a.eyebrow:hover{color:var(--brand-deep)}

.section{padding:clamp(64px,8vw,108px) 0}
.section-heading{max-width:64ch;margin:0 0 clamp(32px,4vw,54px)}
.section-heading h2{margin:0 0 .45em}
.section-heading p{font-size:1.08rem;margin-bottom:0;color:var(--muted)}/* ---------- Başlık çubuğu ---------- */


.site-header{
  position:fixed;inset:0 0 auto;height:var(--header-h);z-index:1000;
  background:rgba(255,255,255,.78);backdrop-filter:saturate(150%) blur(14px);
  border-bottom:1px solid transparent;
  transition:background .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease);
}
.site-header.is-scrolled{background:rgba(255,255,255,.94);border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(23,20,27,.03),0 10px 30px -18px rgba(23,20,27,.25)}
.nav-shell{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.site-brand{display:flex;align-items:center;gap:11px;flex:0 0 auto;text-decoration:none}
.site-brand__mark{width:36px;height:36px;flex:0 0 36px;border-radius:9px;object-fit:contain;transition:transform .4s var(--ease-out)}
.site-brand:hover .site-brand__mark{transform:rotate(-6deg) scale(1.06)}
.site-brand__copy{display:flex;flex-direction:column;line-height:1.1}
.site-brand__copy strong{font-family:var(--font-display);color:var(--ink);font-size:1.04rem;font-weight:650;letter-spacing:-.025em}
.site-brand__copy span{font-family:var(--font-ui);color:var(--muted);font-size:.74rem;font-weight:500;letter-spacing:0;text-transform:none;margin-top:2px}
.site-brand:hover .site-brand__copy strong{color:var(--brand-deep)}

.site-nav{display:flex;align-items:center;gap:4px}
.site-nav__link{
  position:relative;display:inline-flex;align-items:center;min-height:44px;padding:8px 13px;
  color:var(--ink-soft);font-family:var(--font-ui);font-size:.95rem;font-weight:520;text-decoration:none;
  border-radius:var(--r-xs);transition:color .18s var(--ease),background-color .18s var(--ease);
}
.site-nav__link::after{content:"";position:absolute;left:13px;right:13px;bottom:7px;height:1.5px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-out)}
.site-nav__link:hover{color:var(--ink)}
.site-nav__link:hover::after,.site-nav__link.is-active::after{transform:scaleX(1)}
.site-nav__link.is-active{color:var(--ink);font-weight:600}
.nav-toggle{display:none;width:44px;height:44px;border:1px solid var(--line-strong);background:var(--paper);border-radius:var(--r-xs);align-items:center;justify-content:center;flex-direction:column;gap:5px}
.nav-toggle span:not(.sr-only){display:block;width:19px;height:1.5px;background:var(--ink);border-radius:2px;transition:transform .28s var(--ease-out),opacity .15s linear}
.nav-toggle[aria-expanded="true"] span:nth-of-type(1){transform:translateY(6.5px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-of-type(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-of-type(3){transform:translateY(-6.5px) rotate(-45deg)}/* ---------- Butonlar ---------- */


.button,.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:50px;padding:13px 24px;border:1px solid var(--ink);border-radius:var(--r-sm);
  background:var(--ink);color:#fff;font-family:var(--font-ui);font-size:.97rem;font-weight:600;
  line-height:1.15;text-decoration:none;
  transition:transform .2s var(--ease-out),box-shadow .25s var(--ease),background-color .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease);
}
.button:hover,.btn:hover{background:var(--brand);border-color:var(--brand);color:#fff;transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(206,27,40,.75)}
.button:active,.btn:active{transform:translateY(0)}
.button--secondary{background:var(--brand);border-color:var(--brand)}
.button--secondary:hover{background:var(--brand-deep);border-color:var(--brand-deep)}
.button--ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}
.button--ghost:hover{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:none}
.button--sun{background:var(--paper);color:var(--ink);border-color:var(--line-strong)}
.button--sun:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.button--sm{min-height:42px;padding:9px 17px;font-size:.9rem}
.button--lg{min-height:56px;padding:16px 30px;font-size:1.03rem}

.text-link{
  display:inline-flex;align-items:center;gap:7px;color:var(--ink);
  font-family:var(--font-ui);font-size:.94rem;font-weight:600;text-decoration:none;
  padding-bottom:2px;background-image:linear-gradient(var(--brand),var(--brand));
  background-size:0 1.5px;background-repeat:no-repeat;background-position:0 100%;
  transition:background-size .34s var(--ease-out),color .18s var(--ease);
}
.text-link:hover{color:var(--brand-deep);background-size:100% 1.5px}/* =========================================================================
   HERO — derinlik sahnesi. Sayfanın tek gösterişli anı.
   Katmanlar farklı Z düzlemlerinde durur; imleçle sahne hafifçe döner.
   ========================================================================= */


.hero{
  position:relative;overflow:hidden;
  padding:calc(var(--header-h) + clamp(44px,6vw,80px)) 0 clamp(48px,6vw,80px);
  background:
    radial-gradient(120% 90% at 78% 8%, #fdf5f2 0%, transparent 58%),
    linear-gradient(180deg,var(--paper) 0%,var(--shell) 100%);
}/* İnce ölçüm ızgarası: "netleşme" fikrinin arka plan dokusu */

.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(90deg,rgba(23,20,27,.045) 1px,transparent 1px);
  background-size:clamp(56px,7vw,92px) 100%;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 22%,#000 62%,transparent);
  mask-image:linear-gradient(180deg,transparent,#000 22%,#000 62%,transparent);
}
.hero-grid{
  position:relative;z-index:1;display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);
  gap:clamp(32px,5vw,68px);align-items:center;min-height:min(640px,78vh);
  perspective:1400px;perspective-origin:60% 40%;
}
.hero h1{margin:0 0 .38em}
.hero .lead{max-width:40ch;margin-bottom:30px;color:var(--ink-soft)}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:34px}

.hero-visual{
  position:relative;min-height:clamp(400px,52vw,580px);
  transform-style:preserve-3d;
  transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));
  transition:transform .5s var(--ease-out);
  will-change:transform;
}/* Tek koreografi: sayfa açılırken katmanlar yerine oturur. */
@keyframes heroRise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes heroSettle{from{opacity:0;transform:translateZ(-70px) scale(.86) rotate(-6deg)}to{opacity:1;transform:translateZ(-70px) scale(1.04)}}
@keyframes heroPhoto{from{opacity:0;transform:translateZ(40px) translateY(28px)}to{opacity:1;transform:translateZ(40px)}}
@keyframes heroCard{from{opacity:0;transform:translateZ(90px) translateY(14px) scale(.95)}to{opacity:1}}/* ---------- Güven şeridi ---------- *//* ---------- Üç adım: gerçek bir sıra olduğu için numaralandırma haklı ---------- */


.help-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,44px)}/* Adımları bağlayan çizgi, kaydırma ile çizilir */

.help-grid::before{
  content:"";position:absolute;left:9%;right:9%;top:23px;height:1px;
  background:var(--line-strong);transform:scaleX(var(--draw,1));transform-origin:left;
  transition:transform .95s var(--ease-out);
}
.help-card{position:relative;padding-top:4px}
.help-card h3{margin-bottom:10px}
.help-card p{margin:0;color:var(--muted);font-size:1rem}/* ---------- Paket kartları ---------- */
.price{
  margin:auto 0 20px;padding-top:18px;border-top:1px solid var(--line);
  font-family:var(--font-display);font-size:1.55rem;font-weight:660;letter-spacing:-.03em;color:var(--ink);
}
.price small{display:block;margin-top:2px;font-family:var(--font-ui);font-size:.78rem;font-weight:500;color:var(--muted);letter-spacing:0}/* ---------- Hakkımda ---------- */
@keyframes accOpen{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}/* ---------- Blog kartları ---------- */
.post-card{
  display:flex;flex-direction:column;overflow:hidden;background:var(--paper);
  border:1px solid var(--line);border-radius:var(--r-md);
  transition:transform .32s var(--ease-out),box-shadow .32s var(--ease),border-color .3s var(--ease);
}
.post-card:hover{transform:translateY(-5px);border-color:var(--line-strong);box-shadow:var(--sh-3)}
.post-card>a{display:block;overflow:hidden}
.post-card img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .6s var(--ease-out)}
.post-card:hover img{transform:scale(1.04)}
.post-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}
.post-card__date{font-family:var(--font-ui);font-size:.82rem;font-weight:500;color:var(--muted)}
.post-card__tag{
  padding:3px 10px;border:1px solid var(--line-strong);border-radius:999px;
  font-family:var(--font-ui);font-size:.76rem;font-weight:550;color:var(--ink-soft);
  text-transform:none;letter-spacing:0;text-decoration:none;
  transition:background-color .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease);
}
.post-card__tag:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.post-card h2,.post-card h3{font-size:1.3rem;margin-bottom:10px}
.post-card h2 a,.post-card h3 a{color:var(--ink);text-decoration:none;transition:color .18s var(--ease)}
.post-card h2 a:hover,.post-card h3 a:hover{color:var(--brand-deep)}
.post-card p{margin:0 0 18px;color:var(--muted);font-size:.98rem}
.post-card .text-link{margin-top:auto;align-self:flex-start}/* ---------- Geri bildirimler ---------- *//* ---------- Videolar ---------- */
.play{
  position:absolute;left:20px;top:20px;display:grid;place-items:center;width:46px;height:46px;
  border-radius:50%;background:rgba(255,255,255,.92);color:var(--brand);font-size:.85rem;
  transition:transform .35s var(--ease-out),background-color .25s var(--ease);
}/* =========================================================================
   BELGELER — cesaretin harcandığı ikinci yer.
   Basılı, parlak kâğıt: imlece göre eğilir, üstünde ışık gezer.
   ========================================================================= */
.cert-card{
  position:relative;display:block;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--r-sm);overflow:hidden;text-decoration:none;box-shadow:var(--sh-1);
  transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateZ(0);
  transition:transform .45s var(--ease-out),box-shadow .35s var(--ease),border-color .3s var(--ease);
}
.cert-card:hover{box-shadow:var(--sh-3);border-color:var(--line-strong)}
.cert-card img{width:100%;aspect-ratio:1.41/1;object-fit:cover;object-position:top center;background:var(--shell)}/* Kâğıdın üzerinde gezen parlaklık */

.cert-card::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:0;
  background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.62) 50%,transparent 62%);
  transition:opacity .3s var(--ease);
}
.cert-card:hover::after{opacity:1;animation:sheen 1.1s var(--ease-out)}
@keyframes sheen{from{transform:translateX(-62%)}to{transform:translateX(62%)}}/* ---------- Kapanış çağrısı ---------- */


.cta{padding:clamp(56px,7vw,96px) 0}
.cta .eyebrow{color:#fff}
.cta .eyebrow::before{background:#fff}/* ---------- İç sayfa başlıkları ---------- */
.prose{font-size:1.1rem;line-height:1.82}
.prose>*:first-child{margin-top:0}
.prose h2,.prose h3,.prose h4{margin-top:1.8em;margin-bottom:.55em}
.prose p{color:var(--ink-soft);max-width:none}
.prose a{color:var(--brand-deep);text-decoration-color:var(--line-strong);text-decoration-thickness:1.5px}
.prose a:hover{text-decoration-color:var(--brand)}
.prose blockquote{
  margin:34px 0;padding:4px 0 4px 26px;border-left:2px solid var(--brand);
  font-size:1.2rem;line-height:1.65;color:var(--ink);font-style:italic;
}
.prose blockquote p:last-child{margin-bottom:0}
.prose ul,.prose ol{padding-left:1.3em}
.prose li{margin-bottom:.5em}
.prose img{border-radius:var(--r-md);box-shadow:var(--sh-2);margin:28px 0}
.prose hr{border:0;border-top:1px solid var(--line);margin:40px 0}
.article-cover{width:min(calc(100% - 44px),1000px);margin:0 auto clamp(36px,5vw,58px)}
.article-cover img{width:100%;max-height:540px;object-fit:cover;border-radius:var(--r-lg);box-shadow:var(--sh-3)}

.comments{margin-top:66px;padding-top:48px;border-top:1px solid var(--line)}
.comment-list{display:grid;gap:14px}
.comment{padding:20px 22px;background:var(--shell);border-radius:var(--r-md)}
.comment strong{display:block;margin-bottom:6px;color:var(--ink);font-family:var(--font-ui);font-size:.95rem}
.comment p{margin:0;color:var(--ink-soft);font-size:1rem}

.pagination{display:flex;gap:8px;margin-top:46px}
.pagination a,.pagination span{
  display:grid;place-items:center;min-width:46px;height:46px;padding:0 12px;
  border:1px solid var(--line-strong);border-radius:var(--r-xs);background:var(--paper);
  font-family:var(--font-ui);font-weight:600;color:var(--ink);text-decoration:none;
  transition:background-color .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease);
}
.pagination a:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.pagination .is-current{background:var(--ink);border-color:var(--ink);color:#fff}/* ---------- Formlar ---------- */


.form-card{padding:clamp(24px,3vw,36px);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{margin-bottom:20px}
.field label{display:block;margin-bottom:8px;color:var(--ink);font-family:var(--font-ui);font-size:.92rem;font-weight:600}
.field input,.field textarea,.field select{
  width:100%;padding:14px 15px;border:1px solid var(--line-strong);border-radius:var(--r-sm);
  background:var(--paper);color:var(--ink);font-family:var(--font-ui);font-size:1rem;outline:none;
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background-color .2s var(--ease);
}
.field input:hover,.field textarea:hover{border-color:var(--muted-2)}
.field textarea{min-height:160px;resize:vertical;line-height:1.6}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--ink);box-shadow:0 0 0 4px rgba(23,20,27,.07)}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:var(--bad);box-shadow:0 0 0 4px rgba(176,36,48,.09)}
.field-help{margin-top:7px;font-family:var(--font-ui);font-size:.84rem;color:var(--muted)}
.field-error{display:block;margin-top:7px;color:var(--bad);font-family:var(--font-ui);font-size:.85rem;font-weight:550}
.form-note{margin:16px 0 0;color:var(--muted);font-family:var(--font-ui);font-size:.84rem}
.button[aria-busy="true"],.button:disabled{opacity:.6;pointer-events:none;transform:none}
.alert{padding:15px 18px;border-radius:var(--r-sm);margin-bottom:20px;font-family:var(--font-ui);font-size:.95rem;border:1px solid}
.alert--success{background:#eef7f2;border-color:#bfe0d0;color:var(--ok)}
.alert--error{background:#fdeff0;border-color:#f2ccd0;color:var(--bad)}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.status-chip{
  display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:999px;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);
  color:#fff!important;font-family:var(--font-ui);font-size:.82rem;font-weight:550;
}
.status-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:#5fcf95}
@media (prefers-reduced-motion:no-preference){
  .status-chip::before{animation:pulse 2.4s var(--ease) infinite}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(95,207,149,.5)}50%{box-shadow:0 0 0 6px rgba(95,207,149,0)}}/* ---------- Filtre çubuğu ---------- */


.filter-bar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:36px}
.filter-chip{
  display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 16px;
  border:1px solid var(--line-strong);border-radius:999px;background:var(--paper);
  color:var(--ink-soft);font-family:var(--font-ui);font-size:.92rem;font-weight:550;text-decoration:none;
  transition:background-color .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),transform .2s var(--ease-out);
}
.filter-chip:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-1px)}
.filter-chip.is-active{background:var(--ink);border-color:var(--ink);color:#fff}
.filter-chip.is-active:hover{background:var(--brand);border-color:var(--brand);color:#fff}
.filter-chip__count{opacity:.55;font-size:.82rem}/* ---------- İlgili yazılar / yazı gezinmesi ---------- */


.related-posts{margin-top:66px;padding-top:46px;border-top:1px solid var(--line)}
.related-posts h2{font-size:clamp(1.45rem,2.2vw,1.9rem);margin-bottom:24px}
.related-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.related-item{
  display:block;padding:22px;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--r-md);text-decoration:none;
  transition:transform .3s var(--ease-out),box-shadow .3s var(--ease),border-color .25s var(--ease);
}
.related-item:hover{transform:translateY(-3px);border-color:var(--line-strong);box-shadow:var(--sh-2)}
.related-item time{display:block;margin-bottom:9px;color:var(--muted);font-family:var(--font-ui);font-size:.82rem}
.related-item strong{display:block;color:var(--ink);font-family:var(--font-display);font-size:1.05rem;font-weight:600;line-height:1.35;letter-spacing:-.018em}
.related-item:hover strong{color:var(--brand-deep)}

.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:44px}
.post-nav a{
  display:flex;flex-direction:column;gap:7px;padding:20px 22px;background:var(--paper);
  border:1px solid var(--line);border-radius:var(--r-md);text-decoration:none;
  transition:border-color .25s var(--ease),transform .3s var(--ease-out);
}
.post-nav a:hover{border-color:var(--line-strong);transform:translateY(-2px)}
.post-nav span{color:var(--muted);font-family:var(--font-ui);font-size:.82rem;text-transform:none;letter-spacing:0}
.post-nav strong{color:var(--ink);font-family:var(--font-display);font-size:1rem;font-weight:600;line-height:1.35;letter-spacing:-.018em}
.post-nav a:hover strong{color:var(--brand-deep)}
.post-nav a:last-child{text-align:right}
.post-nav a:only-child{grid-column:1/-1}

.empty-state{padding:44px 30px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper)}
.empty-state h3{margin-bottom:8px}
.empty-state p{margin:0 0 .5em;max-width:56ch;color:var(--muted)}/* ---------- Footer ---------- */


.site-footer{position:relative;margin-top:0;padding:clamp(56px,7vw,84px) 0 28px;background:var(--ink);color:#fff}/* Dalga katmanları sonsuz animasyondan çıkarıldı: sabit, ince bir kenar. */
.footer-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.5fr .75fr .75fr;gap:clamp(30px,4vw,56px)}
.footer-brand{display:inline-flex;align-items:center;gap:12px;margin-bottom:20px}
.footer-brand img{width:40px;height:40px;border-radius:10px;object-fit:contain;background:#fff;padding:3px}
.footer-brand span{display:flex;flex-direction:column;line-height:1.15}
.footer-brand strong{color:#fff;font-family:var(--font-display);font-size:1.06rem;font-weight:620;letter-spacing:-.025em}
.footer-brand small{margin-top:3px;color:rgba(255,255,255,.55);font-family:var(--font-ui);font-size:.76rem;font-weight:500;letter-spacing:0;text-transform:none}
.site-footer h2{color:#fff;font-family:var(--font-ui);font-size:.95rem;font-weight:620;letter-spacing:0;margin-bottom:16px}
.site-footer p{color:rgba(255,255,255,.62)}
.site-footer a{display:block;margin:9px 0;color:rgba(255,255,255,.62);font-family:var(--font-ui);font-size:.95rem;text-decoration:none;transition:color .18s var(--ease),transform .25s var(--ease-out)}
.site-footer a:hover{color:#fff;transform:translateX(3px)}
.footer-copy{max-width:46ch;font-size:1rem}
.footer-copy h2,.footer-copy h3,.footer-copy h4{color:#fff}
.footer-copy ul,.footer-copy ol{padding-left:1.25rem}
.footer-copy a{display:inline}
.footer-links{display:grid}
.footer-bottom{
  position:relative;z-index:1;display:flex;justify-content:space-between;gap:24px;
  padding-top:26px;margin-top:44px;border-top:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.45);font-family:var(--font-ui);font-size:.85rem;
}
.footer-bottom a{display:inline;margin:0;color:rgba(255,255,255,.45);font-size:.85rem}/* ---------- Başa dön ---------- */


.to-top{
  position:fixed;right:22px;bottom:22px;z-index:900;display:grid;place-items:center;
  width:46px;height:46px;border:1px solid var(--line-strong);border-radius:50%;
  background:rgba(255,255,255,.9);backdrop-filter:blur(8px);color:var(--ink);font-size:1rem;
  box-shadow:var(--sh-2);opacity:0;transform:translateY(12px) scale(.9);pointer-events:none;
  transition:opacity .3s var(--ease),transform .4s var(--ease-out),background-color .2s var(--ease);
}
.to-top.is-visible{opacity:1;transform:none;pointer-events:auto}
.to-top:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.to-top[hidden]{display:none}/* ---------- Kaydırma ile ortaya çıkış ---------- */


/* scrollcraft.css sets [data-sc-in]{opacity:0} as soon as it loads, with no
   regard for whether its runtime will ever arrive. Loading after it, this
   restores the content whenever JavaScript has not confirmed itself, so a
   blocked, stale or failed script degrades to a plain page instead of a blank
   one. site.js adds .sc-live once ScrollCraft has actually mounted. */
html.no-js [data-sc-in],html.no-js [data-sc-stagger]>*,
html:not(.sc-live) [data-sc-in],html:not(.sc-live) [data-sc-stagger]>*{
  opacity:1!important;transform:none!important;clip-path:none!important
}
.js [data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}
.js [data-reveal].is-visible{opacity:1;transform:none}/* Modern tarayıcılarda kaydırma ilerleme çizgisi — JS gerektirmez */


@supports (animation-timeline:scroll()){
  @media (prefers-reduced-motion:no-preference){
    body::before{
      content:"";position:fixed;left:0;top:0;height:2px;width:100%;z-index:1200;
      transform-origin:0 50%;transform:scaleX(0);background:var(--brand);
      animation:readProgress linear;animation-timeline:scroll(root block);
    }}}
@keyframes readProgress{to{transform:scaleX(1)}}.text-left{text-align:left}.mt-5{margin-top:3rem!important}.mx-0{margin-left:0!important;margin-right:0!important}/* =========================================================================
   Duyarlı davranış
   ========================================================================= */


@media(max-width:1040px){
  .hero-grid{grid-template-columns:1fr;gap:12px;min-height:0;perspective:none}
  .hero-visual{min-height:clamp(360px,62vw,520px);max-width:560px;width:100%;margin-inline:auto;transform:none!important}
  .related-list{grid-template-columns:repeat(2,1fr)}
  .related-list>*:last-child:nth-child(odd){grid-column:1/-1}}

@media(max-width:991px){
  :root{--header-h:68px}
  .nav-toggle{display:flex}
  .site-nav{
    position:fixed;top:calc(var(--header-h) + 10px);left:16px;right:16px;
    display:none;flex-direction:column;align-items:stretch;gap:2px;padding:14px;
    background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--sh-3);
  }
  .site-nav.is-open{display:flex}
  @media (prefers-reduced-motion:no-preference){
    .site-nav.is-open{animation:navDrop .34s var(--ease-out)}}
  .site-nav__link{padding:12px 14px;font-size:1rem}
  .site-nav__link::after{left:14px;right:auto;width:26px;bottom:8px}
  .site-nav .button{margin-top:8px}
  .help-grid{grid-template-columns:repeat(2,1fr)}
  .help-grid::before{display:none}
  .help-card:last-child{grid-column:1/-1;max-width:480px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-grid>div:first-child{grid-column:1/-1}
  .form-grid{grid-template-columns:1fr}}
@keyframes navDrop{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}

@media(max-width:640px){
  body{font-size:16.5px}
  .container{width:min(calc(100% - 32px),var(--container))}
  .site-brand__mark{width:32px;height:32px;flex-basis:32px}
  .site-brand__copy strong{font-size:.96rem}
  .site-brand__copy span{font-size:.68rem}
  .hero{padding-top:calc(var(--header-h) + 28px)}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .button{width:100%}
  .hero-visual{min-height:340px}
  .help-grid,.related-list{grid-template-columns:1fr}
  .help-card:last-child{grid-column:auto;max-width:none}
  .article-cover{width:calc(100% - 32px)}
  .post-nav{grid-template-columns:1fr}
  .post-nav a:last-child{text-align:left}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .footer-grid>div:first-child{grid-column:auto}
  .footer-bottom{flex-direction:column;gap:10px}
  .to-top{right:16px;bottom:16px;width:42px;height:42px}
  .related-list>*:last-child:nth-child(odd){grid-column:auto}}/* ---------- Erişilebilirlik ---------- */


:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{
  outline:2px solid var(--ink);outline-offset:3px;border-radius:3px;
}
.site-footer :focus-visible{outline-color:#fff}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important;
  }
  [data-reveal],[data-reveal-stagger]>*{opacity:1;transform:none;clip-path:none;letter-spacing:inherit;transition:none}
  .js.sc-enabled [data-sc-in="mask"],.js.sc-enabled [data-sc-in="edge"],.js.sc-enabled [data-sc-in="lift"],.js.sc-enabled [data-sc-in="settle"]{clip-path:none;letter-spacing:inherit}
  .hero-visual,.cert-card{transform:none!important}}/* =========================================================================
   PUBLIC V5 — editorial coaching system
   ui-ux-pro-max + scroll-craft + taste-skill + design-dna principles:
   clear hierarchy, content-first composition, restrained motion, distinct page
   grammar, touch-safe controls and a consistent warm/editorial design DNA.
   ========================================================================= */



:root{
  --v5-ink:#171319;
  --v5-ink-2:#241d24;
  --v5-cream:#f6f0ea;
  --v5-cream-2:#eee5dd;
  --v5-red:#c92331;
  --v5-red-dark:#981824;
  --v5-wine:#4a1d28;
  --v5-gold:#b98c3c;
}

body{overflow-x:hidden;background:var(--paper)}
/* Safety net only; the wrap guards near the top of this file are the actual
   fix. overflow-x:clip was tried here and reverted: unlike hidden it makes the
   body a real clip container in some engines instead of propagating to the
   viewport, which changes how clipping ancestors are walked. That is not worth
   the risk for a rule that is only a backstop. */
.site-header{background:rgba(250,247,244,.78);border-bottom-color:rgba(23,19,25,.04)}
.site-header.is-scrolled{background:rgba(250,247,244,.93)}
.site-brand__mark-wrap{position:relative;display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px}
.site-brand__mark{width:36px;height:36px}
.site-brand__dot{position:absolute;right:-1px;bottom:0;width:7px;height:7px;border:2px solid var(--paper);border-radius:50%;background:var(--brand)}
.site-nav{gap:18px}
.site-nav__links{display:flex;align-items:center;gap:2px}
.nav-cta{white-space:nowrap}

.js [data-reveal="left"]{transform:translate3d(-18px,14px,0)}
.js [data-reveal="right"]{transform:translate3d(18px,14px,0)}
.js [data-reveal="left"].is-visible,.js [data-reveal="right"].is-visible{transform:none}

/* ============================================================================
   Reveal vocabulary
   ----------------------------------------------------------------------------
   The site has two reveal engines and both did exactly one thing: fade up 14px.
   Twenty-seven identical entrances in a row read as a template, which is the
   look this design brief exists to avoid. Neither engine needs changing — both
   only toggle a class — so the whole vocabulary lives here as attribute
   variants, and every variant resolves to the same visible end state. A variant
   can therefore never leave content stranded invisible.

     mask    clip-path wipe upward. For display headings.
     edge    wipe in from the leading edge. For rules, eyebrows, wide media.
     lift    longer travel with a settle. For portraits and cards.
     settle  tracking closes as the line arrives. For large editorial type.

   Durations differ per variant on purpose: uniform timing is what makes a page
   feel metronomic even when the movements themselves differ.
   ========================================================================== */

/* --- ScrollCraft (homepage). Scoped to .sc-enabled because the hidden base
       state lives in scrollcraft.css, which only loads with the runtime. ----- */
.js.sc-enabled [data-sc-in="mask"]{opacity:1;transform:translate3d(0,12px,0);clip-path:inset(100% 0 0 0);transition:clip-path 980ms var(--v6-ease),transform 980ms var(--v6-ease)}
.js.sc-enabled [data-sc-in="mask"].sc-in{clip-path:inset(0 0 0 0);transform:none}
.js.sc-enabled [data-sc-in="edge"]{opacity:1;transform:none;clip-path:inset(0 100% 0 0);transition:clip-path 820ms var(--v6-ease)}
.js.sc-enabled [data-sc-in="edge"].sc-in{clip-path:inset(0 0 0 0)}
.js.sc-enabled [data-sc-in="lift"]{opacity:0;transform:translate3d(0,34px,0) scale(.985);transition:opacity 760ms var(--v6-ease),transform 1100ms var(--v6-ease)}
.js.sc-enabled [data-sc-in="lift"].sc-in{opacity:1;transform:none}
.js.sc-enabled [data-sc-in="settle"]{opacity:0;transform:translate3d(0,10px,0);letter-spacing:.02em;transition:opacity 700ms var(--v6-ease),transform 860ms var(--v6-ease),letter-spacing 1150ms var(--v6-ease)}
.js.sc-enabled [data-sc-in="settle"].sc-in{opacity:1;transform:none;letter-spacing:inherit}

/* --- data-reveal (inner pages). Same vocabulary, same end state. ---------- */
.js [data-reveal="mask"]{opacity:1;transform:translate3d(0,12px,0);clip-path:inset(100% 0 0 0);transition:clip-path 980ms var(--v6-ease),transform 980ms var(--v6-ease)}
.js [data-reveal="mask"].is-visible{clip-path:inset(0 0 0 0);transform:none}
.js [data-reveal="edge"]{opacity:1;transform:none;clip-path:inset(0 100% 0 0);transition:clip-path 820ms var(--v6-ease)}
.js [data-reveal="edge"].is-visible{clip-path:inset(0 0 0 0)}
.js [data-reveal="lift"]{opacity:0;transform:translate3d(0,34px,0) scale(.985);transition:opacity 760ms var(--v6-ease),transform 1100ms var(--v6-ease)}
.js [data-reveal="lift"].is-visible{opacity:1;transform:none}
.js [data-reveal="settle"]{opacity:0;transform:translate3d(0,10px,0);letter-spacing:.02em;transition:opacity 700ms var(--v6-ease),transform 860ms var(--v6-ease),letter-spacing 1150ms var(--v6-ease)}
.js [data-reveal="settle"].is-visible{opacity:1;transform:none;letter-spacing:inherit}

/* Staggered children on inner pages. transition-delay is written by site.js so
   the cascade order follows the DOM rather than a hand-kept list of nth-child
   rules that silently breaks when a card is added. */
.js [data-reveal-stagger]>*{opacity:0;transform:translate3d(0,18px,0);transition:opacity 640ms var(--v6-ease),transform 760ms var(--v6-ease)}
.js [data-reveal-stagger].is-visible>*{opacity:1;transform:none}

/* A flow act publishes its own progress as --sc-p. The section rule can then be
   drawn continuously as the section is read, rather than snapping to full width
   the instant it crosses the observer threshold. Sections that are not acts fall
   back to 1 and simply render the rule, so nothing depends on the runtime. */
.sc-enabled [data-sc-act="flow"] .v6-section-head::after,
.sc-enabled [data-sc-act="flow"] .watch-editorial__head::after{
  content:"";display:block;height:1px;margin-top:26px;background:var(--v6-accent);
  transform:scaleX(clamp(0.04,var(--sc-p,1),1));transform-origin:left center;
  transition:transform 120ms linear;will-change:transform
}
@media (prefers-reduced-motion: reduce){
  .sc-enabled [data-sc-act="flow"] .v6-section-head::after,
  .sc-enabled [data-sc-act="flow"] .watch-editorial__head::after{transform:none}
}/* --- Editorial hero ---------------------------------------------------- */
@keyframes scrollCue{0%,100%{transform:translateX(-110%)}55%{transform:translateX(210%)}}/* --- Manifesto --------------------------------------------------------- */
.section-index{color:var(--muted);font-family:var(--font-ui);font-size:.74rem;letter-spacing:.09em;text-transform:uppercase}
.closing-cta h2 em{font-family:var(--font-text);font-weight:400;color:var(--brand);letter-spacing:-.02em}/* --- Reusable split heading ------------------------------------------- */


.split-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(28px,6vw,96px);align-items:end;margin-bottom:clamp(38px,5vw,68px)}
.split-heading h2{max-width:16ch;margin-bottom:0}
.split-heading>p{margin:0;color:var(--muted);align-self:end}
.split-heading>a{justify-self:end;align-self:end}
.split-heading--light h2,.split-heading--light p{color:#fff}
.split-heading--light p{color:rgba(255,255,255,.62)}
.split-heading--light .eyebrow{color:#f19aa3}.split-heading--light .eyebrow::before{background:#f19aa3}/* --- Process rail ------------------------------------------------------ *//* --- Packages ---------------------------------------------------------- *//* --- About stage ------------------------------------------------------- *//* --- Journal preview --------------------------------------------------- *//* --- Voices rail ------------------------------------------------------- *//* --- Media mosaic ------------------------------------------------------ *//* --- Credentials ------------------------------------------------------- *//* --- Closing CTA ------------------------------------------------------- */


.closing-cta{position:relative;padding:clamp(82px,10vw,138px) 0;background:var(--v5-ink);color:#fff;overflow:hidden}
.closing-cta::after{content:"NŞ";position:absolute;right:-.04em;bottom:-.25em;color:rgba(255,255,255,.025);font-family:var(--font-display);font-size:clamp(12rem,32vw,32rem);font-weight:700;line-height:1;letter-spacing:-.1em;pointer-events:none}
.closing-cta__grid{position:relative;z-index:1;display:grid;grid-template-columns:90px minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(24px,5vw,78px);align-items:end}
.closing-cta__index{align-self:start;color:rgba(255,255,255,.35);font-family:var(--font-ui);font-size:.72rem;letter-spacing:.1em}.closing-cta .eyebrow{color:#f0a4ad}.closing-cta .eyebrow::before{background:#f0a4ad}.closing-cta h2{color:#fff;font-size:clamp(2.3rem,4.5vw,4.4rem);max-width:14ch;margin:0}.closing-cta__action p{color:rgba(255,255,255,.61);margin-bottom:24px}/* --- Inner hero / About ----------------------------------------------- */


.inner-hero{padding:calc(var(--header-h) + clamp(44px,6vw,80px)) 0 clamp(66px,8vw,110px);background:var(--v5-cream)}
.inner-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);gap:clamp(42px,7vw,110px);align-items:center}.inner-hero__copy h1{font-size:clamp(3rem,6vw,5.8rem);max-width:9ch}.inner-hero__copy .lead{max-width:46ch}.inner-hero__meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.inner-hero__meta span{padding:7px 11px;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink-soft);font-family:var(--font-ui);font-size:.75rem;background:rgba(255,255,255,.45)}
.inner-hero__portrait{position:relative;min-height:570px;padding:26px 26px 0 0}.inner-hero__portrait::before{content:"";position:absolute;right:0;top:0;width:76%;height:76%;border:1px solid var(--line-strong)}.inner-hero__portrait img{position:relative;z-index:1;width:100%;height:570px;object-fit:contain;object-position:center bottom;background:linear-gradient(145deg,#ead5ce,#f7e8e4)}.inner-hero__portrait-index{position:absolute;z-index:2;right:10px;top:10px;color:var(--brand);font-family:var(--font-ui);font-size:.72rem;font-weight:700}.inner-hero__portrait-note{position:absolute;z-index:3;left:-52px;bottom:36px;width:270px;padding:18px 20px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh-2)}.inner-hero__portrait-note strong{display:block;color:var(--ink);font-family:var(--font-ui);font-size:.9rem}.inner-hero__portrait-note span{display:block;margin-top:5px;color:var(--muted);font-size:.86rem;line-height:1.45}
.about-story{background:#fff}.about-story__grid{display:grid;grid-template-columns:minmax(280px,.62fr) minmax(0,1.38fr);gap:clamp(46px,9vw,145px);align-items:start}.about-story__aside{position:sticky;top:calc(var(--header-h) + 32px)}.about-story__aside h2{font-size:clamp(1.8rem,3vw,2.75rem);margin-top:15px}.about-story__aside p{color:var(--muted)}
.prose--story{font-size:clamp(1.08rem,1.35vw,1.2rem)}.prose--story>p:first-child:first-letter{float:left;margin:.13em .12em 0 0;color:var(--brand);font-family:var(--font-display);font-size:4.8rem;font-weight:650;line-height:.72}.prose--story h2{margin-top:2em}.prose--story blockquote{font-size:1.35em}
.about-principles{background:var(--v5-ink);color:#fff}.principle-panels{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.principle-panel{min-height:310px;padding:28px 28px 34px}.principle-panel+.principle-panel{border-left:1px solid rgba(255,255,255,.16)}.principle-panel__index{display:block;margin-bottom:64px;color:#ef9aa4;font-family:var(--font-ui);font-size:.7rem;letter-spacing:.1em}.principle-panel h3{color:#fff;font-size:clamp(1.45rem,2.2vw,2rem)}.principle-panel p{color:rgba(255,255,255,.6);margin:0}
.about-quote-section{background:var(--v5-cream)}.about-quote{position:relative;max-width:950px;text-align:center}.about-quote__mark{display:block;color:var(--brand);font-family:var(--font-text);font-size:7rem;line-height:.7}.about-quote blockquote{margin:18px 0 22px;color:var(--ink);font-family:var(--font-display);font-size:clamp(2rem,4vw,3.8rem);font-weight:600;line-height:1.08;letter-spacing:-.04em}.about-quote__name{color:var(--muted);font-family:var(--font-ui);font-size:.84rem}/* --- Contact ----------------------------------------------------------- */


.contact-hero{padding:calc(var(--header-h) + clamp(48px,7vw,92px)) 0 clamp(64px,8vw,110px);background:var(--v5-ink);color:#fff}.contact-hero__grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);gap:clamp(42px,8vw,120px);align-items:end}.contact-hero h1{color:#fff;font-size:clamp(3.3rem,7vw,6.5rem);max-width:9ch}.contact-hero .lead{color:rgba(255,255,255,.65);max-width:51ch}.contact-hero .eyebrow{color:#ee9ba5}.contact-hero .eyebrow::before{background:#ee9ba5}
.contact-hero__steps{padding:25px 0;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.contact-hero__label{display:block;margin-bottom:16px;color:rgba(255,255,255,.48);font-family:var(--font-ui);font-size:.73rem;text-transform:uppercase;letter-spacing:.08em}.contact-hero__steps ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.contact-hero__steps li{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:15px 0;border-top:1px solid rgba(255,255,255,.09)}.contact-hero__steps li:first-child{border-top:0}.contact-hero__steps li>span{color:#ef9ba5;font-family:var(--font-ui);font-size:.7rem;font-weight:700}.contact-hero__steps strong{display:block;color:#fff;font-family:var(--font-ui);font-size:.9rem}.contact-hero__steps small{display:block;margin-top:3px;color:rgba(255,255,255,.48);font-family:var(--font-ui);font-size:.77rem}
.contact-section{background:var(--v5-cream)}.contact-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(30px,6vw,92px);align-items:start}.contact-sidebar{position:sticky;top:calc(var(--header-h) + 30px)}.contact-sidebar h2{font-size:clamp(1.7rem,2.8vw,2.45rem);margin:20px 0 12px}.contact-sidebar>p{color:var(--muted)}.contact-directory{margin-top:34px;border-top:1px solid var(--line-strong)}.contact-directory>a,.contact-directory>div{position:relative;display:block;padding:18px 42px 18px 0;border-bottom:1px solid var(--line);text-decoration:none}.contact-directory span{display:block;color:var(--muted);font-family:var(--font-ui);font-size:.72rem;margin-bottom:4px}.contact-directory strong{display:block;color:var(--ink);font-family:var(--font-ui);font-size:.93rem;font-weight:600;line-height:1.35}.contact-directory i{position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--brand);font-style:normal}.contact-directory a:hover strong{color:var(--brand)}.contact-privacy{margin-top:28px;padding:20px;border-left:2px solid var(--brand);background:rgba(255,255,255,.45)}.contact-privacy strong{display:block;color:var(--ink);font-family:var(--font-ui);font-size:.88rem}.contact-privacy p{margin:5px 0 0;color:var(--muted);font-size:.88rem;line-height:1.5}
.form-card--editorial{padding:clamp(28px,4vw,52px);border-radius:0;box-shadow:none;background:#fff}.form-card__head{margin-bottom:32px;padding-bottom:25px;border-bottom:1px solid var(--line)}.form-card__head>span{display:block;margin-bottom:8px;color:var(--brand);font-family:var(--font-ui);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.form-card__head h2,.form-card__head h3{margin-bottom:8px}.form-card__head p{margin:0;color:var(--muted)}.form-card--editorial .field input,.form-card--editorial .field textarea{border-width:0 0 1px;border-radius:0;padding:13px 2px;background:transparent;box-shadow:none!important}.form-card--editorial .field textarea{min-height:180px}.form-card--editorial .field input:focus,.form-card--editorial .field textarea:focus{border-color:var(--brand)}.form-submit-row{display:flex;align-items:center;gap:22px;margin-top:8px}.form-submit-row .form-note{margin:0;max-width:32ch}
.contact-faq{background:#fff}.contact-faq__grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(42px,8vw,120px);align-items:start}.contact-faq__grid h2{max-width:12ch}.faq-list{border-top:1px solid var(--ink)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{position:relative;padding:22px 42px 22px 0;color:var(--ink);font-family:var(--font-ui);font-weight:600;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";position:absolute;right:0;top:19px;color:var(--brand);font-size:1.3rem;font-weight:400}.faq-list details[open] summary::after{content:"−"}.faq-list details p{padding:0 42px 22px 0;margin:0;color:var(--muted)}/* --- Blog index -------------------------------------------------------- */


.journal-hero{padding:calc(var(--header-h) + clamp(54px,7vw,100px)) 0 clamp(62px,8vw,110px);background:var(--v5-cream);border-bottom:1px solid var(--line)}.journal-hero__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:clamp(38px,7vw,110px);align-items:end}.journal-hero h1{font-size:clamp(3.3rem,7vw,6.7rem);max-width:10ch}.journal-hero__aside p{color:var(--muted);margin-bottom:25px}.journal-count{display:flex;align-items:baseline;gap:9px;color:var(--muted);font-family:var(--font-ui);font-size:.8rem}.journal-count strong{color:var(--brand);font-family:var(--font-display);font-size:2.1rem}
.journal-index-section{background:#fff}.filter-bar--journal{padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:44px}.blog-feature-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:0;margin-bottom:58px;background:var(--v5-ink);color:#fff}.blog-feature-card__media{display:block;min-height:460px;overflow:hidden}.blog-feature-card__media img{width:100%;height:100%;min-height:460px;object-fit:cover;opacity:.88;transition:transform .7s var(--ease-out),opacity .3s var(--ease)}.blog-feature-card:hover img{transform:scale(1.025);opacity:.75}.blog-feature-card__body{display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,5vw,62px)}.blog-feature-card__body .post-card__date{color:rgba(255,255,255,.55)}.blog-feature-card__label{display:block;margin:22px 0 9px;color:#ef9ba5;font-family:var(--font-ui);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.blog-feature-card h2{color:#fff;font-size:clamp(2rem,3.7vw,3.6rem);margin-bottom:14px}.blog-feature-card h2 a{color:#fff;text-decoration:none}.blog-feature-card p{color:rgba(255,255,255,.63)}.blog-feature-card .text-link{color:#fff;background-image:linear-gradient(#ef9ba5,#ef9ba5)}
.blog-index-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:34px 22px}.journal-card{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);border-top:1px solid var(--ink);padding-top:14px}.journal-card__media{display:block;overflow:hidden;aspect-ratio:4/3;background:var(--shell)}.journal-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}.journal-card:hover img{transform:scale(1.03)}.journal-card__body{position:relative;padding:4px 0 0 20px}.journal-card__index{position:absolute;right:0;top:4px;color:var(--brand);font-family:var(--font-ui);font-size:.68rem;font-weight:700}.journal-card .post-card__meta{padding-right:34px}.journal-card h2{font-size:clamp(1.25rem,2vw,1.72rem);margin:8px 0 9px}.journal-card h2 a{color:var(--ink);text-decoration:none}.journal-card h2 a:hover{color:var(--brand)}.journal-card p{color:var(--muted);font-size:.94rem;line-height:1.55;margin-bottom:16px}/* --- Article detail ---------------------------------------------------- */


.article-hero{padding:calc(var(--header-h) + clamp(54px,7vw,96px)) 0 clamp(48px,6vw,80px);background:var(--v5-cream)}.article-hero__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);gap:clamp(38px,7vw,105px);align-items:end}.article-hero h1{font-size:clamp(3rem,6vw,5.7rem);max-width:13ch}.article-hero__meta{display:grid;border-top:1px solid var(--line-strong)}.article-hero__meta>div{display:grid;grid-template-columns:85px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.article-hero__meta span{color:var(--muted);font-family:var(--font-ui);font-size:.72rem}.article-hero__meta strong,.article-hero__meta time{color:var(--ink);font-family:var(--font-ui);font-size:.83rem;font-weight:600}
.article-cover--editorial{width:min(calc(100% - 44px),1320px);margin:0 auto clamp(55px,7vw,96px)}.article-cover--editorial img{width:100%;max-height:720px;aspect-ratio:16/8.3;object-fit:cover;border-radius:0;box-shadow:none}.article-layout{display:grid;grid-template-columns:230px minmax(0,760px);justify-content:center;gap:clamp(44px,7vw,110px);align-items:start;padding-bottom:clamp(70px,9vw,120px)}.article-sidebar{position:sticky;top:calc(var(--header-h) + 32px)}.article-author-card{padding:20px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.article-author-card__label{display:block;margin-bottom:12px;color:var(--brand);font-family:var(--font-ui);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.article-author-card>strong{display:block;color:var(--ink);font-family:var(--font-display);font-size:1.25rem}.article-author-card p{margin:9px 0 14px;color:var(--muted);font-size:.88rem;line-height:1.5}.article-back{display:inline-block;margin-top:18px;color:var(--muted);font-family:var(--font-ui);font-size:.78rem;text-decoration:none}.article-back:hover{color:var(--brand)}
.prose--article{font-size:clamp(1.08rem,1.3vw,1.18rem);line-height:1.82}.prose--article>p:first-child{font-size:1.18em;color:var(--ink)}.prose--article h2{margin-top:2em;font-size:clamp(1.65rem,2.6vw,2.35rem)}.prose--article h3{margin-top:1.7em}.prose--article blockquote{margin:2.2em 0;padding:0 0 0 28px;border-left:2px solid var(--brand);color:var(--ink);font-size:1.35em;font-style:italic}
.post-nav--editorial{margin-top:62px;padding-top:22px;border-top:1px solid var(--ink)}.post-nav--editorial a{border:0;border-radius:0;background:transparent;padding:18px 0}.post-nav--editorial a+a{padding-left:20px;border-left:1px solid var(--line)}.related-posts__head{margin-bottom:24px}.related-item{border-radius:0}.related-item__index{display:block;margin-bottom:25px;color:var(--brand);font-family:var(--font-ui);font-size:.68rem;font-weight:700}.comments--editorial{margin-top:78px;padding-top:54px;border-top:1px solid var(--ink)}.comment{padding:20px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.comment__head{display:flex;justify-content:space-between;gap:20px;margin-bottom:8px}.comment__head time{color:var(--muted);font-family:var(--font-ui);font-size:.72rem}/* --- Footer with animated tide ---------------------------------------- */


.site-footer{margin-top:0;padding-top:clamp(92px,10vw,130px);background:var(--v5-ink)}
.footer-tide{position:absolute;left:0;right:0;top:-78px;height:80px;overflow:hidden;pointer-events:none}.footer-tide svg{position:absolute;left:-4%;bottom:-1px;width:108%;height:82px;animation:tideDrift 7s ease-in-out infinite alternate}.footer-tide__back{fill:#332831;opacity:.98}.footer-tide__front{fill:var(--v5-ink)}
@keyframes tideDrift{from{transform:translate3d(-1.5%,2px,0) scaleY(.96)}to{transform:translate3d(1.5%,-3px,0) scaleY(1.05)}}
.footer-intro{position:relative;z-index:1;display:grid;grid-template-columns:220px minmax(0,1fr) auto;gap:clamp(24px,5vw,70px);align-items:end;padding-bottom:clamp(42px,6vw,72px);border-bottom:1px solid rgba(255,255,255,.14)}.footer-intro__eyebrow{align-self:start;color:rgba(255,255,255,.42);font-family:var(--font-ui);font-size:.69rem;text-transform:uppercase;letter-spacing:.09em}.footer-intro>p{margin:0;color:#fff;font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.8rem);font-weight:600;line-height:1.1;letter-spacing:-.035em;max-width:18ch}.footer-intro__link{align-self:end;color:#fff!important;font-family:var(--font-ui);font-size:.9rem;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:5px}.footer-intro__link:hover{border-color:#fff;transform:none!important}
.footer-grid--v5{grid-template-columns:1.15fr .65fr .8fr .5fr;padding-top:48px}.footer-index{justify-self:end;align-self:end;text-align:right}.footer-index span{display:block;color:rgba(255,255,255,.09);font-family:var(--font-display);font-size:5rem;font-weight:700;line-height:.7;letter-spacing:-.08em}.footer-index small{color:rgba(255,255,255,.3);font-family:var(--font-ui);font-size:.6rem;letter-spacing:.1em}/* --- Responsive art direction ---------------------------------------- */


@media(max-width:1120px){
  .closing-cta__grid{grid-template-columns:64px minmax(0,1.45fr) minmax(250px,.55fr)}
  .footer-grid--v5{grid-template-columns:1.2fr .7fr .9fr}.footer-index{display:none}}

@media(max-width:991px){
  .site-nav{gap:0}.site-nav__links{display:flex;flex-direction:column;align-items:stretch}.nav-cta{margin-top:10px}
  .split-heading{grid-template-columns:1fr;gap:18px}.split-heading h2{max-width:18ch}.split-heading>a{justify-self:start}
  .closing-cta__grid{grid-template-columns:54px 1fr}.closing-cta__action{grid-column:2}.closing-cta h2{max-width:16ch}
  .inner-hero__grid{grid-template-columns:1fr}.inner-hero__copy{max-width:760px}.inner-hero__portrait{max-width:620px}.inner-hero__portrait-note{left:20px}
  .about-story__grid{grid-template-columns:1fr}.about-story__aside{position:static;max-width:680px}.prose--story{max-width:760px}
  .contact-hero__grid,.contact-layout,.contact-faq__grid{grid-template-columns:1fr}.contact-hero__steps{max-width:680px}.contact-sidebar{position:static;max-width:680px}.contact-layout{gap:52px}
  .journal-hero__grid{grid-template-columns:1fr}.journal-hero__aside{max-width:650px}.blog-feature-card{grid-template-columns:1fr}.blog-feature-card__media{min-height:390px}.blog-feature-card__media img{min-height:390px}.blog-index-grid{grid-template-columns:1fr}
  .article-hero__grid{grid-template-columns:1fr}.article-hero__meta{max-width:520px}.article-layout{grid-template-columns:1fr;max-width:820px}.article-sidebar{position:static;display:grid;grid-template-columns:1fr auto;align-items:end;gap:20px}.article-back{margin:0}.article-author-card{max-width:460px}
  .footer-intro{grid-template-columns:1fr 1fr}.footer-intro__eyebrow{grid-column:1/-1}.footer-intro__link{justify-self:end}.footer-grid--v5{grid-template-columns:1fr 1fr}.footer-grid--v5>div:first-child{grid-column:1/-1}}

@media(max-width:700px){
  .closing-cta__grid{grid-template-columns:1fr}.closing-cta__index{display:none}.closing-cta__action{grid-column:auto}.closing-cta h2{font-size:clamp(2.15rem,10vw,3.2rem)}
  .inner-hero__copy h1{font-size:clamp(2.8rem,13vw,4.3rem)}.inner-hero__portrait{min-height:420px;padding:14px 14px 0 0}.inner-hero__portrait img{height:420px}.inner-hero__portrait-note{position:relative;left:auto;bottom:auto;margin:-42px 16px 0;width:auto}.principle-panels{grid-template-columns:1fr}.principle-panel{min-height:auto}.principle-panel+.principle-panel{border-left:0;border-top:1px solid rgba(255,255,255,.16)}.principle-panel__index{margin-bottom:30px}
  .contact-hero h1{font-size:clamp(3rem,15vw,4.5rem)}.form-submit-row{align-items:flex-start;flex-direction:column}.form-submit-row .button{width:100%}
  .journal-hero h1{font-size:clamp(3rem,14vw,4.7rem)}.blog-feature-card__media,.blog-feature-card__media img{min-height:300px}.blog-feature-card__body{padding:28px}.journal-card{grid-template-columns:1fr}.journal-card__body{padding:18px 0 0}.journal-card__index{top:18px}
  .article-hero h1{font-size:clamp(2.7rem,12vw,4.2rem)}.article-cover--editorial{width:calc(100% - 32px);margin-bottom:48px}.article-cover--editorial img{aspect-ratio:4/3}.article-sidebar{grid-template-columns:1fr}.post-nav--editorial a+a{padding-left:0;border-left:0;border-top:1px solid var(--line)}
  .footer-intro{grid-template-columns:1fr}.footer-intro__link{justify-self:start}.footer-grid--v5{grid-template-columns:1fr}.footer-grid--v5>div:first-child{grid-column:auto}.footer-tide{top:-58px;height:60px}.footer-tide svg{height:62px}}

@media(prefers-reduced-motion:reduce){
  .footer-tide svg{animation:none!important}}/* --- 404 --------------------------------------------------------------- */


.error-page{min-height:78svh;display:flex;align-items:center;padding:calc(var(--header-h) + 60px) 0 100px;background:var(--v5-cream)}
.error-page__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:clamp(40px,8vw,120px);align-items:center}.error-page__code{display:block;margin-bottom:10px;color:var(--brand);font-family:var(--font-ui);font-size:.72rem;font-weight:700;letter-spacing:.12em}.error-page h1{font-size:clamp(3rem,6vw,5.5rem);max-width:9ch}.error-page p{color:var(--muted);max-width:48ch}.error-page__visual{position:relative;display:grid;place-items:center;aspect-ratio:1;border-radius:50%;border:1px solid var(--line-strong)}.error-page__visual::before,.error-page__visual::after{content:"";position:absolute;border:1px solid var(--line);border-radius:50%}.error-page__visual::before{inset:10%}.error-page__visual::after{inset:24%;border-style:dashed;border-color:rgba(201,35,49,.3)}.error-page__visual>span{position:relative;z-index:2;color:var(--brand);font-family:var(--font-display);font-size:clamp(8rem,16vw,15rem);font-weight:650;line-height:1}.error-page__visual>div{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--brand);top:10%;left:48%;box-shadow:0 0 0 7px rgba(201,35,49,.1)}
@media(max-width:760px){.error-page__grid{grid-template-columns:1fr}.error-page__visual{max-width:380px}.error-page h1{font-size:clamp(2.8rem,13vw,4.2rem)}}/* ========================================================================
   V6 — CINEMATIC EDITORIAL HOME
   Reference principle: continuous editorial pacing, not reference cloning.
   The hero spends the motion budget; the rest of the page stays quiet.
   ======================================================================== */


:root{
  --v6-ivory:#f1ece4;
  --v6-paper:#f8f5ef;
  --v6-ink:#151310;
  --v6-ink-soft:#45413c;
  --v6-muted:#847d74;
  --v6-line:#d7cfc4;
  --v6-accent:#d44932;
  --v6-accent-deep:#a92e20;
  --v6-max:1440px;
  --v6-gutter:clamp(22px,4vw,64px);
  --v6-space:clamp(84px,11vw,176px);
  --v6-ease:cubic-bezier(.16,1,.3,1);
}

.home-cinematic{background:var(--v6-ivory);color:var(--v6-ink-soft)}
.home-cinematic .skip-link{z-index:3000}
.home-v6{overflow:clip;background:var(--v6-ivory)}
.v6-wrap{width:min(calc(100% - (var(--v6-gutter) * 2)),var(--v6-max));margin-inline:auto}
.v6-eyebrow{
  display:inline-flex;align-items:center;gap:12px;margin:0;color:var(--v6-accent);
  font-family:var(--font-ui);font-size:.74rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;
}
.v6-eyebrow::before{content:"";width:28px;height:1px;background:currentColor}
.v6-display{font-size:clamp(3rem,6.9vw,7.1rem);line-height:.94;letter-spacing:-.06em;font-weight:570;max-width:12.8ch}
.v6-display em,.v6-section-head h2 em,.voices-editorial__head h2 em,.credentials-editorial h2 em,.closing-editorial h2 em{
  font-family:var(--font-text);font-weight:450;letter-spacing:-.04em
}
#thesis-title em{color:var(--v6-accent)}
.v6-text-link{
  display:inline-flex;align-items:center;gap:10px;color:inherit;font-family:var(--font-ui);font-size:.9rem;font-weight:620;
  text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;transition:gap .35s var(--v6-ease),color .2s ease
}
.v6-text-link:hover{gap:16px;color:var(--v6-accent)}
.v6-section-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.55fr);gap:clamp(30px,6vw,100px);align-items:end;margin-bottom:clamp(56px,8vw,120px)}
.v6-section-head>.v6-eyebrow{grid-column:1/-1}
.v6-section-head h2{font-size:clamp(2.8rem,5.6vw,6.2rem);line-height:.94;letter-spacing:-.058em;font-weight:580;margin:0;max-width:12ch}
.v6-section-head>p{align-self:end;margin:0 0 .6rem;max-width:36ch;font-family:var(--font-ui);font-size:clamp(.95rem,1.15vw,1.12rem);line-height:1.55;color:var(--v6-muted)}
.v6-section-head>.v6-text-link{justify-self:start;align-self:end}/* --- Header: lives inside the film until the cinematic act has released. --- */


.home-cinematic .site-header{
  background:transparent;border-bottom-color:rgba(255,255,255,.14);box-shadow:none;backdrop-filter:none;
  transition:background .45s var(--v6-ease),border-color .45s var(--v6-ease),color .45s var(--v6-ease),backdrop-filter .45s var(--v6-ease)
}
.home-cinematic .site-header:not(.is-past-cinema) .site-brand__copy strong,.home-cinematic .site-header:not(.is-past-cinema) .site-brand__copy span,.home-cinematic .site-header:not(.is-past-cinema) .site-nav__link{color:#fff}
.home-cinematic .site-header:not(.is-past-cinema) .site-nav__link::after{background:#fff}
.home-cinematic .site-header:not(.is-past-cinema) .nav-cta{background:#fff;border-color:#fff;color:var(--v6-ink)}
/* Keep CMS-uploaded logos in their native colours over the cinematic hero. */
.home-cinematic .site-header:not(.is-past-cinema) .site-brand__mark-wrap{filter:none}
.home-cinematic .site-header.is-past-cinema{
  background:rgba(241,236,228,.91);border-bottom-color:rgba(21,19,16,.11);backdrop-filter:blur(18px) saturate(130%)
}
.home-cinematic .site-header.is-past-cinema .nav-cta{background:var(--v6-ink);border-color:var(--v6-ink);color:#fff}/* --- Cinematic scroll act ------------------------------------------------ */


.cinema-story{--sc-canvas:var(--v6-ink);position:relative;background:var(--v6-ink);color:#fff}
.cinema-stage{background:var(--v6-ink);isolation:isolate}
.cinema-stage__media{
  position:absolute;inset:0;overflow:hidden;background:#0a0908;will-change:transform,clip-path,border-radius;
  transform-origin:center center;transform:scale(var(--cinema-scale,.91));
  clip-path:inset(var(--cinema-y,6.2vh) var(--cinema-x,5.2vw) round var(--cinema-radius,16px));
}
.cinema-stage__media :is(video,.cinema-poster){position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.cinema-stage__media :is(video,.cinema-poster){transform:scale(var(--cinema-media-scale,1.035));will-change:transform}
.cinema-grade{
  position:absolute;inset:0;z-index:3;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(10,8,7,.68) 0,rgba(10,8,7,.18) 34%,rgba(10,8,7,.02) 58%,rgba(10,8,7,.5) 100%),
    linear-gradient(180deg,rgba(10,8,7,.36),transparent 28%,transparent 60%,rgba(10,8,7,.58));
  opacity:var(--cinema-grade,.84)
}
.cinema-grain{
  position:absolute;inset:-30%;z-index:4;pointer-events:none;opacity:.065;mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
  transform:translate3d(var(--grain-x,0),var(--grain-y,0),0)
}
.cinema-scrim{
  position:absolute;inset:0;z-index:5;pointer-events:none;
  background:radial-gradient(110% 82% at 50% 48%,transparent 42%,rgba(10,8,7,.25) 72%,rgba(10,8,7,.55) 100%)
}
.cinema-chrome{
  position:absolute;z-index:31;top:calc(var(--header-h) + 24px);left:var(--v6-gutter);right:var(--v6-gutter);
  display:flex;justify-content:space-between;align-items:center;font-family:var(--font-ui);font-size:.69rem;font-weight:620;
  letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.66);pointer-events:none
}
.cinema-progress{
  position:absolute;z-index:32;left:var(--v6-gutter);right:var(--v6-gutter);bottom:22px;display:grid;
  grid-template-columns:auto 1fr auto;align-items:center;gap:14px;color:rgba(255,255,255,.62);font-family:var(--font-ui);
  font-size:.67rem;font-weight:630;letter-spacing:.13em;text-transform:uppercase;pointer-events:none
}
.cinema-progress__track{height:1px;background:rgba(255,255,255,.22);overflow:hidden}
.cinema-progress__track i{display:block;width:100%;height:100%;background:#fff;transform:scaleX(var(--cinema-progress,0));transform-origin:left center;will-change:transform}
.cinema-progress__count b{color:#fff;font-weight:650}
.cinema-media-loading{
  position:absolute;z-index:18;left:var(--v6-gutter);bottom:52px;display:flex;align-items:center;gap:10px;
  opacity:0;transform:translateY(4px);color:rgba(255,255,255,.62);font-family:var(--font-ui);font-size:.58rem;font-weight:630;
  letter-spacing:.12em;text-transform:uppercase;pointer-events:none;transition:opacity .34s var(--v6-ease),transform .34s var(--v6-ease)
}
.sc-clip-loading .cinema-media-loading{opacity:1;transform:none}
.cinema-media-loading__rule{position:relative;display:block;width:38px;height:1px;overflow:hidden;background:rgba(255,255,255,.2)}
.cinema-media-loading__rule i{position:absolute;inset:0 auto 0 0;width:42%;background:var(--v6-accent);animation:cinemaMediaLoad 1.15s var(--v6-ease) infinite}
@keyframes cinemaMediaLoad{0%{transform:translateX(-115%)}55%,100%{transform:translateX(255%)}}
.cinema-copy{
  position:absolute;z-index:25;max-width:min(760px,74vw);font-family:var(--font-ui);color:#fff;pointer-events:none
}
/* Hit-testing is owned by the cue engine, which toggles pointer-events on
   each cue element as it enters and leaves its window. A blanket auto on
   links defeated that: with four overlapping scenes an invisible CTA stayed
   clickable on top of the visible one. */
.cinema-copy [data-sc-cue]{pointer-events:none}
.cinema-copy--opening{left:var(--v6-gutter);bottom:clamp(82px,11vh,126px);max-width:min(900px,78vw)}
.cinema-copy--left{left:var(--v6-gutter);bottom:clamp(86px,13vh,150px)}

.cinema-kicker,.cinema-seq{
  display:inline-block;margin-bottom:16px;color:rgba(255,255,255,.68);font-size:.72rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase
}
.cinema-kicker::before,.cinema-seq::before{content:"";display:inline-block;width:26px;height:1px;background:var(--v6-accent);vertical-align:middle;margin-right:12px}
.cinema-title{
  max-width:11.2ch;margin:0;font-family:var(--font-display);font-size:clamp(3.9rem,8vw,8.8rem);font-weight:560;line-height:.86;
  letter-spacing:-.068em;color:#fff;text-wrap:balance
}
.cinema-lede{max-width:52ch;margin:24px 0 0;font-family:var(--font-ui);font-size:clamp(.98rem,1.2vw,1.15rem);line-height:1.52;color:rgba(255,255,255,.74)}
.cinema-actions{display:flex;gap:24px;align-items:center;margin-top:28px}
.cinema-link{
  display:inline-flex;align-items:center;gap:10px;color:#fff!important;font-family:var(--font-ui);font-size:.9rem;font-weight:650;text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.72);padding:11px 0;transition:gap .35s var(--v6-ease),opacity .2s ease
}
.cinema-link:hover{gap:16px;opacity:.78}
.cinema-link--solid{padding:13px 17px;border:1px solid #fff;background:#fff;color:var(--v6-ink)!important}
.cinema-scene-title{
  margin:0;color:#fff;font-family:var(--font-display);font-size:clamp(3.2rem,6.7vw,7.6rem);font-weight:550;line-height:.89;letter-spacing:-.066em;max-width:10.6ch
}
.cinema-copy>p:not(.cinema-lede){max-width:44ch;margin:20px 0 0;font-family:var(--font-ui);font-size:clamp(.95rem,1.15vw,1.08rem);line-height:1.52;color:rgba(255,255,255,.7)}/* --- Thesis -------------------------------------------------------------- */


.editorial-thesis{position:relative;z-index:2;padding:var(--v6-space) 0;background:var(--v6-ivory);color:var(--v6-ink)}
.editorial-thesis::before{content:"";position:absolute;left:0;right:0;top:-18vh;height:18vh;background:linear-gradient(to bottom,transparent,var(--v6-ivory));pointer-events:none}
.editorial-thesis__grid{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(240px,.38fr);gap:clamp(28px,5vw,88px);align-items:start}
.editorial-thesis__meta{padding-top:12px;border-top:1px solid var(--v6-ink);font-family:var(--font-ui)}
.editorial-thesis__meta span{font-size:.72rem;font-weight:700;letter-spacing:.14em}
.editorial-thesis__meta p{margin:12px 0 0;font-family:var(--font-ui);font-size:.8rem;line-height:1.35;color:var(--v6-muted)}
.editorial-thesis__copy .v6-eyebrow{margin-bottom:34px}
.editorial-thesis__copy h2{margin:0}
.editorial-thesis__aside{align-self:end;margin:0 0 .45rem;font-family:var(--font-ui);font-size:clamp(.94rem,1.12vw,1.08rem);line-height:1.6;color:var(--v6-muted)}/* --- Process ------------------------------------------------------------- */


.editorial-process{padding:0 0 var(--v6-space);background:var(--v6-ivory);color:var(--v6-ink)}
.editorial-process__rows{border-top:1px solid var(--v6-ink)}
.process-line{
  position:relative;display:grid;grid-template-columns:80px minmax(220px,.85fr) minmax(280px,1fr) 120px;gap:clamp(20px,4vw,68px);align-items:center;
  padding:clamp(28px,4.8vw,68px) 0;border-bottom:1px solid var(--v6-line);overflow:hidden
}
.process-line__index{align-self:start;font-family:var(--font-ui);font-size:.72rem;font-weight:680;letter-spacing:.13em;color:var(--v6-accent)}
.process-line h3{margin:0;font-size:clamp(2.2rem,3.8vw,4.6rem);line-height:.92;letter-spacing:-.055em;font-weight:560;color:var(--v6-ink)}
.process-line p{margin:0;max-width:42ch;font-family:var(--font-ui);font-size:clamp(.92rem,1vw,1.04rem);line-height:1.58;color:var(--v6-muted)}
.process-line__verb{justify-self:end;font-family:var(--font-display);font-size:clamp(2.1rem,4vw,4.9rem);font-weight:620;letter-spacing:-.07em;color:transparent;-webkit-text-stroke:1px rgba(21,19,16,.22);transition:color .45s var(--v6-ease),transform .45s var(--v6-ease)}
.process-line:hover .process-line__verb{color:var(--v6-accent);-webkit-text-stroke-color:var(--v6-accent);transform:translateX(-8px)}/* --- Portrait / about ---------------------------------------------------- */


.portrait-story{padding:var(--v6-space) 0;background:var(--v6-paper);color:var(--v6-ink)}
.portrait-story__grid{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(420px,1fr);gap:clamp(48px,9vw,150px);align-items:start}
.portrait-story__media{position:relative;margin:0;align-self:start;overflow:hidden}
.portrait-story__media::before{content:"";display:block;padding-top:126%}
.portrait-story__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.02)}
.portrait-story__media figcaption{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;background:rgba(21,19,16,.76);color:rgba(255,255,255,.8);font-family:var(--font-ui);font-size:.72rem;letter-spacing:.04em;backdrop-filter:blur(8px)}
.portrait-story__copy{padding-top:clamp(12px,8vw,120px)}
.portrait-story__copy>.v6-eyebrow{margin-bottom:30px}
.portrait-story__copy h2{font-size:clamp(3rem,5.6vw,6.4rem);line-height:.91;letter-spacing:-.06em;font-weight:560;max-width:10.5ch;margin:0}
.portrait-story__lead{max-width:47ch;margin:34px 0 0;font-size:clamp(1.24rem,1.7vw,1.6rem);line-height:1.48;color:var(--v6-ink-soft)}
.portrait-story__principles{margin:clamp(40px,6vw,76px) 0 34px;border-top:1px solid var(--v6-line)}
.portrait-principle{display:grid;grid-template-columns:52px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--v6-line)}
.portrait-principle>span{font-family:var(--font-ui);font-size:.7rem;font-weight:700;color:var(--v6-accent);letter-spacing:.1em}
.portrait-principle strong{font-family:var(--font-ui);font-size:1rem;color:var(--v6-ink)}
.portrait-principle p{margin:7px 0 0;max-width:50ch;font-size:1rem;line-height:1.55;color:var(--v6-muted)}/* --- Programs ------------------------------------------------------------ */


.programs-editorial{padding:var(--v6-space) 0;background:var(--v6-ink);color:#f6f1e9}
.v6-section-head--inverse h2,.v6-section-head--inverse p{color:#f6f1e9}
.v6-section-head--inverse p{color:rgba(246,241,233,.62)}
.program-index{display:grid;gap:16px}
.program-index__row{
  position:relative;display:grid;grid-template-columns:48px minmax(160px,210px) minmax(0,1fr) minmax(190px,.28fr);gap:clamp(18px,3vw,44px);align-items:center;
  padding:clamp(18px,2vw,28px);border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.045);overflow:hidden;
  transition:border-color .3s ease,background .3s ease,transform .35s var(--v6-ease),box-shadow .35s ease
}
.program-index__row::before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;border-radius:99px;background:var(--v6-accent);transform:scaleY(.45);opacity:.72;transition:transform .35s var(--v6-ease),opacity .35s ease}
.program-index__row:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.29);background:rgba(255,255,255,.07);box-shadow:0 22px 70px rgba(0,0,0,.18)}
.program-index__row:hover::before{transform:scaleY(1);opacity:1}
.program-index__number{align-self:start;padding-top:4px;font-family:var(--font-ui);font-size:.7rem;font-weight:700;letter-spacing:.12em;color:var(--v6-accent)}
.program-index__media{aspect-ratio:5/4;overflow:hidden;border-radius:11px;background:#24211e;box-shadow:0 10px 34px rgba(0,0,0,.22)}
.program-index__media img{width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.03);transition:transform .65s var(--v6-ease),filter .65s var(--v6-ease)}
.program-index__row:hover .program-index__media img{transform:scale(1.045);filter:saturate(.98)}
.program-index__meta{display:block;margin-bottom:10px;font-family:var(--font-ui);font-size:.66rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.program-index__main h3{margin:0;color:#fff;font-size:clamp(2rem,3.15vw,3.9rem);font-weight:540;letter-spacing:-.052em;line-height:.94}
.program-index__main p{max-width:52ch;margin:16px 0 0;font-family:var(--font-ui);font-size:.94rem;line-height:1.58;color:rgba(255,255,255,.66)}
.program-index__aside{justify-self:stretch;text-align:left;font-family:var(--font-ui);border-left:1px solid rgba(255,255,255,.13);padding-left:clamp(18px,2vw,30px)}
.program-index__aside small{display:block;margin-bottom:7px;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.42)}
.program-index__aside strong{display:block;color:#fff;font-size:clamp(1.18rem,1.55vw,1.5rem);font-weight:620;letter-spacing:-.02em}
.program-index__aside a{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;margin-top:20px;padding:12px 13px;border:1px solid rgba(255,255,255,.26);border-radius:9px;color:#fff;font-size:.78rem;font-weight:650;text-decoration:none;transition:background .25s ease,border-color .25s ease,color .25s ease}
.program-index__aside a b{font-size:1rem;font-weight:500;transition:transform .25s ease}
.program-index__aside a:hover{background:var(--v6-accent);border-color:var(--v6-accent);color:#fff}
.program-index__aside a:hover b{transform:translate(2px,-2px)}
.programs-editorial__empty{padding:28px 0;border-top:1px solid rgba(255,255,255,.28);border-bottom:1px solid rgba(255,255,255,.14);font-family:var(--font-ui);color:rgba(255,255,255,.64)}/* --- Voices -------------------------------------------------------------- */


.voices-editorial{padding:var(--v6-space) 0;background:var(--v6-accent);color:#fff;overflow:hidden}
.voices-editorial__head{display:grid;grid-template-columns:.45fr 1.2fr;gap:clamp(30px,8vw,120px);align-items:start;margin-bottom:clamp(48px,6vw,90px)}
.voices-editorial__head .v6-eyebrow{color:#fff}
.voices-editorial__head h2{margin:0;color:#fff;font-size:clamp(3.1rem,6.2vw,7rem);line-height:.91;letter-spacing:-.062em;font-weight:560;max-width:11ch}
.voices-editorial__rail{display:flex;gap:clamp(28px,4vw,64px);overflow:auto;scroll-snap-type:x mandatory;padding:0 var(--v6-gutter) 22px;scrollbar-width:none}
.voices-editorial__rail::-webkit-scrollbar{display:none}
.voice-editorial{flex:0 0 min(68vw,790px);scroll-snap-align:start;display:grid;grid-template-columns:70px 1fr;gap:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.55)}
.voice-editorial__index{font-family:var(--font-ui);font-size:.7rem;font-weight:700;letter-spacing:.12em;color:rgba(255,255,255,.7)}
.voice-editorial blockquote{grid-column:2;margin:0;font-family:var(--font-display);font-size:clamp(2rem,3.8vw,4.5rem);line-height:1.02;letter-spacing:-.045em;font-weight:500;text-wrap:balance}
.voice-editorial__person{grid-column:2;display:flex;align-items:center;gap:12px;margin-top:30px;font-family:var(--font-ui)}
.voice-editorial__person img{width:46px;height:46px;border-radius:50%;object-fit:cover;filter:grayscale(1)}
.voice-editorial__person span{display:flex;flex-direction:column}
.voice-editorial__person strong{font-size:.88rem;color:#fff}.voice-editorial__person small{font-size:.74rem;color:rgba(255,255,255,.68)}/* --- Journal ------------------------------------------------------------- */


.journal-editorial{padding:var(--v6-space) 0;background:var(--v6-paper);color:var(--v6-ink)}
.journal-editorial .v6-section-head{grid-template-columns:1fr auto;align-items:end}
.journal-editorial .v6-section-head h2{max-width:13ch}
.journal-editorial__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.55fr);gap:clamp(44px,8vw,128px)}
.journal-lead__image{display:block;aspect-ratio:16/9;overflow:hidden;background:#ddd4c9}
.journal-lead__image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--v6-ease)}
.journal-lead:hover .journal-lead__image img{transform:scale(1.035)}
.journal-lead>div{display:grid;grid-template-columns:90px 1fr;gap:24px;margin-top:24px}
.journal-lead time,.journal-side time{font-family:var(--font-ui);font-size:.72rem;color:var(--v6-muted)}
.journal-lead h3{grid-column:2;margin:0;font-size:clamp(2.25rem,3.8vw,4.7rem);line-height:.94;letter-spacing:-.05em;font-weight:560}
.journal-lead h3 a,.journal-side h3 a{color:inherit;text-decoration:none}
.journal-lead p{grid-column:2;max-width:48ch;margin:0;font-size:1.05rem;line-height:1.55;color:var(--v6-muted)}
.journal-side{border-top:1px solid var(--v6-ink)}
.journal-side article{display:grid;grid-template-columns:50px 1fr;gap:14px;padding:24px 0;border-bottom:1px solid var(--v6-line)}
.journal-side article>span{font-family:var(--font-ui);font-size:.7rem;font-weight:700;color:var(--v6-accent)}
.journal-side time{grid-column:2}.journal-side h3{grid-column:2;margin:0;font-size:clamp(1.5rem,2.1vw,2.3rem);line-height:1;letter-spacing:-.04em;font-weight:560}
.journal-side .v6-text-link{grid-column:2;justify-self:start;margin-top:10px;font-size:.76rem}/* --- Watch --------------------------------------------------------------- */


.watch-editorial{padding:var(--v6-space) 0;background:#ded6cb;color:var(--v6-ink)}
.watch-editorial__head{display:grid;grid-template-columns:.35fr 1fr;gap:40px;align-items:start;margin-bottom:clamp(48px,7vw,94px)}
.watch-editorial__head h2{margin:0;font-size:clamp(3.1rem,6vw,7rem);font-weight:560;line-height:.9;letter-spacing:-.06em}
.watch-editorial__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(20px,2.4vw,34px);align-items:start}
.watch-piece{position:relative;grid-column:span 4;display:block;padding:12px 12px 17px;border:1px solid rgba(21,19,16,.15);border-radius:16px;background:rgba(246,241,233,.48);color:inherit;text-decoration:none;box-shadow:0 12px 38px rgba(45,36,30,.06);transition:transform .35s var(--v6-ease),border-color .3s ease,background .3s ease,box-shadow .3s ease}
.watch-piece--lead{grid-column:span 7;grid-row:span 2}
.watch-piece:hover{transform:translateY(-4px);border-color:rgba(21,19,16,.29);background:rgba(246,241,233,.7);box-shadow:0 24px 60px rgba(45,36,30,.12)}
.watch-piece__visual{position:relative;display:block;overflow:hidden;border-radius:10px;background:#bdb2a6;isolation:isolate}
.watch-piece__visual img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.78) contrast(1.03);transition:filter .45s ease,transform .75s var(--v6-ease)}
.watch-piece--lead .watch-piece__visual img{aspect-ratio:16/10}
.watch-piece:hover .watch-piece__visual img{filter:saturate(1);transform:scale(1.025)}
.watch-piece__shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(18,15,13,.02) 45%,rgba(18,15,13,.54) 100%);transition:opacity .3s ease}
.watch-piece:hover .watch-piece__shade{opacity:.78}
.watch-piece__play{position:absolute;left:50%;top:50%;z-index:2;display:grid;place-items:center;width:72px;height:72px;border:1px solid rgba(255,255,255,.68);border-radius:50%;background:rgba(246,241,233,.92);color:var(--v6-ink);font-family:var(--font-ui);box-shadow:0 10px 40px rgba(0,0,0,.16);transform:translate(-50%,-50%);transition:transform .32s var(--v6-ease),background .25s ease,color .25s ease}
.watch-piece__play i{font-style:normal;font-size:1rem;transform:translateX(2px)}
.watch-piece__play span{position:absolute;left:50%;top:calc(100% + 10px);transform:translateX(-50%);font-size:.61rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4)}
.watch-piece:hover .watch-piece__play{transform:translate(-50%,-50%) scale(1.08);background:var(--v6-accent);border-color:var(--v6-accent);color:#fff}
.watch-piece__format{position:absolute;top:10px;right:10px;z-index:2;padding:6px 8px;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:rgba(18,15,13,.58);backdrop-filter:blur(8px);color:#fff;font-family:var(--font-ui);font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.watch-piece__copy{display:block;padding:17px 5px 0}
.watch-piece__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-family:var(--font-ui);font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--v6-muted)}
.watch-piece__meta b{font-weight:700;color:var(--v6-accent)}
.watch-piece h3{margin:0;font-size:clamp(1.5rem,2vw,2.35rem);line-height:.98;letter-spacing:-.043em;font-weight:560;text-wrap:balance}
.watch-piece--lead h3{max-width:16ch;font-size:clamp(2.15rem,3.7vw,4.55rem);line-height:.94}
.watch-piece__copy p{max-width:50ch;margin:13px 0 0;font-family:var(--font-ui);font-size:.86rem;line-height:1.55;color:var(--v6-muted)}
.watch-piece__action{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding-top:13px;border-top:1px solid rgba(21,19,16,.14);font-family:var(--font-ui);font-size:.72rem;font-weight:700;letter-spacing:.02em}
.watch-piece__action b{font-size:1rem;font-weight:500;transition:transform .25s ease}
.watch-piece:hover .watch-piece__action b{transform:translate(2px,-2px)}/* --- Credentials --------------------------------------------------------- *//* --- Credentials · visual-first gallery --------------------------------- */



.credentials-editorial{padding:var(--v6-space) 0;background:var(--v6-ivory);color:var(--v6-ink)}
.credentials-editorial__grid{display:grid;grid-template-columns:minmax(260px,.52fr) minmax(560px,1.48fr);gap:clamp(44px,7vw,118px);align-items:start}
.credentials-editorial header{position:sticky;top:calc(var(--header-h) + 40px)}
.credentials-editorial h2{margin:26px 0 22px;font-size:clamp(2.7rem,4.9vw,5.4rem);line-height:.92;letter-spacing:-.058em;font-weight:560}
.credentials-editorial header p{max-width:36ch;margin:0;font-family:var(--font-ui);font-size:.9rem;line-height:1.58;color:var(--v6-muted)}
.credentials-editorial__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,3vw,46px) clamp(20px,2.4vw,34px);border-top:0}
.credential-open{display:grid;grid-template-columns:1fr;gap:14px;align-items:start;width:100%;padding:0 0 18px;border:0;border-bottom:1px solid var(--v6-line);background:transparent;color:inherit;text-align:left;text-decoration:none;font:inherit;cursor:pointer;overflow:visible}
.credential-open__media{position:relative;display:block;aspect-ratio:1.414/1;overflow:hidden;background:#e7ded2;border:1px solid rgba(21,19,16,.1)}
.credential-live-thumb{display:block;width:100%;height:100%;object-fit:contain;background:#e7ded2;transition:transform .7s var(--v6-ease),filter .45s ease}
.credential-open__index{position:absolute;left:12px;top:12px;z-index:2;display:grid;place-items:center;min-width:34px;height:26px;padding:0 8px;background:rgba(21,19,16,.88);color:#fff;font-family:var(--font-ui);font-size:.62rem;font-weight:750;letter-spacing:.1em;backdrop-filter:blur(8px)}
.credential-open__view{position:absolute;right:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:9px 11px;background:rgba(244,239,232,.92);color:var(--v6-ink);font-family:var(--font-ui);font-size:.66rem;font-weight:720;letter-spacing:.035em;opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .45s var(--v6-ease);backdrop-filter:blur(10px)}
.credential-open__view b{font-size:.78rem;font-weight:700;color:var(--v6-accent-deep)}
.credential-open__copy{display:grid;gap:6px;min-width:0}
.credential-open__copy small{display:block;font-family:var(--font-ui);font-size:.66rem;line-height:1.35;font-weight:650;letter-spacing:.075em;text-transform:uppercase;color:var(--v6-accent-deep);text-align:left}
.credential-open__copy strong{display:block;max-width:34ch;font-family:var(--font-display);font-size:clamp(.98rem,1.22vw,1.22rem);line-height:1.18;letter-spacing:-.022em;font-weight:560;color:var(--v6-ink);transition:color .25s ease}
.credential-open:hover .credential-live-thumb{transform:scale(1.018);filter:saturate(1.02) contrast(1.01)}
.credential-open:hover .credential-open__view,.credential-open:focus-visible .credential-open__view{opacity:1;transform:none}
.credential-open:hover .credential-open__copy strong{color:var(--v6-accent-deep)}
.credential-open:focus-visible{outline:2px solid var(--v6-accent);outline-offset:7px}
@media (hover:none){.credential-open__view{opacity:1;transform:none}}/* --- Closing ------------------------------------------------------------- */


.closing-editorial{padding:var(--v6-space) 0;background:var(--v6-paper);color:var(--v6-ink)}
.closing-editorial__grid{display:grid;grid-template-columns:90px minmax(0,1.2fr) minmax(260px,.38fr);gap:clamp(28px,6vw,90px);align-items:end}
.closing-editorial__index{align-self:start;padding-top:8px;border-top:1px solid var(--v6-ink);font-family:var(--font-ui);font-size:.7rem;font-weight:700;letter-spacing:.13em}
.closing-editorial h2{margin:30px 0 0;font-size:clamp(3.2rem,6.4vw,7.4rem);line-height:.9;letter-spacing:-.063em;font-weight:560}
.closing-editorial__action{padding-bottom:.5rem}
.closing-editorial__action p{margin:0 0 28px;max-width:34ch;font-family:var(--font-ui);font-size:1rem;line-height:1.55;color:var(--v6-muted)}
.closing-editorial__button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;width:100%;padding:17px 18px;background:var(--v6-accent);border:1px solid var(--v6-accent);color:#fff!important;text-decoration:none;font-family:var(--font-ui);font-size:.86rem;font-weight:700;transition:background .3s ease,color .3s ease}
.closing-editorial__button:hover{background:transparent;color:var(--v6-accent-deep)!important}/* --- Footer continuity --------------------------------------------------- */


.home-cinematic .site-footer{background:var(--v6-ink);padding-top:clamp(88px,10vw,136px)}
.home-cinematic .footer-tide{display:none}
.home-cinematic .footer-intro{border-top:1px solid rgba(255,255,255,.22);padding-top:clamp(48px,6vw,76px)}
.home-cinematic .to-top{border-radius:0}/* --- Mobile art direction ------------------------------------------------ */


@media (max-width: 991px){
  .home-cinematic .site-header:not(.is-past-cinema) .nav-toggle{background:rgba(21,19,16,.22);border-color:rgba(255,255,255,.34)}
  .home-cinematic .site-header:not(.is-past-cinema) .nav-toggle span:not(.sr-only){background:#fff}
  .home-cinematic.nav-open .site-header,.home-cinematic .site-header:has(.site-nav.is-open){background:var(--v6-paper);backdrop-filter:blur(18px)}
  .home-cinematic .site-header:has(.site-nav.is-open) .site-brand__copy strong,.home-cinematic .site-header:has(.site-nav.is-open) .site-brand__copy span,.home-cinematic .site-header:has(.site-nav.is-open) .site-nav__link{color:var(--v6-ink)}
  .home-cinematic .site-header:has(.site-nav.is-open) .site-brand__mark-wrap{filter:none}
  .home-cinematic .site-header:has(.site-nav.is-open) .nav-toggle span:not(.sr-only){background:var(--v6-ink)}
  .home-cinematic .site-header:has(.site-nav.is-open) .nav-cta{background:var(--v6-ink);border-color:var(--v6-ink);color:#fff}

  .cinema-copy{max-width:min(760px,86vw)}
  .editorial-thesis__grid{grid-template-columns:74px 1fr}.editorial-thesis__aside{grid-column:2;margin-top:30px;max-width:48ch}
  .process-line{grid-template-columns:54px 1fr}.process-line h3,.process-line p{grid-column:2}.process-line__verb{position:absolute;right:0;top:26px;font-size:3rem;opacity:.6}.process-line p{margin-top:10px}
  .portrait-story__grid{grid-template-columns:.8fr 1fr;gap:48px}.portrait-story__copy{padding-top:30px}.portrait-story__copy h2{font-size:clamp(2.8rem,6vw,5rem)}
  .program-index__row{grid-template-columns:42px 132px 1fr;padding:20px}.program-index__aside{grid-column:3;justify-self:stretch;text-align:left;display:grid;grid-template-columns:auto 1fr;align-items:end;gap:6px 20px;border-left:0;border-top:1px solid rgba(255,255,255,.12);padding:18px 0 0}.program-index__aside small{grid-column:1/-1;margin:0}.program-index__aside a{grid-column:2;grid-row:2;margin:0;justify-self:end;width:min(220px,100%)}
  .voices-editorial__head{grid-template-columns:1fr}.voice-editorial{flex-basis:82vw}
  .journal-editorial__grid{grid-template-columns:1fr}.journal-side{margin-top:24px}
  .watch-piece{grid-column:span 6}.watch-piece--lead{grid-column:1/-1}
  .credentials-editorial__grid{grid-template-columns:1fr;gap:48px}.credentials-editorial header{position:static;max-width:680px}.credentials-editorial__list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .closing-editorial__grid{grid-template-columns:60px 1fr}.closing-editorial__action{grid-column:2;max-width:430px;margin-top:28px}}

@media (max-width: 720px){
  :root{--v6-gutter:20px;--v6-space:clamp(72px,24vw,112px)}
  .v6-wrap{width:calc(100% - (var(--v6-gutter) * 2))}
  .v6-section-head{grid-template-columns:1fr;gap:22px;margin-bottom:52px}.v6-section-head>.v6-eyebrow{grid-column:auto}.v6-section-head h2{font-size:clamp(2.65rem,13vw,4.7rem);max-width:11ch}.v6-section-head>p{max-width:42ch}.v6-display{font-size:clamp(2.7rem,13vw,4.8rem)}


  .cinema-stage__media{transform:scale(var(--cinema-scale,.965));clip-path:inset(var(--cinema-y,7.6vh) var(--cinema-x,12px) round var(--cinema-radius,12px))}
  .cinema-grade{background:linear-gradient(180deg,rgba(10,8,7,.34) 0,rgba(10,8,7,.05) 32%,rgba(10,8,7,.18) 53%,rgba(10,8,7,.82) 100%)}
  .cinema-chrome{top:calc(var(--header-h) + 16px);font-size:.6rem;letter-spacing:.1em}.cinema-chrome__edition{display:none}
  .cinema-progress{bottom:14px;gap:10px;font-size:.6rem}.cinema-progress__label{display:none}.cinema-progress{grid-template-columns:1fr auto}
  .cinema-copy{left:var(--v6-gutter);right:var(--v6-gutter);top:auto;bottom:64px;translate:none;transform:none;text-align:left;width:auto;max-width:none}

  .cinema-copy--opening{bottom:62px}
  .cinema-title{font-size:clamp(3.1rem,15vw,5.4rem);line-height:.88;max-width:9.6ch}
  .cinema-lede{font-size:.92rem;line-height:1.46;max-width:38ch;margin-top:18px}
  .cinema-actions{gap:16px;margin-top:20px;flex-wrap:wrap}.cinema-link{font-size:.8rem}.cinema-link--solid{padding:11px 13px}
  .cinema-kicker,.cinema-seq{font-size:.62rem;margin-bottom:10px}
  .cinema-scene-title{margin:0!important;max-width:10ch!important;font-size:clamp(2.7rem,13.5vw,4.7rem);line-height:.9;text-align:left}
  .cinema-copy>p:not(.cinema-lede){margin:14px 0 0!important;max-width:37ch;font-size:.88rem;line-height:1.48;text-align:left}

  .editorial-thesis__grid{grid-template-columns:1fr;gap:28px}.editorial-thesis__meta{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:baseline}.editorial-thesis__meta p{margin:0}.editorial-thesis__aside{grid-column:auto;margin:0;max-width:38ch}.editorial-thesis__copy .v6-eyebrow{margin-bottom:22px}
  .process-line{grid-template-columns:42px 1fr;padding:30px 0;gap:12px 18px}.process-line h3{font-size:clamp(2.2rem,10vw,3.4rem)}.process-line__verb{display:none}.process-line p{font-size:.9rem}
  .portrait-story__grid{grid-template-columns:1fr;gap:42px}.portrait-story__media{width:82%;justify-self:end}.portrait-story__copy{padding-top:0}.portrait-story__copy h2{font-size:clamp(2.8rem,12vw,4.4rem)}.portrait-story__lead{font-size:1.15rem}
  .program-index{gap:12px}.program-index__row{grid-template-columns:30px 1fr;gap:14px;padding:15px;border-radius:14px}.program-index__number{grid-column:1;grid-row:1}.program-index__media{grid-column:2;grid-row:1;width:100%;aspect-ratio:16/9;border-radius:9px}.program-index__main{grid-column:2}.program-index__meta{margin-bottom:8px}.program-index__main h3{font-size:clamp(2rem,9.5vw,3.15rem)}.program-index__aside{grid-column:2;display:grid;grid-template-columns:1fr auto;gap:5px 14px;align-items:center;padding-top:15px}.program-index__aside small{grid-column:1/-1}.program-index__aside strong{font-size:1.15rem}.program-index__aside a{grid-column:2;grid-row:2;width:auto;min-width:148px;margin:0;padding:10px 11px}.program-index__main p{font-size:.88rem}
  .credentials-editorial__grid{gap:38px}.credentials-editorial h2{font-size:clamp(2.8rem,12vw,4.4rem);max-width:10ch}.credentials-editorial header p{font-size:.88rem;max-width:34ch}.credentials-editorial__list{grid-template-columns:1fr;gap:34px}.credential-open{gap:12px;padding-bottom:16px}.credential-open__media{aspect-ratio:1.414/1}.credential-open__copy strong{font-size:1.06rem;max-width:30ch}.credential-open__copy small{font-size:.63rem}.credential-open__view{right:10px;bottom:10px;opacity:1;transform:none}.credential-open__index{left:10px;top:10px}
  .voices-editorial__head h2{font-size:clamp(2.85rem,13vw,4.7rem)}.voice-editorial{flex-basis:88vw;grid-template-columns:34px 1fr;gap:14px}.voice-editorial blockquote{font-size:clamp(1.8rem,8vw,3rem)}
  .journal-editorial .v6-section-head{grid-template-columns:1fr}.journal-lead>div{grid-template-columns:1fr;gap:10px}.journal-lead h3,.journal-lead p{grid-column:auto}.journal-lead h3{font-size:clamp(2.1rem,9vw,3.2rem)}.journal-side article{grid-template-columns:36px 1fr}
  .watch-editorial__head{grid-template-columns:1fr;gap:24px}.watch-editorial__head h2{font-size:clamp(2.8rem,13vw,4.7rem)}.watch-editorial__grid{grid-template-columns:1fr;gap:20px}.watch-piece,.watch-piece--lead{grid-column:auto;padding:9px 9px 15px;border-radius:14px}.watch-piece--lead .watch-piece__visual img,.watch-piece__visual img{aspect-ratio:16/10}.watch-piece__copy{padding:15px 5px 0}.watch-piece--lead h3,.watch-piece h3{font-size:clamp(1.75rem,8vw,2.7rem);max-width:none}.watch-piece__play{width:64px;height:64px}
  .credentials-editorial__grid{grid-template-columns:1fr;gap:46px}.credentials-editorial header{position:static}.credentials-editorial h2{font-size:clamp(2.8rem,12vw,4.6rem)}.credentials-editorial__list strong{font-size:1.35rem}
  .closing-editorial__grid{grid-template-columns:1fr;gap:30px}.closing-editorial__index{width:70px}.closing-editorial h2{font-size:clamp(2.9rem,13vw,5rem)}.closing-editorial__action{grid-column:auto;margin-top:0;max-width:none}.closing-editorial__button{width:auto}}

@media (prefers-reduced-motion: reduce){
  .cinema-stage__media,.cinema-stage__media :is(video,.cinema-poster),.process-line__verb,.program-index__media img,.journal-lead__image img{transform:none!important}
  .cinema-grain,.cinema-media-loading{display:none}
  .cinema-media-loading__rule i{animation:none}
  .cinema-stage__media{clip-path:inset(0)!important}}/* --- V8 mobile cinematic art direction -----------------------------------
   The phone gets its own 9:16 poster/video and reading geometry instead of a
   cropped desktop frame. Copy lives in the sky/safe area while the portrait
   retains visual priority on the right/lower half. */


@media (max-width: 720px){
  .cinema-poster-wrap{position:absolute;inset:0;display:block}
  .cinema-poster-wrap .cinema-poster,.cinema-stage__media video{object-position:50% 50%;}
  .cinema-stage__media{
    transform:scale(var(--cinema-scale,.975));
    clip-path:inset(var(--cinema-y,3.8vh) var(--cinema-x,10px) round var(--cinema-radius,12px));
    background:#120d09;
  }
  .cinema-grade{
    background:
      linear-gradient(90deg,rgba(9,7,6,.62) 0%,rgba(9,7,6,.34) 42%,rgba(9,7,6,.08) 72%,rgba(9,7,6,.13) 100%),
      linear-gradient(180deg,rgba(9,7,6,.34) 0%,rgba(9,7,6,.08) 35%,rgba(9,7,6,.12) 58%,rgba(9,7,6,.66) 100%);
  }
  .cinema-chrome{top:max(calc(var(--header-h) + 12px),calc(env(safe-area-inset-top) + 82px));left:18px;right:18px}
  .cinema-progress{left:18px;right:18px;bottom:max(14px,env(safe-area-inset-bottom));}
  .cinema-media-loading{left:18px;bottom:max(42px,calc(env(safe-area-inset-bottom) + 36px));font-size:.53rem}

  .cinema-copy,.cinema-copy--opening,.cinema-copy--left{
    left:20px;right:20px;bottom:auto;translate:none;text-align:left;width:auto;max-width:none;
    top:clamp(128px,16.5svh,172px);
  }
  .cinema-copy--opening{top:clamp(122px,15svh,158px);max-width:min(88vw,430px)}
  .cinema-copy--left{max-width:min(79vw,370px)}
  .cinema-title{
    max-width:9.4ch;font-size:clamp(2.75rem,13.2vw,4.55rem);line-height:.88;letter-spacing:-.06em;
    text-shadow:0 2px 24px rgba(0,0,0,.24)
  }
  .cinema-lede{max-width:34ch;margin-top:14px;font-size:clamp(.82rem,3.6vw,.95rem);line-height:1.44;color:rgba(255,255,255,.82)}
  .cinema-actions{margin-top:16px;gap:12px;align-items:flex-start}
  .cinema-link{font-size:.76rem;padding:8px 0}
  .cinema-link--solid{padding:10px 12px}
  .cinema-kicker,.cinema-seq{margin-bottom:9px;font-size:.58rem;letter-spacing:.12em;color:rgba(255,255,255,.78)}
  .cinema-scene-title{
    max-width:9.2ch!important;font-size:clamp(2.42rem,11.8vw,4rem);line-height:.9;letter-spacing:-.058em;
    text-shadow:0 2px 24px rgba(0,0,0,.22)
  }
  .cinema-copy>p:not(.cinema-lede){max-width:31ch;margin-top:12px!important;font-size:clamp(.8rem,3.45vw,.91rem);line-height:1.45;color:rgba(255,255,255,.8)}}

@media (max-width: 420px){
  .cinema-copy,.cinema-copy--opening,.cinema-copy--left{left:16px;right:16px}
  .cinema-copy--opening{top:clamp(116px,14svh,146px)}
  .cinema-copy--left{top:clamp(124px,15.5svh,158px);max-width:82vw}
  .cinema-title{font-size:clamp(2.52rem,13vw,3.75rem)}
  .cinema-actions{max-width:92%;}}/* V22 · inline video lightbox */

.video-lightbox[hidden]{display:none}
.video-lightbox{position:fixed;inset:0;z-index:1450;display:grid;place-items:center;padding:clamp(14px,3vw,36px)}
.video-lightbox__backdrop{position:absolute;inset:0;border:0;background:rgba(13,11,10,.84);backdrop-filter:blur(15px);cursor:zoom-out}
.video-lightbox__dialog{position:relative;width:min(1120px,96vw);overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:22px;background:#171411;color:#fff;box-shadow:0 38px 120px rgba(0,0,0,.48);animation:videoModalIn .3s cubic-bezier(.22,1,.36,1) both}
.video-lightbox__head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:18px 20px 15px;border-bottom:1px solid rgba(255,255,255,.13);background:#1d1916}
.video-lightbox__head .v6-eyebrow{color:rgba(255,255,255,.58)}
.video-lightbox__head h3{max-width:820px;margin:5px 0 0;color:#fff;font-size:clamp(1.15rem,2.2vw,1.8rem);font-weight:560;line-height:1.05;letter-spacing:-.035em}
.video-lightbox__close{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;font:300 1.8rem/1 var(--font-ui);cursor:pointer;transition:background .2s ease,transform .2s ease}
.video-lightbox__close:hover{background:var(--v6-accent);transform:rotate(4deg)}
.video-lightbox__media{position:relative;aspect-ratio:16/9;background:#090807}
.video-lightbox__media iframe,.video-lightbox__media video{display:block;width:100%;height:100%;border:0;background:#090807;object-fit:contain}
html.is-video-open{overflow:hidden}
@keyframes videoModalIn{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:640px){.video-lightbox{padding:0;place-items:end center}.video-lightbox__dialog{width:100%;border-radius:20px 20px 0 0}.video-lightbox__head{padding:14px 15px 12px}.video-lightbox__head h3{font-size:1.08rem}.video-lightbox__close{width:40px;height:40px}.video-lightbox__media{aspect-ratio:16/10;margin-bottom:env(safe-area-inset-bottom)}}
@media(prefers-reduced-motion:reduce){.video-lightbox__dialog{animation:none}.watch-piece,.program-index__row{transition:none}}

/* V9 · certificate lightbox */


.certificate-lightbox[hidden]{display:none}.certificate-lightbox{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:clamp(12px,3vw,34px)}.certificate-lightbox__backdrop{position:absolute;inset:0;border:0;background:rgba(16,14,12,.78);backdrop-filter:blur(12px)}.certificate-lightbox__dialog{position:relative;width:min(960px,96vw);max-height:92dvh;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:22px;background:#f3eee6;box-shadow:0 34px 100px rgba(0,0,0,.35);animation:certificateIn .28s cubic-bezier(.22,1,.36,1) both}.certificate-lightbox__head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 20px 14px;border-bottom:1px solid rgba(21,19,16,.12)}.certificate-lightbox__head h3{max-width:720px;margin:6px 0 0;font-family:var(--font-display);font-size:clamp(1rem,2vw,1.4rem);line-height:1.1;letter-spacing:-.025em}.certificate-lightbox__close{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(21,19,16,.18);border-radius:50%;background:rgba(255,255,255,.5);color:var(--v6-ink);font:300 1.7rem/1 var(--font-ui);cursor:pointer}.certificate-lightbox__close:hover{background:#fff}.certificate-lightbox__media{min-height:0;padding:18px;overflow:auto;overscroll-behavior:contain}.certificate-lightbox__media img{display:block;max-width:100%;max-height:calc(92dvh - 104px);margin:auto;object-fit:contain;border-radius:10px;box-shadow:0 10px 40px rgba(30,22,15,.12)}html.is-certificate-open{overflow:hidden}@keyframes certificateIn{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}@media(max-width:640px){.certificate-lightbox{padding:0;place-items:end center}.certificate-lightbox__dialog{width:100%;max-height:94dvh;border-radius:20px 20px 0 0}.certificate-lightbox__head{padding:15px 14px 12px}.certificate-lightbox__media{padding:10px 10px calc(10px + env(safe-area-inset-bottom))}.certificate-lightbox__media img{max-height:calc(94dvh - 88px)}}@media(prefers-reduced-motion:reduce){.certificate-lightbox__dialog{animation:none}}/* ========================================================================
   V20 — PUBLIC PAGES / EDITORIAL CONTINUITY
   Inner pages inherit the cinematic homepage DNA without imitating its
   pinned hero. More space, clearer type hierarchy, image-led compositions,
   quieter interaction and mobile-specific art direction.
   ======================================================================== */


:root{
  --v20-cream:#f4efe8;
  --v20-paper:#fbf8f4;
  --v20-ink:#151216;
  --v20-muted:#756d70;
  --v20-line:rgba(21,18,22,.14);
  --v20-red:#c92331;
  --v20-max:1380px;
}

.public-v20{background:var(--v20-paper);color:var(--v20-ink)}
.public-v20 .container{width:min(calc(100% - clamp(32px,5vw,80px)),var(--v20-max))}
.public-v20 .site-header{border-bottom:1px solid rgba(21,18,22,.055);background:rgba(246,241,235,.82);backdrop-filter:blur(18px) saturate(1.15);-webkit-backdrop-filter:blur(18px) saturate(1.15)}
.public-v20 .site-header.is-scrolled{background:rgba(250,247,243,.94);box-shadow:0 12px 36px -30px rgba(15,12,16,.55)}
.public-v20 .site-nav__link{position:relative}
.public-v20 .site-nav__link::after{content:"";position:absolute;left:12px;right:12px;bottom:5px;height:1px;background:var(--v20-red);transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.22,.61,.36,1)}
.public-v20 .site-nav__link:hover::after,.public-v20 .site-nav__link.is-active::after{transform:scaleX(1);transform-origin:left}
.public-v20 .nav-cta{border-radius:999px;padding-inline:18px}
.public-v20 .eyebrow{font-size:.72rem;letter-spacing:.09em}
.public-v20 .eyebrow::before{width:26px}
.public-v20 .lead{font-family:var(--font-text);font-size:clamp(1.12rem,1.6vw,1.35rem);line-height:1.55}
.public-v20 .text-link{font-size:.82rem}/* Shared page hero rhythm */


.public-page{overflow:clip}
.public-v20 .inner-hero,.public-v20 .journal-hero,.public-v20 .contact-hero,.public-v20 .article-hero{
  position:relative;isolation:isolate;
}
.public-v20 .inner-hero::after,.public-v20 .journal-hero::after,.public-v20 .contact-hero::after,.public-v20 .article-hero::after{
  content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--v20-line) 9%,var(--v20-line) 91%,transparent);pointer-events:none
}
.public-v20 .inner-hero::before,.public-v20 .journal-hero::before,.public-v20 .article-hero::before{
  content:"";position:absolute;right:-8vw;top:14%;z-index:-1;width:min(42vw,620px);aspect-ratio:1;border:1px solid rgba(201,35,49,.09);border-radius:50%;box-shadow:0 0 0 64px rgba(201,35,49,.018),0 0 0 128px rgba(21,18,22,.012);pointer-events:none
}/* About ----------------------------------------------------------------- */


.public-v20--about .inner-hero{min-height:min(900px,92svh);display:flex;align-items:center;padding:calc(var(--header-h) + clamp(54px,7vw,104px)) 0 clamp(78px,8vw,122px);background:var(--v20-cream)}
.public-v20--about .inner-hero__grid{grid-template-columns:minmax(0,.88fr) minmax(430px,1.12fr);gap:clamp(48px,8vw,138px);align-items:center}
.public-v20--about .inner-hero__copy{position:relative;z-index:2}
.public-v20--about .inner-hero__copy::before{content:"ABOUT";display:block;margin:0 0 18px;color:rgba(21,18,22,.16);font-family:var(--font-ui);font-size:.64rem;font-weight:700;letter-spacing:.22em}
.public-v20--about .inner-hero__copy h1{max-width:8.5ch;margin:.17em 0 .35em;font-size:clamp(4rem,7.7vw,7.7rem);line-height:.84;letter-spacing:-.075em;font-weight:570}
.public-v20--about .inner-hero__copy .lead{max-width:40ch;color:#51494c}
.public-v20--about .inner-hero__meta{margin-top:36px;padding-top:18px;border-top:1px solid var(--v20-line);gap:0}
.public-v20--about .inner-hero__meta span{padding:7px 14px;border:0;border-radius:0;background:transparent;color:var(--v20-muted);font-size:.7rem}
.public-v20--about .inner-hero__meta span+span{border-left:1px solid var(--v20-line)}
.public-v20--about .inner-hero__portrait{min-height:650px;padding:0;isolation:isolate}
.public-v20--about .inner-hero__portrait::before{right:-26px;top:-26px;width:60%;height:60%;border-color:rgba(21,18,22,.17)}
.public-v20--about .inner-hero__portrait::after{content:"";position:absolute;left:-22px;bottom:-22px;z-index:-1;width:52%;height:54%;background:#eaded7}
.public-v20--about .inner-hero__portrait img{height:650px;background:#e7d7cf;object-position:center top;box-shadow:0 38px 90px -68px rgba(21,18,22,.72)}
.public-v20--about .inner-hero__portrait-index{right:auto;left:-15px;top:-14px;padding:6px 8px;background:var(--v20-red);color:#fff}
.public-v20--about .inner-hero__portrait-note{left:-58px;bottom:42px;width:min(310px,78%);padding:21px 22px;background:rgba(251,248,244,.94);backdrop-filter:blur(12px);box-shadow:0 24px 60px -45px rgba(21,18,22,.7)}
.public-v20--about .about-story{padding-block:clamp(92px,10vw,154px)}
.public-v20--about .about-story__grid{grid-template-columns:minmax(250px,.48fr) minmax(0,1.52fr);gap:clamp(64px,11vw,180px)}
.public-v20--about .about-story__aside{top:calc(var(--header-h) + 54px)}
.public-v20--about .about-story__aside h2{font-size:clamp(2rem,3vw,3.05rem);line-height:.98;letter-spacing:-.04em}
.public-v20--about .prose--story{max-width:850px;font-size:clamp(1.15rem,1.45vw,1.28rem);line-height:1.9}
.public-v20--about .about-principles{padding-block:clamp(92px,10vw,150px);background:#171318}
.public-v20--about .principle-panels{grid-template-columns:1.15fr .925fr .925fr}
.public-v20--about .principle-panel{display:flex;flex-direction:column;min-height:380px;padding:34px clamp(26px,3vw,44px) 40px;transition:background-color .35s ease}
.public-v20--about .principle-panel:hover{background:rgba(255,255,255,.035)}
.public-v20--about .principle-panel__index{margin-bottom:auto}
.public-v20--about .principle-panel h3{margin-top:60px;font-size:clamp(1.65rem,2.4vw,2.4rem);letter-spacing:-.035em}
.public-v20--about .principle-panel p{max-width:37ch;line-height:1.7}
.public-v20--about .about-quote-section{padding-block:clamp(104px,12vw,180px);background:var(--v20-cream)}
.public-v20--about .about-quote{max-width:1100px}
.public-v20--about .about-quote__mark{font-size:9rem;opacity:.82}
.public-v20--about .about-quote blockquote{max-width:23ch;margin:18px auto 30px;font-size:clamp(2.55rem,5vw,5.35rem);line-height:.98;letter-spacing:-.055em;font-weight:520}/* Contact --------------------------------------------------------------- */


.public-v20--contact .contact-hero{min-height:min(830px,88svh);display:flex;align-items:end;padding:calc(var(--header-h) + clamp(70px,9vw,130px)) 0 clamp(76px,8vw,118px);background:#171318}
.public-v20--contact .contact-hero::before{content:"";position:absolute;left:-11vw;bottom:-38%;width:min(65vw,900px);aspect-ratio:1;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 75px rgba(255,255,255,.018),0 0 0 150px rgba(201,35,49,.025);pointer-events:none}
.public-v20--contact .contact-hero__grid{position:relative;z-index:1;grid-template-columns:minmax(0,1.35fr) minmax(350px,.65fr);gap:clamp(56px,9vw,150px)}
.public-v20--contact .contact-hero h1{max-width:8ch;margin:.2em 0 .3em;font-size:clamp(4.3rem,8.8vw,8.9rem);line-height:.82;letter-spacing:-.075em;font-weight:570}
.public-v20--contact .contact-hero .lead{max-width:43ch;font-size:clamp(1.12rem,1.45vw,1.32rem)}
.public-v20--contact .contact-hero__steps{padding:0;border-top:1px solid rgba(255,255,255,.2);border-bottom:0}
.public-v20--contact .contact-hero__label{padding-top:18px}
.public-v20--contact .contact-hero__steps li{grid-template-columns:48px 1fr;padding:19px 0;border-color:rgba(255,255,255,.11)}
.public-v20--contact .contact-hero__steps strong{font-size:1rem}
.public-v20--contact .contact-hero__steps small{font-size:.8rem;line-height:1.45}
.public-v20--contact .contact-section{padding-block:clamp(92px,10vw,156px);background:var(--v20-cream)}
.public-v20--contact .contact-layout{grid-template-columns:minmax(280px,.58fr) minmax(0,1.42fr);gap:clamp(58px,9vw,150px)}
.public-v20--contact .contact-sidebar{top:calc(var(--header-h) + 50px)}
.public-v20--contact .contact-sidebar h2{max-width:13ch;font-size:clamp(2.1rem,3.3vw,3.15rem);line-height:1;letter-spacing:-.04em}
.public-v20--contact .contact-directory>a,.public-v20--contact .contact-directory>div{padding-block:20px}
.public-v20--contact .contact-directory strong{font-size:1rem}
.public-v20--contact .form-card--editorial{padding:clamp(34px,5vw,70px);background:#fff;border:1px solid rgba(21,18,22,.09)}
.public-v20--contact .form-card__head{margin-bottom:42px;padding-bottom:34px}
.public-v20--contact .form-card__head h2{max-width:13ch;font-size:clamp(2.4rem,4.2vw,4.4rem);line-height:.95;letter-spacing:-.055em}
.public-v20--contact .form-card--editorial .field{margin-bottom:30px}
.public-v20--contact .form-card--editorial .field label{font-size:.78rem;letter-spacing:.035em}
.public-v20--contact .form-card--editorial .field input,.public-v20--contact .form-card--editorial .field textarea{font-size:1.08rem;padding-block:15px}
.public-v20--contact .contact-faq{padding-block:clamp(90px,10vw,150px)}
.public-v20--contact .contact-faq__grid{grid-template-columns:minmax(250px,.55fr) minmax(0,1.45fr);gap:clamp(64px,10vw,160px)}
.public-v20--contact .contact-faq__grid h2{font-size:clamp(2.7rem,4.5vw,4.9rem);line-height:.94;letter-spacing:-.055em}
.public-v20--contact .faq-list summary{padding:26px 48px 26px 0;font-size:1.05rem}
.public-v20--contact .faq-list details p{max-width:68ch;padding-bottom:30px;font-size:1rem;line-height:1.7}/* Blog index ------------------------------------------------------------ */


.public-v20--blog .journal-hero{min-height:560px;display:flex;align-items:end;padding:calc(var(--header-h) + clamp(70px,9vw,130px)) 0 clamp(74px,8vw,116px);background:var(--v20-cream)}
.public-v20--blog .journal-hero__grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.45fr);gap:clamp(60px,9vw,150px)}
.public-v20--blog .journal-hero h1{margin:.16em 0 0;max-width:8ch;font-size:clamp(4.5rem,9vw,9rem);line-height:.82;letter-spacing:-.08em;font-weight:560}
.public-v20--blog .journal-hero__aside{padding-bottom:7px}
.public-v20--blog .journal-hero__aside p{font-family:var(--font-text);font-size:1.1rem;line-height:1.62}
.public-v20--blog .journal-count{padding-top:18px;border-top:1px solid var(--v20-line)}
.public-v20--blog .journal-count strong{font-size:3rem;line-height:1}
.public-v20--blog .journal-index-section{padding-block:clamp(64px,8vw,116px)}
.public-v20--blog .filter-bar--journal{position:relative;gap:6px;margin-bottom:52px;padding-bottom:20px}
.public-v20--blog .filter-chip{min-height:36px;padding:7px 13px;border-radius:0;border-color:transparent;background:transparent;font-size:.78rem}
.public-v20--blog .filter-chip:hover{border-color:var(--v20-line);transform:none}
.public-v20--blog .filter-chip.is-active{background:var(--v20-ink);color:#fff}
.public-v20--blog .blog-feature-card{grid-template-columns:minmax(0,1.45fr) minmax(360px,.55fr);min-height:610px;margin-bottom:clamp(68px,8vw,110px);background:#171318}
.public-v20--blog .blog-feature-card__media{min-height:610px}
.public-v20--blog .blog-feature-card__media img{min-height:610px;filter:saturate(.86) contrast(1.03)}
.public-v20--blog .blog-feature-card__body{padding:clamp(38px,5vw,72px)}
.public-v20--blog .blog-feature-card h2{font-size:clamp(2.3rem,4vw,4.2rem);line-height:.95;letter-spacing:-.05em}
.public-v20--blog .blog-index-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(48px,5vw,76px) clamp(26px,3vw,44px)}
.public-v20--blog .journal-card{display:block;padding-top:18px}
.public-v20--blog .journal-card__media{aspect-ratio:16/10;margin-bottom:23px}
.public-v20--blog .journal-card__body{padding:0 34px 0 0}
.public-v20--blog .journal-card__index{top:0}
.public-v20--blog .journal-card h2{max-width:18ch;font-size:clamp(1.7rem,2.7vw,2.65rem);line-height:1;letter-spacing:-.04em}
.public-v20--blog .journal-card p{max-width:54ch;font-size:.98rem;line-height:1.65}
.public-v20--blog .pagination{justify-content:center;margin-top:74px;padding-top:28px;border-top:1px solid var(--v20-line)}/* Article --------------------------------------------------------------- */


.article-reading-progress{position:fixed;left:0;right:0;top:0;z-index:1002;height:2px;pointer-events:none;background:transparent}
.article-reading-progress span{display:block;width:100%;height:100%;background:var(--v20-red);transform:scaleX(0);transform-origin:left center;will-change:transform}
.public-v20--article .article-hero{padding:calc(var(--header-h) + clamp(72px,8vw,122px)) 0 clamp(62px,7vw,100px);background:var(--v20-cream)}
.public-v20--article .article-hero__grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);gap:clamp(50px,9vw,150px)}
.public-v20--article .article-hero h1{max-width:12ch;margin:.18em 0 0;font-size:clamp(3.8rem,7.4vw,7.6rem);line-height:.87;letter-spacing:-.07em;font-weight:560}
.public-v20--article .article-hero__meta{align-self:end;border-top-color:rgba(21,18,22,.25)}
.public-v20--article .article-hero__meta>div{padding:15px 0}
.public-v20--article .article-cover--editorial{width:min(calc(100% - clamp(32px,5vw,80px)),1460px);margin-top:0;margin-bottom:clamp(72px,9vw,132px)}
.public-v20--article .article-cover--editorial img{max-height:none;aspect-ratio:16/8;box-shadow:0 34px 80px -65px rgba(21,18,22,.65)}
.public-v20--article .article-layout{grid-template-columns:220px minmax(0,790px);gap:clamp(58px,8vw,128px);padding-bottom:clamp(96px,11vw,170px)}
.public-v20--article .article-sidebar{top:calc(var(--header-h) + 50px)}
.public-v20--article .article-author-card{padding:22px 0}
.public-v20--article .prose--article{font-size:clamp(1.12rem,1.35vw,1.24rem);line-height:1.9}
.public-v20--article .prose--article>p:first-child{font-size:1.28em;line-height:1.72}
.public-v20--article .prose--article h2{margin-top:2.25em;font-size:clamp(2rem,3.2vw,3.05rem);line-height:1.03;letter-spacing:-.045em}
.public-v20--article .prose--article h3{font-size:clamp(1.45rem,2vw,1.9rem)}
.public-v20--article .prose--article blockquote{margin:2.5em -8vw 2.5em 0;padding:8px 0 8px clamp(24px,4vw,54px);font-family:var(--font-text);font-size:clamp(1.5rem,2.4vw,2.25rem);line-height:1.45}
.public-v20--article .related-posts{margin-top:86px;padding-top:56px}
.public-v20--article .related-posts__head h2{font-size:clamp(2rem,3vw,3rem);max-width:17ch}
.public-v20--article .related-list{gap:0;border-top:1px solid var(--v20-line);border-bottom:1px solid var(--v20-line)}
.public-v20--article .related-item{min-height:220px;padding:24px;border:0;border-right:1px solid var(--v20-line);background:transparent}
.public-v20--article .related-item:last-child{border-right:0}
.public-v20--article .related-item:hover{box-shadow:none;background:var(--v20-cream);transform:none}
.public-v20--article .comments--editorial{margin-top:90px;padding-top:62px}
.public-v20--article .comment{padding:26px 0}
.public-v20--article .form-card--editorial{margin-top:54px;padding:clamp(30px,4vw,50px);border:1px solid var(--v20-line);background:var(--v20-cream)}/* 404 ------------------------------------------------------------------- */


.public-v20--404 .error-page{min-height:90svh;padding:calc(var(--header-h) + 70px) 0 110px;background:var(--v20-cream)}
.public-v20--404 .error-page h1{max-width:8.5ch;font-size:clamp(3.5rem,7vw,7.2rem);line-height:.88;letter-spacing:-.07em}
.public-v20--404 .error-page__visual{border-color:rgba(21,18,22,.18)}
.public-v20--404 .error-page__visual>span{font-size:clamp(10rem,20vw,19rem);font-weight:560}/* Footer continuity ----------------------------------------------------- */


.public-v20 .site-footer{padding-top:clamp(102px,11vw,150px)}
.public-v20 .footer-intro{grid-template-columns:200px minmax(0,1fr) auto}
.public-v20 .footer-intro>p{max-width:21ch;font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.02}
.public-v20 .footer-grid--v5{padding-top:58px}/* Motion restraint: only supported hover hardware gets image lift. */


@media(hover:hover) and (pointer:fine){
  .public-v20--about .inner-hero__portrait img{transition:transform .7s cubic-bezier(.22,.61,.36,1)}
  .public-v20--about .inner-hero__portrait:hover img{transform:translate3d(-4px,-4px,0)}
  .public-v20--blog .journal-card__media img{transition:transform .8s cubic-bezier(.22,.61,.36,1)}
  .public-v20--blog .journal-card:hover .journal-card__media img{transform:scale(1.025)}}/* Tablet --------------------------------------------------------------- */


@media(max-width:1050px){
  .public-v20--about .inner-hero__grid{grid-template-columns:1fr .9fr;gap:50px}.public-v20--about .inner-hero__portrait,.public-v20--about .inner-hero__portrait img{min-height:540px;height:540px}
  .public-v20--contact .contact-hero__grid{grid-template-columns:1fr .7fr;gap:56px}.public-v20--contact .contact-layout{grid-template-columns:300px 1fr;gap:54px}
  .public-v20--blog .blog-feature-card{grid-template-columns:1.1fr .9fr;min-height:520px}.public-v20--blog .blog-feature-card__media,.public-v20--blog .blog-feature-card__media img{min-height:520px}
  .public-v20--article .article-layout{grid-template-columns:180px minmax(0,720px);gap:54px}}/* Mobile art direction ------------------------------------------------- */


@media(max-width:760px){
  .public-v20 .container{width:min(calc(100% - 32px),var(--v20-max))}
  .public-v20 .site-header{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
  .public-v20 .site-nav{background:#f8f3ee}
  .public-v20 .site-nav__link{font-size:1.55rem;line-height:1.1;padding:14px 4px}
  .public-v20 .site-nav__link::after{left:4px;right:4px;bottom:8px}

  .public-v20--about .inner-hero{min-height:auto;padding:calc(var(--header-h) + 54px) 0 82px}.public-v20--about .inner-hero__grid{grid-template-columns:1fr;gap:54px}.public-v20--about .inner-hero__copy h1{font-size:clamp(3.8rem,18vw,5.7rem);max-width:7.5ch}.public-v20--about .inner-hero__copy .lead{font-size:1.1rem}.public-v20--about .inner-hero__meta{gap:0}.public-v20--about .inner-hero__meta span{padding:6px 9px;font-size:.63rem}.public-v20--about .inner-hero__portrait{min-height:470px;padding:0 14px 0 0}.public-v20--about .inner-hero__portrait img{height:470px;min-height:470px;object-position:center top}.public-v20--about .inner-hero__portrait::before{right:0;top:-14px}.public-v20--about .inner-hero__portrait::after{left:-10px;bottom:-12px}.public-v20--about .inner-hero__portrait-note{position:relative;left:20px;bottom:auto;margin:-52px 0 0;width:calc(100% - 44px)}
  .public-v20--about .about-story{padding-block:82px}.public-v20--about .about-story__grid{grid-template-columns:1fr;gap:42px}.public-v20--about .about-story__aside{position:static}.public-v20--about .prose--story{font-size:1.08rem;line-height:1.78}.public-v20--about .principle-panels{grid-template-columns:1fr}.public-v20--about .principle-panel{min-height:auto;padding:28px 2px 32px}.public-v20--about .principle-panel+.principle-panel{border-left:0;border-top:1px solid rgba(255,255,255,.16)}.public-v20--about .principle-panel__index{margin-bottom:46px}.public-v20--about .about-quote blockquote{font-size:clamp(2.5rem,11vw,3.8rem)}

  .public-v20--contact .contact-hero{min-height:auto;padding:calc(var(--header-h) + 64px) 0 74px}.public-v20--contact .contact-hero__grid{grid-template-columns:1fr;gap:48px}.public-v20--contact .contact-hero h1{font-size:clamp(4rem,19vw,6rem)}.public-v20--contact .contact-hero .lead{font-size:1.05rem}.public-v20--contact .contact-section{padding-block:82px}.public-v20--contact .contact-layout{grid-template-columns:1fr;gap:56px}.public-v20--contact .contact-sidebar{position:static}.public-v20--contact .form-card--editorial{margin-inline:-4px;padding:28px 20px}.public-v20--contact .form-card__head h2{font-size:clamp(2.4rem,11vw,3.5rem)}.public-v20--contact .contact-faq{padding-block:82px}.public-v20--contact .contact-faq__grid{grid-template-columns:1fr;gap:42px}.public-v20--contact .contact-faq__grid h2{font-size:clamp(2.8rem,12vw,4rem)}

  .public-v20--blog .journal-hero{min-height:auto;padding:calc(var(--header-h) + 62px) 0 72px}.public-v20--blog .journal-hero__grid{grid-template-columns:1fr;gap:38px}.public-v20--blog .journal-hero h1{font-size:clamp(4.3rem,20vw,6.5rem)}.public-v20--blog .journal-hero__aside p{font-size:1.03rem}.public-v20--blog .journal-index-section{padding-block:52px 86px}.public-v20--blog .filter-bar--journal{flex-wrap:nowrap;overflow-x:auto;margin-inline:-16px;padding-inline:16px;padding-bottom:16px;scrollbar-width:none}.public-v20--blog .filter-bar--journal::-webkit-scrollbar{display:none}.public-v20--blog .filter-chip{flex:0 0 auto}.public-v20--blog .blog-feature-card{grid-template-columns:1fr;min-height:auto;margin-inline:-16px;margin-bottom:70px}.public-v20--blog .blog-feature-card__media,.public-v20--blog .blog-feature-card__media img{min-height:320px}.public-v20--blog .blog-feature-card__body{padding:30px 24px 34px}.public-v20--blog .blog-feature-card h2{font-size:clamp(2.25rem,10vw,3.2rem)}.public-v20--blog .blog-index-grid{grid-template-columns:1fr;gap:54px}.public-v20--blog .journal-card__media{aspect-ratio:16/10}.public-v20--blog .journal-card h2{font-size:clamp(1.9rem,8vw,2.5rem)}

  .public-v20--article .article-hero{padding:calc(var(--header-h) + 58px) 0 58px}.public-v20--article .article-hero__grid{grid-template-columns:1fr;gap:42px}.public-v20--article .article-hero h1{font-size:clamp(3.4rem,15vw,5.3rem);max-width:10ch}.public-v20--article .article-hero__meta{grid-template-columns:repeat(3,1fr)}.public-v20--article .article-hero__meta>div{display:block;padding:12px 8px;border-bottom:0;border-right:1px solid var(--v20-line)}.public-v20--article .article-hero__meta>div:last-child{border-right:0}.public-v20--article .article-hero__meta span{display:block;margin-bottom:4px}.public-v20--article .article-cover--editorial{width:100%;margin-bottom:62px}.public-v20--article .article-cover--editorial img{aspect-ratio:4/3}.public-v20--article .article-layout{grid-template-columns:1fr;gap:44px;padding-bottom:96px}.public-v20--article .article-sidebar{position:static;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end}.public-v20--article .article-author-card{max-width:none}.public-v20--article .article-back{margin:0}.public-v20--article .prose--article{font-size:1.07rem;line-height:1.82}.public-v20--article .prose--article>p:first-child{font-size:1.17em}.public-v20--article .prose--article blockquote{margin:2.4em 0;padding-left:20px;font-size:1.45rem}.public-v20--article .related-list{grid-template-columns:1fr}.public-v20--article .related-item{min-height:auto;border-right:0;border-bottom:1px solid var(--v20-line)}.public-v20--article .related-item:last-child{border-bottom:0}.public-v20--article .form-card--editorial{padding:28px 20px}

  .public-v20--404 .error-page{padding-top:calc(var(--header-h) + 55px)}.public-v20--404 .error-page h1{font-size:clamp(3.4rem,16vw,5rem)}
  .public-v20 .footer-intro{grid-template-columns:1fr}.public-v20 .footer-intro>p{font-size:clamp(2.2rem,10vw,3.2rem)}}

@media(max-width:420px){
  .public-v20--article .article-hero__meta{grid-template-columns:1fr}.public-v20--article .article-hero__meta>div{display:grid;grid-template-columns:72px 1fr;border-right:0;border-bottom:1px solid var(--v20-line)}
  .public-v20--article .article-sidebar{grid-template-columns:1fr}}

@media(prefers-reduced-motion:reduce){
  .public-v20 *{scroll-behavior:auto!important}}
@media(max-width:760px){
  .public-v20--contact .contact-hero h1{font-size:clamp(3.2rem,13.5vw,4.15rem);line-height:.88;max-width:100%;overflow-wrap:normal;word-break:normal}}
/* V23 · Homepage journal cards ----------------------------------------- */
.home-v6 .journal-editorial__head{grid-template-columns:minmax(120px,.26fr) minmax(0,1fr) auto;align-items:end;gap:clamp(22px,4vw,58px);margin-bottom:clamp(42px,6vw,78px)}
.home-v6 .journal-editorial__title{margin:0;font-size:clamp(3.2rem,7vw,8.2rem);font-weight:620;line-height:.82;letter-spacing:-.068em;text-transform:uppercase;text-wrap:balance}
.home-v6 .journal-editorial__title span{color:var(--v6-accent)}
.home-v6 .journal-editorial__cards{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:clamp(22px,3vw,42px);align-items:stretch}
.home-v6 .blog-home-card{overflow:hidden;border:1px solid rgba(21,19,16,.14);border-radius:20px;background:rgba(246,241,233,.54);box-shadow:0 18px 48px rgba(52,43,36,.06);transition:transform .35s var(--v6-ease),border-color .3s ease,box-shadow .3s ease,background .3s ease}
.home-v6 .blog-home-card:hover{transform:translateY(-4px);border-color:rgba(21,19,16,.27);background:rgba(246,241,233,.76);box-shadow:0 28px 70px rgba(52,43,36,.11)}
.home-v6 .blog-home-card--featured{display:flex;flex-direction:column;min-width:0}
.home-v6 .journal-lead__image.blog-home-card__media{position:relative;aspect-ratio:16/9;margin:0;background:#d8cec2}
.home-v6 .blog-home-card__media::after,.home-v6 .blog-home-card__thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(17,14,12,.18));pointer-events:none}
.home-v6 .blog-home-card__badge{position:absolute;z-index:2;left:16px;top:16px;padding:7px 10px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:rgba(18,15,13,.64);backdrop-filter:blur(9px);color:#fff;font-family:var(--font-ui);font-size:.62rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase}
.home-v6 .blog-home-card__body{display:flex;flex:1;flex-direction:column;padding:clamp(22px,3vw,38px)}
.home-v6 .blog-home-card__meta{display:flex;align-items:center;gap:12px;margin-bottom:18px;font-family:var(--font-ui);font-size:.69rem;letter-spacing:.07em;text-transform:uppercase;color:var(--v6-muted)}
.home-v6 .blog-home-card__meta span{display:grid;place-items:center;min-width:31px;height:31px;padding:0 8px;border:1px solid rgba(21,19,16,.18);border-radius:999px;color:var(--v6-accent);font-weight:800}
.home-v6 .blog-home-card--featured h3{margin:0;font-size:clamp(2.3rem,4.5vw,5.1rem);font-weight:570;line-height:.91;letter-spacing:-.052em}
.home-v6 .blog-home-card h3 a{color:inherit;text-decoration:none}
.home-v6 .blog-home-card__body>p{max-width:58ch;margin:18px 0 24px;font-size:1rem;line-height:1.62;color:var(--v6-muted)}
.home-v6 .blog-home-card__link{margin-top:auto;align-self:flex-start}
.home-v6 .journal-side--cards{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:clamp(18px,2vw,28px);border:0}
.home-v6 .journal-side--cards .blog-home-card--compact{display:grid;grid-template-columns:minmax(130px,.82fr) minmax(0,1.18fr);min-height:0;padding:0;border-bottom:1px solid rgba(21,19,16,.14)}
.home-v6 .blog-home-card__thumb{position:relative;display:block;min-height:100%;overflow:hidden;background:#d8cec2}
.home-v6 .blog-home-card__thumb img{display:block;width:100%;height:100%;min-height:100%;object-fit:cover;transition:transform .7s var(--v6-ease),filter .4s ease}
.home-v6 .blog-home-card:hover .blog-home-card__thumb img{transform:scale(1.035)}
.home-v6 .blog-home-card__compact-body{display:flex;min-width:0;flex-direction:column;padding:clamp(18px,2.1vw,28px)}
.home-v6 .journal-side--cards .blog-home-card__meta{display:flex;grid-column:auto;margin-bottom:13px}
.home-v6 .journal-side--cards h3{grid-column:auto;margin:0;font-size:clamp(1.45rem,2.25vw,2.45rem);line-height:.96;letter-spacing:-.043em}
.home-v6 .journal-side--cards p{grid-column:auto;display:-webkit-box;overflow:hidden;margin:12px 0 18px;color:var(--v6-muted);font-size:.87rem;line-height:1.52;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.home-v6 .journal-side--cards .v6-text-link{grid-column:auto;justify-self:auto;align-self:flex-start;margin-top:auto}

/* V23 · Comments as profile cards ------------------------------------- */
.public-v20--article .comment-list{display:grid;gap:16px;margin-top:30px}
.public-v20--article .comment{display:grid;grid-template-columns:56px minmax(0,1fr);gap:18px;padding:22px 24px;border:1px solid rgba(21,19,16,.12);border-radius:18px;background:rgba(246,241,233,.64);box-shadow:0 12px 34px rgba(42,34,29,.045)}
.public-v20--article .comment__avatar{display:grid;place-items:center;width:56px;height:56px;border:1px solid rgba(21,19,16,.14);border-radius:50%;background:#e3d8cb;color:var(--brand)}
.public-v20--article .comment__avatar svg{width:32px;height:32px;overflow:visible;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.public-v20--article .comment__content{min-width:0}
.public-v20--article .comment__head{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin:2px 0 9px}
.public-v20--article .comment__head strong{margin:0;color:var(--ink);font-size:1rem;font-weight:720}
.public-v20--article .comment__head time{flex:0 0 auto;color:var(--muted);font-size:.7rem;letter-spacing:.035em}
.public-v20--article .comment p{margin:0;color:var(--ink-soft);font-size:1rem;line-height:1.65}

@media(max-width:980px){
  .home-v6 .journal-editorial__head{grid-template-columns:1fr auto}.home-v6 .journal-editorial__head>.v6-eyebrow{grid-column:1/-1}.home-v6 .journal-editorial__title{font-size:clamp(3rem,10vw,5.6rem)}
  .home-v6 .journal-editorial__cards{grid-template-columns:1fr}.home-v6 .journal-side--cards{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.home-v6 .journal-side--cards .blog-home-card--compact{grid-template-columns:1fr}.home-v6 .blog-home-card__thumb{aspect-ratio:16/10;min-height:0}.home-v6 .blog-home-card__thumb img{min-height:0}
}
@media(max-width:640px){
  .home-v6 .journal-editorial__head{grid-template-columns:1fr;align-items:start}.home-v6 .journal-editorial__head .v6-text-link{justify-self:start}.home-v6 .journal-editorial__title{font-size:clamp(2.9rem,15vw,4.7rem);line-height:.86}
  .home-v6 .journal-editorial__cards{gap:18px}.home-v6 .journal-side--cards{grid-template-columns:1fr;gap:18px}.home-v6 .blog-home-card{border-radius:16px}.home-v6 .blog-home-card__body,.home-v6 .blog-home-card__compact-body{padding:20px}.home-v6 .blog-home-card--featured h3{font-size:clamp(2rem,10vw,3rem)}.home-v6 .journal-side--cards h3{font-size:clamp(1.65rem,8vw,2.3rem)}
  .public-v20--article .comment{grid-template-columns:44px minmax(0,1fr);gap:13px;padding:18px 16px;border-radius:15px}.public-v20--article .comment__avatar{width:44px;height:44px}.public-v20--article .comment__avatar svg{width:26px;height:26px}.public-v20--article .comment__head{align-items:flex-start;flex-direction:column;gap:3px;margin-top:0}.public-v20--article .comment p{font-size:.96rem}
}
/* V23 · collision guards for legacy journal rules */
.home-v6 .journal-editorial .journal-editorial__title{max-width:none}
.home-v6 .journal-lead>.blog-home-card__body{margin-top:0}

/* =========================================================================
   V24 · UI polish + branded loading screen
   Keeps the editorial/cinematic DNA, but gives interactive surfaces one
   consistent hierarchy: quiet cards, tactile controls and restrained motion.
   ========================================================================= */

/* --- Branded loader ---------------------------------------------------- */
.site-loader{
  position:fixed;inset:0;z-index:5000;display:grid;place-items:center;
  padding:clamp(22px,5vw,64px);background:var(--v6-ivory,#f1ece4);color:var(--v6-ink,#151310);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .48s var(--v6-ease,cubic-bezier(.16,1,.3,1)),visibility .48s step-end;
}
html.site-loading .site-loader{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s ease,visibility 0s}
html.site-loader-leaving .site-loader{opacity:0;visibility:hidden;pointer-events:none}
.site-loader::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.72;
  background:
    radial-gradient(circle at 76% 24%,rgba(212,73,50,.10),transparent 28%),
    linear-gradient(90deg,transparent calc(50% - .5px),rgba(21,19,16,.055) 50%,transparent calc(50% + .5px));
}
.site-loader__shell{position:relative;width:min(560px,100%);padding:clamp(24px,4vw,38px);border-top:1px solid rgba(21,19,16,.28);border-bottom:1px solid rgba(21,19,16,.13)}
.site-loader__edition{display:block;margin-bottom:clamp(34px,6vw,62px);font-family:var(--font-ui);font-size:.64rem;font-weight:720;letter-spacing:.16em;text-transform:uppercase;color:var(--v6-accent,#d44932)}
.site-loader__brand{display:flex;align-items:center;gap:17px}
.site-loader__mark{display:grid;place-items:center;width:58px;height:58px;flex:0 0 58px;border:1px solid rgba(21,19,16,.13);border-radius:15px;background:rgba(255,255,255,.45);box-shadow:0 14px 36px -24px rgba(21,19,16,.45);overflow:hidden}
.site-loader__mark img{width:42px;height:42px;object-fit:contain}
.site-loader__copy{display:flex;min-width:0;flex-direction:column;line-height:1.08}
.site-loader__copy strong{color:var(--v6-ink,#151310);font-family:var(--font-display);font-size:clamp(1.45rem,4vw,2rem);font-weight:620;letter-spacing:-.045em}
.site-loader__copy small{margin-top:6px;color:var(--v6-muted,#847d74);font-family:var(--font-ui);font-size:.72rem;font-weight:550}
.site-loader__meter{height:2px;margin-top:clamp(34px,6vw,58px);overflow:hidden;background:rgba(21,19,16,.11)}
.site-loader__meter i{display:block;width:42%;height:100%;background:var(--v6-accent,#d44932);transform:translateX(-110%);animation:siteLoaderMeter 1.05s var(--v6-ease,cubic-bezier(.16,1,.3,1)) infinite}
.site-loader__status{display:block;margin-top:11px;color:var(--v6-muted,#847d74);font-family:var(--font-ui);font-size:.64rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
@keyframes siteLoaderMeter{0%{transform:translateX(-110%)}58%,100%{transform:translateX(250%)}}

/* --- Shared controls --------------------------------------------------- */
.button,.btn{
  border-radius:13px;box-shadow:0 10px 26px -20px rgba(23,20,27,.75);
  transform:translateZ(0);will-change:transform;
}
.button:hover,.btn:hover{transform:translateY(-2px) scale(1.012);box-shadow:0 18px 38px -20px rgba(156,20,32,.62)}
.button:active,.btn:active{transform:translateY(0) scale(.99)}
.button--ghost{background:rgba(255,255,255,.44);backdrop-filter:blur(8px)}
.button--sun{box-shadow:0 14px 34px -24px rgba(23,20,27,.7)}
.home-v6 .cinema-link--solid{
  border-radius:12px;box-shadow:0 14px 38px -24px rgba(0,0,0,.75);
  transition:transform .28s var(--v6-ease),box-shadow .28s ease,background .2s ease,color .2s ease;
}
.home-v6 .cinema-link--solid:hover{transform:translateY(-2px);box-shadow:0 20px 42px -24px rgba(0,0,0,.82)}
.home-v6 .closing-editorial__button{
  border-radius:14px;box-shadow:0 18px 44px -26px rgba(169,46,32,.72);
  transition:transform .32s var(--v6-ease),box-shadow .3s ease,background .25s ease,border-color .25s ease;
}
.home-v6 .closing-editorial__button span{transition:transform .3s var(--v6-ease)}
.home-v6 .closing-editorial__button:hover{background:var(--v6-accent-deep);border-color:var(--v6-accent-deep);color:#fff!important;transform:translateY(-3px);box-shadow:0 24px 54px -26px rgba(169,46,32,.82)}
.home-v6 .closing-editorial__button:hover span{transform:translate(2px,-2px)}
.home-v6 .program-index__aside a{border-radius:12px;background:rgba(255,255,255,.035);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.home-v6 .program-index__aside a:hover{transform:translateY(-1px);box-shadow:0 13px 30px -20px rgba(0,0,0,.9)}
.public-v20--blog .filter-chip{min-height:38px;padding:7px 14px;border:1px solid var(--v20-line);border-radius:999px;background:rgba(255,255,255,.42);transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}
.public-v20--blog .filter-chip:hover{transform:translateY(-1px);background:#fff;border-color:rgba(21,18,22,.25)}
.public-v20--blog .filter-chip.is-active{border-color:var(--v20-ink);background:var(--v20-ink)}
.to-top{border-radius:15px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);box-shadow:0 16px 38px -24px rgba(23,20,27,.65)}
.to-top:hover{transform:translateY(-2px)}

/* --- Homepage surfaces ------------------------------------------------- */
.home-v6 .program-index__row{
  border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 18px 54px -42px rgba(0,0,0,.85);
}
.home-v6 .program-index__row:hover{transform:translateY(-4px);background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.045));box-shadow:0 30px 74px -40px rgba(0,0,0,.88)}
.home-v6 .program-index__media{border-radius:14px;border:1px solid rgba(255,255,255,.09)}
.home-v6 .voice-editorial{
  padding:26px 28px 30px;border:1px solid rgba(255,255,255,.24);border-radius:20px;
  background:rgba(255,255,255,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.home-v6 .blog-home-card{border-radius:24px;border-color:rgba(21,19,16,.12);background:rgba(250,247,242,.72);box-shadow:0 22px 54px -38px rgba(52,43,36,.46)}
.home-v6 .blog-home-card:hover{transform:translateY(-5px);border-color:rgba(21,19,16,.23);background:rgba(252,249,245,.94);box-shadow:0 34px 72px -40px rgba(52,43,36,.52)}
.home-v6 .journal-lead__image.blog-home-card__media{border-radius:18px 18px 0 0}
.home-v6 .blog-home-card__thumb{margin:10px 0 10px 10px;border-radius:16px}
.home-v6 .watch-piece{border-radius:22px;border-color:rgba(21,19,16,.12);background:rgba(250,247,242,.72);box-shadow:0 22px 54px -40px rgba(52,43,36,.42)}
.home-v6 .watch-piece:hover{transform:translateY(-5px);border-color:rgba(21,19,16,.24);background:rgba(252,249,245,.94);box-shadow:0 34px 74px -42px rgba(52,43,36,.5)}
.home-v6 .watch-piece__visual{border-radius:15px}
.home-v6 .watch-piece__play{box-shadow:0 16px 45px -18px rgba(0,0,0,.55)}
.home-v6 .watch-piece:hover .watch-piece__play{box-shadow:0 18px 48px -18px rgba(212,73,50,.75)}
.home-v6 .credential-open{
  padding:12px 12px 18px;border:1px solid rgba(21,19,16,.11);border-radius:18px;
  background:rgba(250,247,242,.6);box-shadow:0 18px 50px -40px rgba(45,36,30,.5);
  transition:transform .35s var(--v6-ease),border-color .28s ease,background .28s ease,box-shadow .3s ease;
}
.home-v6 .credential-open:hover{transform:translateY(-4px);border-color:rgba(21,19,16,.22);background:rgba(255,255,255,.78);box-shadow:0 28px 64px -40px rgba(45,36,30,.5)}
.home-v6 .credential-open__media{border-radius:13px;border-color:rgba(21,19,16,.09)}
.home-v6 .credential-open__index,.home-v6 .credential-open__view{border-radius:9px}

/* --- Public page cards ------------------------------------------------- */
.public-v20--about .principle-panel{transition:background .28s ease,transform .32s cubic-bezier(.16,1,.3,1)}
.public-v20--about .principle-panel:hover{background:rgba(255,255,255,.045);transform:translateY(-3px)}
.public-v20--contact .contact-directory{display:grid;gap:10px;margin-top:34px;border-top:0}
.public-v20--contact .contact-directory>a,.public-v20--contact .contact-directory>div{
  padding:16px 46px 16px 17px;border:1px solid var(--v20-line);border-radius:14px;background:rgba(255,255,255,.44);
  transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;
}
.public-v20--contact .contact-directory>a:hover{transform:translateY(-2px);border-color:rgba(21,18,22,.24);background:#fff;box-shadow:0 16px 38px -30px rgba(21,18,22,.52)}
.public-v20--contact .contact-directory i{right:16px}
.public-v20--contact .contact-privacy{border:1px solid rgba(201,35,49,.17);border-left:3px solid var(--v20-red);border-radius:14px;background:rgba(255,255,255,.52)}
.public-v20--contact .form-card--editorial,.public-v20--article .form-card--editorial{
  border:1px solid var(--v20-line);border-radius:24px;background:rgba(255,255,255,.82);
  box-shadow:0 28px 70px -54px rgba(21,18,22,.62);
}
.public-v20--contact .faq-list{display:grid;gap:10px;border-top:0}
.public-v20--contact .faq-list details{overflow:hidden;border:1px solid var(--v20-line);border-radius:14px;background:rgba(255,255,255,.42);transition:background .25s ease,border-color .25s ease}
.public-v20--contact .faq-list details:hover,.public-v20--contact .faq-list details[open]{border-color:rgba(21,18,22,.24);background:#fff}
.public-v20--contact .faq-list summary{padding:19px 50px 19px 18px}
.public-v20--contact .faq-list summary::after{right:18px;top:16px}
.public-v20--contact .faq-list details p{padding:0 42px 20px 18px}
.public-v20--blog .blog-feature-card{overflow:hidden;border:1px solid rgba(21,18,22,.12);border-radius:24px;box-shadow:0 30px 76px -54px rgba(21,18,22,.7)}
.public-v20--blog .journal-card{
  grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);padding:12px;border:1px solid var(--v20-line);border-radius:18px;background:rgba(255,255,255,.5);
  transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .25s ease,box-shadow .3s ease,background .25s ease;
}
.public-v20--blog .journal-card:hover{transform:translateY(-4px);border-color:rgba(21,18,22,.24);background:#fff;box-shadow:0 26px 60px -44px rgba(21,18,22,.65)}
.public-v20--blog .journal-card__media{border-radius:12px}
.public-v20--blog .journal-card__body{padding:7px 8px 5px 20px}
.public-v20--article .related-item{border-radius:16px;background:rgba(255,255,255,.5);transition:transform .3s cubic-bezier(.16,1,.3,1),background .25s ease,border-color .25s ease,box-shadow .3s ease}
.public-v20--article .related-item:hover{transform:translateY(-4px);background:#fff;box-shadow:0 24px 54px -42px rgba(21,18,22,.58)}
.public-v20--article .comment{border-radius:20px;background:rgba(250,247,242,.84);box-shadow:0 18px 46px -38px rgba(42,34,29,.45);transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .25s ease,background .25s ease}
.public-v20--article .comment:hover{transform:translateY(-2px);border-color:rgba(21,19,16,.2);background:#fff}
.public-v20--article .comment__avatar{background:linear-gradient(145deg,#eadfd2,#ddd0c1);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 10px 24px -18px rgba(21,19,16,.7)}

/* --- Dialog controls --------------------------------------------------- */
.video-lightbox__close,.certificate-lightbox__close{transition:transform .25s var(--v6-ease),background .2s ease,border-color .2s ease,box-shadow .2s ease}
.video-lightbox__close:hover,.certificate-lightbox__close:hover{transform:rotate(4deg) scale(1.04);box-shadow:0 12px 30px -18px rgba(0,0,0,.62)}

@media(max-width:720px){
  .site-loader__shell{padding:22px 4px 24px}.site-loader__edition{margin-bottom:34px}.site-loader__mark{width:52px;height:52px;flex-basis:52px;border-radius:13px}.site-loader__mark img{width:38px;height:38px}
  .home-v6 .voice-editorial{padding:22px 20px 24px;border-radius:17px}
  .home-v6 .program-index__row{border-radius:17px}
  .home-v6 .blog-home-card,.home-v6 .watch-piece{border-radius:18px}
  .home-v6 .blog-home-card__thumb{margin:9px 9px 0;border-radius:13px}
  .home-v6 .credential-open{padding:9px 9px 15px;border-radius:15px}
  .public-v20--blog .blog-feature-card{margin-inline:0;border-radius:18px}
  .public-v20--blog .journal-card{grid-template-columns:1fr;padding:10px;border-radius:16px}
  .public-v20--blog .journal-card__body{padding:16px 7px 8px}
  .public-v20--contact .form-card--editorial,.public-v20--article .form-card--editorial{border-radius:18px}
}

@media(prefers-reduced-motion:reduce){
  .site-loader__meter i{animation:none;transform:none;width:100%}
  .button,.btn,.home-v6 .program-index__row,.home-v6 .blog-home-card,.home-v6 .watch-piece,.home-v6 .credential-open,.public-v20--blog .journal-card,.public-v20--article .comment{transition:none!important;transform:none!important}
}

/* ========================================================================
   V25 — MOBILE PROGRAM CONSISTENCY + UNIFIED ANIMATED FOOTER
   ======================================================================== */

/* Package rows must not depend on title/description/price length. */
.program-index__row > *{min-width:0}
.program-index__main,.program-index__aside{min-width:0}
.program-index__main h3,.program-index__main p{overflow-wrap:anywhere}

@media(max-width:720px){
  .home-v6 .program-index__row{
    grid-template-columns:30px minmax(0,1fr);
    grid-template-areas:
      "number media"
      ". main"
      ". aside";
    align-items:start;
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
  .home-v6 .program-index__number{grid-area:number}
  .home-v6 .program-index__media{grid-area:media;min-width:0;width:100%;max-width:100%}
  .home-v6 .program-index__main{grid-area:main;width:100%;max-width:100%}
  .home-v6 .program-index__aside{
    grid-area:aside;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:8px;
    width:100%;
    max-width:100%;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.12);
  }
  .home-v6 .program-index__aside small,
  .home-v6 .program-index__aside strong,
  .home-v6 .program-index__aside a{
    grid-column:1;
    grid-row:auto;
    min-width:0;
    max-width:100%;
  }
  .home-v6 .program-index__aside strong{overflow-wrap:anywhere}
  .home-v6 .program-index__aside a{
    width:100%;
    min-width:0;
    margin-top:6px;
    padding:12px 13px;
  }
}

/* Continuous two-layer wave shared by every public footer. */
.site-footer{overflow:visible}
.footer-tide{
  display:block!important;
  position:absolute;
  left:0;
  right:0;
  top:-96px;
  height:98px;
  overflow:hidden;
  pointer-events:none;
  z-index:0;
}
.footer-tide::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:22px;
  background:var(--v5-ink,#171319);
  z-index:3;
}
.footer-tide__wave{
  position:absolute;
  left:0;
  bottom:-1px;
  width:200%;
  height:100%;
  max-width:none;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.footer-tide__wave path{stroke:none}
.footer-tide__wave--back{
  z-index:1;
  opacity:.96;
  animation:footerWaveBack 18s linear infinite;
}
.footer-tide__wave--back path{fill:#4a3947}
.footer-tide__wave--front{
  z-index:2;
  animation:footerWaveFront 13s linear infinite reverse;
}
.footer-tide__wave--front path{fill:var(--v5-ink,#171319)}

@keyframes footerWaveBack{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@keyframes footerWaveFront{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

/* The previous home rule intentionally hid the wave; V25 unifies it. */
.home-cinematic .footer-tide{display:block!important}
.home-cinematic .footer-intro{border-top:0;padding-top:0}
.home-cinematic .site-footer,
.public-v20 .site-footer{padding-top:clamp(92px,10vw,132px)}

@media(max-width:700px){
  .footer-tide{top:-68px;height:70px}
  .footer-tide__wave{height:72px}
  .site-footer,.home-cinematic .site-footer,.public-v20 .site-footer{padding-top:76px}
}

@media(prefers-reduced-motion:reduce){
  .footer-tide__wave{animation:none!important;will-change:auto}
}

/* V25 footer selector-strength guard: overrides the legacy `.footer-tide svg` rule. */
.footer-tide svg.footer-tide__wave{
  position:absolute;
  left:0;
  bottom:-1px;
  width:200%;
  height:100%;
  max-width:none;
  animation-name:none;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.footer-tide svg.footer-tide__wave--back{animation:footerWaveBack 18s linear infinite}
.footer-tide svg.footer-tide__wave--front{animation:footerWaveFront 13s linear infinite reverse}
@media(max-width:700px){.footer-tide svg.footer-tide__wave{height:72px}}
@media(prefers-reduced-motion:reduce){.footer-tide svg.footer-tide__wave{animation:none!important;will-change:auto}}

/* ========================================================================
   V27 — RICHER EDITORIAL MOTION
   More choreography, not more noise. The existing ScrollCraft/data-reveal
   runtimes remain the only entrance engines; this layer sequences content
   inside them and adds restrained interaction feedback.
   ======================================================================== */

/* --- Shared action micro-motion ---------------------------------------- */
.button,.btn,.closing-editorial__button,.footer-intro__link{
  position:relative;isolation:isolate;overflow:hidden;
}
.button::before,.btn::before,.closing-editorial__button::before,.footer-intro__link::before{
  content:"";position:absolute;z-index:-1;inset:-35% auto -35% -42%;width:22%;
  background:rgba(255,255,255,.16);transform:translateX(-240%) skewX(-16deg);
  transition:transform .68s cubic-bezier(.16,1,.3,1);pointer-events:none;
}
.button:hover::before,.btn:hover::before,.closing-editorial__button:hover::before,.footer-intro__link:hover::before{
  transform:translateX(760%) skewX(-16deg);
}
.button>span[aria-hidden="true"],.closing-editorial__button>span[aria-hidden="true"],.footer-intro__link>span[aria-hidden="true"]{
  display:inline-block;transition:transform .38s cubic-bezier(.16,1,.3,1);
}
.button:hover>span[aria-hidden="true"],.closing-editorial__button:hover>span[aria-hidden="true"],.footer-intro__link:hover>span[aria-hidden="true"]{
  transform:translate3d(3px,-3px,0) rotate(3deg);
}
.v6-text-link span[aria-hidden="true"],.text-link span[aria-hidden="true"]{display:inline-block;transition:transform .35s var(--v6-ease)}
.v6-text-link:hover span[aria-hidden="true"],.text-link:hover span[aria-hidden="true"]{transform:translate3d(4px,-2px,0)}

/* --- Homepage: process rows arrive as a sentence, not a slab ----------- */
html.sc-live .home-v6 .process-line .process-line__index,
html.sc-live .home-v6 .process-line h3,
html.sc-live .home-v6 .process-line p,
html.sc-live .home-v6 .process-line .process-line__verb{
  opacity:0;transform:translate3d(0,16px,0);
  transition:opacity .58s var(--v6-ease),transform .82s var(--v6-ease);
}
html.sc-live .home-v6 .process-line.sc-in .process-line__index{opacity:1;transform:none;transition-delay:.06s}
html.sc-live .home-v6 .process-line.sc-in h3{opacity:1;transform:none;transition-delay:.12s}
html.sc-live .home-v6 .process-line.sc-in p{opacity:1;transform:none;transition-delay:.20s}
html.sc-live .home-v6 .process-line.sc-in .process-line__verb{opacity:1;transform:none;transition-delay:.28s}
.home-v6 .process-line__verb{transition:opacity .58s var(--v6-ease),transform .82s var(--v6-ease),color .25s ease}
.home-v6 .process-line:hover .process-line__verb{transform:translateX(5px);color:var(--v6-accent)}

/* --- Program/package rows: media → copy → decision -------------------- */
html.sc-live .home-v6 .program-index__row .program-index__number,
html.sc-live .home-v6 .program-index__row .program-index__media,
html.sc-live .home-v6 .program-index__row .program-index__main,
html.sc-live .home-v6 .program-index__row .program-index__aside{
  opacity:0;transition:opacity .64s var(--v6-ease),transform .92s var(--v6-ease),clip-path .95s var(--v6-ease);
}
html.sc-live .home-v6 .program-index__row .program-index__number{transform:translate3d(-12px,0,0)}
html.sc-live .home-v6 .program-index__row .program-index__media{transform:translate3d(0,22px,0) scale(.97);clip-path:inset(9% 0 9% 0)}
html.sc-live .home-v6 .program-index__row .program-index__main{transform:translate3d(0,18px,0)}
html.sc-live .home-v6 .program-index__row .program-index__aside{transform:translate3d(12px,0,0)}
html.sc-live .home-v6 .program-index__row.sc-in .program-index__number{opacity:1;transform:none;transition-delay:.05s}
html.sc-live .home-v6 .program-index__row.sc-in .program-index__media{opacity:1;transform:none;clip-path:inset(0);transition-delay:.10s}
html.sc-live .home-v6 .program-index__row.sc-in .program-index__main{opacity:1;transform:none;transition-delay:.18s}
html.sc-live .home-v6 .program-index__row.sc-in .program-index__aside{opacity:1;transform:none;transition-delay:.27s}
.home-v6 .program-index__media img{transition:transform .8s var(--v6-ease),filter .55s ease}
.home-v6 .program-index__row:hover .program-index__media img{transform:scale(1.035);filter:saturate(1.035) contrast(1.015)}

/* --- Testimonials: quote and person resolve in two beats -------------- */
html.sc-live .home-v6 .voice-editorial blockquote,
html.sc-live .home-v6 .voice-editorial .voice-editorial__person,
html.sc-live .home-v6 .voice-editorial .voice-editorial__index{
  opacity:0;transition:opacity .65s var(--v6-ease),transform .9s var(--v6-ease);
}
html.sc-live .home-v6 .voice-editorial blockquote{transform:translate3d(0,15px,0)}
html.sc-live .home-v6 .voice-editorial .voice-editorial__person{transform:translate3d(0,11px,0)}
html.sc-live .home-v6 .voice-editorial .voice-editorial__index{transform:translate3d(-8px,0,0)}
html.sc-live .home-v6 .voice-editorial.sc-in .voice-editorial__index{opacity:1;transform:none;transition-delay:.04s}
html.sc-live .home-v6 .voice-editorial.sc-in blockquote{opacity:1;transform:none;transition-delay:.10s}
html.sc-live .home-v6 .voice-editorial.sc-in .voice-editorial__person{opacity:1;transform:none;transition-delay:.24s}
.home-v6 .voice-editorial img{transition:transform .55s var(--v6-ease)}
.home-v6 .voice-editorial:hover img{transform:scale(1.06) rotate(-1.5deg)}

/* --- Blog/video/certificate cards: visual then information ------------- */
html.sc-live .home-v6 .blog-home-card .blog-home-card__media,
html.sc-live .home-v6 .blog-home-card .blog-home-card__thumb,
html.sc-live .home-v6 .watch-piece .watch-piece__visual,
html.sc-live .home-v6 .credential-open .credential-open__media{
  opacity:0;transform:translate3d(0,14px,0) scale(.985);
  transition:opacity .58s var(--v6-ease),transform .9s var(--v6-ease),clip-path .9s var(--v6-ease);
  clip-path:inset(5% 0 8% 0);
}
html.sc-live .home-v6 .blog-home-card .blog-home-card__body,
html.sc-live .home-v6 .blog-home-card .blog-home-card__compact-body,
html.sc-live .home-v6 .watch-piece .watch-piece__copy,
html.sc-live .home-v6 .credential-open .credential-open__copy{
  opacity:0;transform:translate3d(0,13px,0);transition:opacity .58s var(--v6-ease),transform .82s var(--v6-ease);
}
html.sc-live .home-v6 .blog-home-card.sc-in .blog-home-card__media,
html.sc-live .home-v6 .blog-home-card.sc-in .blog-home-card__thumb,
html.sc-live .home-v6 .watch-piece.sc-in .watch-piece__visual,
html.sc-live .home-v6 .credential-open.sc-in .credential-open__media{
  opacity:1;transform:none;clip-path:inset(0);transition-delay:.06s;
}
html.sc-live .home-v6 .blog-home-card.sc-in .blog-home-card__body,
html.sc-live .home-v6 .blog-home-card.sc-in .blog-home-card__compact-body,
html.sc-live .home-v6 .watch-piece.sc-in .watch-piece__copy,
html.sc-live .home-v6 .credential-open.sc-in .credential-open__copy{
  opacity:1;transform:none;transition-delay:.18s;
}
.home-v6 .watch-piece__play{transition:transform .45s var(--v6-ease),box-shadow .4s ease,background .3s ease}
.home-v6 .watch-piece:hover .watch-piece__play{transform:translate(-50%,-50%) scale(1.08)}
.home-v6 .watch-piece__format{transition:transform .38s var(--v6-ease),background .25s ease}
.home-v6 .watch-piece:hover .watch-piece__format{transform:translateY(-3px)}
.home-v6 .credential-open__view{transition:transform .38s var(--v6-ease),background .25s ease}
.home-v6 .credential-open:hover .credential-open__view{transform:translate3d(-3px,-3px,0)}

/* --- Inner pages: staggered groups also gain internal cadence ---------- */
.js .principle-panels[data-reveal-stagger] .principle-panel>*{
  opacity:0;transform:translate3d(0,10px,0);transition:opacity .52s var(--v6-ease),transform .72s var(--v6-ease);
}
.js .principle-panels[data-reveal-stagger].is-visible .principle-panel>*{opacity:1;transform:none}
.js .principle-panels[data-reveal-stagger].is-visible .principle-panel>:nth-child(2){transition-delay:.10s}
.js .principle-panels[data-reveal-stagger].is-visible .principle-panel>:nth-child(3){transition-delay:.18s}

.js .blog-index-grid[data-reveal-stagger] .journal-card__media,
.js .related-list[data-reveal-stagger] .related-item,
.js .comment-list[data-reveal-stagger] .comment{
  will-change:transform,opacity;
}
.js .blog-index-grid[data-reveal-stagger] .journal-card__media{transform:scale(1.025);transition:transform .82s var(--v6-ease)}
.js .blog-index-grid[data-reveal-stagger].is-visible .journal-card__media{transform:none}
.js .comment-list[data-reveal-stagger] .comment__avatar{transform:scale(.82) rotate(-4deg);opacity:0;transition:opacity .5s var(--v6-ease),transform .72s var(--v6-ease)}
.js .comment-list[data-reveal-stagger].is-visible .comment__avatar{opacity:1;transform:none;transition-delay:.14s}

/* Form cards feel assembled rather than dropped in whole. */
.js .form-card[data-reveal] .form-card__head,
.js .form-card[data-reveal] .field,
.js .form-card[data-reveal] .form-submit-row,
.js .form-card[data-reveal] button[type="submit"]{
  opacity:0;transform:translate3d(0,12px,0);transition:opacity .55s var(--v6-ease),transform .76s var(--v6-ease);
}
.js .form-card[data-reveal].is-visible .form-card__head{opacity:1;transform:none;transition-delay:.08s}
.js .form-card[data-reveal].is-visible .field{opacity:1;transform:none}
.js .form-card[data-reveal].is-visible .field:nth-of-type(1){transition-delay:.14s}
.js .form-card[data-reveal].is-visible .field:nth-of-type(2){transition-delay:.20s}
.js .form-card[data-reveal].is-visible .field:nth-of-type(3){transition-delay:.26s}
.js .form-card[data-reveal].is-visible .form-submit-row,
.js .form-card[data-reveal].is-visible button[type="submit"]{opacity:1;transform:none;transition-delay:.32s}

/* --- Shared footer: content rises behind the tide ---------------------- */
.js .site-footer .footer-intro[data-reveal] .footer-intro__eyebrow,
.js .site-footer .footer-intro[data-reveal] p,
.js .site-footer .footer-intro[data-reveal] .footer-intro__link{
  opacity:0;transform:translate3d(0,14px,0);transition:opacity .62s var(--v6-ease),transform .82s var(--v6-ease);
}
.js .site-footer .footer-intro[data-reveal].is-visible .footer-intro__eyebrow{opacity:1;transform:none;transition-delay:.05s}
.js .site-footer .footer-intro[data-reveal].is-visible p{opacity:1;transform:none;transition-delay:.13s}
.js .site-footer .footer-intro[data-reveal].is-visible .footer-intro__link{opacity:1;transform:none;transition-delay:.22s}
.js .site-footer .footer-grid--v5[data-reveal-stagger] .footer-index span{display:inline-block;transition:transform .85s var(--v6-ease),opacity .62s var(--v6-ease)}
.js .site-footer .footer-grid--v5[data-reveal-stagger]:not(.is-visible) .footer-index span{opacity:0;transform:translate3d(0,18px,0) scale(.94)}
.js .site-footer .footer-grid--v5[data-reveal-stagger].is-visible .footer-index span{opacity:1;transform:none}
.site-footer a span[aria-hidden="true"]{display:inline-block;transition:transform .34s var(--v6-ease)}
.site-footer a:hover span[aria-hidden="true"]{transform:translate3d(3px,-2px,0)}

@media(max-width:720px){
  html.sc-live .home-v6 .process-line h3,
  html.sc-live .home-v6 .process-line p,
  html.sc-live .home-v6 .program-index__row .program-index__media,
  html.sc-live .home-v6 .program-index__row .program-index__main,
  html.sc-live .home-v6 .program-index__row .program-index__aside,
  html.sc-live .home-v6 .voice-editorial blockquote,
  html.sc-live .home-v6 .watch-piece .watch-piece__visual,
  html.sc-live .home-v6 .watch-piece .watch-piece__copy{transform:translate3d(0,9px,0)}
  .button::before,.btn::before,.closing-editorial__button::before,.footer-intro__link::before{display:none}
}

@media(prefers-reduced-motion:reduce){
  .button::before,.btn::before,.closing-editorial__button::before,.footer-intro__link::before{display:none!important}
  html.sc-live .home-v6 .process-line *,
  html.sc-live .home-v6 .program-index__row > *,
  html.sc-live .home-v6 .voice-editorial *,
  html.sc-live .home-v6 .blog-home-card *,
  html.sc-live .home-v6 .watch-piece *,
  html.sc-live .home-v6 .credential-open *,
  .js .principle-panels[data-reveal-stagger] .principle-panel>*,
  .js .form-card[data-reveal] .form-card__head,
  .js .form-card[data-reveal] .field,
  .js .form-card[data-reveal] .form-submit-row,
  .js .form-card[data-reveal] button[type="submit"],
  .js .site-footer .footer-intro[data-reveal]>*{
    opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important;
  }
}

/* Small state changes should carry the same motion language. */
.home-v6 .process-line:hover .process-line__verb{transform:translateX(-10px)}
.public-v20--contact .faq-list summary::after{transition:transform .34s var(--v6-ease),color .2s ease}
.public-v20--contact .faq-list details[open] summary::after{transform:rotate(180deg);color:var(--v20-ink)}

/* ========================================================================
   V28 — DEEPER CINEMATIC MICRO-MOTION
   A second layer of motion density built on top of the existing reveal and
   ScrollCraft runtimes. No new animation engine; mobile/reduced-motion remain
   intentionally quieter.
   ======================================================================== */

/* --- Header entrance after the site loader clears ---------------------- */
@media (prefers-reduced-motion:no-preference){
  html.js:not(.site-ready) .site-header .site-brand,
  html.js:not(.site-ready) .site-header .site-nav__link,
  html.js:not(.site-ready) .site-header .nav-cta,
  html.js:not(.site-ready) .site-header .nav-toggle{opacity:0;transform:translate3d(0,-10px,0)}
  html.site-ready .site-header .site-brand,
  html.site-ready .site-header .site-nav__link,
  html.site-ready .site-header .nav-cta,
  html.site-ready .site-header .nav-toggle{
    opacity:1;transform:none;transition:opacity .58s var(--v6-ease),transform .78s var(--v6-ease)
  }
  html.site-ready .site-header .site-brand{transition-delay:.03s}
  html.site-ready .site-header .site-nav__link:nth-child(1){transition-delay:.08s}
  html.site-ready .site-header .site-nav__link:nth-child(2){transition-delay:.13s}
  html.site-ready .site-header .site-nav__link:nth-child(3){transition-delay:.18s}
  html.site-ready .site-header .site-nav__link:nth-child(4){transition-delay:.23s}
  html.site-ready .site-header .site-nav__link:nth-child(n+5){transition-delay:.27s}
  html.site-ready .site-header .nav-cta{transition-delay:.30s}
  html.site-ready .site-header .nav-toggle{transition-delay:.12s}
}
.site-brand__dot{transform-origin:center;animation:brandDotBreath 3.8s ease-in-out infinite}
@keyframes brandDotBreath{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(201,35,49,0)}50%{transform:scale(1.18);box-shadow:0 0 0 5px rgba(201,35,49,.08)}}

/* --- Editorial headings gain a drawn accent beat ----------------------- */
.home-v6 .v6-section-head,
.home-v6 .watch-editorial__head,
.home-v6 .credentials-editorial__grid>header,
.home-v6 .journal-editorial__head{position:relative}
.home-v6 .credentials-editorial__grid>header::after,
.home-v6 .journal-editorial__head::before{
  content:"";display:block;width:min(84px,18vw);height:2px;margin-top:20px;background:var(--v6-accent);
  transform-origin:left center;transform:scaleX(0);opacity:.78;transition:transform 1.05s var(--v6-ease)
}
html.sc-live .home-v6 .credentials-editorial__grid>header.sc-in::after,
html.sc-live .home-v6 .journal-editorial__head.sc-in::before{transform:scaleX(1)}
.home-v6 .v6-eyebrow{transition:letter-spacing .78s var(--v6-ease),color .3s ease}
.home-v6 [data-sc-in].sc-in .v6-eyebrow,
.home-v6 [data-sc-in].sc-in.v6-eyebrow{letter-spacing:.14em}

/* --- Cards feel tactile without becoming floating SaaS tiles ----------- */
@media (hover:hover) and (pointer:fine){
  .home-v6 .blog-home-card,
  .home-v6 .watch-piece,
  .home-v6 .voice-editorial,
  .home-v6 .program-index__row,
  .journal-card,.blog-feature-card,.principle-panel{
    transition:border-color .32s ease,box-shadow .48s var(--v6-ease),background-color .32s ease,transform .48s var(--v6-ease)
  }
  .home-v6 .blog-home-card:hover,
  .home-v6 .watch-piece:hover,
  .home-v6 .voice-editorial:hover,
  .journal-card:hover,.blog-feature-card:hover{
    box-shadow:0 24px 58px -44px rgba(22,17,13,.42)
  }
  .home-v6 .program-index__row:hover{box-shadow:inset 3px 0 0 var(--v6-accent)}
  .principle-panel:hover{background:rgba(255,255,255,.035)}
}

.home-v6 .blog-home-card img,
.home-v6 .watch-piece img,
.journal-card__media img,
.blog-feature-card img,
.inner-hero__portrait img{
  transition:transform 1.05s var(--v6-ease),filter .6s ease
}
@media (hover:hover) and (pointer:fine){
  .home-v6 .blog-home-card:hover img,
  .home-v6 .watch-piece:hover img,
  .journal-card:hover .journal-card__media img,
  .blog-feature-card:hover img{transform:scale(1.045);filter:saturate(1.035) contrast(1.015)}
}

/* Number/index typography gets a tiny counterweight motion. */
.program-index__number,.voice-editorial__index,.journal-card__index,.credential-open__index,.principle-panel__index{
  display:inline-block;transition:transform .48s var(--v6-ease),color .3s ease,opacity .3s ease
}
@media (hover:hover) and (pointer:fine){
  .program-index__row:hover .program-index__number,
  .voice-editorial:hover .voice-editorial__index,
  .journal-card:hover .journal-card__index,
  .credential-open:hover .credential-open__index,
  .principle-panel:hover .principle-panel__index{transform:translate3d(4px,-3px,0);color:var(--v6-accent)}
}

/* --- Inner-page hero: copy, portrait and meta land in three beats ------- */
.js .inner-hero__copy.is-visible .eyebrow{animation:v28EyebrowSettle .82s var(--v6-ease) both .04s}
.js .inner-hero__copy.is-visible h1{animation:v28TitleSettle 1.02s var(--v6-ease) both .09s}
.js .inner-hero__copy.is-visible .lead{animation:v28CopySettle .82s var(--v6-ease) both .18s}
.js .inner-hero__portrait.is-visible::before{animation:v28FrameDraw .95s var(--v6-ease) both .10s}
.js .inner-hero__portrait.is-visible img{animation:v28PortraitSettle 1.08s var(--v6-ease) both .06s}
@keyframes v28EyebrowSettle{from{opacity:0;transform:translateX(-12px);letter-spacing:.2em}to{opacity:1;transform:none}}
@keyframes v28TitleSettle{from{opacity:0;transform:translate3d(0,22px,0);letter-spacing:-.065em}to{opacity:1;transform:none}}
@keyframes v28CopySettle{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes v28FrameDraw{from{opacity:.15;transform:scale(.94);transform-origin:100% 0}to{opacity:1;transform:none}}
@keyframes v28PortraitSettle{from{opacity:0;transform:translate3d(10px,20px,0) scale(.975)}to{opacity:1;transform:none}}

/* --- Blog/list furniture: subtle directional movement ----------------- */
.filter-bar--journal.is-visible a,.filter-bar--journal.is-visible button{animation:v28FilterIn .62s var(--v6-ease) both}
.filter-bar--journal.is-visible :nth-child(2){animation-delay:.05s}.filter-bar--journal.is-visible :nth-child(3){animation-delay:.10s}.filter-bar--journal.is-visible :nth-child(4){animation-delay:.15s}.filter-bar--journal.is-visible :nth-child(n+5){animation-delay:.20s}
@keyframes v28FilterIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
.journal-card__body,.blog-feature-card__body{transition:transform .52s var(--v6-ease)}
@media (hover:hover) and (pointer:fine){.journal-card:hover .journal-card__body,.blog-feature-card:hover .blog-feature-card__body{transform:translateY(-4px)}}

/* --- Footer gains a slow, living final beat ---------------------------- */
@media (prefers-reduced-motion:no-preference){
  .footer-brand img{animation:v28FooterMark 6.5s ease-in-out infinite}
  .footer-index span{animation:v28FooterIndex 5.8s ease-in-out infinite}
}
@keyframes v28FooterMark{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(-1.4deg)}}
@keyframes v28FooterIndex{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.site-footer .footer-links a,.site-footer .footer-grid>div:nth-child(3)>a{position:relative;width:max-content;max-width:100%}
.site-footer .footer-links a::after,.site-footer .footer-grid>div:nth-child(3)>a::after{
  content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right center;transition:transform .42s var(--v6-ease)
}
.site-footer .footer-links a:hover::after,.site-footer .footer-grid>div:nth-child(3)>a:hover::after{transform:scaleX(1);transform-origin:left center}

/* --- Small controls ---------------------------------------------------- */
.to-top.is-visible span{display:inline-block;animation:v28TopNudge 1.8s ease-in-out infinite}
@keyframes v28TopNudge{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.button:active,.btn:active,.closing-editorial__button:active{transform:translateY(1px) scale(.985)}

/* V27 ended with a conflicting -10px process verb hover override. Keep one
   intentional, restrained direction in V28. */
.home-v6 .process-line:hover .process-line__verb{transform:translateX(7px)}

@media(max-width:720px){
  .site-brand__dot{animation-duration:4.8s}
  .home-v6 .credentials-editorial__grid>header::after,.home-v6 .journal-editorial__head::before{width:58px;margin-top:14px}
  .js .inner-hero__copy.is-visible h1,.js .inner-hero__portrait.is-visible img{animation-duration:.78s}
  .footer-brand img,.footer-index span,.to-top.is-visible span{animation:none!important}
}

@media(prefers-reduced-motion:reduce){
  .site-brand__dot,.footer-brand img,.footer-index span,.to-top.is-visible span{animation:none!important}
  .home-v6 .credentials-editorial__grid>header::after,.home-v6 .journal-editorial__head::before{transform:none!important;transition:none!important}
  .js .inner-hero__copy.is-visible .eyebrow,.js .inner-hero__copy.is-visible h1,.js .inner-hero__copy.is-visible .lead,.js .inner-hero__portrait.is-visible::before,.js .inner-hero__portrait.is-visible img,.filter-bar--journal.is-visible>*{animation:none!important}
}

/* Reduced motion must mean "present without animation", never "wait hidden for
   an observer". This also covers generic [data-sc-in] values without a named
   reveal variant. */
@media(prefers-reduced-motion:reduce){
  html.sc-live [data-sc-in],
  html.sc-live [data-sc-stagger]>*{
    opacity:1!important;transform:none!important;clip-path:none!important;
    transition:none!important;animation:none!important
  }
}

/* ========================================================================
   V29 — DEEPER EDITORIAL MOTION
   A second motion pass built on the existing ScrollCraft / reveal vocabulary.
   No extra animation engine; no continuous effects on touch devices.
   ======================================================================== */

/* --- Scroll-driven chapter rail ----------------------------------------
   Flow acts already publish --sc-p. Turn that existing signal into a quiet
   reading rail on wide screens instead of inventing a new scroll listener. */
@media (min-width:1100px) and (prefers-reduced-motion:no-preference){
  .home-v6 [data-sc-act="flow"]{position:relative}
  .home-v6 [data-sc-act="flow"]::after{
    content:"";position:absolute;z-index:2;right:clamp(18px,2.2vw,38px);top:50%;
    width:1px;height:72px;background:linear-gradient(180deg,transparent,rgba(120,103,89,.42),transparent);
    transform:translateY(-50%) scaleY(var(--sc-p,0));transform-origin:50% 0;
    opacity:.72;pointer-events:none;will-change:transform
  }
  .home-v6 .programs-editorial[data-sc-act="flow"]::after,
  .home-v6 .voices-editorial[data-sc-act="flow"]::after{background:linear-gradient(180deg,transparent,rgba(244,236,225,.34),transparent)}
}

/* --- Headline line choreography ----------------------------------------
   Parent headers still own the reveal. Their direct title fragments simply
   settle a few milliseconds apart, creating a real editorial beat. */
html.sc-live .home-v6 .v6-section-head[data-sc-in="mask"] h2>span,
html.sc-live .home-v6 .v6-section-head[data-sc-in="mask"] h2>em,
html.sc-live .home-v6 .watch-editorial__head[data-sc-in="mask"] h2>span,
html.sc-live .home-v6 .credentials-editorial header[data-sc-in="mask"] h2>span,
html.sc-live .home-v6 .credentials-editorial header[data-sc-in="mask"] h2>em,
html.sc-live .home-v6 .editorial-thesis .v6-display[data-sc-in="mask"]>span,
html.sc-live .home-v6 .editorial-thesis .v6-display[data-sc-in="mask"]>em,
html.sc-live .home-v6 .closing-editorial h2[data-sc-in]>span,
html.sc-live .home-v6 .closing-editorial h2[data-sc-in]>em{
  display:inline-block;opacity:0;transform:translate3d(0,.52em,0) skewY(1.2deg);
  transition:opacity .62s var(--v6-ease),transform .94s var(--v6-ease)
}
html.sc-live .home-v6 .v6-section-head[data-sc-in="mask"].sc-in h2>span,
html.sc-live .home-v6 .v6-section-head[data-sc-in="mask"].sc-in h2>em,
html.sc-live .home-v6 .watch-editorial__head[data-sc-in="mask"].sc-in h2>span,
html.sc-live .home-v6 .credentials-editorial header[data-sc-in="mask"].sc-in h2>span,
html.sc-live .home-v6 .credentials-editorial header[data-sc-in="mask"].sc-in h2>em,
html.sc-live .home-v6 .editorial-thesis .v6-display[data-sc-in="mask"].sc-in>span,
html.sc-live .home-v6 .editorial-thesis .v6-display[data-sc-in="mask"].sc-in>em,
html.sc-live .home-v6 .closing-editorial h2[data-sc-in].sc-in>span,
html.sc-live .home-v6 .closing-editorial h2[data-sc-in].sc-in>em{opacity:1;transform:none}
html.sc-live .home-v6 .v6-section-head[data-sc-in="mask"].sc-in h2>em,
html.sc-live .home-v6 .credentials-editorial header[data-sc-in="mask"].sc-in h2>em,
html.sc-live .home-v6 .editorial-thesis .v6-display[data-sc-in="mask"].sc-in>em,
html.sc-live .home-v6 .closing-editorial h2[data-sc-in].sc-in>em{transition-delay:.10s}
html.sc-live .home-v6 .watch-editorial__head[data-sc-in="mask"].sc-in h2>span:nth-of-type(2),
html.sc-live .home-v6 .closing-editorial h2[data-sc-in].sc-in>span:nth-of-type(2){transition-delay:.16s}

/* --- Pointer spotlight -------------------------------------------------
   ScrollCraft publishes --sc-mx / --sc-my. The light is deliberately low
   contrast so cards retain the site's flat editorial materiality. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  [data-sc-spotlight]{position:relative;isolation:isolate}
  [data-sc-spotlight]::after{
    content:"";position:absolute;z-index:0;inset:0;pointer-events:none;opacity:0;
    background:radial-gradient(440px circle at var(--sc-mxp,50%) var(--sc-myp,50%),rgba(255,255,255,.11),transparent 48%);
    transition:opacity .4s ease
  }
  [data-sc-spotlight]:hover::after{opacity:1}
  .home-v6 .program-index__row[data-sc-spotlight]::after{z-index:0;background:radial-gradient(520px circle at var(--sc-mxp,50%) var(--sc-myp,50%),rgba(255,248,239,.085),transparent 52%)}
  .home-v6 .program-index__row[data-sc-spotlight]>*{position:relative;z-index:1}
  .home-v6 .watch-piece[data-sc-spotlight]::after,
  .home-v6 .blog-home-card[data-sc-spotlight]::after{border-radius:inherit;background:radial-gradient(420px circle at var(--sc-mxp,50%) var(--sc-myp,50%),rgba(255,255,255,.15),transparent 50%)}
  .home-v6 .watch-piece[data-sc-spotlight]>* ,
  .home-v6 .blog-home-card[data-sc-spotlight]>* ,
  .home-v6 .credential-open[data-sc-spotlight]>* ,
  .journal-card[data-sc-spotlight]>* ,
  .blog-feature-card[data-sc-spotlight]>* ,
  .principle-panel[data-sc-spotlight]>* ,
  .contact-directory a[data-sc-spotlight]>*{position:relative;z-index:1}
  .journal-card[data-sc-spotlight]::after,.principle-panel[data-sc-spotlight]::after,.contact-directory a[data-sc-spotlight]::after{
    background:radial-gradient(360px circle at var(--sc-mxp,50%) var(--sc-myp,50%),rgba(201,35,49,.055),transparent 53%)
  }
}

/* --- Card copy resolves in smaller editorial beats --------------------- */
html.sc-live .home-v6 .blog-home-card .blog-home-card__body>* ,
html.sc-live .home-v6 .blog-home-card .blog-home-card__compact-body>* ,
html.sc-live .home-v6 .watch-piece .watch-piece__copy>* ,
html.sc-live .home-v6 .credential-open .credential-open__copy>*{
  opacity:0;transform:translate3d(0,8px,0);
  transition:opacity .48s var(--v6-ease),transform .66s var(--v6-ease)
}
html.sc-live .home-v6 .blog-home-card.sc-in .blog-home-card__body>* ,
html.sc-live .home-v6 .blog-home-card.sc-in .blog-home-card__compact-body>* ,
html.sc-live .home-v6 .watch-piece.sc-in .watch-piece__copy>* ,
html.sc-live .home-v6 .credential-open.sc-in .credential-open__copy>*{opacity:1;transform:none}
html.sc-live .home-v6 .blog-home-card.sc-in :is(.blog-home-card__body,.blog-home-card__compact-body)>*:nth-child(1),
html.sc-live .home-v6 .watch-piece.sc-in .watch-piece__copy>*:nth-child(1),
html.sc-live .home-v6 .credential-open.sc-in .credential-open__copy>*:nth-child(1){transition-delay:.22s}
html.sc-live .home-v6 .blog-home-card.sc-in :is(.blog-home-card__body,.blog-home-card__compact-body)>*:nth-child(2),
html.sc-live .home-v6 .watch-piece.sc-in .watch-piece__copy>*:nth-child(2),
html.sc-live .home-v6 .credential-open.sc-in .credential-open__copy>*:nth-child(2){transition-delay:.29s}
html.sc-live .home-v6 .blog-home-card.sc-in :is(.blog-home-card__body,.blog-home-card__compact-body)>*:nth-child(3),
html.sc-live .home-v6 .watch-piece.sc-in .watch-piece__copy>*:nth-child(3){transition-delay:.36s}
html.sc-live .home-v6 .blog-home-card.sc-in :is(.blog-home-card__body,.blog-home-card__compact-body)>*:nth-child(n+4),
html.sc-live .home-v6 .watch-piece.sc-in .watch-piece__copy>*:nth-child(n+4){transition-delay:.42s}

/* Portrait principles use their existing stagger, then settle the copy. */
html.sc-live .home-v6 .portrait-principle>span,
html.sc-live .home-v6 .portrait-principle>div{transition:opacity .5s var(--v6-ease),transform .72s var(--v6-ease)}
html.sc-live .home-v6 .portrait-principle:not(.sc-in)>span{opacity:0;transform:translateX(-8px)}
html.sc-live .home-v6 .portrait-principle:not(.sc-in)>div{opacity:0;transform:translateY(10px)}
html.sc-live .home-v6 .portrait-principle.sc-in>span,
html.sc-live .home-v6 .portrait-principle.sc-in>div{opacity:1;transform:none}
html.sc-live .home-v6 .portrait-principle.sc-in>div{transition-delay:.08s}

/* --- Inner-page list rhythm ------------------------------------------- */
.js .contact-directory[data-reveal-stagger]>a,
.js .contact-directory[data-reveal-stagger]>div{opacity:0;transform:translate3d(-10px,8px,0);transition:opacity .52s var(--v6-ease),transform .72s var(--v6-ease),background-color .25s ease}
.js .contact-directory[data-reveal-stagger].is-visible>a,
.js .contact-directory[data-reveal-stagger].is-visible>div{opacity:1;transform:none}

.js .blog-index-grid[data-reveal-stagger] .journal-card__body>*{
  opacity:0;transform:translateY(8px);transition:opacity .48s var(--v6-ease),transform .66s var(--v6-ease)
}
.js .blog-index-grid[data-reveal-stagger].is-visible .journal-card__body>*{opacity:1;transform:none}
.js .blog-index-grid[data-reveal-stagger].is-visible .journal-card__body>*:nth-child(1){transition-delay:.16s}
.js .blog-index-grid[data-reveal-stagger].is-visible .journal-card__body>*:nth-child(2){transition-delay:.22s}
.js .blog-index-grid[data-reveal-stagger].is-visible .journal-card__body>*:nth-child(3){transition-delay:.28s}
.js .blog-index-grid[data-reveal-stagger].is-visible .journal-card__body>*:nth-child(n+4){transition-delay:.34s}

/* FAQ open state gets a readable beat without animating layout height. */
.public-v20--contact .faq-list details p{opacity:.2;transform:translateY(-6px);transition:opacity .36s var(--v6-ease),transform .46s var(--v6-ease)}
.public-v20--contact .faq-list details[open] p{opacity:1;transform:none}
.public-v20--contact .faq-list details[open] summary{color:var(--brand)}

/* --- Navigation and footer polish ------------------------------------- */
@media (hover:hover) and (pointer:fine){
  .site-nav__link{position:relative}
  .site-nav__link::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right center;transition:transform .42s var(--v6-ease)}
  .site-nav__link:hover::after,.site-nav__link[aria-current="page"]::after{transform:scaleX(1);transform-origin:left center}
  .footer-intro__link:hover{letter-spacing:.005em}
}

/* A soft active pulse on video play, not a permanent spinner. */
@media (prefers-reduced-motion:no-preference){
  .home-v6 .watch-piece:hover .watch-piece__play::after{content:"";position:absolute;inset:-8px;border:1px solid rgba(255,255,255,.44);border-radius:50%;animation:v29PlayPulse 1.25s var(--v6-ease) infinite}
}
@keyframes v29PlayPulse{0%{opacity:.7;transform:scale(.82)}75%,100%{opacity:0;transform:scale(1.18)}}

/* Keep touch calmer: entrance choreography remains, pointer ambience does not. */
@media(max-width:720px){
  html.sc-live .home-v6 .v6-section-head[data-sc-in="mask"] h2>span,
  html.sc-live .home-v6 .v6-section-head[data-sc-in="mask"] h2>em,
  html.sc-live .home-v6 .watch-editorial__head[data-sc-in="mask"] h2>span,
  html.sc-live .home-v6 .credentials-editorial header[data-sc-in="mask"] h2>span,
  html.sc-live .home-v6 .credentials-editorial header[data-sc-in="mask"] h2>em{transition-duration:.68s;transform:translate3d(0,.32em,0)}
}

@media(prefers-reduced-motion:reduce){
  html.sc-live .home-v6 .v6-section-head h2>span,
  html.sc-live .home-v6 .v6-section-head h2>em,
  html.sc-live .home-v6 .watch-editorial__head h2>span,
  html.sc-live .home-v6 .credentials-editorial h2>span,
  html.sc-live .home-v6 .credentials-editorial h2>em,
  html.sc-live .home-v6 .editorial-thesis .v6-display>span,
  html.sc-live .home-v6 .editorial-thesis .v6-display>em,
  html.sc-live .home-v6 .closing-editorial h2>span,
  html.sc-live .home-v6 .closing-editorial h2>em,
  html.sc-live .home-v6 .blog-home-card :is(.blog-home-card__body,.blog-home-card__compact-body)>*,
  html.sc-live .home-v6 .watch-piece .watch-piece__copy>*,
  html.sc-live .home-v6 .credential-open .credential-open__copy>*,
  .js .contact-directory[data-reveal-stagger]>* ,
  .js .blog-index-grid[data-reveal-stagger] .journal-card__body>*{
    opacity:1!important;transform:none!important;transition:none!important;animation:none!important
  }
  .public-v20--contact .faq-list details p{opacity:1;transform:none;transition:none}
}

/* ========================================================================
   V30 — SCROLL-LED CINEMATIC DETAIL
   More movement without another animation engine. The existing ScrollCraft
   progress/reveal signals do the work; touch and reduced-motion stay quieter.
   ======================================================================== */

/* --- Media shutters -----------------------------------------------------
   Cards no longer simply fade in: their image is uncovered by a short paper/
   ink wipe. The overlay only exists while ScrollCraft is confirmed live, so a
   runtime failure can never hide real media. */
html.sc-live .home-v6 :is(.program-index__media,.watch-piece__visual,.credential-open__media,.blog-home-card__media,.blog-home-card__thumb){position:relative}
html.sc-live .home-v6 :is(.program-index__media,.watch-piece__visual,.credential-open__media,.blog-home-card__media,.blog-home-card__thumb)::before{
  content:"";position:absolute;z-index:4;inset:-1px;pointer-events:none;
  background:var(--v6-paper);transform:scaleX(1);transform-origin:right center;
  transition:transform 1.08s var(--v6-ease);will-change:transform
}
html.sc-live .home-v6 .program-index__media::before{background:#211e1b}
html.sc-live .home-v6 .watch-piece__visual::before{background:#d9d0c5}
html.sc-live .home-v6 .credential-open__media::before{background:#eee7dd}
html.sc-live .home-v6 .blog-home-card:nth-child(even) :is(.blog-home-card__media,.blog-home-card__thumb)::before,
html.sc-live .home-v6 .watch-piece:nth-child(even) .watch-piece__visual::before,
html.sc-live .home-v6 .credential-open:nth-child(even) .credential-open__media::before{transform-origin:left center}
html.sc-live .home-v6 :is(.program-index__row,.watch-piece,.credential-open,.blog-home-card).sc-in :is(.program-index__media,.watch-piece__visual,.credential-open__media,.blog-home-card__media,.blog-home-card__thumb)::before{transform:scaleX(0);transition-delay:.04s}

/* Inner-page media gets the same family of reveal without turning pages into
   homepage clones. */
.js .journal-card__media,.js .blog-feature-card__media,.js .article-cover--editorial{position:relative;overflow:hidden}
.js .journal-card__media::before,.js .blog-feature-card__media::before,.js .article-cover--editorial::before{
  content:"";position:absolute;z-index:3;inset:-1px;background:var(--v20-paper,#f7f2eb);
  transform:scaleX(1);transform-origin:right center;transition:transform 1s var(--v6-ease);pointer-events:none
}
.js :is(.journal-card,.blog-feature-card).is-visible .journal-card__media::before,
.js :is(.journal-card,.blog-feature-card).is-visible .blog-feature-card__media::before,
.js .article-cover--editorial.is-visible::before{transform:scaleX(0)}

/* --- Scroll progress marks ---------------------------------------------
   --sc-p is already published by flow acts. A short rule at the section edge
   grows while that chapter is being read; it is deliberately not a full-width
   progress bar. */
@media (min-width:900px) and (prefers-reduced-motion:no-preference){
  .home-v6 :is(.editorial-thesis,.editorial-process,.portrait-story,.programs-editorial,.voices-editorial,.journal-editorial,.watch-editorial,.credentials-editorial,.closing-editorial)[data-sc-act="flow"]{position:relative}
  .home-v6 :is(.editorial-thesis,.editorial-process,.portrait-story,.programs-editorial,.voices-editorial,.journal-editorial,.watch-editorial,.credentials-editorial,.closing-editorial)[data-sc-act="flow"]::before{
    content:"";position:absolute;z-index:3;left:clamp(18px,2.2vw,38px);top:clamp(28px,5vw,64px);
    width:clamp(42px,5vw,74px);height:2px;background:var(--v6-accent);opacity:.72;
    transform:scaleX(clamp(.08,var(--sc-p,0),1));transform-origin:left center;will-change:transform
  }
  .home-v6 :is(.programs-editorial,.voices-editorial)[data-sc-act="flow"]::before{background:rgba(244,236,225,.7)}
}

/* --- Drawn emphasis -----------------------------------------------------
   Serif emphasis keeps its editorial role but now receives a restrained ink
   stroke only after the heading itself has resolved. */
.home-v6 :is(.v6-section-head,.credentials-editorial header,.editorial-thesis,.closing-editorial) h2 em{position:relative;display:inline-block}
.home-v6 :is(.v6-section-head,.credentials-editorial header,.editorial-thesis,.closing-editorial) h2 em::after{
  content:"";position:absolute;left:.02em;right:.01em;bottom:.03em;height:2px;background:currentColor;
  opacity:.34;transform:scaleX(0);transform-origin:left center;transition:transform .9s var(--v6-ease) .26s
}
html.sc-live .home-v6 :is(.v6-section-head,.credentials-editorial header,.editorial-thesis,.closing-editorial).sc-in h2 em::after,
html.sc-live .home-v6 .closing-editorial h2.sc-in em::after{transform:scaleX(1)}

/* --- Button / link follow-through -------------------------------------- */
.program-index__aside a b,.watch-piece__action b,.credential-open__view b{display:inline-block;transition:transform .42s var(--v6-ease)}
@media (hover:hover) and (pointer:fine){
  .program-index__aside a:hover b,.watch-piece:hover .watch-piece__action b,.credential-open:hover .credential-open__view b{transform:translate3d(4px,-4px,0) rotate(4deg)}
  .v6-text-link,.text-link,.article-back{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:100% 100%;background-size:0 1px;transition:background-size .48s var(--v6-ease),color .25s ease}
  .v6-text-link:hover,.text-link:hover,.article-back:hover{background-position:0 100%;background-size:100% 1px}
}

/* --- Long-form reading rhythm ------------------------------------------ */
.js .prose--article > :is(h2,h3)[data-reveal="mask"]{transform-origin:left bottom}
.js .prose--article > :is(h2,h3)[data-reveal="mask"].is-visible{transition-delay:.02s}
.js .prose--article > blockquote[data-reveal="lift"]{transform:translate3d(0,22px,0) scale(.99)}
.js .prose--article > blockquote[data-reveal="lift"].is-visible{transform:none}
.js .article-author-card[data-reveal],.js .article-back[data-reveal]{transition-delay:.08s}

/* Article progress gains a tiny glow only while reading; fixed 2px geometry is
   unchanged, so it never shifts layout. */
.article-reading-progress span{box-shadow:0 0 14px rgba(212,73,50,.18)}

/* --- Small editorial details ------------------------------------------- */
.home-v6 .voice-editorial__person img,.home-v6 .credential-open__media img{transform-origin:center center}
@media (hover:hover) and (pointer:fine){
  .home-v6 .credential-open:hover .credential-open__media img{transform:scale(1.025)}
  .home-v6 .program-index__row:hover .program-index__number{transform:translate3d(5px,-4px,0) rotate(-2deg)}
}

/* Mobile keeps the entrances but loses long wipes/parallax-looking travel. */
@media(max-width:720px){
  html.sc-live .home-v6 :is(.program-index__media,.watch-piece__visual,.credential-open__media,.blog-home-card__media,.blog-home-card__thumb)::before{transition-duration:.72s}
  .home-v6 :is(.v6-section-head,.credentials-editorial header,.editorial-thesis,.closing-editorial) h2 em::after{transition-duration:.62s}
}

@media(prefers-reduced-motion:reduce){
  html.sc-live .home-v6 :is(.program-index__media,.watch-piece__visual,.credential-open__media,.blog-home-card__media,.blog-home-card__thumb)::before,
  .js .journal-card__media::before,.js .blog-feature-card__media::before,.js .article-cover--editorial::before{display:none!important}
  .home-v6 :is(.v6-section-head,.credentials-editorial header,.editorial-thesis,.closing-editorial) h2 em::after{transform:scaleX(1)!important;transition:none!important}
  .js .prose--article > :is(h2,h3,blockquote,figure)[data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}
}

/* V30 follow-up: grouped inner-page cards receive visibility on their stagger
   parent, not on each card. Release their shutters from the actual owner. */
.js .blog-index-grid[data-reveal-stagger].is-visible .journal-card__media::before,
.js [data-reveal-stagger].is-visible .blog-feature-card__media::before{transform:scaleX(0)}

/* Thesis owns flow progress while its title owns the reveal state. */
html.sc-live .home-v6 .editorial-thesis h2.sc-in em::after{transform:scaleX(1)}

/* The mobile direction intentionally keeps scroll entrances but not continuous
   image drift. ScrollCraft may still publish an inline translate; this rule is
   the presentation-level breakpoint guard. */
@media(max-width:720px){
  .home-v6 [data-sc-parallax]{transform:none!important}
}

/* ========================================================================
   V31 — TEXT REVEALS + CINEMATIC BRAND LOADER
   ======================================================================== */

/* Branded opening sequence. Uses the configured site logo; no duplicate asset. */
.site-loader{
  opacity:1;visibility:hidden;overflow:hidden;
}
/* The document stays visually and interactively gated until the loader has
   completed its own exit. This prevents ScrollCraft/page entrances from
   flashing through beneath the brand intro. */
html.site-loading,html.site-loading body{overflow:hidden}
html.site-loading body > :not(.site-loader):not(script){visibility:hidden!important;pointer-events:none!important}
html.site-loading .site-loader{visibility:visible;opacity:1;pointer-events:auto}
html.site-loader-complete .site-loader__meter i{animation-play-state:paused;transform:translateX(0);width:100%}
html.site-loader-complete .site-loader__meter b{animation:none;left:calc(100% - 7px);opacity:1}
html.site-loader-leaving .site-loader{visibility:visible;opacity:1;pointer-events:none}
.site-loader::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.34) 50%,transparent 65%);
  transform:translateX(-120%);animation:siteLoaderSheen 1.65s ease-in-out infinite
}
.site-loader__shell{width:min(520px,100%);text-align:center;border:0;padding:24px;display:grid;justify-items:center}
.site-loader__edition{margin:0 0 28px;opacity:0;transform:translateY(8px);animation:loaderTextIn .62s var(--v6-ease) .08s forwards}
.site-loader__stage{position:relative;display:grid;place-items:center;width:138px;height:138px;margin-bottom:24px}
.site-loader__orbit{position:absolute;inset:0;border:1px solid rgba(21,19,16,.12);border-radius:50%;opacity:0;transform:scale(.72) rotate(-24deg);animation:loaderOrbitIn .8s var(--v6-ease) .12s forwards}
.site-loader__orbit::before{content:"";position:absolute;inset:10px;border:1px dashed rgba(212,73,50,.32);border-radius:50%;animation:loaderOrbitSpin 8s linear infinite}
.site-loader__orbit i,.site-loader__orbit b{position:absolute;display:block;border-radius:50%;background:var(--v6-accent,#d44932)}
.site-loader__orbit i{width:7px;height:7px;left:15px;top:43px;box-shadow:0 0 0 7px rgba(212,73,50,.08)}
.site-loader__orbit b{width:4px;height:4px;right:18px;bottom:34px;opacity:.55}
.site-loader__mark{position:relative;z-index:2;width:82px;height:82px;display:grid;place-items:center;border-radius:22px;background:rgba(255,255,255,.65);border:1px solid rgba(21,19,16,.11);box-shadow:0 22px 55px -34px rgba(21,19,16,.58);overflow:hidden;opacity:0;transform:scale(.68) rotate(-7deg);animation:loaderLogoIn .82s var(--v6-ease) .2s forwards}
.site-loader__mark::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);pointer-events:none}
.site-loader__mark img{width:62px;height:62px;object-fit:contain;animation:loaderLogoBreathe 2.4s ease-in-out 1.05s infinite}
.site-loader__copy{display:flex;flex-direction:column;align-items:center;line-height:1.05;overflow:hidden}
.site-loader__copy strong{font-size:clamp(1.65rem,5vw,2.35rem);opacity:0;transform:translateY(100%);animation:loaderWordIn .72s var(--v6-ease) .42s forwards}
.site-loader__copy small{margin-top:8px;opacity:0;transform:translateY(10px);animation:loaderTextIn .62s var(--v6-ease) .56s forwards}
.site-loader__footer{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:30px;min-height:18px}
.site-loader__status{margin:0;opacity:0;animation:loaderTextIn .5s var(--v6-ease) .66s forwards}
.site-loader__pulse{display:flex;gap:4px;align-items:center}
.site-loader__pulse i{width:3px;height:3px;border-radius:50%;background:var(--v6-accent,#d44932);animation:loaderDot 1s ease-in-out infinite}
.site-loader__pulse i:nth-child(2){animation-delay:.12s}.site-loader__pulse i:nth-child(3){animation-delay:.24s}
.site-loader__meter{position:relative;width:min(260px,72vw);height:1px;margin-top:16px;overflow:visible;background:rgba(21,19,16,.10)}
.site-loader__meter i{position:absolute;left:0;top:-1px;width:36%;height:3px;background:var(--v6-accent,#d44932);transform-origin:left center;animation:siteLoaderMeter 1.28s var(--v6-ease) infinite}
.site-loader__meter b{position:absolute;top:-3px;left:0;width:7px;height:7px;border-radius:50%;background:var(--v6-accent,#d44932);box-shadow:0 0 0 6px rgba(212,73,50,.08);animation:loaderMeterDot 1.28s var(--v6-ease) infinite}
.site-loader--compact .site-loader__orbit::before,.site-loader--compact .site-loader__mark img{animation:none}
html.site-loader-leaving .site-loader__shell{opacity:0;transform:translateY(-22px) scale(.975);filter:blur(7px);transition:opacity .34s ease,transform .58s var(--v6-ease),filter .46s ease}
html.site-loader-leaving .site-loader::after{opacity:0;transition:opacity .3s ease}

@keyframes loaderLogoIn{to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes loaderOrbitIn{to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes loaderOrbitSpin{to{transform:rotate(360deg)}}
@keyframes loaderLogoBreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@keyframes loaderWordIn{to{opacity:1;transform:translateY(0)}}
@keyframes loaderTextIn{to{opacity:1;transform:translateY(0)}}
@keyframes loaderDot{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
@keyframes loaderMeterDot{0%{left:0;opacity:0}12%{opacity:1}70%{opacity:1}100%{left:calc(100% - 7px);opacity:0}}
@keyframes siteLoaderSheen{0%,42%{transform:translateX(-120%)}75%,100%{transform:translateX(120%)}}

/* Text is allowed to arrive after its structural container, producing a more
   authored reading rhythm without splitting CMS text into spans/words. */
html.sc-live .home-v6 .motion-copy .motion-copy__part,
html.sc-live .home-v6 .motion-program-copy .program-index__main > *,
html.sc-live .home-v6 .motion-program-copy .program-index__aside > *{
  opacity:0;filter:blur(5px);transform:translate3d(0,22px,0) skewY(.7deg);
  transition:opacity .62s var(--v6-ease),transform .88s var(--v6-ease),filter .76s ease;
  transition-delay:calc(var(--motion-copy-i,0) * 74ms)
}
html.sc-live .home-v6 .motion-copy.sc-in .motion-copy__part,
html.sc-live .home-v6 .motion-program-copy.sc-in .program-index__main > *,
html.sc-live .home-v6 .motion-program-copy.sc-in .program-index__aside > *{
  opacity:1;filter:blur(0);transform:none
}
.js [data-reveal].motion-copy .motion-copy__part{
  opacity:0;filter:blur(4px);transform:translate3d(0,18px,0);
  transition:opacity .58s var(--v6-ease),transform .82s var(--v6-ease),filter .7s ease;
  transition-delay:calc(var(--motion-copy-i,0) * 78ms)
}
.js [data-reveal].motion-copy.is-visible .motion-copy__part{opacity:1;filter:blur(0);transform:none}
.js [data-reveal="text"]{opacity:0;filter:blur(4px);transform:translate3d(0,24px,0);clip-path:inset(0 0 18% 0);transition:opacity .66s var(--v6-ease),transform .9s var(--v6-ease),filter .78s ease,clip-path .82s var(--v6-ease)}
.js [data-reveal="text"].is-visible{opacity:1;filter:blur(0);transform:none;clip-path:inset(0)}

/* Slight directional variety keeps long pages from becoming metronomic. */
.js .prose--article > [data-reveal="text"]:nth-child(3n+1),
.js .prose--story > [data-reveal="text"]:nth-child(3n+1){transform:translate3d(12px,22px,0)}
.js .prose--article > [data-reveal="text"]:nth-child(3n+2),
.js .prose--story > [data-reveal="text"]:nth-child(3n+2){transform:translate3d(-10px,22px,0)}
.js .prose--article > [data-reveal="text"].is-visible,
.js .prose--story > [data-reveal="text"].is-visible{transform:none}

@media(max-width:720px){
  .site-loader__stage{width:112px;height:112px;margin-bottom:20px}.site-loader__mark{width:68px;height:68px;border-radius:18px}.site-loader__mark img{width:50px;height:50px}.site-loader__edition{margin-bottom:20px}
  html.sc-live .home-v6 .motion-copy .motion-copy__part,html.sc-live .home-v6 .motion-program-copy .program-index__main > *,html.sc-live .home-v6 .motion-program-copy .program-index__aside > *{filter:blur(3px);transform:translate3d(0,14px,0);transition-duration:.56s,.68s,.55s}
  .js [data-reveal="text"]{filter:blur(2px);transform:translate3d(0,16px,0);clip-path:none}
}
@media(prefers-reduced-motion:reduce){
  .site-loader::after,.site-loader__orbit::before,.site-loader__mark img,.site-loader__pulse i,.site-loader__meter i,.site-loader__meter b{animation:none!important}
  .site-loader__edition,.site-loader__orbit,.site-loader__mark,.site-loader__copy strong,.site-loader__copy small,.site-loader__status{opacity:1!important;transform:none!important;animation:none!important}
  html.sc-live .home-v6 .motion-copy .motion-copy__part,html.sc-live .home-v6 .motion-program-copy .program-index__main > *,html.sc-live .home-v6 .motion-program-copy .program-index__aside > *,
  .js [data-reveal].motion-copy .motion-copy__part,.js [data-reveal="text"]{opacity:1!important;filter:none!important;transform:none!important;clip-path:none!important;transition:none!important}
}
/* Keep the animated loading rule inside its track in the V31 composition. */
@keyframes siteLoaderMeter{0%{transform:translateX(-110%)}58%,100%{transform:translateX(178%)}}

/* ========================================================================
   V34 — RICHER EDITORIAL MOTION
   More authored movement, still on the existing ScrollCraft/reveal clocks.
   No extra requestAnimationFrame loop is introduced.
   ======================================================================== */

@media (prefers-reduced-motion:no-preference){
  /* Headline copy now arrives through a slightly deeper mask rather than only
     translating upward. The structural element remains the CMS-bound node. */
  html.sc-live .home-v6 .motion-copy .motion-copy__part:is(h2,h3),
  .js [data-reveal].motion-copy .motion-copy__part:is(h1,h2,h3){
    clip-path:inset(0 0 52% 0);
    transform:translate3d(0,34px,0) rotate(.7deg);
    filter:blur(6px);
    transition-property:opacity,transform,filter,clip-path;
    transition-duration:.68s,1.02s,.76s,.96s;
    transform-origin:left bottom
  }
  html.sc-live .home-v6 .motion-copy.sc-in .motion-copy__part:is(h2,h3),
  .js [data-reveal].motion-copy.is-visible .motion-copy__part:is(h1,h2,h3){
    clip-path:inset(0);transform:none;filter:blur(0)
  }
  html.sc-live .home-v6 .motion-copy .motion-copy__part:is(.v6-eyebrow,p):nth-child(even),
  .js [data-reveal].motion-copy .motion-copy__part:is(.eyebrow,p):nth-child(even){
    transform:translate3d(12px,22px,0) skewY(.65deg)
  }
  html.sc-live .home-v6 .motion-copy.sc-in .motion-copy__part,
  .js [data-reveal].motion-copy.is-visible .motion-copy__part{transform:none}

  /* Media receives a second-stage aperture after the paper shutter. Clip-path
     is compositor-friendly and does not fight card tilt or image hover scale. */
  html.sc-live .home-v6 .motion-v34-card .motion-v34-media img,
  html.sc-live .home-v6 .motion-v34-media[data-sc-in] img{
    clip-path:inset(0 9% 0 9% round 1px);
    filter:saturate(.88) contrast(.97) brightness(.96);
    transition:clip-path 1.12s var(--v6-ease),filter 1.05s ease,transform .75s var(--v6-ease),opacity .45s ease
  }
  html.sc-live .home-v6 .motion-v34-card.sc-in .motion-v34-media img,
  html.sc-live .home-v6 .motion-v34-media[data-sc-in].sc-in img{
    clip-path:inset(0);filter:saturate(1) contrast(1) brightness(1)
  }
  .js .motion-v34-card.is-visible .motion-v34-media img,
  .js .motion-v34-media.is-visible img{
    clip-path:inset(0);filter:saturate(1) contrast(1) brightness(1)
  }
  .js .motion-v34-card .motion-v34-media img,
  .js .motion-v34-media[data-reveal] img{
    clip-path:inset(0 8% 0 8%);filter:saturate(.9) brightness(.97);
    transition:clip-path 1s var(--v6-ease),filter .9s ease,transform .7s var(--v6-ease)
  }

  /* Indices land like editorial folio numbers instead of simply fading. */
  html.sc-live .home-v6 .motion-v34-card .motion-v34-index,
  html.sc-live .home-v6 .motion-v34-index[data-sc-in],
  .js [data-reveal-stagger] .motion-v34-index,
  .js .motion-v34-card[data-reveal] .motion-v34-index{
    opacity:0;transform:translate3d(-10px,10px,0) rotate(-8deg) scale(.88);
    transition:opacity .5s var(--v6-ease),transform .86s var(--v6-ease)
  }
  html.sc-live .home-v6 .motion-v34-card.sc-in .motion-v34-index,
  html.sc-live .home-v6 .motion-v34-index.sc-in,
  .js [data-reveal-stagger].is-visible .motion-v34-index,
  .js .motion-v34-card[data-reveal].is-visible .motion-v34-index{
    opacity:1;transform:none
  }

  /* Section progress gains a tiny traveling ink bead. It is driven only by
     --sc-p, which ScrollCraft already publishes for flow chapters. */
  @media (min-width:900px){
    .home-v6 .motion-v34-section[data-sc-act="flow"]{--v34-p:clamp(0,var(--sc-p,0),1)}
    .home-v6 .motion-v34-section[data-sc-act="flow"] .v6-eyebrow,
    .home-v6 .motion-v34-section[data-sc-act="flow"] > .v6-wrap > header .v6-eyebrow{position:relative}
    .home-v6 .motion-v34-section[data-sc-act="flow"] .v6-eyebrow::after{
      content:"";display:inline-block;width:5px;height:5px;margin-left:10px;border-radius:50%;vertical-align:middle;
      background:var(--v6-accent);opacity:calc(.25 + var(--v34-p) * .75);
      transform:translate3d(calc(var(--v34-p) * 12px),0,0) scale(calc(.72 + var(--v34-p) * .28));
      transition:opacity 120ms linear,transform 120ms linear
    }
  }

  /* CTA arrows carry through the motion rather than stopping when copy settles. */
  .motion-v34-cta span[aria-hidden="true"],
  .motion-v34-cta b{display:inline-block;transition:transform .48s var(--v6-ease),opacity .3s ease}
  @media (hover:hover) and (pointer:fine){
    .motion-v34-cta:hover span[aria-hidden="true"],
    .motion-v34-cta:hover b{transform:translate3d(5px,-5px,0) rotate(7deg)}
    .motion-v34-cta:active span[aria-hidden="true"],
    .motion-v34-cta:active b{transform:translate3d(2px,-2px,0) rotate(3deg)}

    .site-brand img{transition:transform .7s var(--v6-ease),filter .4s ease}
    .site-brand:hover img{transform:rotate(-4deg) scale(1.055);filter:saturate(1.06)}

    .motion-v34-card{transition-property:transform,box-shadow,border-color,background-color;transition-duration:.55s,.5s,.35s,.35s;transition-timing-function:var(--v6-ease)}
    .home-v6 .motion-v34-card:hover{box-shadow:0 26px 72px -34px rgba(21,19,16,.34)}
    .public-v20 .motion-v34-card:hover{box-shadow:0 24px 64px -38px rgba(21,19,16,.3)}
  }

  /* Footer content receives a final brand flourish once its existing reveal
     completes. This runs once; the wave remains the only continuous motion. */
  .js .site-footer .footer-grid--v5.is-visible .footer-brand img{
    animation:v34FooterMark .9s var(--v6-ease) .12s both
  }
  .js .site-footer .footer-intro.is-visible .footer-intro__link span{
    animation:v34ArrowLand .8s var(--v6-ease) .32s both
  }

  @keyframes v34FooterMark{
    from{opacity:0;transform:translate3d(0,12px,0) rotate(-9deg) scale(.88)}
    to{opacity:1;transform:none}
  }
  @keyframes v34ArrowLand{
    0%{opacity:0;transform:translate3d(-7px,7px,0) rotate(-10deg)}
    100%{opacity:1;transform:none}
  }
}

@media(max-width:720px) and (prefers-reduced-motion:no-preference){
  /* Mobile keeps the richer sequence but shortens distance/blur so the page
     still feels immediate on touch devices. */
  html.sc-live .home-v6 .motion-copy .motion-copy__part:is(h2,h3),
  .js [data-reveal].motion-copy .motion-copy__part:is(h1,h2,h3){
    transform:translate3d(0,22px,0) rotate(.35deg);filter:blur(3px);clip-path:inset(0 0 30% 0);
    transition-duration:.56s,.72s,.52s,.7s
  }
  html.sc-live .home-v6 .motion-v34-card .motion-v34-media img,
  html.sc-live .home-v6 .motion-v34-media[data-sc-in] img,
  .js .motion-v34-card .motion-v34-media img{clip-path:inset(0 4%);filter:none;transition-duration:.72s}
}

@media(prefers-reduced-motion:reduce){
  html.sc-live .home-v6 .motion-copy .motion-copy__part,
  .js [data-reveal].motion-copy .motion-copy__part,
  html.sc-live .home-v6 .motion-v34-card .motion-v34-media img,
  html.sc-live .home-v6 .motion-v34-media img,
  .js .motion-v34-card .motion-v34-media img,
  html.sc-live .home-v6 .motion-v34-index,
  .js .motion-v34-index{
    opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important;transition:none!important;animation:none!important
  }
  .site-footer .footer-brand img,.site-footer .footer-intro__link span{animation:none!important}
}

/* ========================================================================
   V35 — COMPACT, EQUAL BLOG CARDS + RESPONSIVE CARD RHYTHM
   One card geometry is used per surface. Content length is clamped so CMS
   copy cannot change the visual height of an individual card.
   ======================================================================== */

/* Homepage journal: equal compact cards instead of one oversized lead card. */
.home-v6 .journal-editorial__cards--uniform{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(16px,1.8vw,24px);
  align-items:stretch;
}
.home-v6 .journal-editorial__cards--uniform .blog-home-card{
  display:flex;
  min-width:0;
  height:440px;
  flex-direction:column;
  overflow:hidden;
}
.home-v6 .journal-editorial__cards--uniform .blog-home-card__media{
  position:relative;
  display:block;
  flex:0 0 164px;
  min-height:0;
  margin:0;
  overflow:hidden;
  border-radius:0;
  background:#d8cec2;
}
.home-v6 .journal-editorial__cards--uniform .blog-home-card__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .7s var(--v6-ease),filter .4s ease;
}
.home-v6 .journal-editorial__cards--uniform .blog-home-card__body{
  display:flex;
  min-width:0;
  flex:1 1 auto;
  flex-direction:column;
  padding:20px 21px 19px;
}
.home-v6 .journal-editorial__cards--uniform .blog-home-card__meta{margin-bottom:12px}
.home-v6 .journal-editorial__cards--uniform .blog-home-card h3{
  display:-webkit-box;
  overflow:hidden;
  min-width:0;
  margin:0;
  font-size:clamp(1.48rem,2vw,2.05rem);
  line-height:1.02;
  letter-spacing:-.04em;
  overflow-wrap:anywhere;
  word-break:break-word;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.home-v6 .journal-editorial__cards--uniform .blog-home-card__body>p{
  display:-webkit-box;
  overflow:hidden;
  margin:12px 0 15px;
  color:var(--v6-muted);
  font-size:.89rem;
  line-height:1.52;
  overflow-wrap:anywhere;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.home-v6 .journal-editorial__cards--uniform .blog-home-card__link{margin-top:auto}

/* Blog index: featured status is now a label, not a larger box. */
.public-v20--blog .blog-index-grid--uniform{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,2vw,28px);
  align-items:stretch;
}
.public-v20--blog .blog-index-grid--uniform .journal-card{
  display:flex;
  min-width:0;
  height:452px;
  flex-direction:column;
  padding:10px;
  border:1px solid var(--v20-line);
  border-radius:16px;
  background:rgba(255,255,255,.56);
}
.public-v20--blog .blog-index-grid--uniform .journal-card__media{
  display:block;
  flex:0 0 174px;
  width:100%;
  min-height:0;
  margin:0;
  overflow:hidden;
  aspect-ratio:auto;
  border-radius:11px;
  background:var(--shell);
}
.public-v20--blog .blog-index-grid--uniform .journal-card__media img{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
}
.public-v20--blog .blog-index-grid--uniform .journal-card__body{
  display:flex;
  min-width:0;
  flex:1 1 auto;
  flex-direction:column;
  padding:15px 7px 6px;
}
.public-v20--blog .journal-card__topline{
  display:flex;
  min-height:22px;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.public-v20--blog .blog-index-grid--uniform .journal-card__index{
  position:static;
  display:inline-block;
  color:var(--v20-red);
  font-family:var(--font-ui);
  font-size:.67rem;
  font-weight:800;
  letter-spacing:.08em;
}
.public-v20--blog .journal-card__label{
  color:var(--v20-red);
  font-family:var(--font-ui);
  font-size:.62rem;
  font-weight:760;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.public-v20--blog .blog-index-grid--uniform .post-card__meta{
  min-width:0;
  padding-right:0;
  margin-bottom:9px;
}
.public-v20--blog .blog-index-grid--uniform .journal-card h2{
  display:-webkit-box;
  overflow:hidden;
  max-width:none;
  min-width:0;
  margin:0;
  font-size:clamp(1.35rem,1.7vw,1.72rem);
  line-height:1.04;
  letter-spacing:-.035em;
  overflow-wrap:anywhere;
  word-break:break-word;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.public-v20--blog .blog-index-grid--uniform .journal-card p{
  display:-webkit-box;
  overflow:hidden;
  max-width:none;
  margin:11px 0 14px;
  color:var(--muted);
  font-size:.89rem;
  line-height:1.52;
  overflow-wrap:anywhere;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.public-v20--blog .blog-index-grid--uniform .journal-card .text-link{
  align-self:flex-start;
  margin-top:auto;
}

@media(max-width:1040px){
  .home-v6 .journal-editorial__cards--uniform,
  .public-v20--blog .blog-index-grid--uniform{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-v6 .journal-editorial__cards--uniform .blog-home-card{height:424px}
  .public-v20--blog .blog-index-grid--uniform .journal-card{height:438px}
}

@media(max-width:680px){
  .home-v6 .journal-editorial__cards--uniform,
  .public-v20--blog .blog-index-grid--uniform{grid-template-columns:minmax(0,1fr);gap:15px}
  .home-v6 .journal-editorial__cards--uniform .blog-home-card{
    width:100%;
    height:408px;
    border-radius:16px;
  }
  .home-v6 .journal-editorial__cards--uniform .blog-home-card__media{flex-basis:150px}
  .home-v6 .journal-editorial__cards--uniform .blog-home-card__body{padding:17px 18px 17px}
  .home-v6 .journal-editorial__cards--uniform .blog-home-card h3{font-size:clamp(1.42rem,7vw,1.82rem);-webkit-line-clamp:3}
  .home-v6 .journal-editorial__cards--uniform .blog-home-card__body>p{font-size:.86rem;-webkit-line-clamp:2}

  .public-v20--blog .blog-index-grid--uniform .journal-card{
    width:100%;
    height:414px;
    padding:9px;
    border-radius:15px;
  }
  .public-v20--blog .blog-index-grid--uniform .journal-card__media{flex-basis:152px;border-radius:10px}
  .public-v20--blog .blog-index-grid--uniform .journal-card__body{padding:13px 6px 5px}
  .public-v20--blog .blog-index-grid--uniform .journal-card h2{font-size:clamp(1.35rem,6.8vw,1.72rem)}
  .public-v20--blog .blog-index-grid--uniform .journal-card p{font-size:.86rem;-webkit-line-clamp:2}
}

@media(prefers-reduced-motion:reduce){
  .home-v6 .journal-editorial__cards--uniform .blog-home-card,
  .public-v20--blog .blog-index-grid--uniform .journal-card{transform:none!important}
}


/* ========================================================================
   V36 — HOMEPAGE JOURNAL HEADING WRAP FIX
   Keep the editorial heading intact. The old three-column header squeezed the
   title into a narrow middle track, so the oversized uppercase copy wrapped
   word-by-word and could even break inside YAZILARI. The title now owns the
   full second row while the eyebrow/link share the compact first row.
   ======================================================================== */
.home-v6 .journal-editorial__head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto;
  align-items:end;
  column-gap:clamp(18px,3vw,42px);
  row-gap:clamp(14px,1.8vw,24px);
}
.home-v6 .journal-editorial__head>.v6-eyebrow{
  grid-column:1;
  grid-row:1;
  align-self:center;
}
.home-v6 .journal-editorial__head>.v6-text-link{
  grid-column:2;
  grid-row:1;
  justify-self:end;
  align-self:center;
}
.home-v6 .journal-editorial .journal-editorial__title{
  grid-column:1/-1;
  grid-row:2;
  width:100%;
  max-width:none;
  margin:0;
  font-size:clamp(2.9rem,7.1vw,6.8rem);
  line-height:.86;
  letter-spacing:-.062em;
  white-space:nowrap;
  overflow-wrap:normal;
  word-break:normal;
  text-wrap:nowrap;
}

@media(max-width:980px){
  .home-v6 .journal-editorial .journal-editorial__title{
    font-size:clamp(2.65rem,7.4vw,4.7rem);
  }
}

@media(max-width:640px){
  .home-v6 .journal-editorial__head{
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto auto auto;
    row-gap:12px;
  }
  .home-v6 .journal-editorial__head>.v6-eyebrow{
    grid-column:1;
    grid-row:1;
  }
  .home-v6 .journal-editorial .journal-editorial__title{
    grid-column:1;
    grid-row:2;
    font-size:clamp(2rem,8.4vw,3rem);
    line-height:.9;
    letter-spacing:-.052em;
  }
  .home-v6 .journal-editorial__head>.v6-text-link{
    grid-column:1;
    grid-row:3;
    justify-self:start;
    margin-top:4px;
  }
}

/* ========================================================================
   V37 — BLOG DETAIL DEFENSIVE TYPOGRAPHY
   Keep pathological CMS content from exploding the article layout while
   preserving the full value in the DOM and in Live Editor previews.
   ======================================================================== */
.public-v20--article .article-hero__copy,
.public-v20--article .article-main,
.public-v20--article .prose--article,
.public-v20--article .post-nav--editorial a,
.public-v20--article .related-item{
  min-width:0;
}
.public-v20--article .article-hero h1{
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
  text-wrap:balance;
}

/* Long titles get the full editorial measure instead of being squeezed next
   to the metadata column. This reduces line count before any clamping is used. */
.public-v20--article .article-hero--title-long .article-hero__grid,
.public-v20--article .article-hero--title-xlong .article-hero__grid{
  grid-template-columns:minmax(0,1fr);
  gap:clamp(28px,4vw,46px);
}
.public-v20--article .article-hero--title-long .article-hero__meta,
.public-v20--article .article-hero--title-xlong .article-hero__meta{
  width:min(100%,760px);
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.public-v20--article .article-hero--title-long .article-hero__meta>div,
.public-v20--article .article-hero--title-xlong .article-hero__meta>div{
  display:block;
  padding:12px 16px 12px 0;
  border-right:1px solid var(--v20-line);
  border-bottom:0;
}
.public-v20--article .article-hero--title-long .article-hero__meta>div:last-child,
.public-v20--article .article-hero--title-xlong .article-hero__meta>div:last-child{
  border-right:0;
}
.public-v20--article .article-hero--title-long .article-hero__meta span,
.public-v20--article .article-hero--title-xlong .article-hero__meta span{
  display:block;
  margin-bottom:4px;
}
.public-v20--article .article-hero--title-long h1{
  max-width:19ch;
  font-size:clamp(3.05rem,5.3vw,6rem);
  line-height:.93;
  letter-spacing:-.058em;
}
.public-v20--article .article-hero--title-xlong h1{
  max-width:24ch;
  font-size:clamp(2.35rem,4.15vw,4.75rem);
  line-height:.98;
  letter-spacing:-.048em;
  text-wrap:pretty;
}

/* For absurdly long CMS values, cap only the visual public hero. Screen
   readers/SEO still receive the complete H1; Live Editor keeps the full text. */
html:not(.cms-live-preview) .public-v20--article .article-hero--title-xlong h1{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:5;
}
html.cms-live-preview .public-v20--article .article-hero--title-xlong h1{
  display:block;
  overflow:visible;
}

/* Rich text must never be allowed to widen the reading column. */
.public-v20--article .prose--article,
.public-v20--article .prose--article :where(p,li,h2,h3,h4,h5,h6,blockquote,figcaption,a,strong,em){
  overflow-wrap:anywhere;
  word-break:normal;
}
.public-v20--article .prose--article :where(img,video,iframe,svg,canvas){
  max-width:100%;
  height:auto;
}
.public-v20--article .prose--article :where(pre,table){
  display:block;
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.public-v20--article .prose--article code{
  overflow-wrap:anywhere;
}

/* Previous/next and related titles stay compact even with hostile content. */
.public-v20--article .post-nav--editorial strong,
.public-v20--article .related-item strong{
  display:-webkit-box;
  overflow:hidden;
  overflow-wrap:anywhere;
  word-break:normal;
  -webkit-box-orient:vertical;
}
.public-v20--article .post-nav--editorial strong{-webkit-line-clamp:2}
.public-v20--article .related-item strong{-webkit-line-clamp:3}

@media(max-width:760px){
  .public-v20--article .article-hero--title-long h1{
    max-width:none;
    font-size:clamp(2.5rem,10.5vw,4.15rem);
    line-height:.95;
  }
  .public-v20--article .article-hero--title-xlong h1{
    max-width:none;
    font-size:clamp(2.05rem,8.9vw,3.45rem);
    line-height:1;
    letter-spacing:-.04em;
  }
  html:not(.cms-live-preview) .public-v20--article .article-hero--title-xlong h1{
    -webkit-line-clamp:4;
  }
  .public-v20--article .article-hero--title-long .article-hero__meta,
  .public-v20--article .article-hero--title-xlong .article-hero__meta{
    width:100%;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:480px){
  .public-v20--article .article-hero--title-long .article-hero__meta,
  .public-v20--article .article-hero--title-xlong .article-hero__meta{
    grid-template-columns:1fr;
  }
  .public-v20--article .article-hero--title-long .article-hero__meta>div,
  .public-v20--article .article-hero--title-xlong .article-hero__meta>div{
    display:grid;
    grid-template-columns:72px 1fr;
    padding:11px 0;
    border-right:0;
    border-bottom:1px solid var(--v20-line);
  }
  .public-v20--article .article-hero--title-long .article-hero__meta span,
  .public-v20--article .article-hero--title-xlong .article-hero__meta span{
    margin-bottom:0;
  }
}


/* ========================================================================
   V41 — UNIFORM BLOG CARD OVERFLOW FIX
   Kart yüksekliği sabit (height:452px) verilmişti; başlık üç satıra çıktığında
   medya + topline + meta + 3 satır başlık + 3 satır özet + bağlantı toplamı bu
   sınırı ~20px aşıyor ve "Devamını oku" bağlantısı kartın alt kenarının dışına
   taşıyordu. Anasayfadaki kardeş bileşende de aynı sorun var; orada
   overflow:hidden olduğu için taşma görünmüyor ama bağlantı kırpılıyordu.

   Çözüm sabit yüksekliği min-height'a çevirmek. grid-auto-rows:1fr, yüksekliği
   belirsiz bir grid'de tüm satırları en uzun satırın içerik yüksekliğine
   eşitler; align-items:stretch zaten açık olduğu için kartlar bu yüksekliği
   doldurur. Sonuç: kartlar hâlâ birbiriyle tam aynı boyda, ama artık içerik
   kutuyu zorlamak yerine kutu içeriğe göre büyüyor. line-clamp değerleri
   korundu, yani aşırı uzun başlıklar yine üç satırda kesiliyor.
   ======================================================================== */
.home-v6 .journal-editorial__cards--uniform,
.public-v20--blog .blog-index-grid--uniform{
  grid-auto-rows:1fr;
}
.home-v6 .journal-editorial__cards--uniform .blog-home-card{
  height:auto;
  min-height:440px;
}
.public-v20--blog .blog-index-grid--uniform .journal-card{
  height:auto;
  min-height:452px;
}

@media(max-width:1040px){
  .home-v6 .journal-editorial__cards--uniform .blog-home-card{height:auto;min-height:424px}
  .public-v20--blog .blog-index-grid--uniform .journal-card{height:auto;min-height:438px}
}

@media(max-width:680px){
  .home-v6 .journal-editorial__cards--uniform .blog-home-card{height:auto;min-height:408px}
  .public-v20--blog .blog-index-grid--uniform .journal-card{height:auto;min-height:414px}
}
