/* Source: site-v21.css */
/* puredigitalsoul V13 - mockup-locked dark editorial system */
:root{color-scheme:dark;--bg:#171817;--bg2:#20211f;--panel:#20211f;--ink:#eeede7;--muted:#aaa9a2;--line:#41413b;--accent:#d79b7e;--warm:#d79b7e;--font:"DM Sans",system-ui,-apple-system,sans-serif}
:root[data-theme="light"]{color-scheme:light;--bg:#f7f6f2;--bg2:#fffefa;--panel:#fffefa;--ink:#232321;--muted:#777771;--line:#dfddd6;--accent:#bf7658;--warm:#bf7658}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;min-width:320px;background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}img{display:block;max-width:100%}.skip{position:fixed;top:-90px;left:15px;z-index:400;background:var(--panel);padding:12px 17px}.skip:focus{top:10px}.page{max-width:1540px;margin:0 auto;padding:22px clamp(18px,2.5vw,42px)}.site-header{position:absolute;z-index:20;top:45px;left:50%;transform:translateX(-50%);width:calc(min(1540px,100%) - clamp(36px,5vw,84px) - 48px);height:70px;display:flex;align-items:center;gap:30px}.brand{font-weight:800;letter-spacing:-.075em;font-size:clamp(21px,2vw,29px);white-space:nowrap;color:#fff}.brand span{color:#fff}.brand b{color:var(--accent);font-weight:800}.header-nav{display:flex;align-items:center;gap:clamp(14px,2vw,40px);margin-left:auto}.header-nav a{font-size:12px;white-space:nowrap;color:#e8e9e8;transition:color .15s}.header-nav a:hover{color:#e8d2b9}.header-tools{display:flex;align-items:center;gap:14px}.language-toggle{display:flex;align-items:center;gap:5px;color:#d1d3d2;font-size:11px;font-weight:800}.language-toggle button{border:0;color:#b8c0c2;background:transparent;padding:9px 4px}.language-toggle button[aria-pressed="true"]{color:#fff}.icon-button{width:31px;height:36px;border:0;background:transparent;color:#fff;display:grid;place-items:center}.icon-button svg{width:19px;height:19px}.menu-button{display:none}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:650px;display:flex;align-items:end;background:#18242a}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,13,17,.67),rgba(5,13,17,.22) 60%,rgba(5,13,17,.12)),linear-gradient(0deg,rgba(5,14,18,.65),transparent 60%)}.hero-content{width:100%;padding:150px clamp(29px,5vw,92px) 72px}.hero-inner{max-width:600px}.hero-topline{font-size:10px;letter-spacing:.25em;font-weight:700;text-transform:uppercase;color:#e5e7e3;opacity:.83;margin-bottom:32px}.hero h1{font-size:clamp(63px,7.4vw,112px);letter-spacing:-.085em;line-height:.96;font-weight:700;color:#fff;margin:0 0 25px}.hero h1 .line{display:block}.hero h1 em{font:inherit}.hero-content p{color:#f5f5f3;line-height:1.55;font-size:clamp(16px,1.4vw,20px);max-width:460px;margin:0 0 30px}.hero-content p strong{font-weight:500}.hero-line{display:flex;align-items:center;gap:18px;width:125px;padding:9px 0;color:#fff}.hero-line span{display:block;width:50px;height:1px;background:var(--accent)}.section-label{font-size:10px;letter-spacing:.28em;font-weight:750;color:var(--muted);text-transform:uppercase}.journal{padding:98px 0 100px;scroll-margin-top:20px}.journal-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin:18px 0 24px}.journal-head h2{font-size:clamp(44px,5.4vw,79px);font-weight:600;letter-spacing:-.075em;margin:0}.journal-head h2 span{color:var(--warm)}.journal-head p{max-width:390px;line-height:1.75;font-size:14px;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.filter{border:1px solid var(--line);background:transparent;color:var(--muted);padding:10px 17px;font-size:12px}.filter[aria-pressed="true"]{background:var(--accent);color:#141719;border-color:var(--accent)}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 20px}.story-card[hidden]{display:none!important}.story-card{min-width:0}.story-card-link{display:block}.card-image{position:relative;overflow:hidden;aspect-ratio:1.65;background:var(--bg2)}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.story-card-link:hover img{transform:scale(1.035)}.card-index{position:absolute;right:15px;top:13px;font-size:11px;color:#eee}.card-meta{margin:17px 0 0;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.19em;display:flex;align-items:center;gap:9px}.card-meta .sep{width:4px;height:4px;background:var(--warm);border-radius:50%}.story-card h3{font-size:clamp(23px,2.3vw,34px);letter-spacing:-.05em;line-height:1.17;margin:10px 0}.story-card p{font-size:13px;color:var(--muted);line-height:1.7;margin:0}.empty-state{text-align:center;border:1px solid var(--line);padding:50px;color:var(--muted)}.empty-state[hidden]{display:none}.more-wrap{text-align:center;padding-top:30px}.outlined-button{border:1px solid var(--line);background:none;padding:12px 22px;color:var(--ink)}.outlined-button[hidden]{display:none}.profile-section{display:grid;grid-template-columns:minmax(200px,320px) minmax(0,1fr);gap:clamp(34px,6vw,95px);border-top:1px solid var(--line);padding:80px clamp(0px,3.5vw,55px) 90px;align-items:start}.profile-photo-wrap{width:100%;max-width:320px;aspect-ratio:3/4;background:var(--panel);overflow:hidden}.profile-photo{width:100%;height:100%;object-fit:cover;object-position:center top;filter:grayscale(1)}.profile-details{padding:0 0 0}.profile-bio{margin:25px 0 37px}.profile-bio p{font-size:clamp(15px,1.4vw,21px);margin:0 0 10px;line-height:1.55}.profile-bio a{text-decoration:underline;text-underline-offset:4px;color:var(--accent)}.profile-divider{height:1px;background:var(--line);width:100%;margin:22px 0 29px}.profile-links{display:grid;gap:16px}.profile-links a{display:flex;align-items:center;gap:18px;font-size:clamp(14px,1.6vw,22px)}.profile-links span{color:var(--accent);font-size:29px;min-width:31px}.profile-copyright{font-size:14px;font-style:italic;color:var(--muted);line-height:1.75;max-width:640px}.profile-legal{margin-top:26px;display:flex;align-items:center;gap:17px}.profile-legal a{font-size:10px;letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid var(--warm);padding-bottom:5px}.profile-legal span{color:var(--line)}.contact{border-top:1px solid var(--line);padding:75px clamp(0px,3.5vw,55px) 90px;scroll-margin-top:20px}.contact h2{font-size:clamp(50px,6vw,89px);font-weight:650;letter-spacing:-.075em;line-height:1.03;margin:18px 0 22px}.contact p{font-size:17px;max-width:650px;color:var(--muted);line-height:1.8}.contact-cta{display:inline-flex;justify-content:space-between;align-items:center;gap:50px;padding:15px 0;border-bottom:1px solid var(--accent);font-size:clamp(18px,2vw,27px);letter-spacing:-.03em}.article-view .home-only{display:none}.article-view .site-header{position:relative;top:auto;left:auto;transform:none;width:100%;height:85px;border-bottom:1px solid var(--line)}.article-view .brand{color:var(--ink)}.article-view .brand span{color:var(--ink)}.article-view .header-nav a,.article-view .language-toggle,.article-view .language-toggle button,.article-view .icon-button{color:var(--ink)}.article-stage{max-width:1020px;margin:0 auto;padding:64px 0 100px}.article-back{margin:0 0 38px}.article-back a{font-size:12px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid var(--line);padding-bottom:10px}.article-kicker{font-size:11px;letter-spacing:.19em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:12px}.article-kicker .sep{height:3px;width:3px;background:var(--warm);border-radius:50%}.article-title{font-size:clamp(42px,6vw,82px);letter-spacing:-.07em;line-height:1.06;margin:19px 0 19px}.article-lead{font-size:clamp(18px,2.2vw,25px);line-height:1.55;color:var(--muted);max-width:820px;margin-bottom:34px}.article-cover{aspect-ratio:1.95;overflow:hidden;border:1px solid var(--line)}.article-cover img{width:100%;height:100%;object-fit:cover}.article-content{max-width:760px;margin:55px auto;font-size:clamp(16px,1.35vw,19px);line-height:1.92}.article-content p{margin:0 0 27px}.article-content p:last-child{margin-bottom:0}#search-dialog{padding:0;border:1px solid var(--line);background:var(--bg2);color:var(--ink);width:min(720px,calc(100% - 28px));max-height:80svh}#search-dialog::backdrop{background:rgba(0,0,0,.83)}.search-modal{padding:34px}.search-head{display:flex;align-items:center;justify-content:space-between}.search-head h2{font-size:30px;letter-spacing:-.05em}.search-head button{background:none;color:var(--ink);border:0;font-size:29px}#search-input{width:100%;height:49px;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--line);outline:none;font-size:18px}.search-result{display:block;padding:17px 0;border-bottom:1px solid var(--line)}.search-result strong{display:block;font-size:18px}.search-result small{color:var(--muted);font-size:11px}
@media(max-width:1000px){.story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-section{grid-template-columns:280px 1fr;gap:38px}.hero{min-height:610px}}
@media(max-width:720px){.page{padding:12px 12px 24px}.site-header{top:24px;width:calc(100% - 48px);height:58px}.brand{font-size:23px}.header-tools{gap:5px;margin-left:auto}.header-nav{display:none;position:absolute;top:65px;left:-8px;right:-8px;padding:20px;flex-direction:column;align-items:flex-start;background:#11191cf5;border:1px solid #404a4c;gap:20px}.header-nav.is-open{display:flex}.menu-button{display:grid}.icon-button{width:28px}.hero{min-height:min(760px,90svh)}.hero-content{padding:150px 27px 65px}.hero h1{font-size:clamp(57px,11.3vw,78px)}.journal{padding:70px 0}.journal-head{display:block}.journal-head p{margin-top:8px}.story-grid{grid-template-columns:1fr;gap:32px}.profile-section{padding:48px 3px;grid-template-columns:1fr;gap:27px}.profile-photo-wrap{max-width:290px;aspect-ratio:3/3.5}.profile-bio{margin:18px 0 28px}.contact{padding:55px 3px 65px}.article-view .site-header{height:75px}.article-view .header-nav{background:var(--bg2)}.article-stage{padding:42px 0 70px}.article-content{margin:35px auto}.search-modal{padding:20px}}
@media(max-width:390px){.brand{font-size:19px}.header-tools{gap:1px}.language-toggle button{padding:7px 2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
/* Prevent focus outlines from creating a horizontal scrollbar at 320px. */
html,body{overflow-x:clip}
@media(max-width:350px){.site-header{width:calc(100% - 34px)}.brand{font-size:17px}.header-tools{gap:0}.language-toggle{font-size:10px}.language-toggle button{padding:6px 2px}.icon-button{width:24px;height:31px}.icon-button svg{width:17px;height:17px}}

/* V16: exact four-line German hero heading, without changing the English layout. */
html[data-lang="de"] .hero h1{font-size:clamp(39px,5.7vw,82px);letter-spacing:-.065em;line-height:1.06}
@media (max-width:720px){html[data-lang="de"] .hero h1{font-size:clamp(29px,8vw,55px);letter-spacing:-.06em;line-height:1.08}}

/* V19: responsive photographic hero source; preserving the V13 Dark Editorial layout. */
.hero-media{position:absolute;inset:0;z-index:-2;display:block;overflow:hidden;pointer-events:none}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 47%}

/* V19 ultra-wide layout: use more physical pixels on 4K/5K/8K monitors while preserving desktop/mobile composition. */
@media (min-width:2000px){.page{max-width:min(90vw,2560px)}.site-header{width:calc(min(90vw,2560px) - 100px)}.hero{min-height:clamp(740px,28vw,1050px)}.hero h1{font-size:clamp(112px,5vw,150px)}.hero-content{padding-bottom:110px}.story-card h3{font-size:clamp(28px,1.6vw,43px)}}

@media(min-width:2000px){.article-stage{max-width:min(90vw,1800px)}.profile-section{grid-template-columns:minmax(280px,500px) minmax(0,1fr)}.profile-photo-wrap{max-width:500px}}


/* ================================================================
  V20 / ULTRAWIDE + HiDPI / 24.10.2026
  The former fixed 1540/2560px site container caused excess blank space
  at 3440x1440 and on 4K-8K screens. Preserve max-width for article BODY
  only, NOT for photographic layout and editorial grids.
================================================================ */
.page { position:relative; width:100%; max-width:none; margin:0 auto; padding:clamp(12px,1.4vw,28px) clamp(14px,2.3vw,110px) 38px; }
.site-header { position:absolute; z-index:20; left:clamp(36px,4.25vw,165px); right:clamp(36px,4.25vw,165px); top:clamp(34px,2.5vw,80px); width:auto; height:70px; transform:none; }
.hero { min-height:clamp(670px,65svh,1000px); }
.hero-media img { object-fit:cover; object-position:center 52%; }
.hero-shade { background:linear-gradient(90deg,rgba(6,12,16,.78) 0%,rgba(8,15,18,.49) 33%,rgba(5,13,17,.07) 76%),linear-gradient(0deg,rgba(3,9,13,.37),transparent 35%); }
.hero-content { padding:clamp(160px,10vw,235px) clamp(34px,4.5vw,160px) clamp(58px,5.5vw,115px); }
.hero-inner { max-width:min(1100px,73vw); }
.hero h1, html[data-lang="de"] .hero h1 { font-size:clamp(64px,4.6vw,108px); line-height:1.045; letter-spacing:-.065em; }
.hero-content p { max-width:620px; font-size:clamp(17px,1.13vw,22px); }
.journal { padding:clamp(78px,5.8vw,140px) 0 clamp(78px,6.2vw,150px); }
.journal-head h2 { font-size:clamp(52px,4vw,108px); }
.journal-head p { font-size:clamp(15px,.86vw,19px); }
/* auto-fit grows existing cards: 2 articles become two correctly sized tiles,
   instead of leaving an empty third column on ultrawide screens. */
.story-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,560px),1fr)); gap:clamp(22px,1.4vw,42px); }
.card-image { aspect-ratio:1.7; }
.story-card h3 { font-size:clamp(24px,1.35vw,42px); }
.story-card p { font-size:clamp(14px,.84vw,18px); }
.profile-section { grid-template-columns:minmax(230px,min(24vw,480px)) minmax(0,1fr); gap:clamp(38px,5vw,140px); padding:clamp(75px,6vw,150px) clamp(10px,2vw,70px); }
.profile-photo-wrap { max-width:480px; }
.contact { padding:clamp(75px,5vw,125px) clamp(10px,2vw,70px); }
/* Full article imagery is responsive but reading line-length remains accessible. */
.article-view .site-header { left:auto; right:auto; top:auto; height:90px; width:100%; transform:none; }
.article-stage { max-width:min(88vw,1680px); }
.article-content { max-width:820px; }
.article-cover { max-width:100%; }
@media (min-width:2000px) {
 .page { max-width:none; width:100%; padding:clamp(18px,1.4vw,36px) clamp(24px,2.4vw,120px) 40px; }
 .site-header { left:clamp(58px,4.3vw,175px); right:clamp(58px,4.3vw,175px); width:auto; }
 .hero { min-height:clamp(740px,67svh,1180px); }
 .hero h1, html[data-lang="de"] .hero h1 { font-size:clamp(84px,4.15vw,132px); }
 .hero-inner { max-width:min(1400px,60vw); }
 .hero-content { padding-left:clamp(65px,5vw,200px); }
 .story-card h3 { font-size:clamp(30px,1.32vw,48px); }
 .article-stage { max-width:min(88vw,1800px); }
 .profile-section { grid-template-columns:minmax(320px,580px) minmax(0,1fr); }
}
@media (max-width:1100px) {
 .page { padding:16px clamp(14px,2vw,24px) 25px; }
 .site-header { left:clamp(34px,4vw,70px); right:clamp(34px,4vw,70px); top:28px; }
 .hero-inner { max-width:740px; }
 .hero h1,html[data-lang="de"] .hero h1 { font-size:clamp(51px,6.1vw,80px); }
 .story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .profile-section { grid-template-columns:280px minmax(0,1fr); }
}
@media (max-width:720px) {
 .page { padding:12px 12px 24px; }
 .site-header { left:24px; right:24px; top:24px; height:58px; }
 .hero { min-height:min(770px,90svh); }
 .hero-content { padding:140px 26px 60px; }
 .hero-inner { max-width:100%; }
 .hero h1,html[data-lang="de"] .hero h1 { font-size:clamp(32px,8.1vw,57px); line-height:1.09; letter-spacing:-.065em; }
 .hero-content p { font-size:16px; }
 .story-grid { grid-template-columns:1fr; }
 .profile-section { grid-template-columns:1fr; padding:48px 3px; gap:27px; }
 .profile-photo-wrap { max-width:290px; }
 .article-stage { max-width:100%; }
}
@media (max-width:390px) {
 .site-header { left:17px; right:17px; }
 .hero-content { padding-left:21px; padding-right:19px; }
 .hero h1,html[data-lang="de"] .hero h1 { font-size:clamp(30px,8vw,37px); }
}

/* Keep photographic tiles proportional when the viewport is wider than 3440px. */

/* True 8K desktop workspaces require proportional layout, not just more source pixels. */
@media (min-width:4800px){
 .hero { min-height:clamp(1450px,61svh,2550px); }
 .hero-content { padding-top:clamp(280px,9vw,680px); padding-bottom:180px; }
 .hero h1,html[data-lang="de"] .hero h1 { font-size:clamp(138px,2.45vw,210px); }
 .hero-inner { max-width:min(2500px,62vw); }
 .hero-content p { font-size:clamp(26px,.52vw,42px); max-width:1200px; }
 .brand { font-size:clamp(33px,.65vw,55px); }
 .header-nav a { font-size:clamp(16px,.34vw,25px); }
 .language-toggle { font-size:clamp(14px,.3vw,23px); }
 .journal,.profile-section,.contact{max-width:4400px;margin-left:auto;margin-right:auto}
}

/* V21 bilingual editorial sections – philosophy located below journal, not in main navigation */
.philosophy-section{position:relative;display:grid;grid-template-columns:minmax(160px,24%) minmax(0,1fr);gap:clamp(30px,3.6vw,100px);align-items:start;margin-left:calc(-1 * clamp(14px,2.3vw,110px));margin-right:calc(-1 * clamp(14px,2.3vw,110px));padding:clamp(88px,6.3vw,190px) clamp(28px,7.7vw,300px);background:#272824;color:#ebe9e3;isolation:isolate}
.philosophy-intro{display:flex;align-items:center;gap:14px;padding-top:clamp(10px,1vw,19px)}
.philosophy-intro .section-label{margin:0;color:#d58a68;font-size:clamp(10px,.65vw,13px);letter-spacing:.18em;line-height:1.5;font-weight:760}
.philosophy-rule{display:block;width:22px;height:1px;flex:none;background:#cf8b6f}
.philosophy-quote{margin:0;max-width:1650px;font-size:clamp(37px,3.65vw,103px);letter-spacing:-.063em;line-height:1.16;font-weight:500;text-wrap:balance}
.philosophy-quote em{font-family:Georgia,'Times New Roman',serif;color:#bf7658;letter-spacing:-.045em;font-weight:400}
.profile-section .section-label,.contact>.section-label{display:flex;align-items:center;gap:14px;color:#d58a68;letter-spacing:.17em;font-weight:760}
.profile-section .section-label::before,.contact>.section-label::before{content:'';width:22px;height:1px;background:#cf8b6f;display:inline-block}
.journal .section-label{letter-spacing:.2em}
@media(max-width:1100px){.philosophy-section{grid-template-columns:180px 1fr;padding:84px clamp(34px,4vw,85px)}.philosophy-quote{font-size:clamp(38px,4.2vw,68px)}}
@media(max-width:720px){.philosophy-section{margin-left:-12px;margin-right:-12px;grid-template-columns:1fr;gap:20px;padding:70px 25px 82px}.philosophy-quote{font-size:clamp(37px,8.6vw,58px);line-height:1.18}.philosophy-intro{padding:0}}
@media(max-width:390px){.philosophy-section{padding:57px 20px 67px}.philosophy-quote{font-size:clamp(34px,8.4vw,40px)}}
html[data-theme='light'] .philosophy-section{background:#e9e7df;color:#272824}

/* V22 WORKING STATE – Brand Guide V9 navigation contrast and placement.
   Header sits near the top of the hero, in a contrasting surface for legible links. */
:root { --header-bg:rgba(23,24,23,.96); --header-ink:#eeede7; --header-rule:rgba(238,237,231,.18); }
:root[data-theme="light"] { --header-bg:rgba(255,254,250,.96); --header-ink:#232321; --header-rule:#dfddd6; }
.site-header { top:clamp(14px,1.1vw,30px); min-height:68px; height:auto; padding:12px clamp(13px,1.15vw,26px); background:var(--header-bg); color:var(--header-ink); border:1px solid var(--header-rule); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); }
.brand,.brand span,.header-nav a,.language-toggle,.language-toggle button,.language-toggle button[aria-pressed="true"],.icon-button { color:var(--header-ink); }
.brand span,.article-view .brand span {color:var(--accent);}
.header-nav a:hover,.header-nav a:focus-visible,.language-toggle button:hover,.icon-button:hover {color:var(--accent);}
.article-view .site-header {top:auto;}
.article-view .brand,.article-view .header-nav a,.article-view .language-toggle,.article-view .language-toggle button,.article-view .icon-button {color:var(--header-ink);}
@media(max-width:1100px){.site-header{top:16px;}}
@media(max-width:720px){.site-header{top:12px;left:12px;right:12px;padding:8px 10px;min-height:58px;}.header-nav.is-open{background:var(--header-bg);border:1px solid var(--header-rule)}.header-nav a{color:var(--header-ink)}}
@media(max-width:390px){.site-header{top:9px;left:8px;right:8px;padding:6px 7px}}


/* Source: brandbook-v22.css */
/* PUREDIGITALSOUL / BRAND GUIDE 9.0 / V22
   Visual contract: brand tokens, calm editorial hierarchy, accessible UI.
   Applied AFTER legacy styles so the original brand identity is authoritative.
   No new gradients, shadows or colour accents on the brand mark. */
:root, :root[data-theme="light"] {
  color-scheme: light;
  --bg:#F7F6F2; --bg2:#FFFEFA; --panel:#FFFEFA;
  --ink:#232321; --muted:#777771; --line:#DFDDD6;
  --accent:#BF7658; --warm:#BF7658;
  --header-bg:#FFFEFA; --header-ink:#232321; --header-rule:#DFDDD6;
  --pds-focus:#BF7658;
  --pds-shadow:transparent;
  --pds-hero-ink:#FFFEFA;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg:#171817; --bg2:#20211F; --panel:#20211F;
  --ink:#EEEDE7; --muted:#AAA9A2; --line:#41413B;
  --accent:#D79B7E; --warm:#D79B7E;
  --header-bg:#20211F; --header-ink:#EEEDE7; --header-rule:#41413B;
  --pds-focus:#D79B7E;
  --pds-shadow:transparent;
  --pds-hero-ink:#FFFEFA;
}
html { scroll-padding-top: 102px; }
body { font-family:'DM Sans','Manrope',system-ui,sans-serif; background:var(--bg); color:var(--ink); }
::selection { background:var(--accent); color:var(--bg); }
a,button,textarea,input,select { -webkit-tap-highlight-color:transparent; }
:is(a,button,input,textarea,select,[role="button"]):focus-visible {
  outline:2px solid var(--pds-focus); outline-offset:4px;
}
.skip { border:1px solid var(--line); background:var(--panel); color:var(--ink); }

/* Header: surface panel ABOVE hero photography, no unreadable white-on-sky. */
.page { background:var(--bg); }
.site-header {
  position:absolute; top:clamp(11px,1.15vw,22px); left:clamp(24px,3.45vw,124px);
  right:clamp(24px,3.45vw,124px); width:auto; height:auto; min-height:76px;
  padding:10px clamp(14px,1.25vw,26px); transform:none;
  display:flex; align-items:center; gap:clamp(16px,1.6vw,35px);
  border:1px solid var(--header-rule); border-radius:0;
  background:var(--header-bg); color:var(--header-ink);
  box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none;
}
.brand { display:inline-flex; align-items:center; gap:11px; font-weight:800;
  letter-spacing:-.076em; line-height:1; color:var(--header-ink); }
.brand-symbol { display:block; width:30px; height:36px; flex:none;
  object-fit:contain; filter:none; }
:root[data-theme="dark"] .brand-symbol { filter:none; }
.brand-wordmark { display:inline; white-space:nowrap; color:var(--header-ink); }
.brand-wordmark span { color:var(--accent); }
.brand-wordmark b { color:var(--accent); }
.header-nav { margin-left:auto; gap:clamp(13px,1.5vw,31px); }
.header-nav a { position:relative; display:inline-flex; align-items:center; min-height:44px;
  color:var(--header-ink); font:700 13px/1.3 'Manrope','DM Sans',sans-serif;
  text-decoration:none; }
.header-nav a:hover, .header-nav a:focus-visible { color:var(--accent); }
.header-nav a::after { position:absolute; bottom:5px; left:0; width:0; height:1px;
  background:currentColor; content:""; transition:width .2s ease; }
.header-nav a:hover::after,.header-nav a:focus-visible::after { width:100%; }
.header-tools { display:flex; align-items:center; gap:clamp(8px,.8vw,17px); }
.language-toggle { display:inline-flex; align-items:center; gap:4px;
  color:var(--muted); font:700 12px/1 'Manrope','DM Sans',sans-serif; }
.language-toggle button { min-width:34px; min-height:44px; padding:8px 4px;
  border:0; color:var(--header-ink); background:transparent; }
.language-toggle button[aria-pressed="true"] { color:var(--accent); }
.language-toggle button:hover { color:var(--accent); }
.icon-button { width:42px; height:44px; min-width:42px; border:1px solid transparent;
  color:var(--header-ink); background:transparent; border-radius:50%; }
.icon-button:hover { background:var(--bg); border-color:var(--line); color:var(--accent); }
.icon-button svg { width:20px; height:20px; }

/* Hero: photography is editorial content; only contrast scrim, not a brand-logo effect. */
.hero { color:var(--pds-hero-ink); background:#171817;
  min-height:clamp(670px,68svh,1240px); }
.hero-shade { background:linear-gradient(90deg,rgba(8,12,15,.79) 0%,rgba(8,12,15,.49) 38%,rgba(8,12,15,.04) 85%),
                         linear-gradient(0deg,rgba(8,12,15,.34),transparent 42%); }
.hero-content { padding-top:clamp(155px,10vw,250px); }
.hero-inner { max-width:min(1050px,80vw); }
.hero h1,html[data-lang="de"] .hero h1 {
  font-family:'DM Sans','Manrope',sans-serif; font-weight:700;
  font-size:clamp(57px,4.3vw,122px); letter-spacing:-.068em;
  line-height:1.055; color:var(--pds-hero-ink);
}
.hero-content p { max-width:690px; color:#FFFEFA;
  font:500 clamp(17px,1.16vw,23px)/1.68 'Manrope','DM Sans',sans-serif; }
.hero-line { color:#FFFEFA; min-height:44px; }
.hero-line span { background:var(--accent); }

/* Editorial journal, not app tiles. */
.section-label { color:var(--accent); letter-spacing:.185em;
  font:800 clamp(10px,.65vw,13px)/1.5 'Manrope','DM Sans',sans-serif; }
.journal { color:var(--ink); }
.journal-head h2 { color:var(--ink); font-weight:650; letter-spacing:-.071em; }
.journal-head h2 span { color:var(--accent); }
.journal-head p { color:var(--muted); line-height:1.7; }
.filters { gap:9px; }
.filter { border:1px solid var(--line); border-radius:999px; background:transparent;
  color:var(--ink); min-height:44px; padding:10px 19px;
  font:700 12px/1.3 'Manrope','DM Sans',sans-serif; }
.filter:hover { border-color:var(--accent); color:var(--accent); }
.filter[aria-pressed="true"] { border-color:var(--ink);
  background:var(--ink); color:var(--bg); }
.story-card h3 { color:var(--ink); }
.story-card p { color:var(--muted); }
.card-meta { color:var(--muted); }
.card-meta .sep { background:var(--accent); }
.card-image { background:var(--panel); }
.more-wrap { padding-top:clamp(28px,3.1vw,62px); }
.outlined-button { border:1px solid var(--ink); border-radius:0; background:transparent;
  color:var(--ink); padding:15px 27px; min-height:48px;
  font:800 12px/1.25 'Manrope','DM Sans',sans-serif; letter-spacing:.095em; }
.outlined-button:hover { border-color:var(--accent); color:var(--accent); }

/* Philosophy / perspective is the single graphic interlude, below journal. */
.philosophy-section { background:var(--panel); color:var(--ink);
  border-block:1px solid var(--line); }
.philosophy-intro .section-label { color:var(--accent); }
.philosophy-rule { background:var(--accent); }
.philosophy-quote { color:var(--ink); font-family:'DM Sans','Manrope',sans-serif;
  font-weight:500; letter-spacing:-.062em; }
.philosophy-quote em { color:var(--accent); font-family:Georgia,'Times New Roman',serif;
  font-weight:400; }
:root[data-theme="light"] .philosophy-section { background:var(--panel); color:var(--ink); }

/* Identity profile, legal links, separate contact hero; no footer. */
.profile-section { border-color:var(--line); }
.profile-section .section-label,.contact>.section-label { color:var(--accent); }
.profile-section .section-label::before,.contact>.section-label::before {
  background:var(--accent); }
.profile-photo-wrap { max-width:405px; aspect-ratio:1; background:var(--panel); }
.profile-photo { width:100%; height:100%; object-fit:cover; object-position:center center; }
.profile-bio p { font-family:'Manrope','DM Sans',sans-serif; color:var(--ink); }
.profile-bio a { color:var(--accent); }
.profile-links a { color:var(--ink); }
.profile-links span { color:var(--accent); }
.profile-divider { background:var(--line); }
.profile-legal a { color:var(--ink); border-color:var(--accent); }
.profile-legal a:hover,.profile-links a:hover,.contact-cta:hover { color:var(--accent); }
.profile-copyright,.contact p { color:var(--muted); }
.contact { border-color:var(--line); }
.contact h2 { color:var(--ink); font-family:'DM Sans','Manrope',sans-serif; }
.contact-cta { border-color:var(--accent); color:var(--ink); }
.contact-cta span { color:var(--accent); }

/* Article and modal: share the same brand surface and typography in both themes. */
.article-view .site-header { position:relative; top:auto; left:auto; right:auto;
  transform:none; margin:0; width:100%; min-height:76px; height:auto;
  background:var(--header-bg); border:1px solid var(--line); }
.article-view .brand,.article-view .brand-wordmark,.article-view .brand-wordmark span,
.article-view .header-nav a,.article-view .language-toggle,
.article-view .language-toggle button,.article-view .icon-button { color:var(--header-ink); }
.article-view .brand-wordmark span,.article-view .brand-wordmark b { color:var(--accent); }
.article-kicker,.article-back a { color:var(--muted); }
.article-kicker .sep { background:var(--accent); }
.article-title { color:var(--ink); }
.article-lead { color:var(--muted); }
.article-cover { border-color:var(--line); background:var(--panel); }
.article-content { color:var(--ink); font-family:'Manrope','DM Sans',sans-serif; }
.article-content a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.article-content :is(h2,h3,h4) { color:var(--ink); font-family:'DM Sans','Manrope',sans-serif; }
#search-dialog { background:var(--panel); color:var(--ink); border:1px solid var(--line); }
#search-dialog::backdrop { background:rgba(0,0,0,.68); }
.search-head h2,.search-result strong { color:var(--ink); }
.search-result { border-bottom:1px solid var(--line); }
.search-result:hover strong { color:var(--accent); }
#search-input { border-color:var(--line); color:var(--ink); }
#search-input::placeholder { color:var(--muted); }

@media(max-width:1100px){
  .site-header { left:clamp(18px,2vw,36px);right:clamp(18px,2vw,36px);top:14px; }
  .hero-inner { max-width:720px; }
  .hero h1,html[data-lang="de"] .hero h1 { font-size:clamp(50px,5.9vw,83px); }
}
@media(max-width:720px){
  .site-header { top:9px;left:12px;right:12px;min-height:60px;padding:7px 9px;gap:4px; }
  .brand { gap:4px;font-size:clamp(16px,4.2vw,22px); }
  .brand-symbol { width:22px;height:30px; }
  .brand-wordmark { letter-spacing:-.074em; }
  .header-nav { display:none;top:calc(100% + 8px);left:0;right:0;
    padding:14px 16px;gap:4px;align-items:stretch;
    background:var(--header-bg);border:1px solid var(--header-rule); }
  .header-nav.is-open { display:flex; }
  .header-nav a { font-size:14px;min-height:46px;color:var(--header-ink); }
  .header-tools { gap:2px;margin-left:auto; }
  .language-toggle { gap:0;font-size:11px; }
  .language-toggle button { min-width:26px;min-height:42px;padding:4px 0; }
  .icon-button { min-width:33px;width:33px;height:42px; }
  .icon-button svg { width:18px;height:18px; }
  .hero-inner { max-width:100%; }
  .hero h1,html[data-lang="de"] .hero h1 { font-size:clamp(34px,8.4vw,57px);line-height:1.08; }
  .hero-content { padding-top:146px; }
  .hero-content p { font-size:clamp(14px,3.9vw,17px); }
  .filter { min-height:42px;padding:10px 16px; }
  .profile-photo-wrap { max-width:min(405px,100%);aspect-ratio:1; }
  .philosophy-section { padding-top:72px;padding-bottom:72px; }
  .article-view .site-header { min-height:62px; }
}
@media(max-width:390px){
  .site-header { left:7px;right:7px;padding:5px 6px; }
  .brand { font-size:16px;gap:3px; }
  .brand-symbol { width:19px;height:26px; }
  .header-tools { gap:0; }
  .language-toggle button { min-width:23px; }
  .icon-button { width:30px;min-width:30px; }
  .hero h1,html[data-lang="de"] .hero h1 { font-size:clamp(30px,8.2vw,36px); }
}
@media(min-width:4800px){
  .site-header { min-height:115px;padding:19px 34px; }
  .brand { font-size:clamp(33px,.55vw,49px); }
  .brand-symbol { width:48px;height:56px; }
  .header-nav a { font-size:clamp(16px,.3vw,25px);min-height:56px; }
  .language-toggle { font-size:clamp(15px,.28vw,22px); }
  .icon-button { width:60px;height:62px; }
  .hero-content p { max-width:1230px; }
}
@media(prefers-reduced-motion:reduce){
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition:none!important;animation:none!important; }
}


/* V22 LIVE HERO – DE/EN matching the existing public photo-overlay composition.
   Keep the Brand Guide light/dark header treatment; restore the left-side
   photographic hero headline and intro, not a standalone gigantic type poster. */
.home-view .hero {
  position:relative;
  display:flex;
  align-items:stretch;
  min-height:max(745px,min(92svh,1110px));
  overflow:hidden;
  background:#171817;
  color:#FFFEFA;
}
.home-view .hero-media { position:absolute;inset:0;z-index:-2; }
.home-view .hero-media img {
  display:block; width:100%;height:100%;object-fit:cover;
  object-position:center 50%;
}
.home-view .hero-shade {
  position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(8,13,16,.75) 0%,rgba(8,13,16,.5) 35%,rgba(8,13,16,.12) 75%,rgba(8,13,16,.05) 100%),
             linear-gradient(0deg,rgba(5,11,13,.55),transparent 55%);
}
.home-view .hero-content {
  display:flex;align-items:flex-end;
  width:100%;
  padding:clamp(155px,17svh,230px) clamp(34px,5.1vw,176px)
          clamp(64px,9svh,134px);
}
.home-view .hero-inner { width:100%;max-width:min(1100px,72vw); }
html .home-view .hero h1,
html[data-lang="de"] .home-view .hero h1 {
  color:#FFFEFA;
  font-family:'DM Sans','Manrope',system-ui,sans-serif;
  font-size:clamp(70px,5.35vw,126px);
  line-height:1.065;
  letter-spacing:-.067em;
  font-weight:700;
  margin:0 0 clamp(26px,2.4vw,36px);
  max-width:100%;
  overflow-wrap:normal;
  text-wrap:initial;
}
.home-view .hero h1 .line { display:block; }
.home-view .hero-content p {
  color:#FFFEFA;
  font:400 clamp(17px,1.28vw,23px)/1.58 'Manrope','DM Sans',sans-serif;
  max-width:690px;
  margin:0 0 clamp(25px,2.4vw,38px);
}
.home-view .hero-content p strong { color:#FFFEFA;font-weight:750; }
.home-view .hero-line { color:#FFFEFA;min-height:44px; }
.home-view .hero-line span { background:#FFFEFA; }
@media (min-width:2000px) {
  .home-view .hero { min-height:clamp(1200px,81svh,1550px); }
  .home-view .hero-content { padding-left:clamp(90px,5.1vw,235px); }
  .home-view .hero-inner { max-width:min(1550px,64vw); }
  html .home-view .hero h1, html[data-lang="de"] .home-view .hero h1 { font-size:clamp(90px,3.8vw,146px); }
  .home-view .hero-content p { max-width:880px;font-size:clamp(19px,1vw,29px); }
}
@media (max-width:1100px) {
  .home-view .hero-inner { max-width:min(840px,88vw); }
  .home-view .hero-content { padding-left:clamp(32px,7.1vw,85px);padding-right:24px; }
  html .home-view .hero h1, html[data-lang="de"] .home-view .hero h1 { font-size:clamp(52px,8.25vw,82px);line-height:1.065; }
  .home-view .hero-content p { max-width:660px; }
}
@media (max-width:720px) {
  .home-view .hero { min-height:max(650px,90svh); }
  .home-view .hero-content {
    padding:clamp(142px,22svh,194px) clamp(20px,6vw,37px) clamp(54px,8svh,86px);
  }
  .home-view .hero-inner { max-width:100%; }
  html .home-view .hero h1, html[data-lang="de"] .home-view .hero h1 { font-size:clamp(33px,8.7vw,58px);line-height:1.075;letter-spacing:-.062em; }
  .home-view .hero-content p {font-size:clamp(15px,3.85vw,18px);max-width:96%;line-height:1.55;}
  .home-view .hero-media img {object-position:55% center;}
}
@media (max-width:390px) {
  .home-view .hero { min-height:max(620px,90svh); }
  .home-view .hero-content {padding-left:19px;padding-right:16px;}
  html .home-view .hero h1, html[data-lang="de"] .home-view .hero h1 {font-size:clamp(29px,8.45vw,36px);letter-spacing:-.055em;}
  .home-view .hero-content p {font-size:15px;}
}
@media (min-width:4800px) {
  .home-view .hero {min-height:clamp(1600px,66svh,2800px);}
  .home-view .hero-content {padding-left:clamp(220px,5vw,470px);padding-bottom:clamp(160px,8svh,350px);}
  .home-view .hero-inner {max-width:min(2700px,64vw);}
  html .home-view .hero h1, html[data-lang="de"] .home-view .hero h1 {font-size:clamp(160px,2.55vw,230px);}
  .home-view .hero-content p {font-size:clamp(30px,.6vw,47px);max-width:1420px;}
}


/* V22 journal: editorial layout follows supplied reference, DE/EN with no indices.
   Brandbook tokens apply in both light and dark mode. */
.journal { padding-top:clamp(75px,6.7vw,150px); }
.journal .section-label { display:flex;align-items:center;gap:16px;margin-bottom:clamp(18px,1.4vw,32px); }
.journal .section-label::before { content:'';width:28px;height:1px;background:var(--accent);flex:none; }
.journal-head { display:block; margin:0 0 clamp(26px,2.5vw,56px); }
.journal-head h2 { font-family:'DM Sans','Manrope',sans-serif; font-size:clamp(55px,5.2vw,112px);font-weight:700;letter-spacing:-.075em;line-height:1.075;max-width:1200px;margin:0; }
.journal-head p { display:none; } /* Editorial heading carries the introduction as in reference. */
.filters { gap:9px;margin-bottom:clamp(28px,2.3vw,48px); }
.filter { border-radius:999px;min-height:43px;padding:10px 21px;border-color:var(--line);background:transparent;color:var(--ink);font:600 13px/1.4 'Manrope','DM Sans',sans-serif; }
.filter[aria-pressed='true'] { background:var(--ink);border-color:var(--ink);color:var(--bg); }
.story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(30px,2.1vw,64px) clamp(20px,1.7vw,50px); }
.story-card { min-width:0; }
.card-image { aspect-ratio:1.34; background:var(--panel);border:1px solid var(--line); }
.card-image img { width:100%;height:100%;object-fit:cover; }
.card-meta { font:750 clamp(10px,.68vw,13px)/1.5 'Manrope','DM Sans',sans-serif;letter-spacing:.16em;margin-top:18px; }
.story-card h3 { font-family:'DM Sans','Manrope',sans-serif;font-size:clamp(22px,1.65vw,40px);line-height:1.2;font-weight:700;margin:11px 0;letter-spacing:-.046em; }
.story-card p { font-size:clamp(14px,.92vw,18px);line-height:1.65; }
.more-wrap { text-align:center;padding:clamp(30px,3vw,72px) 0 0; }
.more-wrap:has(#load-more[hidden]) { padding:0; }
.outlined-button { padding:15px 27px;letter-spacing:.09em;text-transform:uppercase;min-height:48px; }
.sr-only { position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
@media (max-width:800px) {
  .journal-head h2 { font-size:clamp(49px,8.3vw,73px); }
  .story-grid { grid-template-columns:1fr;gap:34px; }
  .card-image { aspect-ratio:1.5; }
  .filter { padding:9px 15px; }
}
@media (max-width:390px) {
  .journal-head h2 { font-size:clamp(41px,10.9vw,50px); }
  .filters { gap:7px; }
  .filter { min-height:42px;font-size:12px;padding:8px 12px; }
  .card-image { aspect-ratio:1.4; }
}
@media (min-width:4800px) {
  .journal-head h2 { font-size:clamp(130px,2.5vw,220px); }
  .filters { gap:18px; }
  .filter { font-size:clamp(19px,.35vw,28px);padding:18px 30px; }
  .card-meta { font-size:clamp(17px,.3vw,22px); }
  .story-card h3 { font-size:clamp(52px,1vw,75px); }
  .story-card p { font-size:clamp(23px,.47vw,34px); }
}

/* V22 / PHILOSOPHY — the two approved DE/EN live-reference screenshots.
   Single full-bleed editorial section, immediately following the Journal.
   Brand Guide tokens are authoritative for both themes.
   CMS content remains text-only with *italic accent* parsed safely by site-language.js. */
.home-view .philosophy-section {
  position:relative;
  display:block;
  width:100vw;
  min-height:clamp(390px,23vw,475px);
  margin:0 0 0 calc(50% - 50vw);
  padding:0;
  background:var(--panel);
  color:var(--ink);
  border-block:1px solid var(--line);
  isolation:isolate;
}
.home-view .philosophy-layout {
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(210px,300px) minmax(0,1fr);
  column-gap:clamp(52px,4.2vw,80px);
  align-items:start;
  max-width:1336px;
  margin:0 auto;
  padding:clamp(88px,5.65vw,118px) 24px clamp(88px,5.8vw,124px);
}
.home-view .philosophy-intro {
  display:flex;
  align-items:center;
  gap:12px;
  margin:0;
  padding:clamp(7px,.6vw,13px) 0 0;
}
.home-view .philosophy-rule {
  display:block;
  flex:none;
  width:22px;
  height:1px;
  background:var(--accent);
}
.home-view .philosophy-intro .section-label {
  color:var(--accent);
  margin:0;
  font:800 11px/1.4 'Manrope','DM Sans',sans-serif;
  letter-spacing:.145em;
  white-space:nowrap;
  text-transform:uppercase;
}
.home-view .philosophy-quote {
  display:block;
  min-width:0;
  max-width:870px;
  margin:0;
  padding:0;
  border:0;
  color:var(--ink);
  font-family:'DM Sans','Manrope',sans-serif;
  font-size:clamp(38px,3.36vw,64px);
  font-weight:500;
  letter-spacing:-.058em;
  line-height:1.23;
  text-wrap:wrap;
  overflow-wrap:normal;
}
.home-view .philosophy-quote em {
  color:var(--accent);
  font:italic 400 1.045em/1.05 Georgia,'Times New Roman',serif;
  letter-spacing:-.04em;
  white-space:nowrap;
}
/* German line breaks balance as in the supplied reference; English flows naturally. */
html:lang(de) .home-view .philosophy-quote { text-wrap:balance; }
@media (min-width:2400px) {
  .home-view .philosophy-layout {
    max-width:min(82vw,2200px);
    grid-template-columns:minmax(285px,33%) minmax(0,1fr);
    column-gap:clamp(70px,4vw,130px);
    padding:clamp(120px,5.2vw,190px) clamp(35px,2vw,60px);
  }
  .home-view .philosophy-quote { max-width:1550px;font-size:clamp(68px,3vw,102px); }
  .home-view .philosophy-intro .section-label {font-size:clamp(12px,.48vw,18px);}
}
@media (max-width:1100px) {
  .home-view .philosophy-layout {
    grid-template-columns:190px minmax(0,1fr);
    column-gap:clamp(35px,4vw,60px);
    padding:78px clamp(25px,4vw,50px) 88px;
  }
  .home-view .philosophy-quote {font-size:clamp(38px,4.2vw,53px);}
}
@media (max-width:720px) {
  .home-view .philosophy-section {min-height:0;}
  .home-view .philosophy-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    row-gap:29px;
    padding:clamp(62px,12vw,80px) 26px clamp(70px,14vw,95px);
  }
  .home-view .philosophy-intro {padding:0;}
  .home-view .philosophy-quote {
    font-size:clamp(35px,7.1vw,50px);
    line-height:1.2;
    letter-spacing:-.048em;
    text-wrap:pretty;
  }
  .home-view .philosophy-quote em {white-space:normal;}
}
@media (max-width:390px) {
  .home-view .philosophy-layout {padding-inline:21px;}
  .home-view .philosophy-quote {font-size:clamp(31px,8.7vw,36px);}
}


/* V22 / ABOUT HERO - live profile, reference-inspired layout, no invented headline.
   The portrait, bio, contacts and legal notice are preserved without altering text.
   Only typography, spacing and 2-column composition adapt the supplied reference.
   Brand Guide palette stays authoritative in both themes. */
.home-view .profile-section {
  box-sizing:border-box;
  position:relative;
  display:grid;
  width:100vw;
  margin-left:calc(50% - 50vw);
  grid-template-columns:minmax(250px,405px) minmax(0,850px);
  justify-content:center;
  align-items:start;
  gap:clamp(58px,7vw,155px);
  min-height:clamp(590px,43vw,860px);
  padding:clamp(105px,7vw,152px) clamp(32px,5.3vw,140px);
  color:var(--ink);
  background:var(--bg);
  border-top:1px solid var(--line);
  border-bottom:0;
  isolation:isolate;
}
.home-view .profile-photo-wrap {
  width:100%;
  max-width:405px;
  aspect-ratio:1;
  margin:0;
  background:var(--panel);
  overflow:hidden;
  border:0;
  border-radius:0;
}
.home-view .profile-photo {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:grayscale(1);
}
.home-view .profile-details {
  min-width:0;
  max-width:850px;
  padding:0;
}
.home-view .profile-details > .section-label {
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 clamp(30px,2.8vw,53px);
  font:800 11px/1.4 'Manrope','DM Sans',sans-serif;
  letter-spacing:.14em;
  color:var(--accent);
}
.home-view .profile-details > .section-label::before {
  content:'';
  display:block;
  width:24px;
  height:1px;
  flex:none;
  background:var(--accent);
}
.home-view .profile-bio { margin:0 0 clamp(33px,3vw,55px); }
.home-view .profile-bio p {
  font-family:'Manrope','DM Sans',sans-serif;
  font-size:clamp(18px,1.28vw,24px);
  line-height:1.72;
  font-weight:400;
  letter-spacing:-.025em;
  color:var(--ink);
  margin:0 0 clamp(10px,1.12vw,19px);
}
.home-view .profile-bio p:first-child { font-weight:600; }
.home-view .profile-bio a {
  color:var(--accent);
  text-underline-offset:5px;
  text-decoration-thickness:1px;
}
.home-view .profile-divider { background:var(--line);margin:clamp(25px,2.1vw,42px) 0; }
.home-view .profile-links { display:grid;gap:clamp(10px,1vw,18px); }
.home-view .profile-links a {
  display:inline-flex;
  min-height:44px;
  align-items:center;
  gap:17px;
  width:fit-content;
  max-width:100%;
  overflow-wrap:anywhere;
  font:600 clamp(15px,1.16vw,20px)/1.4 'Manrope','DM Sans',sans-serif;
  color:var(--ink);
}
.home-view .profile-links span { font-size:25px;line-height:1;min-width:26px;color:var(--accent); }
.home-view .profile-copyright {
  max-width:710px;
  margin:0;
  font:italic 400 clamp(13px,.93vw,15px)/1.85 'Manrope','DM Sans',sans-serif;
  color:var(--muted);
}
.home-view .profile-legal {margin:clamp(18px,1.5vw,30px) 0 0;gap:16px;flex-wrap:wrap;}
.home-view .profile-legal a {color:var(--ink);font-weight:800;letter-spacing:.125em;}
@media(min-width:2400px){
  .home-view .profile-section {
    grid-template-columns:minmax(370px,405px) minmax(0,1150px);
    gap:clamp(120px,5.7vw,210px);
    padding:clamp(165px,6vw,250px) clamp(90px,6vw,270px);
    min-height:clamp(850px,35vw,1300px);
  }
  .home-view .profile-photo-wrap {max-width:405px;}
  .home-view .profile-details {max-width:1150px;}
  .home-view .profile-bio p {font-size:clamp(24px,1.03vw,34px);}
  .home-view .profile-links a {font-size:clamp(19px,.78vw,28px);}
  .home-view .profile-copyright {font-size:clamp(17px,.58vw,21px);}
  .home-view .profile-details > .section-label {font-size:clamp(13px,.5vw,18px);}
}
@media(max-width:1100px){
  .home-view .profile-section {
    grid-template-columns:minmax(190px,34%) minmax(0,1fr);
    gap:clamp(30px,4.5vw,60px);
    min-height:auto;
    padding:clamp(75px,8vw,115px) clamp(24px,4vw,64px);
  }
  .home-view .profile-bio p {font-size:clamp(16px,1.7vw,20px);}
  .home-view .profile-details > .section-label {margin-bottom:30px;}
}
@media(max-width:720px){
  .home-view .profile-section {
    grid-template-columns:minmax(0,1fr);
    justify-items:start;
    gap:clamp(28px,6vw,43px);
    padding:clamp(66px,10vw,90px) clamp(22px,5.5vw,38px) clamp(74px,11vw,99px);
  }
  .home-view .profile-photo-wrap {width:min(100%,405px);max-width:405px;}
  .home-view .profile-details {width:100%;max-width:none;}
  .home-view .profile-details > .section-label {margin-bottom:26px;}
  .home-view .profile-bio {margin-bottom:25px;}
  .home-view .profile-bio p {font-size:clamp(16px,4.05vw,19px);line-height:1.7;}
  .home-view .profile-links a {font-size:clamp(14px,3.8vw,17px);}
  .home-view .profile-divider {margin:23px 0;}
  .home-view .profile-copyright {font-size:13px;}
}

/* V29 — Journal only. Reference: max. 1304px and three photographic columns.
   Retain every existing brandbook token, other section, and mobile feature. */
.home-view .journal {
  width:100%;
  max-width:1304px;
  margin-inline:auto;
}
.home-view .journal .journal-head {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,360px);
  align-items:center;
  column-gap:clamp(25px,4vw,68px);
  margin-bottom:clamp(28px,2.5vw,43px);
}
.home-view .journal .journal-head h2 {
  font-size:clamp(54px,5.8vw,80px);
  line-height:1.075;
  min-width:0;
  max-width:825px;
}
.home-view .journal .journal-head p {
  display:block;
  max-width:360px;
  margin:0;
  font-size:clamp(14px,1.02vw,16px);
  line-height:1.72;
  color:var(--muted);
  text-wrap:pretty;
}
.home-view .journal .story-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  column-gap:26px;
  row-gap:clamp(36px,3.1vw,55px);
}
.home-view .journal .card-image {
  aspect-ratio:417 / 339;
  width:100%;
  height:auto;
}
.home-view .journal .card-index { display:none; }
.home-view .journal .card-meta {
  margin-top:17px;
  font-size:10px;
  letter-spacing:.15em;
}
.home-view .journal .story-card h3 {
  font-size:clamp(21px,2.05vw,28px);
  line-height:1.18;
  margin:10px 0 10px;
  letter-spacing:-.047em;
}
.home-view .journal .story-card p {
  font-size:clamp(13px,1.01vw,15px);
  line-height:1.6;
}
@media(max-width:1100px) {
  .home-view .journal .journal-head {
    grid-template-columns:minmax(0,1fr) minmax(210px,300px);
    column-gap:28px;
  }
  .home-view .journal .story-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:32px 20px;
  }
  .home-view .journal .journal-head h2 { font-size:clamp(47px,6vw,70px); }
}
@media(max-width:720px) {
  .home-view .journal .journal-head {
    display:block;
    margin-bottom:24px;
  }
  .home-view .journal .journal-head h2 { font-size:clamp(39px,9.4vw,62px); }
  .home-view .journal .journal-head p {
    max-width:35rem;
    margin:20px 0 0;
    font-size:15px;
  }
  .home-view .journal .story-grid {
    grid-template-columns:1fr;
    gap:34px;
  }
  .home-view .journal .card-image { aspect-ratio:417 / 339; }
  .home-view .journal .story-card h3 { font-size:clamp(22px,5.8vw,27px); }
}


/* V31 / Approved editorial section hierarchy.
   A heading belongs above its section content, never inside the right-hand
   biography column. Match Philosophy's outer left reference line precisely. */
.home-view .hero-inner > .hero-kicker {
  display:flex; align-items:center; gap:14px; width:fit-content;
  margin:0 0 clamp(22px,2.4vw,38px);
  color:#E5A187;
  font:800 clamp(10px,.65vw,14px)/1.5 'Manrope','DM Sans',sans-serif;
  letter-spacing:.15em; text-transform:uppercase;
}
.home-view .hero-inner > .hero-kicker::before {
  content:''; display:block; flex:none;
  width:24px; height:1px; background:currentColor;
}
.home-view .profile-section > .profile-kicker {
  position:absolute;
  top:clamp(72px,5.55vw,112px);
  left:max(24px,calc((100vw - 1336px) / 2 + 24px));
  display:flex; align-items:center; gap:12px;
  margin:0; width:max-content; max-width:calc(100% - 44px);
  color:var(--accent);
  font:800 11px/1.4 'Manrope','DM Sans',sans-serif;
  letter-spacing:.145em; text-transform:uppercase;
}
.home-view .profile-section > .profile-kicker::before {
  content:''; display:block; flex:none;
  width:22px; height:1px; background:var(--accent);
}
@media(min-width:2400px) {
  .home-view .profile-section > .profile-kicker {
    left:calc((100vw - min(82vw,2200px)) / 2 + clamp(35px,2vw,60px));
    top:clamp(115px,5.2vw,185px);
    font-size:clamp(12px,.48vw,18px);
  }
}
@media(max-width:1100px) {
  .home-view .profile-section > .profile-kicker { top:clamp(36px,5vw,62px);left:clamp(24px,4vw,64px); }
  .home-view .profile-section { padding-top:clamp(112px,12vw,146px); }
}
@media(max-width:720px) {
  .home-view .profile-section > .profile-kicker { top:35px;left:clamp(22px,5.5vw,38px); }
  .home-view .profile-section { padding-top:clamp(94px,16vw,116px); }
  .home-view .hero-inner > .hero-kicker { font-size:10px;line-height:1.4;letter-spacing:.105em;margin-bottom:17px; }
  .home-view .hero-inner > .hero-kicker::before {width:17px;}
}

/* V34 – Hero emphasis only: brandbook serif italic in terracotta.
   Identical emphasis treatment in both modes because the text overlays the same photo. */
html body.home-view .hero h1 em.hero-accent {
  color:#D79B7E;
  font-family:Georgia, 'Times New Roman', serif;
  font-style:italic;
  font-weight:400;
  letter-spacing:-.065em;
  line-height:1;
  white-space:nowrap;
}

/* V39: ARTICLE HEADER PARITY ONLY.
   This overrides the legacy boxed header used by article.php.
   The article body, media, headings and spacing are not targeted.
   Keep this block at the very end of brandbook-v22.css so article.php
   can pick it up through its already-existing stylesheet link.
*/
:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header {
  box-sizing: border-box !important;
  position: relative !important;
  inset: auto !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: none !important;
  min-height: 76px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 20px clamp(24px, 3.3vw, 72px) 0 clamp(24px, 4.85vw, 94px) !important;
  display: flex !important;
  align-items: center !important;
  gap: clamp(14px, 1.5vw, 30px) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--bg) !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* No emblem, no search icon, no boxed navigation on article pages. */
:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .brand-symbol,
:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header #search-open {
  display: none !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  flex: 0 0 auto;
  color: var(--ink) !important;
  font: 800 clamp(19px, 1.85vw, 24px)/1 'DM Sans', 'Manrope', sans-serif !important;
  letter-spacing: -.076em !important;
  text-decoration: none !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .brand-wordmark,
:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .brand-wordmark span {
  color: var(--ink) !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .brand-wordmark b {
  color: var(--accent) !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .header-nav {
  display: flex !important;
  align-items: center !important;
  margin-left: auto !important;
  gap: clamp(16px, 1.65vw, 26px) !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .header-nav a {
  color: var(--ink) !important;
  font: 700 12px/1.3 'Manrope', 'DM Sans', sans-serif !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  text-decoration: none !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .header-nav a:hover,
:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .header-nav a:focus-visible {
  color: var(--accent) !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .header-tools {
  display: flex !important;
  align-items: center !important;
  gap: clamp(8px, .8vw, 16px) !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .language-toggle {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  color: var(--ink) !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .language-toggle button,
:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .icon-button {
  color: var(--ink) !important;
}

:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .language-toggle button[aria-pressed='true'] {
  color: var(--accent) !important;
}

/* Hamburger belongs only to compact header, like on the homepage. */
:is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header #menu-toggle {
  display: none !important;
}

@media (max-width: 720px) {
  :is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header {
    min-height: 60px !important;
    padding: 7px 12px !important;
    gap: 4px !important;
  }

  :is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .brand {
    font-size: clamp(16px, 4.2vw, 21px) !important;
  }

  :is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header #menu-toggle {
    display: inline-grid !important;
  }

  :is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .header-nav {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    background: var(--bg) !important;
    border: 0 !important;
  }

  :is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header .header-nav.is-open {
    display: flex !important;
  }
}

@media (max-width: 390px) {
  :is(body.article-view, body:has(.article-title), body:has(.article-content)) .site-header {
    padding: 6px 8px !important;
  }
}


/* Source: menu-only-restore-v24.css */
/* PDS V24 - HEADER-ONLY RESTORE.
 * Restores the transparent, unboxed V21 hero navigation and wordmark.
 * Only the navigation controls are moved upwards; Hero and all other sections
 * remain exactly as delivered in V23. Articles and the Admin are untouched. */
.home-view .site-header {
  top: clamp(32px, 3.5vw, 60px);
  left: clamp(24px, 4.3vw, 175px);
  right: clamp(24px, 4.3vw, 175px);
  width: auto;
  height: 70px;
  min-height: 70px;
  padding: 0;
  gap: clamp(16px, 1.65vw, 32px);
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  color: #fff;
}
/* The former wordmark had no extra symbol or terracotta-coloured letters. */
.home-view .brand-symbol { display: none; }
.home-view .brand { display: inline-flex; gap: 0; color: #fff; font-weight: 800; font-size: clamp(21px, 1.7vw, 31px); }
.home-view .brand-wordmark,
.home-view .brand-wordmark span { color: #fff; }
.home-view .brand-wordmark b { color: var(--accent); }
/* ONLY the menu and its controls move up, not the logo or the Hero. */
@media (min-width: 721px) {
  .home-view .header-nav,
  .home-view .header-tools { transform: translateY(-27px); }
}
.home-view .header-nav a,
.home-view .language-toggle,
.home-view .language-toggle button,
.home-view .icon-button { color: #fff; }
.home-view .header-nav a { font-size: 12px; }
.home-view .language-toggle button[aria-pressed="true"] { color: #fff; }
.home-view .header-nav a:hover,
.home-view .language-toggle button:hover,
.home-view .icon-button:hover { color: var(--accent); }
/* Contrasting text only, without any new rectangular navigation backdrop. */
.home-view .header-nav a,
.home-view .language-toggle,
.home-view .header-tools { text-shadow: 0 1px 3px rgba(0,0,0,.7); }
.home-view .icon-button:hover { background: transparent; border-color: transparent; }
@media (max-width: 720px) {
  .home-view .site-header { top: 20px; left: 18px; right: 18px; height: 58px; min-height: 58px; }
  .home-view .brand { font-size: clamp(18px, 5vw, 24px); }
  .home-view .header-nav { transform: none; }
  .home-view .header-tools { transform: none; }
  .home-view .header-nav.is-open {
    top: calc(100% + 8px); left: 0; right: 0;
    background: #171817; border: 1px solid #41413b;
    padding: 16px; box-shadow: none;
  }
  .home-view .header-nav.is-open a { color: #fff; }
}
@media (max-width: 390px) {
  .home-view .site-header { left: 12px; right: 12px; top: 16px; }
  .home-view .brand { font-size: 18px; }
}


/* Source: layout-v32.css */
/* PDS V32 - section alignment and ultra-wide readability.
 * Loaded LAST: do not modify the approved hero, featured-article proportions,
 * article typography, branding or existing journal filtering logic.
 * Common editorial shell ensures Journal / Philosophy / Alias / Contact start
 * at exactly the same inline location. */
:root {
  --pds-section-max: 1304px;
  --pds-section-gutter: 24px;
}
@media (min-width:2400px) {
  :root { --pds-section-max: min(82vw,2200px); }
}
/* The source .page has responsive internal padding; all section shells must
   nevertheless share the same viewport-relative 1304px / ultra-wide grid. */
html body.home-view .journal {
  box-sizing:border-box;
  width: min(100%,var(--pds-section-max));
  max-width:var(--pds-section-max);
  margin-inline:auto;
}
html body.home-view .philosophy-section {
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:0;
}
html body.home-view .philosophy-section .philosophy-layout {
  width:100%;
  max-width:calc(var(--pds-section-max) + 2 * var(--pds-section-gutter));
  margin-inline:auto;
  padding:clamp(88px,5vw,145px) var(--pds-section-gutter);
  grid-template-columns:minmax(0,28%) minmax(0,1fr);
  column-gap:clamp(44px,4.4vw,94px);
  align-items:start;
}
html body.home-view .philosophy-section .philosophy-intro {
  margin:0;
  padding-top:clamp(6px,.6vw,13px);
}
html body.home-view .profile-section {
  box-sizing:border-box;
  position:relative;
  width:100vw;
  max-width:none;
  margin:0 0 0 calc(50% - 50vw);
  padding:clamp(80px,5.7vw,145px)
          max(var(--pds-section-gutter),calc((100vw - var(--pds-section-max))/2))
          clamp(86px,6vw,155px);
  display:grid;
  grid-template-columns:minmax(0,405fr) minmax(0,850fr);
  grid-template-areas:'heading heading' 'portrait biography';
  column-gap:clamp(42px,5vw,110px);
  row-gap:clamp(36px,3.3vw,72px);
  align-items:start;
  justify-content:stretch;
  min-height:0;
}
html body.home-view .profile-section > .profile-kicker {
  position:static;
  inset:auto;
  transform:none;
  grid-area:heading;
  width:fit-content;
  max-width:100%;
  margin:0;
  font:800 clamp(11px,.65vw,15px)/1.45 'Manrope','DM Sans',sans-serif;
  letter-spacing:.145em;
}
html body.home-view .profile-section > .profile-photo-wrap {
  grid-area:portrait;
  width:100%;
  max-width:100%;
  min-width:0;
  align-self:start;
  margin:0;
  aspect-ratio:1;
}
html body.home-view .profile-section > .profile-details {
  grid-area:biography;
  width:100%;
  min-width:0;
  max-width:none;
  margin:0;
  padding:0;
}
html body.home-view .profile-section > .profile-details > .section-label {
  display:none; /* superseded by one accessible heading above the section */
}
html body.home-view .contact {
  box-sizing:border-box;
  width:min(100%,var(--pds-section-max));
  max-width:var(--pds-section-max);
  margin-inline:auto;
  padding:clamp(80px,5.7vw,145px) 0 clamp(80px,6vw,155px);
}
/* Avoid narrow microtypography and cramped cards on ultra-wide monitors.
   Featured editorial stays 1304 x 579px, per the explicitly approved spec. */
@media (min-width:2400px) {
  html body.home-view .journal .journal-head h2 {font-size:clamp(89px,3.1vw,125px);max-width:none;}
  html body.home-view .journal .journal-head p {font-size:clamp(18px,.7vw,24px);max-width:460px;}
  html body.home-view .journal .journal-head {grid-template-columns:minmax(0,1fr) minmax(330px,460px);}
  html body.home-view .journal .story-grid {column-gap:clamp(28px,1.35vw,50px);}
  html body.home-view .journal .story-card h3 {font-size:clamp(27px,1vw,36px);}
  html body.home-view .journal .story-card p {font-size:clamp(16px,.63vw,21px);}
  html body.home-view .journal .filters button {font-size:clamp(14px,.52vw,18px);}
  html body.home-view .philosophy-section .philosophy-quote {font-size:clamp(69px,2.7vw,99px);max-width:none;}
  html body.home-view .profile-section {grid-template-columns:minmax(0,560px) minmax(0,1fr);column-gap:clamp(100px,5vw,160px);}
  html body.home-view .profile-section .profile-photo-wrap {max-width:560px;}
  html body.home-view .profile-section .profile-details {max-width:1240px;}
  html body.home-view .contact h2 {font-size:clamp(85px,3.2vw,122px);}
}
@media (max-width:1100px) and (min-width:721px) {
  :root {--pds-section-gutter:clamp(12px,2vw,22px);}
  html body.home-view .profile-section {column-gap:clamp(26px,4vw,50px);}
  html body.home-view .profile-section .profile-bio p {font-size:clamp(16px,1.6vw,19px);}
  html body.home-view .philosophy-section .philosophy-layout {grid-template-columns:minmax(150px,27%) minmax(0,1fr);gap:30px;}
}
@media (max-width:720px) {
  :root {--pds-section-gutter:clamp(20px,5.5vw,30px);}
  html body.home-view .journal {width:100%;}
  html body.home-view .philosophy-section .philosophy-layout {
    grid-template-columns:minmax(0,1fr);
    row-gap:25px;
    padding:clamp(58px,10vw,85px) var(--pds-section-gutter);
  }
  html body.home-view .profile-section {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:'heading' 'portrait' 'biography';
    row-gap:clamp(25px,5vw,37px);
    padding:clamp(61px,11vw,88px) var(--pds-section-gutter) clamp(70px,12vw,100px);
  }
  html body.home-view .profile-section > .profile-photo-wrap {max-width:405px;}
  html body.home-view .profile-section .profile-bio {margin:0 0 26px;}
  html body.home-view .contact {width:100%;padding:clamp(65px,11vw,95px) 0;}
}


/* Source: hero-typography-v35.css */
/* puredigitalsoul V35 - HOME HERO TYPOGRAPHY ONLY.
   DE and EN share the exact same type treatment.
   The native line breaks and copy are retained from V34.
   Load AFTER layout-v32.css to avoid cascade reversals. */
html .home-view .hero h1,
html[data-lang="de"] .home-view .hero h1,
html[data-lang="en"] .home-view .hero h1 {
  font-family: 'DM Sans', 'Manrope', system-ui, sans-serif;
  font-style: normal;
  font-weight: 700;
}
html .home-view .hero h1 em.hero-accent,
html[data-lang="de"] .home-view .hero h1 em.hero-accent,
html[data-lang="en"] .home-view .hero h1 em.hero-accent {
  color: #D79B7E;
  font-family: Georgia, 'Times New Roman', serif;
  font-style: italic;
  font-weight: 400;
  font-size: 1.05em;
  letter-spacing: -.065em;
  line-height: 1;
  white-space: nowrap;
  text-transform: none;
}


/* Source: profile-editorial-v40.css */
/* puredigitalsoul V40 - ABOUT / HINTER DEM ALIAS ONLY.
 * The approved editorial portrait is integrated into the section instead of
 * displayed as a hard-edged square. No other page sections are changed.
 * Original biography, contact, copyright and legal links remain untouched.
 * Loaded AFTER the V32 layout and V35 hero styles. */

html body.home-view .profile-section {
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 39.2%) minmax(0, 1fr);
  column-gap: clamp(24px, 3.125vw, 64px);
  align-items: start;
  justify-items: stretch;
  width: 100vw;
  max-width: none;
  min-height: 768px;
  margin-left: calc(50% - 50vw);
  padding: clamp(136px, 7.65vw, 157px) clamp(28px, 5.66vw, 116px) clamp(52px, 3.125vw, 64px);
  background: var(--bg);
  border: 0;
  overflow: hidden;
  gap: 0 clamp(24px, 3.125vw, 64px);
}
html body.home-view .profile-section > .profile-kicker {
  z-index: 2;
  top: clamp(37px, 2.69vw, 55px);
  left: clamp(28px, 5.66vw, 116px);
  margin: 0;
  color: var(--accent);
  letter-spacing: .19em;
  font: 800 clamp(11px, .69vw, 14px)/1.4 'Manrope','DM Sans',sans-serif;
}
html body.home-view .profile-section > .profile-kicker::before {
  width: clamp(20px, 1.5vw, 33px);
  background: var(--accent);
}
/* Full-bleed artwork, with a seamless fade so the biography has clean ground. */
html body.home-view .profile-photo-wrap {
  position: absolute;
  z-index: 0;
  inset: 0 auto 0 0;
  width: 62%;
  height: 100%;
  min-height: 0;
  max-width: none;
  aspect-ratio: auto;
  margin: 0;
  overflow: hidden;
  background: transparent;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(to right, #000 0%, #000 45%, rgba(0,0,0,.94) 54%, transparent 84%);
  mask-image: linear-gradient(to right, #000 0%, #000 45%, rgba(0,0,0,.94) 54%, transparent 84%);
}
html body.home-view .profile-photo {
  display: block;
  position: absolute;
  top: clamp(35px, 3vw, 64px);
  left: 0;
  width: clamp(640px, 42vw, 900px);
  max-width: none;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  object-position: left top;
  filter: grayscale(1);
  -webkit-mask-image: radial-gradient(ellipse 85% 87% at 42% 43%, #000 0%, #000 54%, transparent 94%);
  mask-image: radial-gradient(ellipse 85% 87% at 42% 43%, #000 0%, #000 54%, transparent 94%);
}
html body.home-view .profile-details {
  position: relative;
  z-index: 1;
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  max-width: none;
  min-width: 0;
  padding: 0;
}
html body.home-view .profile-bio {
  display: grid;
  gap: clamp(17px, 1.05vw, 22px);
  margin: 0;
}
html body.home-view .profile-bio p,
html body.home-view .profile-bio p:first-child {
  margin: 0;
  color: var(--ink);
  font: 400 clamp(19px, 1.51vw, 31px)/1.42 'Manrope','DM Sans',sans-serif;
  letter-spacing: -.033em;
}
html body.home-view .profile-bio a {
  color: var(--accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}
html body.home-view .profile-details > .profile-bio + .profile-divider {
  height: 1px;
  margin: clamp(26px, 1.61vw, 33px) 0 clamp(17px, 1.22vw, 25px);
  background: var(--line);
}
html body.home-view .profile-links {
  display: grid;
  gap: clamp(8px, .69vw, 14px);
  margin: 0;
}
html body.home-view .profile-links a {
  display: inline-flex;
  align-items: center;
  gap: clamp(14px, 1.23vw, 25px);
  max-width: 100%;
  width: fit-content;
  min-height: clamp(37px, 2.1vw, 43px);
  color: var(--ink);
  font: 500 clamp(16px, 1.2vw, 25px)/1.4 'Manrope','DM Sans',sans-serif;
  letter-spacing: -.018em;
  text-decoration: none;
  overflow-wrap: anywhere;
}
html body.home-view .profile-links a:hover,
html body.home-view .profile-links a:focus-visible { color: var(--accent); }
html body.home-view .profile-links span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 27px;
  width: 27px;
  min-width: 27px;
  color: var(--accent);
  font-size: clamp(17px, 1.18vw, 24px);
  line-height: 1;
}
html body.home-view .profile-details > .profile-links + .profile-divider {
  height: 1px;
  margin: clamp(24px, 1.75vw, 36px) 0 clamp(20px, 1.5vw, 31px);
  background: var(--line);
}
html body.home-view .profile-copyright {
  max-width: 890px;
  margin: 0;
  color: var(--muted);
  font: 400 clamp(14px, .94vw, 19px)/1.64 'Manrope','DM Sans',sans-serif;
  letter-spacing: -.012em;
}
html body.home-view .profile-legal {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin: clamp(16px, 1.15vw, 24px) 0 0;
  padding: 0;
}
html body.home-view .profile-legal > span[aria-hidden="true"] { display: none; }
html body.home-view .profile-legal a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 11px 16px;
  border: 1px solid var(--line);
  color: var(--ink);
  background: transparent;
  font: 800 clamp(10px, .59vw, 12px)/1.4 'Manrope','DM Sans',sans-serif;
  letter-spacing: .19em;
  text-transform: uppercase;
  text-decoration: none;
}
html body.home-view .profile-legal a:hover,
html body.home-view .profile-legal a:focus-visible {
  border-color: var(--accent);
  color: var(--accent);
}
/* Scale down gracefully before the two columns become cramped. */
@media (max-width: 1440px) and (min-width: 961px) {
  html body.home-view .profile-section {
    min-height: clamp(620px, 54vw, 768px);
    padding-top: clamp(121px, 9.1vw, 137px);
    padding-bottom: 54px;
  }
  html body.home-view .profile-bio p,
  html body.home-view .profile-bio p:first-child { font-size: clamp(18px, 1.55vw, 23px); line-height: 1.48; }
  html body.home-view .profile-links a { font-size: clamp(15px, 1.33vw, 20px); }
  html body.home-view .profile-copyright { font-size: clamp(13px, .99vw, 16px); }
}
/* At tablet and phone sizes, image first, text below; no text overlays the face. */
@media (max-width: 960px) {
  html body.home-view .profile-section {
    display: flex;
    flex-direction: column;
    width: 100vw;
    min-height: 0;
    margin-left: calc(50% - 50vw);
    padding: 0 clamp(22px, 5.5vw, 42px) clamp(66px, 9vw, 90px);
    gap: 0;
  }
  html body.home-view .profile-section > .profile-kicker {
    top: clamp(30px, 5vw, 47px);
    left: clamp(22px, 5.5vw, 42px);
    font-size: 11px;
  }
  html body.home-view .profile-photo-wrap {
    position: relative;
    inset: auto;
    order: 0;
    width: calc(100% + 2 * clamp(22px, 5.5vw, 42px));
    height: clamp(360px, 69vw, 560px);
    max-width: none;
    margin-inline: calc(-1 * clamp(22px, 5.5vw, 42px));
    margin-bottom: clamp(0px, 2vw, 14px);
    -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 56%, transparent 99%);
    mask-image: linear-gradient(to bottom, #000 0%, #000 56%, transparent 99%);
  }
  html body.home-view .profile-photo {
    top: 30px;
    left: 50%;
    width: min(100%, 600px);
    transform: translateX(-50%);
    object-position: center top;
    -webkit-mask-image: radial-gradient(ellipse 88% 89% at 50% 42%, #000 0%, #000 58%, transparent 97%);
    mask-image: radial-gradient(ellipse 88% 89% at 50% 42%, #000 0%, #000 58%, transparent 97%);
  }
  html body.home-view .profile-details {
    order: 1;
    width: 100%;
    max-width: 760px;
  }
  html body.home-view .profile-bio { gap: 15px; }
  html body.home-view .profile-bio p,
  html body.home-view .profile-bio p:first-child {
    font-size: clamp(17px, 2.75vw, 23px);
    line-height: 1.55;
  }
  html body.home-view .profile-details > .profile-bio + .profile-divider { margin: 28px 0 20px; }
  html body.home-view .profile-details > .profile-links + .profile-divider { margin: 27px 0 24px; }
  html body.home-view .profile-links a { font-size: clamp(15px, 2.2vw, 19px); }
  html body.home-view .profile-copyright { font-size: clamp(13px, 1.85vw, 16px); }
}
@media (max-width: 480px) {
  html body.home-view .profile-photo-wrap { height: clamp(320px, 92vw, 430px); }
  html body.home-view .profile-bio p,
  html body.home-view .profile-bio p:first-child { font-size: clamp(16px, 4.4vw, 18px); }
  html body.home-view .profile-legal a { min-height: 42px; padding: 10px 13px; font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  html body.home-view .profile-section * { transition: none; }
}


/* Source: profile-scale-v44.css */
/* V44 approved: profile section scaling only at CSS viewports >2048px.
   Scale all V40 measurements proportionally so 50% browser zoom at a
   2048 physical-pixel display reproduces the 2048px approved design. All other sections remain unchanged. */
@media (min-width:2049px) {
 html body.home-view .profile-section {
   min-height:37.5vw;
   padding:7.65vw 5.66vw 3.125vw;
   column-gap:3.125vw;
   gap:0 3.125vw;
 }
 html body.home-view .profile-section > .profile-kicker {
   top:2.69vw;
   left:5.66vw;
   font-size:.684vw;
 }
 html body.home-view .profile-section > .profile-kicker::before { width:1.5vw; }
 html body.home-view .profile-photo { top:3vw; width:42vw; }
 html body.home-view .profile-bio { gap:1.05vw; }
 html body.home-view .profile-bio p,
 html body.home-view .profile-bio p:first-child { font-size:1.51vw; }
 html body.home-view .profile-details > .profile-bio + .profile-divider {margin:1.61vw 0 1.22vw;}
 html body.home-view .profile-links { gap:.69vw; }
 html body.home-view .profile-links a {gap:1.23vw;min-height:2.1vw;font-size:1.2vw;}
 html body.home-view .profile-links span {flex:0 0 1.32vw;width:1.32vw;min-width:1.32vw;font-size:1.18vw;}
 html body.home-view .profile-details > .profile-links + .profile-divider { margin:1.75vw 0 1.5vw; }
 html body.home-view .profile-copyright {font-size:.94vw;}
 html body.home-view .profile-legal { margin-top:1.15vw;gap:.69vw; }
 html body.home-view .profile-legal a {min-height:2.05vw;padding:.54vw .78vw;font-size:.586vw;}
}


/* Source: profile-photo-v45.css */
/* V45: only #about portrait rendering; locks all other site sections. */
html body.home-view #about .profile-photo-wrap {
  -webkit-mask-image:linear-gradient(to right,#000 0%,#000 57%,rgba(0,0,0,.9) 69%,transparent 92%);
  mask-image:linear-gradient(to right,#000 0%,#000 57%,rgba(0,0,0,.9) 69%,transparent 92%);
}
html body.home-view #about .profile-photo {
  -webkit-mask-image:none;
  mask-image:none;
  width:clamp(640px,42vw,900px);
  max-width:none;
  height:auto;
  object-fit:contain;
  object-position:left top;
}
@media (min-width:2049px) {
  html body.home-view #about .profile-photo {width:42vw;}
}
@media (max-width:960px) {
  html body.home-view #about .profile-photo-wrap {
    -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 61%,transparent 100%);
    mask-image:linear-gradient(to bottom,#000 0%,#000 61%,transparent 100%);
  }
  html body.home-view #about .profile-photo {
    width:min(100%,600px);
    object-position:center top;
  }
}


/* Former in-template styles */

/* V28: featured article proportions locked to the approved reference image.
   1304 x 579px on wide screens, 806px image + 498px editorial copy.
   Scope strictly limited to the featured article and its responsive layout. */
.featured-section {
  width:100%; max-width:1304px; margin-inline:auto;
  padding:clamp(48px,5.4vw,94px) 0 0;
}
.featured-card {
  display:grid;
  grid-template-columns:minmax(0,806fr) minmax(0,498fr);
  width:100%; height:579px; min-height:0; margin:0;
  border:0; background:var(--panel); color:var(--ink);
}
.featured-card[data-language="en"] { display:none; }
html[data-lang="en"] .featured-card[data-language="en"] { display:grid; }
html[data-lang="en"] .featured-card[data-language="de"] { display:none; }
.featured-visual {
  display:block; width:100%; height:100%; min-height:0;
  overflow:hidden; background:var(--bg2);
}
.featured-visual img {
  width:100%; height:100%; object-fit:cover; object-position:center;
  display:block; transition:transform .45s ease;
}
.featured-visual:hover img { transform:scale(1.025); }
.featured-copy {
  min-width:0; display:flex; flex-direction:column;
  align-items:flex-start; justify-content:center;
  padding:54px 70px 54px 74px;
}
.featured-eyebrow {
  display:flex; flex-wrap:wrap; align-items:center; gap:13px;
  margin:0 0 28px;
  font:800 10px/1.45 'Manrope','DM Sans',sans-serif;
  letter-spacing:.17em; text-transform:uppercase; color:var(--accent);
}
.featured-eyebrow span { color:var(--muted); font-weight:400; }
.featured-heading {
  margin:0; max-width:100%; overflow-wrap:break-word;
  color:var(--ink);
  font:700 clamp(44px,4.5vw,64px)/1.075 'DM Sans','Manrope',sans-serif;
  letter-spacing:-.065em;
}
.featured-heading em {
  color:var(--accent); font-family:Georgia,'Times New Roman',serif;
  font-weight:400; font-style:italic;
}
.featured-excerpt {
  margin:28px 0 28px; max-width:100%;
  color:var(--muted);
  font:500 16px/1.84 'Manrope','DM Sans',sans-serif;
}
.featured-cta {
  display:inline-flex; align-items:center; justify-content:space-between;
  gap:20px; min-height:44px; border-bottom:1px solid var(--accent);
  color:var(--ink); text-transform:uppercase;
  font:800 11px/1.4 'Manrope','DM Sans',sans-serif;
  letter-spacing:.085em; text-decoration:none;
  transition:color .16s ease;
}
.featured-cta:hover,.featured-cta:focus-visible { color:var(--accent); }
.featured-cta span:last-child { color:var(--accent); font-size:19px; }
.featured-section + .journal { padding-top:clamp(76px,6vw,124px); }
html[data-theme="light"] .featured-card { background:var(--panel); }
/* Preserve original editorial split as the available width decreases. */
@media(min-width:931px) and (max-width:1380px) {
  .featured-card { height:auto; min-height:clamp(485px,42.5vw,579px); }
  .featured-copy { padding:clamp(36px,4vw,54px) clamp(34px,5.1vw,70px); }
  .featured-heading { font-size:clamp(42px,4.45vw,61px); }
  .featured-excerpt { font-size:clamp(14px,1.15vw,16px); }
}
/* Match the 1304 x 579px reference at its original desktop viewport. */
@media(min-width:1340px) and (max-width:1380px) {
  .featured-card { height:579px; min-height:0; }
}
@media(max-width:930px) {
  .featured-card,html[data-lang="en"] .featured-card[data-language="en"] {
    grid-template-columns:1fr; height:auto; min-height:0;
  }
  .featured-visual { height:auto; min-height:0; aspect-ratio:16/10; }
  .featured-visual img { height:100%; }
  .featured-copy { padding:clamp(27px,4vw,46px); }
  .featured-heading { max-width:24ch; font-size:clamp(36px,6vw,62px); }
}
@media(max-width:540px) {
  .featured-section { padding-top:32px; }
  .featured-visual { aspect-ratio:1.28; }
  .featured-copy { padding:28px 23px 33px; }
  .featured-heading { font-size:clamp(36px,10vw,54px); }
  .featured-eyebrow { gap:10px; margin-bottom:21px; font-size:10px; }
  .featured-excerpt { font-size:15px; margin:20px 0 24px; }
}
@media(prefers-reduced-motion:reduce) {
  .featured-visual img { transition:none; }
}


/* Source: mobile-layout-v47.css */
/* puredigitalsoul – Mobile-only layout correction.
   Desktop, admin and article detail pages are deliberately excluded. */
@media (max-width: 720px) {
  /* Shorter photographic hero; content no longer anchored near the bottom. */
  html body.home-view .hero {
    min-height: clamp(660px, 82svh, 820px);
    height: auto;
  }
  html body.home-view .hero-content {
    align-items: center;
    padding: clamp(112px, 14svh, 152px) 20px clamp(36px, 5svh, 54px);
  }
  html body.home-view .hero-inner { max-width: 100%; }

  /* Journal: two columns = three rows before the first "show more" step. */
  html body.home-view .journal .story-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(12px, 3.5vw, 18px);
    row-gap: 28px;
    align-items: start;
  }
  html body.home-view .journal .story-card { min-width: 0; }
  html body.home-view .journal .card-image {
    width: 100%;
    aspect-ratio: 4 / 3;
  }
  html body.home-view .journal .card-meta {
    margin-top: 10px;
    font-size: 9px;
    letter-spacing: .075em;
    line-height: 1.4;
  }
  html body.home-view .journal .story-card h3 {
    font-size: clamp(15px, 4.2vw, 19px);
    line-height: 1.26;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
  }
  html body.home-view .journal .story-card p {
    font-size: 12px;
    line-height: 1.55;
  }
  html body.home-view .journal .story-card[data-pds-mobile-collapsed="true"] {
    display: none !important;
  }
  html.pds-mobile-journal-ready body.home-view #load-more {
    display: none !important; /* native pagination remains available to JS */
  }
  html body.home-view .journal .more-wrap:has(#pds-mobile-load-more:not([hidden])) {
    padding: 28px 0 0;
  }
  html body.home-view .journal #pds-mobile-load-more {
    min-height: 44px;
    padding: 12px 24px;
  }

  /* Match spacing between Philosophy, About and Contact sections. */
  html body.home-view .philosophy-layout {
    padding-top: 52px;
    padding-bottom: 56px;
  }
  html body.home-view #about.profile-section {
    padding-bottom: 38px;
  }
  html body.home-view #contact.contact {
    margin-top: 0;
    padding-top: 46px;
  }
}

/* Hidden must remain hidden even when the site's button class sets display. */
html body.home-view .journal #pds-mobile-load-more[hidden] {
  display: none !important;
}


/* Source: desktop-parity-v48.css */
/* puredigitalsoul – V48 desktop layout parity preview.
   Scope: homepage ONLY, desktop ONLY. No changes to copy, assets, data,
   admin, article details, navigation or mobile viewport rules. */
@media (min-width: 1024px) {
  /* Same title typography AND anchor position for both languages. */
  html body.home-view .hero {
    height: clamp(640px, 37.1vw, 760px);
    min-height: clamp(640px, 37.1vw, 760px);
  }
  html body.home-view .hero-content {
    align-items: flex-start;
    padding-top: clamp(145px, 8.05vw, 180px);
  }
  html body.home-view .hero-inner {
    width: 100%;
    max-width: min(960px, 74vw);
  }
  html body.home-view .hero h1,
  html[data-lang="de"] body.home-view .hero h1,
  html[data-lang="en"] body.home-view .hero h1 {
    font-family: 'DM Sans', 'Manrope', sans-serif;
    font-size: clamp(59px, 3.75vw, 77px);
    font-weight: 700;
    line-height: 1.065;
    letter-spacing: -.068em;
    margin: 0 0 26px;
  }
  html body.home-view .hero-content p,
  html[data-lang="de"] body.home-view .hero-content p,
  html[data-lang="en"] body.home-view .hero-content p {
    font-size: clamp(17px, .98vw, 20px);
    line-height: 1.55;
    max-width: 660px;
  }

  /* Approved featured grid: 806 px photograph and 498 px copy at 1304px.
     Titles do not split inside “puredigitalsoul”. */
  html body.home-view .featured-section {
    max-width: 1304px;
  }
  html body.home-view .featured-card {
    grid-template-columns: minmax(0,806fr) minmax(0,498fr);
    height: 579px;
  }
  html body.home-view .featured-card .featured-copy {
    padding: 46px 58px 46px 60px;
  }
  html body.home-view .featured-card .featured-heading {
    font-family: 'DM Sans', 'Manrope', sans-serif;
    font-size: clamp(38px, 2.35vw, 48px);
    font-weight: 700;
    line-height: 1.09;
    letter-spacing: -.055em;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
    text-wrap: balance;
  }
  html body.home-view .featured-card .featured-excerpt {
    font-size: 15px;
    line-height: 1.7;
    margin: 24px 0;
  }

  /* Restore the V29 three-column editorial rhythm without giant headlines. */
  html body.home-view .journal {
    width: min(1540px, calc(100% - clamp(48px, 5.7vw, 116px)));
    max-width: 1540px;
    margin-left: clamp(24px, 2.85vw, 58px);
    margin-right: auto;
  }
  html body.home-view .journal .journal-head h2 {
    font-size: clamp(46px, 3.2vw, 66px);
    line-height: 1.09;
  }
  html body.home-view .journal .journal-head p {
    font-size: 15px;
    line-height: 1.67;
  }
  html body.home-view .journal .story-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 26px;
    row-gap: 46px;
  }
  html body.home-view .journal .story-card h3 {
    font-size: clamp(21px, 1.25vw, 26px);
    line-height: 1.2;
  }

  /* Philosophy follows the same anchor and typography in DE and EN. */
  html body.home-view .philosophy-section {
    min-height: 380px;
    margin-left: calc(50% - 50vw);
    padding: 0;
  }
  html body.home-view .philosophy-layout {
    width: 100%;
    max-width: 1336px;
    grid-template-columns: minmax(0, 300px) minmax(0, 1fr);
    column-gap: 70px;
    padding: 78px 24px 80px;
  }
  html body.home-view .philosophy-intro { padding-top: 10px; }
  html body.home-view .philosophy-intro .section-label { font-size: 11px; }
  html body.home-view .philosophy-quote,
  html[data-lang="de"] body.home-view .philosophy-quote,
  html[data-lang="en"] body.home-view .philosophy-quote {
    max-width: 860px;
    font-size: clamp(43px, 2.55vw, 53px);
    line-height: 1.23;
    text-wrap: pretty;
  }

  /* About: never mask the face. Keep a soft fade on the right and bottom. */
  html body.home-view #about.profile-section {
    min-height: clamp(610px, 37.5vw, 768px);
    padding-top: clamp(112px, 7.65vw, 155px);
    padding-bottom: 58px;
    grid-template-columns: minmax(0,39.2%) minmax(0,1fr);
    gap: 0 clamp(30px,3.125vw,64px);
  }
  html body.home-view #about.profile-section .profile-photo-wrap {
    position: absolute;
    z-index: 0;
    inset: 0 auto 0 0;
    width: 59%;
    height: 100%;
    min-height: 0;
    max-width: none;
    margin: 0;
    visibility: visible;
    overflow: visible;
    background: transparent;
    -webkit-mask-image: linear-gradient(to right, #000 0%, #000 72%, transparent 100%);
    mask-image: linear-gradient(to right, #000 0%, #000 72%, transparent 100%);
  }
  html body.home-view #about.profile-section .profile-photo {
    display: block;
    position: absolute;
    top: 35px;
    left: clamp(8px, 1.2vw, 26px);
    width: clamp(585px, 39vw, 800px);
    max-width: none;
    height: auto;
    aspect-ratio: 1;
    object-fit: contain;
    object-position: left top;
    filter: grayscale(1);
    transform: none;
    -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 72%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 0%, #000 72%, transparent 100%);
  }
  html body.home-view #about.profile-section .profile-details {
    grid-column: 2;
    grid-row: 1;
    position: relative;
    z-index: 1;
  }
  html body.home-view #about.profile-section .profile-bio p {
    font-size: clamp(19px, 1.24vw, 26px);
    line-height: 1.45;
  }
  html body.home-view #about.profile-section .profile-links a {
    font-size: clamp(16px, 1.05vw, 22px);
  }
  html body.home-view #about.profile-section .profile-copyright {
    font-size: clamp(14px, .81vw, 17px);
    line-height: 1.65;
  }

  /* Same compact two-column contact composition in DE and EN. */
  html body.home-view #contact.contact {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0,450px) minmax(0,230px);
    column-gap: 120px;
    align-content: start;
    align-items: start;
    justify-content: center;
    row-gap: 9px;
    width: 100%;
    max-width: none;
    min-height: 270px;
    margin: 0;
    padding: 42px 28px 28px;
  }
  html body.home-view #contact > .section-label {
    grid-column: 1;
    grid-row: 1;
    margin: 0 0 3px;
  }
  html body.home-view #contact > h2 {
    grid-column: 1;
    grid-row: 2 / span 2;
    width: 100%;
    max-width: 450px;
    margin: 0;
    font-size: clamp(30px, 1.85vw, 38px);
    line-height: 1.12;
    letter-spacing: -.05em;
  }
  html body.home-view #contact > p {
    grid-column: 2;
    grid-row: 2;
    max-width: 230px;
    margin: 0;
    font-size: clamp(11px, .6vw, 13px);
    line-height: 1.65;
  }
  html body.home-view #contact > .contact-cta {
    grid-column: 2;
    grid-row: 3;
    justify-self: start;
    margin: 7px 0 0;
    font-size: 11px;
  }
}

/* No viewport >=2400px enlargement: keep the same editorial hierarchy. */
@media (min-width: 2400px) {
  html body.home-view .journal .journal-head h2 { font-size: 66px; }
  html body.home-view .philosophy-quote { font-size: 53px; }
}


/* Source: profile-visibility-v50.css */
/* PUREDIGITALSOUL V50 — Desktop portrait visibility fix only.
   The source WebP files already contain their own right/bottom alpha fade.
   Reset the legacy grid placement on the absolutely positioned photo wrapper:
   otherwise grid-area:portrait turns its containing block into a tiny empty
   grid area at desktop widths, making the photograph disappear. */
@media (min-width: 961px) {
  html body.home-view #about.profile-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
  }

  /* Match the reference: the eyebrow sits above the portrait, not mid-image. */
  html body.home-view #about.profile-section > .profile-kicker {
    position: absolute;
    grid-area: auto;
    top: clamp(34px, 2.69vw, 55px);
    right: auto;
    bottom: auto;
    left: clamp(28px, 5.66vw, 116px);
    z-index: 2;
    margin: 0;
    transform: none;
  }

  html body.home-view #about.profile-section > .profile-photo-wrap {
    position: absolute;
    grid-area: auto;
    grid-column: auto;
    grid-row: auto;
    top: 0;
    right: auto;
    bottom: auto;
    left: 0;
    width: 59%;
    height: 100%;
    min-height: 0;
    max-width: none;
    aspect-ratio: auto;
    margin: 0;
    overflow: visible;
    z-index: 0;
    pointer-events: none;
    background: transparent;
    -webkit-mask-image: none;
    mask-image: none;
  }

  html body.home-view #about.profile-section > .profile-photo-wrap > .profile-photo {
    display: block;
    position: absolute;
    top: clamp(42px, 3vw, 62px);
    right: auto;
    bottom: auto;
    left: clamp(18px, 4.4vw, 92px);
    width: clamp(510px, 39.2vw, 820px);
    max-width: none;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    object-position: left top;
    transform: none;
    opacity: 1;
    visibility: visible;
    -webkit-mask-image: none;
    mask-image: none;
  }

  html body.home-view #about.profile-section > .profile-details {
    position: relative;
    z-index: 1;
  }
}


