/*
Theme Name: Esther Grosjean – Journalismus
Theme URI: https://example.invalid/
Author: Esther Grosjean Projekt
Description: Schlankes redaktionelles Theme für das journalistische Portfolio und Journal. Mit editierbaren Arbeitsproben.
Version: 1.0.3
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: esther-grosjean
*/

:root{--paper:#FAF9F6;--ink:#292D30;--brick:#AD564B;--blue:#294B64;--muted:#757776;--line:#DDDCD6;--white:#fff;--max:1320px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#D9B1AB;color:#252525}.wrap{max-width:var(--max);margin:auto;padding-left:clamp(23px,6vw,104px);padding-right:clamp(23px,6vw,104px)}
header{position:sticky;top:0;z-index:20;background:rgba(250,249,246,.96);backdrop-filter:blur(18px);border-bottom:1px solid rgba(41,45,48,.1)}.nav{height:74px;display:flex;align-items:center;justify-content:flex-end}.brand{font-family:Georgia,'Times New Roman',serif;font-size:23px;letter-spacing:-.9px}.brand span{font-family:Arial,Helvetica,sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:2px;display:block;margin-top:6px;color:var(--muted)}.links{display:flex;gap:33px;align-items:center}.links a{font-size:12px;letter-spacing:.6px;transition:color .2s}.links a:hover,.links a:focus-visible{color:var(--brick)}.links .contact-nav{border:1px solid var(--ink);padding:11px 17px}.menu-button{display:none;background:none;border:0;font-size:27px;cursor:pointer}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:2.3px;font-weight:bold;color:var(--brick)}
.intro{padding-top:60px;padding-bottom:37px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.intro h1{font-family:Georgia,serif;font-weight:normal;font-size:clamp(29px,3.5vw,44px);letter-spacing:-1.1px;line-height:1.2;margin:10px 0 0}
.intro p{font-size:14px;line-height:1.7;max-width:480px;color:#616665;margin:0}
.text-link{font-size:12px;letter-spacing:.6px;border-bottom:1px solid var(--brick);padding-bottom:9px;white-space:nowrap;transition:color .2s}.text-link:hover{color:var(--brick)}.text-link span{padding-left:22px;color:var(--brick)}
.rule{height:1px;background:var(--line)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:42px}.section-head h2,.about h2,.journal h2,.contact h2{font-family:Georgia,'Times New Roman',serif;font-weight:normal;letter-spacing:-1.9px;font-size:clamp(39px,5vw,63px);line-height:1.15;margin:18px 0 0}.small-note{color:var(--muted);font-size:12px;line-height:1.6}.works{padding-top:34px;padding-bottom:100px}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px 29px}.work{min-width:0}.visual{position:relative;display:flex;align-items:center;justify-content:center;height:clamp(180px,20vw,245px);overflow:hidden;margin-bottom:17px;background:#E8E6E0;isolation:isolate}
.visual::after{content:"";position:absolute;inset:0;background:rgba(35,40,42,.12);pointer-events:none;z-index:-1}
.visual-bg{position:absolute;inset:-35px;background-size:cover;background-position:center;filter:blur(22px) saturate(.82);transform:scale(1.06);z-index:-2}
.visual img{display:block;position:relative;max-width:80%;max-height:86%;width:auto;height:auto;object-fit:contain;box-shadow:0 12px 42px rgba(0,0,0,.18);background:#fff}
.visual.landscape img{max-width:88%;max-height:78%}
.visual.baby img{max-height:86%}
.image-credit{font-size:10px;color:#858682;margin:7px 0 0}
.work-meta{font-size:10px;text-transform:uppercase;letter-spacing:1.9px;color:var(--brick);display:flex;justify-content:space-between;gap:10px}.work-meta time{color:var(--muted);letter-spacing:1px}.work h3{font-family:Georgia,serif;font-size:clamp(23px,2.15vw,29px);line-height:1.23;letter-spacing:-.8px;font-weight:normal;margin:12px 0 11px}.pdf-link{display:inline-block;margin-top:16px;font-size:12px;letter-spacing:.4px;color:var(--blue);border-bottom:1px solid var(--brick);padding-bottom:5px}.pdf-link:hover{color:var(--brick)}.work p{font-size:13px;color:#676968;line-height:1.75;margin:0;max-width:490px}.section-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:67px;gap:20px}.section-bottom .small-note{max-width:550px}
.media-strip{background:#EFEDE8;padding:35px 0 37px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.media-strip-label{font-size:10px;color:var(--muted);letter-spacing:1.8px;text-transform:uppercase;text-align:center;margin-bottom:25px}.media-names{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px 35px}.media-names span{font-family:Georgia,serif;font-size:clamp(17px,2vw,23px);color:#575C5F;white-space:nowrap}.media-names span:nth-child(even){font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:1.1px;font-size:clamp(12px,1.5vw,16px);font-weight:600}
.about{padding-top:130px;padding-bottom:130px;display:grid;grid-template-columns:.75fr 1.25fr;gap:65px}.about .eyebrow{margin-top:12px}.about .bio{max-width:670px;font-family:Georgia,serif;font-size:clamp(16px,1.55vw,19px);line-height:1.76;letter-spacing:-.15px}.about .bio p{margin:0 0 24px}.about .bio p:last-child{margin-bottom:0}.about .subline{font-family:Arial,sans-serif;font-size:12px;line-height:1.8;color:var(--muted);margin-top:30px}
.journal{background:#294B64;color:#FAF9F6;padding-top:93px;padding-bottom:103px}.journal .eyebrow{color:#EDB7AA}.journal-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.journal h2{margin-bottom:19px}.journal p{line-height:1.8;font-size:15px;max-width:470px;color:#D9E2E6}.journal .journal-state{border-top:1px solid #718B9D;padding-top:25px;font-family:Georgia,serif;font-size:24px;line-height:1.5}.journal .journal-state small{display:block;font:11px Arial,sans-serif;color:#BDCFD7;margin-top:20px;letter-spacing:1.2px;text-transform:uppercase}
.contact{padding-top:115px;padding-bottom:120px}.contact h2{max-width:790px}.contact .contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:17px}.contact p{font-size:14px;color:var(--muted);line-height:1.7;max-width:440px}.email-link{font-size:16px;color:var(--blue);border-bottom:1px solid var(--brick);padding-bottom:8px}.email-link:hover{color:var(--brick)}footer{border-top:1px solid var(--line);padding:30px 0 45px;color:var(--muted)}footer .wrap{display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;font-size:11px}footer a:hover{color:var(--brick)}.prototype-flag{font-size:11px;color:#666;margin-top:23px}
@media(min-width:761px) and (max-width:1050px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.visual{height:260px}}
@media(max-width:760px){.nav{height:76px}.menu-button{display:block}.links{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:22px 6vw 28px;box-shadow:0 8px 15px #00000012;flex-direction:column;align-items:stretch;gap:23px}.links.open{display:flex}.links .contact-nav{width:max-content}.intro{display:block;padding-top:43px;padding-bottom:28px}.intro p{margin-top:14px}.work-grid{grid-template-columns:1fr;gap:46px}.visual{height:265px}.works{padding-top:30px;padding-bottom:85px}.section-head{align-items:start;flex-direction:column}.section-bottom{align-items:start;flex-direction:column}.about{grid-template-columns:1fr;gap:25px;padding-top:82px;padding-bottom:85px}.journal{padding-top:78px;padding-bottom:82px}.journal-inner{grid-template-columns:1fr;gap:35px}.contact{padding-top:80px;padding-bottom:85px}.contact .contact-bottom{align-items:start;flex-direction:column}.media-names{gap:16px 23px}.hero-bottom p{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.links a[aria-current="page"]{color:var(--brick)}.links .contact-nav[aria-current="page"]{border-color:var(--brick)}
.page-head{padding-top:75px;padding-bottom:43px}.page-head h1{font-family:Georgia,serif;font-size:clamp(42px,6vw,76px);font-weight:normal;line-height:1.1;letter-spacing:-2px;margin:17px 0}.page-head p{color:#646866;line-height:1.8;font-size:15px;max-width:640px}.page-rule{border-bottom:1px solid var(--line)}
.page-grid{padding-top:47px;padding-bottom:125px}.about-page{display:grid;grid-template-columns:1fr .7fr;gap:clamp(40px,7vw,105px);padding-top:35px;padding-bottom:150px}.about-text{max-width:690px;font-family:Georgia,serif;font-size:clamp(17px,1.8vw,21px);line-height:1.85}.about-text p{margin:0 0 24px}.about-text .occupation{font-size:clamp(16px,1.55vw,19px);border-top:1px solid var(--line);padding-top:27px;margin-top:38px}.about-text a,.page-body a.inline-link{color:var(--blue);border-bottom:1px solid var(--brick)}.portrait-reserved{min-height:410px;background:#F0EEE9;border:1px solid var(--line);position:relative;display:flex;align-items:flex-end;padding:22px;color:#888986;font-size:12px;line-height:1.5}.portrait-reserved::before{content:'';position:absolute;inset:18px;border:1px solid #DEDBD4}.portrait-reserved span{position:relative;background:#F0EEE9;padding:4px 10px}
.journal-page{padding-top:48px;padding-bottom:150px;max-width:970px}.journal-placeholder{border-top:1px solid var(--line);padding:34px 0;display:grid;grid-template-columns:170px 1fr;gap:36px}.journal-placeholder h2{font:normal clamp(26px,3vw,39px) Georgia,serif;margin:0}.journal-placeholder p{color:#686B69;font-size:15px;line-height:1.75;margin:0}.journal-note{font-size:12px;color:var(--muted);padding:24px 0;border-top:1px solid var(--line)}
.contact-page{padding-top:40px;padding-bottom:160px;min-height:51vh}.contact-page p{font-size:clamp(18px,2vw,23px);font-family:Georgia,serif;line-height:1.7;max-width:650px}.contact-page .email-link{font-size:clamp(19px,2.7vw,30px);display:inline-block;margin-top:12px}
.home-more{padding-top:90px;padding-bottom:95px;display:grid;grid-template-columns:1fr 1fr;gap:60px;border-bottom:1px solid var(--line)}.home-more h2{font:normal clamp(36px,4vw,50px) Georgia,serif;letter-spacing:-1.4px;margin:16px 0 20px}.home-more p{font-size:14px;line-height:1.85;color:#686B69;max-width:420px}.home-more .text-link{display:inline-block;margin-top:20px}.home-more .text-link span{padding-left:12px}.home-journal{background:var(--blue);color:var(--paper);padding:67px 0}.home-journal .eyebrow{color:#EDB7AA}.home-journal-inner{display:flex;justify-content:space-between;gap:38px;align-items:center}.home-journal h2{font:normal 48px Georgia,serif;margin:12px 0}.home-journal p{line-height:1.75;color:#D9E2E6;max-width:600px;font-size:14px}.home-journal .text-link{border-color:#F1BCB0}.works .section-bottom{margin-top:48px}.work .pdf-link{margin-top:15px}.link-line{margin-top:23px;display:inline-block;color:var(--blue);font-size:12px;border-bottom:1px solid var(--brick);padding-bottom:7px}.media-strip{margin-top:5px}
@media(max-width:760px){.page-head{padding-top:48px}.about-page{grid-template-columns:1fr;padding-bottom:90px}.portrait-reserved{min-height:290px}.journal-placeholder{grid-template-columns:1fr;gap:12px}.home-more{grid-template-columns:1fr;gap:45px;padding-top:75px;padding-bottom:75px}.home-journal-inner{display:block}.home-journal .text-link{display:inline-block;margin-top:20px}.page-grid{padding-bottom:80px}}

/* V6: dezente, kleinere Abschnittstitel nach redaktionellem Feedback */
.works .section-head h2 {font-size:clamp(29px,3vw,39px);letter-spacing:-.85px;margin-top:12px}
.home-more h2 {font-size:clamp(26px,2.6vw,34px);letter-spacing:-.7px;margin:12px 0 17px}
/* Unterseite Über mich ebenfalls zurückhaltender setzen */
body:has(.about-page) .page-head h1 {font-size:clamp(34px,4.2vw,52px);letter-spacing:-1.1px}

/* WordPress-Fassung: keine sichtbaren Platzhalter, kleine Titel beibehalten */
.about-page:not(:has(.portrait-photo)) { grid-template-columns: minmax(0,1fr); max-width:1000px; }
.about-page .portrait-photo img { width:100%; height:auto; max-height:640px; object-fit:cover; display:block; }
.wp-block-image img {max-width:100%;height:auto}
.journal-content {font:18px/1.8 Georgia,serif;max-width:760px;margin:0 auto 80px}
.journal-content p {margin:0 0 1.2em}
.journal-list {max-width:970px;padding-bottom:110px}
.journal-item {border-top:1px solid var(--line);padding:32px 0}
.journal-item h2 {font:normal clamp(25px,3vw,36px) Georgia,serif;margin:5px 0 12px}
.journal-item time {font-size:11px;letter-spacing:1px;color:var(--muted)}
.journal-item p {color:var(--muted);font-size:14px;line-height:1.7}
.screen-reader-text {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.admin-bar header {top:32px}
@media(max-width:782px){.admin-bar header{top:46px}}

/* V1.0.1 – mobile typography and rhythm: reduced empty space above first story */
@media (max-width: 760px) {
  .nav { height: 60px; }
  .links { top: 60px; }
  .intro { padding-top: 27px; padding-bottom: 22px; }
  .intro h1 { font-size: clamp(30px, 7.4vw, 38px); }
  .intro p { margin-top: 12px; line-height: 1.6; }
  .works { padding-top: 21px; }
  .works .section-head { margin-bottom: 26px; gap: 16px; }
  .works .section-head h2 { font-size: clamp(29px, 7.4vw, 35px); letter-spacing: -.6px; margin-top: 10px; }
  .works .section-head .small-note { margin: 0; }
  .work-grid { gap: 37px; }
  .visual { height: 242px; }
}

/* Zwei getrennte Quellenlinks: Originalveröffentlichung und optionales PDF */
.article-links{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 22px}
.article-links .pdf-link{margin-top:16px}

/* Freie Absatzblöcke der Seite "Über mich" behalten das bisherige Schriftbild. */
.about-text .wp-block-paragraph {margin-bottom:24px}
.about-text .occupation a {color:var(--blue);border-bottom:1px solid var(--brick)}