/* Source: editorial-alignment-v52.css */
/* puredigitalsoul V52 - Frontend alignment, responsive rhythm, mobile header.
   Loaded AFTER profile-visibility-v50.css. This file does not change admin,
   article detail pages, journal pagination, or any text / media assets. */

@media (min-width: 961px) {
  html body.home-view {
    --pds-editorial-edge: clamp(24px, 5.2vw, 120px);
    --pds-editorial-label: clamp(10px, .69vw, 13px);
  }

  /* All full-bleed sections share the Journal's actual left-hand axis. */
  html body.home-view #philosophy.philosophy-section .philosophy-layout {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(72px, 5vw, 115px) var(--pds-editorial-edge);
    grid-template-columns: minmax(0, 33%) minmax(0, 1fr);
    column-gap: clamp(32px, 4vw, 78px);
    align-items: start;
  }
  html body.home-view #philosophy .philosophy-intro {
    padding-top: clamp(6px, .55vw, 11px);
    gap: 16px;
  }
  html body.home-view #philosophy .philosophy-rule {
    flex: 0 0 28px;
    width: 28px;
  }
  html body.home-view #philosophy .philosophy-intro .section-label {
    font-size: var(--pds-editorial-label);
    letter-spacing: .17em;
    line-height: 1.45;
  }
  /* Preserve the approved Philosophie quote size, in both languages. */
  html body.home-view #philosophy .philosophy-quote,
  html[data-lang="de"] body.home-view #philosophy .philosophy-quote,
  html[data-lang="en"] body.home-view #philosophy .philosophy-quote {
    max-width: min(100%, clamp(650px, 43vw, 860px));
    font-size: clamp(43px, 2.55vw, 53px);
    line-height: 1.23;
  }

  html body.home-view #about.profile-section {
    box-sizing: border-box;
    width: 100vw;
    max-width: none;
    min-height: clamp(610px, 37.5vw, 768px);
    margin-left: calc(50% - 50vw);
    padding: clamp(112px, 7.65vw, 155px) var(--pds-editorial-edge) 58px;
    grid-template-columns: minmax(0, 39%) minmax(0, 1fr);
    column-gap: clamp(28px, 3.125vw, 64px);
    row-gap: 0;
  }
  html body.home-view #about.profile-section > .profile-kicker {
    top: clamp(34px, 2.69vw, 55px);
    left: var(--pds-editorial-edge);
    font-size: var(--pds-editorial-label);
    letter-spacing: .17em;
    gap: 16px;
  }
  html body.home-view #about.profile-section > .profile-kicker::before {
    width: 28px;
    flex: 0 0 28px;
  }
  /* V50's working visibility/transparent WebP remains authoritative. */
  html body.home-view #about.profile-section > .profile-photo-wrap {
    width: 59%;
    height: 100%;
    overflow: visible;
    -webkit-mask-image: none;
    mask-image: none;
  }
  html body.home-view #about.profile-section > .profile-photo-wrap > .profile-photo {
    top: clamp(42px, 3vw, 62px);
    left: var(--pds-editorial-edge);
    width: clamp(510px, 39.2vw, 820px);
    height: auto;
    max-width: none;
    transform: none;
    -webkit-mask-image: none;
    mask-image: none;
  }
  html body.home-view #about.profile-section .profile-details {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    padding: 0;
  }
  html body.home-view #about.profile-section .profile-bio p,
  html body.home-view #about.profile-section .profile-bio p:first-child {
    font-size: clamp(18px, 1.24vw, 25px);
    line-height: 1.48;
  }
  html body.home-view #about.profile-section .profile-links a {
    font-size: clamp(15px, 1.05vw, 21px);
  }
  html body.home-view #about.profile-section .profile-copyright {
    font-size: clamp(13px, .81vw, 16px);
    line-height: 1.65;
  }
  /* Prevent V44 ultra-wide font sizes from stretching a finished layout. */
  html body.home-view #about.profile-section .profile-links span {
    flex-basis: 27px;
    min-width: 27px;
    width: 27px;
    font-size: clamp(17px, 1.18vw, 24px);
  }
  html body.home-view #about.profile-section .profile-legal a {
    font-size: clamp(10px, .59vw, 12px);
    min-height: 42px;
    padding: 11px 16px;
  }

  html body.home-view #contact.contact {
    box-sizing: border-box;
    display: grid;
    width: 100vw;
    max-width: none;
    min-height: 0;
    margin: 0 0 0 calc(50% - 50vw);
    padding: clamp(58px, 4.5vw, 90px) var(--pds-editorial-edge) clamp(70px, 5vw, 108px);
    grid-template-columns: minmax(0, min(52vw, 900px)) minmax(0, min(30vw, 370px));
    column-gap: clamp(32px, 5vw, 100px);
    row-gap: clamp(12px, 1vw, 20px);
    align-items: start;
    justify-content: start;
    align-content: start;
  }
  html body.home-view #contact.contact > .section-label {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    color: var(--accent);
    font-size: var(--pds-editorial-label);
    line-height: 1.45;
    letter-spacing: .17em;
    gap: 16px;
  }
  html body.home-view #contact.contact > .section-label::before {
    width: 28px;
    flex: 0 0 28px;
  }
  html body.home-view #contact.contact > h2 {
    grid-column: 1;
    grid-row: 2 / span 2;
    width: 100%;
    max-width: 590px;
    margin: 0;
    font-size: clamp(32px, 2.6vw, 50px);
    line-height: 1.13;
    letter-spacing: -.055em;
  }
  html body.home-view #contact.contact > p {
    grid-column: 2;
    grid-row: 2;
    width: 100%;
    max-width: 370px;
    margin: 0;
    font-size: clamp(14px, .98vw, 16px);
    line-height: 1.72;
  }
  html body.home-view #contact.contact > .contact-cta {
    grid-column: 2;
    grid-row: 3;
    justify-self: start;
    margin: 0;
    font-size: clamp(12px, .87vw, 15px);
  }
}

/* Tablet: same section gutter, while retaining the stacked about image. */
@media (min-width: 721px) and (max-width: 960px) {
  html body.home-view {
    --pds-editorial-edge: 2vw;
  }
  html body.home-view #philosophy .philosophy-layout {
    padding-left: var(--pds-editorial-edge);
    padding-right: var(--pds-editorial-edge);
  }
  html body.home-view #about.profile-section {
    padding-left: var(--pds-editorial-edge);
    padding-right: var(--pds-editorial-edge);
  }
  html body.home-view #about.profile-section > .profile-kicker {
    left: var(--pds-editorial-edge);
  }

  /* Tablet contact retains the same two-column typographic hierarchy. */
  html body.home-view #contact.contact {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(54px, 6vw, 68px) 0 clamp(60px, 7vw, 80px);
    grid-template-columns: minmax(0, 52%) minmax(0, 1fr);
    column-gap: 5%;
    row-gap: 13px;
    justify-content: start;
    align-content: start;
    align-items: start;
  }
  html body.home-view #contact.contact > .section-label {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    gap: 16px;
  }
  html body.home-view #contact.contact > .section-label::before {width: 28px;flex:0 0 28px;}
  html body.home-view #contact.contact > h2 {
    grid-column: 1;
    grid-row: 2 / span 2;
    width: 100%;
    max-width: none;
    margin: 0;
    font-size: clamp(31px, 4.2vw, 40px);
    line-height: 1.12;
  }
  html body.home-view #contact.contact > p {
    grid-column: 2;
    grid-row: 2;
    margin: 0;
    font-size: clamp(13px, 1.7vw, 15px);
    line-height: 1.7;
  }
  html body.home-view #contact.contact > .contact-cta {
    grid-column: 2;
    grid-row: 3;
    justify-self: start;
    font-size: 13px;
  }
  html body.home-view #philosophy .philosophy-intro {gap:16px;}
  html body.home-view #philosophy .philosophy-rule {width:28px;flex-basis:28px;}
  html body.home-view #philosophy .philosophy-intro .section-label {font-size:10px;}
  html body.home-view #about.profile-section > .profile-kicker {gap:16px;font-size:10px;}
  html body.home-view #about.profile-section > .profile-kicker::before {width:28px;flex-basis:28px;}
}

/* Mobile header: no burger; search followed immediately by language toggle. */
@media (max-width: 720px) {
  html body.home-view .site-header {
    left: clamp(10px, 3vw, 20px);
    right: clamp(10px, 3vw, 20px);
    width: auto;
    gap: 8px;
  }
  html body.home-view .site-header .brand {
    font-size: clamp(16px, 4.45vw, 21px);
  }
  html body.home-view .site-header .header-tools {
    gap: clamp(2px, .7vw, 6px);
    margin-left: auto;
    transform: none;
  }
  html body.home-view .site-header #theme-toggle {
    order: 1;
  }
  html body.home-view .site-header #search-open {
    order: 2;
  }
  html body.home-view .site-header .language-toggle {
    order: 3;
    flex: 0 0 auto;
    font-size: clamp(10px, 2.8vw, 12px);
    gap: 2px;
    margin-left: 2px;
  }
  html body.home-view .site-header .language-toggle button {
    min-width: 0;
    padding: 8px 2px;
  }
  html body.home-view .site-header #menu-toggle {
    display: none !important;
  }
  html body.home-view .site-header .icon-button {
    width: clamp(24px, 7.1vw, 30px);
    flex: 0 0 clamp(24px, 7.1vw, 30px);
  }
  html body.home-view #philosophy .philosophy-intro {gap:16px;}
  html body.home-view #philosophy .philosophy-rule {width:28px;flex-basis:28px;}
  html body.home-view #philosophy .philosophy-intro .section-label {font-size:10px;}
  html body.home-view #about.profile-section > .profile-kicker {gap:16px;font-size:10px;}
  html body.home-view #about.profile-section > .profile-kicker::before {width:28px;flex-basis:28px;}
  html body.home-view #contact.contact > .section-label {gap:16px;}
  html body.home-view #contact.contact > .section-label::before {width:28px;flex-basis:28px;}
  html body.home-view #philosophy .philosophy-layout {
    padding-left: 12px;
    padding-right: 12px;
  }
  html body.home-view #about.profile-section {
    padding-left: 12px;
    padding-right: 12px;
  }
  html body.home-view #about.profile-section > .profile-kicker {
    left: 12px;
  }
  html body.home-view #about.profile-section > .profile-photo-wrap {
    width: calc(100% + 24px);
    margin-inline: -12px;
  }
}
/* V48's Journal switches its outer rhythm at 1024px. Mirror that transition. */
@media (min-width: 961px) and (max-width: 1023px) {
  html body.home-view { --pds-editorial-edge: 2vw; }
}
/* Original V48 Journal gutter is 3.7px narrower on mid-size desktops. */
@media (min-width: 1024px) and (max-width: 1199px) {
  html body.home-view { --pds-editorial-edge: calc(5.2vw - 3.7px); }
}


/* Source: hero-profile-v54.css */
/* V54 focused frontend fixes. All other blocks inherit the V52 design-lock. */
html body.home-view #about .profile-links .pds-social-icon {
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 27px;width:27px;min-width:27px;height:27px;
  color:var(--accent,#d69b7d);font-size:inherit;line-height:1;
}
html body.home-view #about .profile-links .pds-social-icon svg {
  display:block;width:24px;height:24px;flex:0 0 24px;
}



/* MOBILE HERO: original photographic overlay, no separate image and text panels. */
@media (max-width:720px) {
 html body.home-view .hero {
   position:relative;display:flex;align-items:stretch;isolation:isolate;
   min-height:0;height:auto;overflow:hidden;background:#101b20;
 }
 html body.home-view .hero-media {
   position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;overflow:hidden;
 }
 html body.home-view .hero-media::before {content:none;display:none;}
 html body.home-view .hero-media img {
   position:absolute;inset:0;display:block;width:100%;height:100%;
   max-height:none;min-height:0;object-fit:cover;object-position:50% 50%;
   aspect-ratio:auto;transform:none;filter:none;-webkit-mask-image:none;mask-image:none;
 }
 html body.home-view .hero-shade {
   position:absolute;inset:0;z-index:-1;display:block;
   background:linear-gradient(180deg,rgba(6,13,18,.42) 0%,rgba(7,13,17,.08) 30%,rgba(4,10,15,.60) 76%,rgba(3,9,13,.77) 100%);
 }
 html body.home-view .hero-content {
   position:relative;z-index:1;display:flex;align-items:flex-end;width:100%;
   height:auto;min-height:0;background:transparent;
   padding:clamp(155px,28vw,220px) clamp(19px,5.8vw,30px) clamp(45px,6svh,70px);
 }
 html body.home-view .hero-inner {width:100%;max-width:100%;}
}
/* At tablet widths the legacy 874px hero is disproportionate to its content.
   Preserve photo/text overlay and avoid the desktop headline size jump. */
@media (min-width:721px) and (max-width:1023px) {
 html body.home-view .hero {height:auto;min-height:0;}
 html body.home-view .hero-content {
   min-height:0;height:auto;align-items:flex-end;
   padding-top:clamp(145px,20vw,205px);
   padding-bottom:clamp(52px,7vw,76px);
 }
 html body.home-view .hero h1,
 html[data-lang="de"] body.home-view .hero h1,
 html[data-lang="en"] body.home-view .hero h1 {
   font-size:clamp(56px,6vw,60px);
 }
}

/* Gallery component */
/* V15: article-specific photo gallery, matching the V13 dark editorial reference. */
.pds-article-gallery{max-width:930px;margin:65px auto 35px;padding-top:33px;border-top:1px solid var(--line)}
.pds-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.pds-gallery-heading h2{font-size:clamp(25px,3.4vw,43px);font-weight:650;letter-spacing:-.05em;margin:10px 0 0}
.pds-gallery-counter{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.pds-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pds-gallery-item{min-width:0;margin:0}
.pds-gallery-open{display:block;border:1px solid var(--line);background:var(--panel);padding:0;width:100%;overflow:hidden;aspect-ratio:4/3;cursor:zoom-in}
.pds-gallery-open img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.pds-gallery-open:hover img{transform:scale(1.045)}
.pds-gallery-item figcaption{font-size:13px;color:var(--muted);line-height:1.6;padding-top:8px}
.pds-lightbox[hidden]{display:none!important}
.pds-lightbox{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;background:rgba(2,5,7,.95);color:#f6f5f2;padding:55px clamp(12px,4vw,60px)}
.pds-lightbox-inner{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:clamp(6px,2vw,23px);width:min(1200px,100%);max-height:100%;}
.pds-lightbox figure{margin:0;min-width:0;display:grid;justify-items:center;gap:12px}
.pds-lightbox figure img{display:block;max-width:100%;max-height:calc(100dvh - 160px);object-fit:contain}
.pds-lightbox figcaption{color:#ddd;font-size:14px;text-align:center;line-height:1.5}
.pds-lightbox button{border:1px solid #596365;background:#181e20;color:white;min-width:42px;min-height:42px;font-size:29px;line-height:1;cursor:pointer}
.pds-lightbox button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.pds-lightbox-close{position:absolute;top:-46px;right:0}.pds-lightbox-count{position:absolute;bottom:-30px;right:0;color:#b5bfc1;font-size:12px;letter-spacing:.17em}
@media(max-width:720px){.pds-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pds-gallery-heading{align-items:start}.pds-gallery-item figcaption{font-size:12px}.pds-lightbox{padding:55px 8px}.pds-lightbox-inner{grid-template-columns:30px minmax(0,1fr) 30px;gap:3px}.pds-lightbox button{min-width:30px;min-height:40px;font-size:24px}}
@media(max-width:420px){.pds-gallery-grid{grid-template-columns:1fr}.pds-gallery-open{aspect-ratio:16/10}}
@media(prefers-reduced-motion:reduce){.pds-gallery-open img{transition:none}}

@media(min-width:2000px){.pds-article-gallery{max-width:1600px}.pds-lightbox-inner{width:min(96vw,6800px)}}

/* Brandbook V9 gallery lightbox: deliberate dark viewing stage in either mode. */
.pds-article-gallery{border-color:var(--line);color:var(--ink)}
.pds-gallery-heading h2{color:var(--ink)}
.pds-gallery-open{border-color:var(--line);background:var(--panel)}
.pds-lightbox{background:rgba(23,24,23,.97);color:#EEEDE7}
.pds-lightbox button{background:#20211F;color:#EEEDE7;border-color:#41413B}
.pds-lightbox button:hover{border-color:#D79B7E;color:#D79B7E}
.pds-lightbox button:focus-visible{outline:2px solid #D79B7E}
.pds-lightbox figcaption,.pds-lightbox-count{color:#EEEDE7}


/*
 * puredigitalsoul.com - 4K/ultrawide editorial readability.
 * Stable asset: /assets/site.css.
 * Scope: CSS viewports >= 2100px. All pre-approved smaller desktop,
 * tablet and mobile compositions remain unchanged.
 * Do not add new stylesheet references or versioned CSS assets.
 */
@media (min-width: 2100px) {
  html body.home-view {
    --pds-editorial-edge: clamp(88px, 4vw, 158px);
    --pds-editorial-label: clamp(13px, .46vw, 18px);
  }

  /* The hero uses the same photographic composition, but legible type. */
  html body.home-view .site-header {
    top: clamp(42px, 2.4vw, 90px);
    left: var(--pds-editorial-edge);
    right: var(--pds-editorial-edge);
    min-height: clamp(70px, 2.65vw, 102px);
  }
  html body.home-view .brand {
    font-size: clamp(32px, .99vw, 39px);
  }
  html body.home-view .header-nav {gap: clamp(28px, 1.22vw, 48px);}
  html body.home-view .header-nav a,
  html body.home-view .language-toggle,
  html body.home-view .language-toggle button {
    font-size: clamp(15px, .47vw, 18px);
  }
  html body.home-view .icon-button {
    width: clamp(38px, 1.2vw, 47px);
    height: clamp(38px, 1.2vw, 47px);
  }
  html body.home-view .icon-button svg {width: 26px;height:26px;}
  html body.home-view .hero {
    height: auto;
    min-height: clamp(760px, 29vw, 1140px);
  }
  html body.home-view .hero-content {
    padding: clamp(170px, 6vw, 240px) clamp(94px, 4.5vw, 175px) clamp(90px, 4vw, 158px);
  }
  html body.home-view .hero-inner {
    max-width: min(1730px, 64vw);
  }
  html body.home-view .hero-inner > .hero-kicker {
    font-size: clamp(13px, .48vw, 18px);
    margin-bottom: clamp(28px, 1.2vw, 46px);
  }
  html body.home-view .hero h1,
  html[data-lang="de"] body.home-view .hero h1,
  html[data-lang="en"] body.home-view .hero h1 {
    font-size: clamp(77px, 3.42vw, 132px);
    line-height: 1.045;
    margin-bottom: clamp(29px, 1.1vw, 43px);
  }
  html body.home-view .hero-content p,
  html[data-lang="de"] body.home-view .hero-content p,
  html[data-lang="en"] body.home-view .hero-content p {
    font-size: clamp(21px, .78vw, 30px);
    max-width: min(1040px, 52vw);
    line-height:1.54;
  }
  html body.home-view .hero-line {width:155px;gap:24px;}
  html body.home-view .hero-line span {width:72px;}

  /* Featured image/copy keep their approved 806:498 proportion. */
  html body.home-view .featured-section {
    width: min(100%, 65vw);
    max-width: 2600px;
  }
  html body.home-view .featured-card {
    height: auto;
    min-height: 0;
    aspect-ratio: 1304 / 579;
    grid-template-columns: minmax(0,806fr) minmax(0,498fr);
  }
  html body.home-view .featured-card .featured-copy {
    padding: clamp(55px, 2.4vw, 96px);
  }
  html body.home-view .featured-card .featured-heading {
    font-size: clamp(52px, 2.35vw, 92px);
    overflow-wrap: normal;
    word-break: normal;
  }
  html body.home-view .featured-card .featured-eyebrow {
    font-size: clamp(12px, .43vw, 16px);
  }
  html body.home-view .featured-card .featured-excerpt {
    font-size: clamp(19px, .64vw, 25px);
    line-height: 1.65;
  }
  html body.home-view .featured-card .featured-cta {
    font-size: clamp(13px, .49vw, 19px);
  }

  /* Journal: three balanced, readable columns across most of the canvas. */
  html body.home-view .journal {
    width: min(calc(100% - 2 * var(--pds-editorial-edge)), clamp(1540px, 75vw, 2920px));
    max-width: 2920px;
    margin-left: var(--pds-editorial-edge);
    margin-right: 0;
    padding-top: clamp(110px, 4.2vw, 160px);
    padding-bottom: clamp(125px, 4.6vw, 178px);
  }
  html body.home-view .journal .section-label {
    font-size: var(--pds-editorial-label);
  }
  html body.home-view .journal .journal-head {
    grid-template-columns: minmax(0, 1fr) minmax(430px, 650px);
    column-gap: clamp(70px, 4vw, 155px);
    margin-bottom: clamp(42px, 2vw, 75px);
  }
  html body.home-view .journal .journal-head h2 {
    font-size: clamp(66px, 3vw, 116px);
    max-width: 1470px;
    line-height: 1.07;
  }
  html body.home-view .journal .journal-head p {
    max-width: 650px;
    font-size: clamp(16px, .65vw, 25px);
    line-height: 1.65;
  }
  html body.home-view .journal .filters {gap:16px;margin-bottom:clamp(40px, 2vw, 75px);}
  html body.home-view .journal .filter {
    font-size: clamp(13px, .49vw, 19px);
    padding: clamp(13px, .55vw, 21px) clamp(23px, .95vw, 37px);
  }
  html body.home-view .journal .story-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(42px, 2vw, 76px) clamp(25px, 1.05vw, 40px);
  }
  html body.home-view .journal .card-meta {
    font-size: clamp(12px, .39vw, 15px);
    margin-top: clamp(22px, 1vw, 38px);
  }
  html body.home-view .journal .story-card h3 {
    font-size: clamp(27px, .98vw, 38px);
    line-height: 1.16;
    margin: clamp(12px, .45vw, 18px) 0;
  }
  html body.home-view .journal .story-card p {
    font-size: clamp(16px, .59vw, 23px);
    line-height: 1.65;
  }
  html body.home-view .journal .outlined-button {
    font-size: clamp(16px, .52vw, 20px);
    padding: 18px 30px;
  }

  /* Philosophy: original split retained and no disproportionately tiny quote. */
  html body.home-view #philosophy.philosophy-section .philosophy-layout {
    padding: clamp(105px, 4.5vw, 173px) var(--pds-editorial-edge);
    grid-template-columns: minmax(0, 33%) minmax(0, 1fr);
    column-gap: clamp(55px, 3vw, 115px);
  }
  html body.home-view #philosophy .philosophy-quote,
  html[data-lang="de"] body.home-view #philosophy .philosophy-quote,
  html[data-lang="en"] body.home-view #philosophy .philosophy-quote {
    max-width: min(1640px, 54vw);
    font-size: clamp(53px, 2.34vw, 90px);
    line-height: 1.22;
  }

  /* Alias portrait remains unmasked; text matches the ultra-wide rhythm. */
  html body.home-view #about.profile-section {
    min-height: clamp(768px, 34vw, 1320px);
    padding: clamp(158px, 5.4vw, 207px) var(--pds-editorial-edge) clamp(90px, 3.4vw, 130px);
    grid-template-columns: minmax(0,39%) minmax(0,1fr);
    column-gap: clamp(75px, 3vw, 115px);
  }
  html body.home-view #about.profile-section > .profile-kicker {
    left: var(--pds-editorial-edge);
    top: clamp(62px, 2.8vw, 108px);
    font-size: var(--pds-editorial-label);
  }
  html body.home-view #about.profile-section > .profile-photo-wrap {
    width: 58%;
    -webkit-mask-image: none;
    mask-image: none;
  }
  html body.home-view #about.profile-section > .profile-photo-wrap > .profile-photo {
    top: clamp(76px, 3vw, 115px);
    left: var(--pds-editorial-edge);
    width: clamp(780px, 27vw, 1040px);
    height: auto;
    -webkit-mask-image: none;
    mask-image: none;
  }
  html body.home-view #about.profile-section .profile-details {
    max-width: 1800px;
  }
  html body.home-view #about.profile-section .profile-bio p,
  html body.home-view #about.profile-section .profile-bio p:first-child {
    font-size: clamp(26px, .86vw, 34px);
    line-height: 1.5;
    margin-bottom:clamp(17px, .65vw, 25px);
  }
  html body.home-view #about.profile-section .profile-links {gap:clamp(17px,.68vw,26px);}
  html body.home-view #about.profile-section .profile-links a {
    font-size: clamp(23px, .72vw, 28px);
  }
  html body.home-view #about.profile-section .profile-copyright {
    font-size: clamp(16px, .58vw, 23px);
    line-height:1.66;
    max-width:1350px;
  }
  html body.home-view #about.profile-section .profile-legal a {
    font-size: clamp(12px, .4vw, 16px);
    min-height:50px;
    padding:14px 22px;
  }

  /* Stay connected: scale both columns together, preserve alignment. */
  html body.home-view #contact.contact {
    padding: clamp(100px, 4vw, 154px) var(--pds-editorial-edge) clamp(112px, 5vw, 190px);
    grid-template-columns: minmax(0, min(51vw, 1380px)) minmax(0, min(29vw, 690px));
    column-gap: clamp(75px, 5vw, 190px);
    row-gap: clamp(20px, 1.2vw, 46px);
  }
  html body.home-view #contact.contact > h2 {
    max-width: 1350px;
    font-size: clamp(50px, 2.15vw, 83px);
  }
  html body.home-view #contact.contact > p {
    max-width: 690px;
    font-size: clamp(17px, .68vw, 26px);
  }
  html body.home-view #contact.contact > .contact-cta {
    font-size: clamp(18px, .55vw, 21px);
  }

  /* Article reading stage: readable body and balanced column at 4K. */
  html body.article-view .article-stage {
    width: min(calc(100% - 9vw), 2450px);
    max-width: 2450px;
    padding: clamp(88px, 3.5vw, 135px) 0 clamp(120px, 5vw, 190px);
  }
  html body.article-view .article-back a,
  html body.article-view .article-kicker {
    font-size: clamp(14px, .44vw, 17px);
  }
  html body.article-view .article-title {
    font-size: clamp(83px, 2.9vw, 112px);
    line-height:1.09;
  }
  html body.article-view .article-lead {
    font-size: clamp(25px, .84vw, 32px);
    max-width: 1530px;
    line-height:1.55;
  }
  html body.article-view .article-content {
    width: min(100%, clamp(820px, 36vw, 1380px));
    max-width: 1380px;
    font-size: clamp(19px, .76vw, 29px);
    line-height: 1.76;
    margin: clamp(72px, 3vw, 115px) auto;
  }
  html body.article-view .article-content :is(h2,h3,h4) {
    line-height:1.25;
    margin-block: 1.6em .75em;
  }
  html body.article-view .article-content h2 {font-size:1.62em;}
  html body.article-view .article-content h3 {font-size:1.35em;}
  html body.article-view .article-content p {margin-bottom:1.3em;}
  html body.article-view .article-content li {margin-bottom:.35em;}
  html body.article-view .pds-article-gallery {max-width: 2450px;}
  html body.article-view .pds-gallery-heading h2 {font-size: clamp(32px, 1.35vw, 52px);}
}

/* Release E – IM FOKUS: content-driven height, identical image/copy height.
   This is an intentionally minimal override of the approved editorial proportions.
   It does not change the hero, journal, general typography or other sections. */
@media(min-width:931px){
  html body.home-view .featured-section .featured-card,
  html[data-lang="en"] body.home-view .featured-section .featured-card[data-language="en"]{
    height:auto; min-height:579px; aspect-ratio:auto;
    grid-template-columns:minmax(0,806fr) minmax(0,498fr);
    align-items:stretch;
  }
  html body.home-view .featured-section .featured-visual{position:relative;min-height:100%;height:auto;overflow:hidden;}
  html body.home-view .featured-section .featured-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
  html body.home-view .featured-section .featured-copy{min-width:0;height:auto;align-self:stretch;}
}
@media(min-width:2100px){
  html body.home-view .featured-section .featured-card,
  html[data-lang="en"] body.home-view .featured-section .featured-card[data-language="en"]{
    min-height:clamp(579px,28.2vw,1150px);
  }
}

/* ============================================================================
   Release E1 / HERO HEADER ALIGNMENT + CONTRAST / 26.10.2026
   Scope: homepage header only. Keep article header, mobile navigation, Hero,
   seasonal media, journal, and private/admin modules unchanged.
   This supersedes the legacy -27px menu translation from V24.
   ============================================================================ */
@media (min-width: 721px) {
  html body.home-view .site-header {
    isolation: isolate;
    display: flex;
    align-items: center;
    column-gap: clamp(18px, 1.6vw, 34px);
  }

  /* No visible box: the dark scrim softly fades vertically and horizontally. */
  html body.home-view .site-header::before {
    content: "";
    position: absolute;
    inset: -14px -22px;
    z-index: -1;
    pointer-events: none;
    background: linear-gradient(90deg,
      rgba(6, 12, 17, .08) 0%,
      rgba(6, 12, 17, .30) 45%,
      rgba(6, 12, 17, .79) 100%);
    -webkit-mask-image: linear-gradient(to bottom,
      transparent 0%, #000 25%, #000 75%, transparent 100%);
    mask-image: linear-gradient(to bottom,
      transparent 0%, #000 25%, #000 75%, transparent 100%);
  }

  html body.home-view .site-header .brand,
  html body.home-view .site-header .header-nav,
  html body.home-view .site-header .header-tools {
    transform: none;
    align-self: center;
  }
  html body.home-view .site-header .brand {
    display: inline-flex;
    align-items: center;
    flex: none;
    line-height: 1;
  }
  html body.home-view .site-header .header-nav {
    display: flex;
    align-items: center;
    margin-left: auto;
    gap: clamp(18px, 1.55vw, 32px);
  }
  html body.home-view .site-header .header-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 46px;
    font-size: clamp(13px, .82vw, 18px);
    font-weight: 750;
    line-height: 1.2;
    color: #fff;
    text-shadow: 0 1px 6px rgba(0, 0, 0, .85);
  }
  html body.home-view .site-header .header-tools {
    display: inline-flex;
    align-items: center;
    gap: clamp(7px, .75vw, 16px);
    flex: none;
  }
  html body.home-view .site-header .language-toggle {
    display: inline-flex;
    align-items: center;
    font-size: clamp(12px, .72vw, 17px);
    font-weight: 800;
    text-shadow: 0 1px 6px rgba(0, 0, 0, .85);
  }
  html body.home-view .site-header .language-toggle button {
    min-height: 46px;
    min-width: 32px;
    color: #fff;
  }
  html body.home-view .site-header .header-tools .icon-button:not(.menu-button) {
    display: inline-grid;
    place-items: center;
    min-width: 44px;
    width: 44px;
    min-height: 46px;
    height: 46px;
    color: #fff;
    filter: drop-shadow(0 1px 3px rgba(0, 0, 0, .7));
  }
  html body.home-view .site-header .header-tools .icon-button:not(.menu-button) svg {
    width: clamp(20px, 1.2vw, 24px);
    height: clamp(20px, 1.2vw, 24px);
  }
  html body.home-view .site-header .menu-button { display: none !important; }
  html body.home-view .site-header :is(.header-nav a, .language-toggle button, .icon-button):focus-visible {
    outline: 2px solid #f4c0a7;
    outline-offset: 3px;
  }
}

/* ============================================================================
   Release F1 / ARTICLE READING & RELATED STORIES REGRESSION FIX
   Scope: article-only TOC, reading progress and related story recommendations.
   Keep approved homepage, hero, journal, admin and global typographic rules.
   ============================================================================ */
html body.article-view .pds-reading-progress {
  position: sticky;
  top: 0;
  z-index: 12;
  height: 3px;
  margin: 0;
  background: transparent;
  pointer-events: none;
}
html body.article-view .pds-reading-progress > span {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--accent);
  transform: scaleX(0);
  transform-origin: left center;
  will-change: transform;
}
html body.article-view .pds-article-toc[hidden] { display: none !important; }
html body.article-view .pds-article-toc {
  width: min(100%, 820px);
  max-width: 100%;
  margin: clamp(32px, 3vw, 52px) auto clamp(35px, 3.5vw, 62px);
  padding: clamp(22px, 2.5vw, 34px);
  border: 1px solid var(--line);
  background: var(--panel);
  color: var(--ink);
}
html body.article-view .pds-article-toc > strong {
  display: block;
  font-size: clamp(15px, 1.1vw, 19px);
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 19px;
  letter-spacing: -.015em;
}
html body.article-view .pds-article-toc > ol {
  list-style: none;
  counter-reset: pds-toc;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 24px;
  margin: 0;
  padding: 0;
}
html body.article-view .pds-article-toc li {
  counter-increment: pds-toc;
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  min-width: 0;
  margin: 0;
  padding: 0;
  font-size: clamp(13px, 1vw, 15px);
  line-height: 1.55;
}
html body.article-view .pds-article-toc li::before {
  content: counter(pds-toc, decimal-leading-zero);
  color: var(--accent);
  font-weight: 700;
  font-size: .8em;
  letter-spacing: .025em;
  padding-top: .2em;
}
html body.article-view .pds-article-toc a {
  display: block;
  width: 100%;
  overflow-wrap: anywhere;
  color: var(--muted);
  text-decoration: none;
  transition: color .16s ease;
}
html body.article-view .pds-article-toc a:hover,
html body.article-view .pds-article-toc a:focus-visible { color: var(--accent); }
html body.article-view .article-content :is(h2,h3)[id] { scroll-margin-top: 95px; }
html body.article-view .article-content :is(h2,h3)[hidden] { display: none !important; }

html body.article-view .pds-related {
  width: min(100%, 1120px);
  max-width: 100%;
  margin: clamp(50px, 5vw, 85px) auto 0;
  padding: clamp(26px, 3vw, 38px) 0 0;
  border-top: 1px solid var(--line);
  color: var(--ink);
}
html body.article-view .pds-related > h2 {
  margin: 0 0 clamp(20px, 2vw, 28px);
  font-size: clamp(24px, 2.1vw, 34px);
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: -.045em;
}
html body.article-view .pds-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(14px, 2vw, 24px);
  align-items: stretch;
}
html body.article-view .pds-related-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--line);
  background: var(--panel);
  overflow: hidden;
  color: var(--ink);
  text-decoration: none;
  transition: border-color .2s ease;
}
html body.article-view .pds-related-card:hover,
html body.article-view .pds-related-card:focus-visible { border-color: var(--accent); }
html body.article-view .pds-related-card > img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  max-height: 310px;
  object-fit: cover;
  object-position: center;
  flex: none;
  background: var(--bg2);
}
html body.article-view .pds-related-category {
  display: block;
  margin: 19px 21px 9px;
  color: var(--accent);
  font-size: 10px;
  font-weight: 750;
  line-height: 1.4;
  letter-spacing: .16em;
  text-transform: uppercase;
}
html body.article-view .pds-related-card > strong {
  display: block;
  margin: 0 21px 22px;
  font-size: clamp(17px, 1.2vw, 22px);
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: -.035em;
  overflow-wrap: anywhere;
}
html body.article-view .pds-back-journal {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-top: 30px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--accent);
  color: var(--ink);
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .09em;
  text-decoration: none;
  text-transform: uppercase;
}
html body.article-view .pds-back-journal:hover { color: var(--accent); }
@media (min-width: 2100px) {
  html body.article-view .pds-article-toc {
    width: min(100%, clamp(820px, 36vw, 1380px));
    padding: clamp(30px, 1.5vw, 52px);
  }
  html body.article-view .pds-article-toc li { font-size: clamp(15px, .55vw, 20px); }
  html body.article-view .pds-related { width: min(100%, 1380px); }
  html body.article-view .pds-related-card > img { max-height: 385px; }
}
@media (max-width: 720px) {
  html body.article-view .pds-article-toc { margin: 25px auto 35px; padding: 21px 18px; }
  html body.article-view .pds-article-toc > ol { grid-template-columns: 1fr; gap: 9px; }
  html body.article-view .pds-article-toc li { font-size: 14px; }
  html body.article-view .pds-related { margin-top: 42px; padding-top: 25px; }
  html body.article-view .pds-related-grid { grid-template-columns: 1fr; gap: 18px; }
  html body.article-view .pds-related-card > img { max-height: none; }
  html body.article-view .pds-related-category { margin: 14px 16px 7px; }
  html body.article-view .pds-related-card > strong { margin: 0 16px 17px; }
}
@media (prefers-reduced-motion: reduce) {
  html body.article-view .pds-article-toc a,
  html body.article-view .pds-related-card { transition: none; }
}

/* ===========================================================================
   RELEASE F2 / JOURNAL ARTICLE TYPOGRAPHY
   Applies exclusively to sanitized HTML and plain-text article bodies.
   Intentionally does NOT affect hero, homepage cards, header, related stories,
   gallery, TOC, editor, or content stored in MySQL.
   =========================================================================== */
html body.article-view .article-content {
  width: min(100%, 820px);
  max-width: 820px;
  margin-block: clamp(48px, 5vw, 82px) clamp(64px, 6vw, 100px);
  color: var(--ink);
  font-family: var(--font);
  font-size: clamp(17px, 1.14vw, 20px);
  font-weight: 400;
  line-height: 1.82;
  letter-spacing: -.012em;
  overflow-wrap: break-word;
  text-wrap: pretty;
  font-synthesis: none;
}
html body.article-view .article-content > :first-child { margin-top: 0; }
html body.article-view .article-content > :last-child { margin-bottom: 0; }

/* Opening standfirst: prominent without creating a second headline. */
html body.article-view .article-content > p:first-of-type {
  font-size: 1.09em;
  line-height: 1.77;
  color: var(--ink);
  margin-bottom: 2.15em;
}
html body.article-view .article-content > p:first-of-type strong,
html body.article-view .article-content > p:first-of-type b {
  font-weight: 560;
}
html body.article-view .article-content p {
  margin: 0 0 1.48em;
  max-width: 100%;
  line-height: inherit;
  hanging-punctuation: first allow-end;
}
html body.article-view .article-content :is(strong, b) {
  color: var(--ink);
  font-weight: 700;
}
html body.article-view .article-content :is(em, i) {
  font-style: italic;
}

/* Chapter headings use the same terracotta accent and rhythm as the journal. */
html body.article-view .article-content h2,
html body.article-view .article-content h3,
html body.article-view .article-content h4 {
  max-width: 100%;
  color: var(--ink);
  font-family: var(--font);
  font-weight: 680;
  text-wrap: balance;
  overflow-wrap: break-word;
}
html body.article-view .article-content h2 {
  position: relative;
  margin: 2.6em 0 .78em;
  padding-top: 27px;
  border-top: 1px solid var(--line);
  font-size: clamp(28px, 2.5vw, 39px);
  line-height: 1.19;
  letter-spacing: -.053em;
}
html body.article-view .article-content h2::before {
  content: '';
  display: block;
  width: 36px;
  height: 2px;
  margin: 0 0 20px;
  background: var(--accent);
}
html body.article-view .article-content h2:first-child { margin-top: 0; }
html body.article-view .article-content h3 {
  margin: 2.05em 0 .68em;
  font-size: clamp(22px, 1.7vw, 29px);
  line-height: 1.28;
  letter-spacing: -.037em;
}
html body.article-view .article-content h4 {
  margin: 1.85em 0 .5em;
  font-size: 1.08em;
  line-height: 1.42;
  letter-spacing: -.018em;
}
html body.article-view .article-content :is(h2,h3,h4) + p { margin-top: 0; }

/* Lists: proper indents, breathable vertical rhythm and themed markers. */
html body.article-view .article-content :is(ul,ol) {
  margin: .3em 0 1.8em;
  padding-left: 1.48em;
  max-width: 100%;
  line-height: 1.72;
}
html body.article-view .article-content li {
  padding-left: .3em;
  margin: 0 0 .65em;
}
html body.article-view .article-content li:last-child { margin-bottom: 0; }
html body.article-view .article-content li::marker {
  color: var(--accent);
  font-weight: 700;
}
html body.article-view .article-content li > :is(ul,ol) {
  margin-top: .65em;
  margin-bottom: .6em;
}

/* Pull quotes and cited remarks: quiet editorial treatment, never oversized. */
html body.article-view .article-content blockquote {
  margin: 2.15em 0;
  padding: clamp(20px, 2.1vw, 32px) clamp(21px, 2.8vw, 38px);
  background: var(--panel);
  border-left: 3px solid var(--accent);
  color: var(--ink);
  font-size: 1.04em;
  line-height: 1.72;
  font-weight: 450;
}
html body.article-view .article-content blockquote p {
  margin: 0 0 .8em;
}
html body.article-view .article-content blockquote p:last-child { margin-bottom: 0; }

/* Links have a recognizable affordance even without hover or colour vision. */
html body.article-view .article-content a {
  color: var(--accent);
  font-weight: 580;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .21em;
  text-decoration-skip-ink: auto;
  overflow-wrap: anywhere;
  transition: color .16s ease, text-decoration-color .16s ease;
}
:root[data-theme="light"] body.article-view .article-content a { color: #a4553a; }
html body.article-view .article-content a:hover {
  color: var(--ink);
  text-decoration-color: var(--accent);
}
html body.article-view .article-content a:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 4px;
}
html body.article-view .article-content hr {
  border: 0;
  border-top: 1px solid var(--line);
  margin: clamp(40px, 5vw, 76px) 0 clamp(29px, 3vw, 45px);
}
html body.article-view .article-content hr + h3 {
  margin-top: 0;
  font-size: clamp(18px, 1.4vw, 23px);
  font-weight: 750;
  letter-spacing: -.025em;
}
html body.article-view .article-content :is(code,pre) {
  font-family: ui-monospace, SFMono-Regular, Consolas, 'Liberation Mono', monospace;
}
html body.article-view .article-content code {
  background: var(--panel);
  padding: .13em .36em;
  border: 1px solid var(--line);
  border-radius: 3px;
  font-size: .88em;
  overflow-wrap: anywhere;
}
html body.article-view .article-content pre {
  max-width: 100%;
  overflow-x: auto;
  white-space: pre;
  margin: 1.5em 0 2em;
  padding: 19px 21px;
  background: var(--panel);
  border: 1px solid var(--line);
  font-size: .79em;
  line-height: 1.55;
  tab-size: 2;
}
html body.article-view .article-content pre code {
  display: block;
  border: none;
  background: transparent;
  padding: 0;
  white-space: inherit;
  overflow-wrap: normal;
  font-size: 1em;
}

/* Large displays should gain reading comfort, not a 200-character line. */
@media (min-width: 2100px) {
  html body.article-view .article-content {
    width: min(100%, 1020px);
    max-width: 1020px;
    font-size: clamp(21px, .64vw, 25px);
    line-height: 1.79;
    margin-block: clamp(82px, 3vw, 110px) 115px;
  }
  html body.article-view .article-content h2 {
    font-size: clamp(41px, 1.3vw, 50px);
    margin-top: 2.4em;
    padding-top: 37px;
  }
  html body.article-view .article-content h3 {
    font-size: clamp(29px, .91vw, 35px);
  }
}
@media (max-width: 720px) {
  html body.article-view .article-content {
    width: 100%;
    max-width: 100%;
    font-size: 16.5px;
    line-height: 1.74;
    letter-spacing: -.007em;
    margin: 38px auto 62px;
  }
  html body.article-view .article-content > p:first-of-type {
    font-size: 1.055em;
    line-height: 1.75;
    margin-bottom: 1.85em;
  }
  html body.article-view .article-content p { margin-bottom: 1.43em; }
  html body.article-view .article-content h2 {
    font-size: clamp(25px, 6.8vw, 31px);
    line-height: 1.19;
    margin-top: 2.18em;
    margin-bottom: .8em;
    padding-top: 21px;
  }
  html body.article-view .article-content h2::before {
    width: 29px;
    margin-bottom: 15px;
  }
  html body.article-view .article-content h3 {
    font-size: clamp(21px, 5.3vw, 25px);
    margin-top: 1.8em;
  }
  html body.article-view .article-content blockquote {
    margin: 1.8em 0;
    padding: 19px 18px;
    font-size: 1em;
  }
  html body.article-view .article-content :is(ul,ol) {
    padding-left: 1.27em;
    margin-bottom: 1.55em;
  }
}
@media (prefers-reduced-motion: reduce) {
  html body.article-view .article-content a { transition: none; }
}


/* ==========================================================================
   RELEASE F3 / EDITORIAL MICRO-REFINEMENT
   A conservative homepage/article polish over the approved F2 stylesheet.
   Never changes grid columns, image ratios, width constraints, typography
   scales, hero, seasonal assets, backend or responsive breakpoints.
   ========================================================================= */

/* Slightly more deliberate line breaks, no font-size changes. */
html body.home-view .journal .journal-head h2,
html body.home-view .journal .story-card h3,
html body.home-view .featured-section .featured-heading,
html body.article-view .article-title {
  text-wrap: balance;
}
html body.home-view .journal .story-card p,
html body.home-view .featured-section .featured-excerpt,
html body.article-view .article-lead {
  text-wrap: pretty;
}

/* Magazine-like card endings without boxed cards or changed media crops. */
html body.home-view .journal .story-card-link {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  padding-bottom: clamp(18px, 1.25vw, 28px);
  border-bottom: 1px solid var(--line);
  transition: border-color .2s ease;
}
html body.home-view .journal .story-card-link .card-image {
  flex: none;
  width: 100%;
}
html body.home-view .journal .story-card-link:hover,
html body.home-view .journal .story-card-link:focus-visible {
  border-bottom-color: var(--accent);
}
html body.home-view .journal .story-card-link:is(:hover,:focus-visible) h3 {
  text-decoration: underline;
  text-decoration-color: var(--accent);
  text-decoration-thickness: 1px;
  text-underline-offset: .16em;
  text-decoration-skip-ink: auto;
}

/* The featured eyebrow gets the same understated editorial hairline as
   the established section labels. No image or title-layout changes. */
html body.home-view .featured-section .featured-eyebrow::before {
  content: '';
  display: inline-block;
  flex: 0 0 24px;
  width: 24px;
  height: 1px;
  background: var(--accent);
}

/* Tiny functional cue rather than animating the entire featured card. */
html body.home-view .featured-section .featured-cta span:last-child {
  transition: transform .18s ease;
}
html body.home-view .featured-section .featured-cta:is(:hover,:focus-visible) span:last-child {
  transform: translate(3px, -2px);
}
@media (prefers-reduced-motion: reduce) {
  html body.home-view .journal .story-card-link,
  html body.home-view .featured-section .featured-cta span:last-child {
    transition: none;
  }
}

/* F6: motion accessibility; visual design unchanged at default OS settings. */
@media (prefers-reduced-motion: reduce) {
 html { scroll-behavior: auto !important; }
 .feature-media img, .card-image img, .story-card h3, .text-link, .outlined-button { transition: none !important; animation: none !important; }
 .feature:hover img, .story-card:hover img { transform: none !important; }
}

/* F7: search results information, matching the existing site palette. */
#search-results .pds-search-more{font-size:12px;line-height:1.6;color:var(--muted);margin:17px 0 4px}
#search-results .pds-search-empty{font-size:14px;line-height:1.6;color:var(--muted);margin:20px 0 4px}

/* F8 – Journal archive: editorial sidebar, reusing approved F7 design tokens. */
html body.home-view .journal .pds-journal-layout{
  display:grid;grid-template-columns:minmax(0,1fr) clamp(235px,19vw,278px);
  align-items:start;gap:clamp(26px,3vw,58px);
}
html body.home-view .journal .pds-journal-feed{min-width:0}
html body.home-view .journal .pds-journal-layout .story-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(28px,2.7vw,46px) clamp(14px,1.35vw,24px);
}
html body.home-view .journal .pds-journal-layout .story-card h3{
  font-size:clamp(19px,1.5vw,29px);
}
html body.home-view .journal .pds-journal-layout .story-card p{
  font-size:clamp(12px,.98vw,16px);
}
.pds-archive-sidebar{min-width:0;border-top:1px solid var(--line);color:var(--ink)}
.pds-archive-details{min-width:0}
.pds-archive-head{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:18px 0 13px;list-style:none;cursor:pointer}
.pds-archive-head::-webkit-details-marker{display:none}
.pds-archive-title{font:750 clamp(15px,1.2vw,19px)/1.3 'DM Sans','Manrope',sans-serif;letter-spacing:-.03em}
.pds-archive-chevron{color:var(--accent);font-size:20px;line-height:1;transition:transform .2s}
.pds-archive-details[open] .pds-archive-chevron{transform:rotate(180deg)}
.pds-archive-contents{padding-bottom:20px}
.pds-archive-count{margin:0 0 19px;color:var(--muted);font-size:12px;line-height:1.6}
.pds-archive-input{display:block;box-sizing:border-box;min-width:0;width:100%;height:45px;
  background:transparent;border:1px solid var(--line);border-radius:0;padding:11px 12px;
  color:var(--ink);font:500 12px/1.4 'Manrope','DM Sans',sans-serif}
.pds-archive-input::placeholder{color:var(--muted);opacity:1}
.pds-archive-input:focus-visible,.pds-archive-month:focus-visible,.pds-archive-reset:focus-visible,
.pds-archive-head:focus-visible,.pds-archive-year summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.pds-archive-reset{background:none;border:0;border-bottom:1px solid var(--accent);padding:7px 0 4px;
  color:var(--ink);font:600 11px/1.4 'Manrope','DM Sans',sans-serif;margin:10px 0 0}
.pds-archive-reset[hidden]{display:none}
.pds-archive-years{margin-top:18px}
.pds-archive-year{border-top:1px solid var(--line)}
.pds-archive-year:last-child{border-bottom:1px solid var(--line)}
.pds-archive-year summary{display:flex;align-items:center;justify-content:space-between;
  list-style:none;min-height:48px;cursor:pointer;gap:10px}
.pds-archive-year summary::-webkit-details-marker{display:none}
.pds-archive-year summary strong{font:700 15px/1.3 'DM Sans','Manrope',sans-serif}
.pds-archive-badge,.pds-archive-month-count{font:600 11px/1.3 'Manrope','DM Sans',sans-serif;color:var(--muted);
  font-variant-numeric:tabular-nums}
.pds-archive-year ul{list-style:none;margin:0 0 12px;padding:0}
.pds-archive-month{width:100%;min-height:40px;padding:8px 9px;display:flex;align-items:center;
  justify-content:space-between;text-align:left;gap:8px;border:0;border-left:2px solid transparent;
  background:transparent;color:var(--ink);font:500 12px/1.4 'Manrope','DM Sans',sans-serif}
.pds-archive-month:hover{background:var(--panel)}
.pds-archive-month[aria-pressed='true']{background:var(--panel);border-left-color:var(--accent);font-weight:750}
.pds-archive-empty{margin:20px 0;color:var(--muted);font-size:13px;line-height:1.6}
@media(min-width:981px){.pds-archive-chevron{display:none}.pds-archive-head{cursor:default}}
@media(min-width:2000px){html body.home-view .journal .pds-journal-layout{grid-template-columns:minmax(0,1fr) minmax(260px,18%)}
 html body.home-view .journal .pds-journal-layout .story-card h3{font-size:clamp(24px,.95vw,36px)}
 html body.home-view .journal .pds-journal-layout .story-card p{font-size:clamp(15px,.6vw,22px)}}
@media(max-width:1279px) and (min-width:981px){
 html body.home-view .journal .pds-journal-layout{grid-template-columns:minmax(0,1fr) 225px;gap:25px}
 html body.home-view .journal .pds-journal-layout .story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){
 html body.home-view .journal .pds-journal-layout{display:flex;flex-direction:column;gap:22px}
 html body.home-view .journal .pds-archive-sidebar{order:-1;width:100%;border-bottom:1px solid var(--line)}
 html body.home-view .journal .pds-journal-feed{width:100%}
 html body.home-view .journal .pds-archive-contents{padding-bottom:19px}
 html body.home-view .journal .pds-journal-layout .story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
 html body.home-view .journal .pds-journal-layout .story-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px clamp(12px,3.5vw,18px)}
 html body.home-view .journal .pds-journal-layout .story-card h3{font-size:clamp(15px,4.2vw,19px)}
 html body.home-view .journal .pds-journal-layout .story-card p{font-size:12px}
 .pds-archive-head{min-height:50px;padding:12px 0}
 .pds-archive-year summary{min-height:45px}}
@media(prefers-reduced-motion:reduce){.pds-archive-chevron{transition:none}}
