@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600&display=swap');
:root{--paper:#f3f1eb;--surface:#fffdf8;--ink:#1d241f;--muted:#626962;--line:#d7d8d1;--green:#304c3d;--green-dark:#20362b;--gold:#a87d36;--serif:"Newsreader",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6}a{color:inherit}img{display:block;max-width:100%}.site-header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:18px max(24px,calc((100vw - var(--max))/2));background:rgba(243,241,235,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand{display:inline-flex;align-items:baseline;gap:9px;text-decoration:none}.brand__mark{font:600 28px/1 var(--serif);color:var(--green)}.brand__name{font-weight:600}.site-nav{display:flex;gap:26px}.site-nav a{text-decoration:none;color:var(--muted);font-size:15px}.site-nav a:hover{color:var(--ink)}.eyebrow{margin:0 0 16px;color:var(--green);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.page-intro,.author-hero{max-width:var(--max);margin:auto;padding:clamp(80px,11vw,145px) 24px 90px;border-bottom:1px solid var(--line)}.page-intro{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end}.page-intro .eyebrow{grid-column:1/-1}.page-intro h1,.author-hero h1{margin:0;font:500 clamp(56px,8vw,108px)/.95 var(--serif);letter-spacing:-.04em}.page-intro>p:last-child,.author-deck,.author-hero aside{margin:0;color:var(--muted);font-size:21px}.author-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:90px;align-items:end}.author-deck{max-width:760px;margin-top:26px}.author-hero aside{border-left:1px solid var(--line);padding-left:28px}.section{max-width:var(--max);margin:auto;padding:90px 24px;border-bottom:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:1fr .7fr;gap:50px;align-items:end;margin-bottom:48px}.section-heading h2,.split-section h2{margin:0;font:500 clamp(44px,6vw,72px)/1 var(--serif);letter-spacing:-.035em}.section-heading>p,.split-section>div:last-child{color:var(--muted)}.profile-grid,.service-grid{max-width:var(--max);margin:auto;padding:80px 24px 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.profile-card,.service-grid article{background:var(--surface);padding:38px;text-decoration:none}.profile-card h2,.service-grid h2{font:500 38px/1.05 var(--serif);margin:0 0 20px}.profile-card p,.service-grid p{color:var(--muted)}.profile-card .text-link{margin-top:30px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-grid article>span{font-size:12px;color:var(--green);letter-spacing:.12em}.split-section{max-width:var(--max);margin:auto;padding:100px 24px;display:grid;grid-template-columns:1fr 1fr;gap:80px;border-bottom:1px solid var(--line)}.button{display:inline-block;padding:13px 20px;background:var(--green);color:#fff;text-decoration:none;font-weight:600;font-size:15px}.catalogue{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}.book-card{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:clamp(28px,5vw,70px);padding:clamp(24px,4vw,50px);background:var(--surface)}.book-card--compact{grid-template-columns:120px 1fr;padding:24px;gap:28px}.book-card__cover{align-self:start;aspect-ratio:2/3;background:#e2e2dd;box-shadow:0 12px 28px rgba(25,35,29,.1);overflow:hidden}.book-card__cover img{width:100%;height:100%;object-fit:cover}.cover-placeholder{height:100%;display:grid;place-items:center;padding:14px;text-align:center;font:500 18px/1.1 var(--serif)}.book-card__content{align-self:center;max-width:760px}.book-card h3{margin:0;font:500 clamp(34px,4vw,56px)/1 var(--serif);letter-spacing:-.03em}.book-card--compact h3{font-size:38px}.book-card__author{margin:8px 0 18px;color:var(--muted)}.book-meta{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin-bottom:18px;font-size:14px;color:var(--muted)}.status{padding:4px 9px;border:1px solid currentColor;color:var(--green)}.status--soon,.status--progress{color:var(--gold)}.text-link{display:inline-block;margin-top:12px;color:var(--green);font-weight:600;text-decoration:none}.text-link--muted{color:var(--muted);font-weight:500}.site-footer{display:grid;grid-template-columns:1fr 1fr auto;gap:30px;padding:42px max(24px,calc((100vw - var(--max))/2));background:var(--green-dark);color:#edf2ed;font-size:14px}.site-footer div:nth-child(2){display:flex;gap:20px}.theme-belle{--green:#76502f;--green-dark:#3e2d24;--gold:#9a5b42}.catalogue-error,.catalogue-empty{padding:30px;background:var(--surface)}@media(max-width:800px){.site-header{align-items:flex-start;gap:20px}.site-nav{flex-wrap:wrap;justify-content:flex-end;gap:8px 16px}.page-intro,.author-hero,.section-heading,.split-section{grid-template-columns:1fr}.page-intro .eyebrow{grid-column:auto}.author-hero aside{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.profile-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr}}@media(max-width:560px){body{font-size:16px}.site-header{position:static;flex-direction:column}.site-nav{justify-content:flex-start}.page-intro h1,.author-hero h1{font-size:54px}.book-card,.book-card--compact{grid-template-columns:92px 1fr;gap:18px;padding:18px}.book-card h3,.book-card--compact h3{font-size:30px}.book-card__content>p:not(.eyebrow):not(.book-card__author){grid-column:1/-1}.book-meta{display:grid}}

.home-hero{max-width:var(--max);margin:auto;padding:clamp(90px,12vw,165px) 24px 100px;display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end;border-bottom:1px solid var(--line)}
.home-hero h1{margin:0;font:500 clamp(62px,8vw,112px)/.92 var(--serif);letter-spacing:-.045em}
.home-hero__copy{color:var(--muted);font-size:21px}
.button-row{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:28px}
.imprint-overview{max-width:var(--max);margin:auto;padding:1px 24px 90px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.imprint-overview>a{background:var(--surface);padding:34px;text-decoration:none}
.imprint-overview h2{margin:0 0 15px;font:500 36px/1 var(--serif)}
.imprint-overview p{color:var(--muted)}
.imprint-overview span{color:var(--green);font-weight:600}
.belle-strip{background:#efe7dc}
.principles-grid,.path-grid{max-width:var(--max);margin:auto;padding:80px 24px 100px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
.principles-grid article,.path-grid article{background:var(--surface);padding:30px}
.principles-grid article>span{font-size:12px;color:var(--green);letter-spacing:.12em}
.principles-grid h3,.path-grid h2{font:500 30px/1.05 var(--serif);margin:12px 0}
.principles-grid p,.path-grid p{color:var(--muted)}
.path-grid{grid-template-columns:repeat(3,1fr);padding-bottom:50px}
.profile-card--open{background:#eef0e9}
.belle-feature{max-width:var(--max);margin:auto;padding:90px 24px;display:grid;grid-template-columns:minmax(220px,360px) 1fr;gap:80px;align-items:center;border-bottom:1px solid var(--line)}
.belle-feature__image img{box-shadow:0 18px 40px rgba(50,35,24,.18)}
.belle-feature h2{font:500 clamp(46px,6vw,78px)/.95 var(--serif);margin:0 0 24px}
.belle-feature p{color:var(--muted);font-size:19px}
.submission-wrap{max-width:900px;margin:auto;padding:40px 24px 110px}
.submission-form{background:var(--surface);border:1px solid var(--line);padding:clamp(24px,5vw,54px)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form-field{display:grid;gap:7px;margin-bottom:20px}
.form-field label{font-weight:600}
.form-field input,.form-field select,.form-field textarea{width:100%;padding:13px 14px;border:1px solid #c8cbc3;background:#fff;font:inherit;color:var(--ink)}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid rgba(48,76,61,.18);border-color:var(--green)}
.form-field small,.form-note{color:var(--muted);font-size:13px}
.check-field{display:flex;gap:10px;align-items:flex-start;margin:14px 0 20px}
.check-field input{margin-top:5px}
.honeypot{position:absolute!important;left:-9999px!important}
.form-status{min-height:1.5em;color:var(--green);font-weight:600}
@media(max-width:900px){.home-hero,.imprint-overview,.principles-grid,.path-grid,.belle-feature{grid-template-columns:1fr}.home-hero{gap:35px}.imprint-overview{padding-top:1px}.principles-grid,.path-grid{padding-top:1px}.form-grid{grid-template-columns:1fr}}

.profile-grid--dynamic{grid-template-columns:repeat(2,1fr)}
.profile-card--dynamic{display:grid;grid-template-columns:120px 1fr;gap:26px;align-items:center}
.profile-card__photo{width:120px;aspect-ratio:4/5;overflow:hidden;background:#e3e4de}
.profile-card__photo img{width:100%;height:100%;object-fit:cover}
.author-placeholder{width:100%;height:100%;display:grid;place-items:center;background:#e3e4de;color:var(--green);font:500 48px/1 var(--serif)}
.author-placeholder--large{min-height:360px;font-size:100px}
.author-portrait{padding-left:0;border-left:0}
.author-portrait img{width:100%;max-height:520px;object-fit:cover}
.author-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px}
.author-links a{color:var(--green);font-weight:600;text-decoration:none}
.author-genres{font-size:14px;color:var(--green)!important;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:800px){.profile-grid--dynamic{grid-template-columns:1fr}.profile-card--dynamic{grid-template-columns:90px 1fr}.profile-card__photo{width:90px}}


/* Compatibility palette for the self-contained Asset Catalog.
   Its interface uses the older variable names below. */
:root{
  --bg:#f3f1eb;
  --surface-2:#e9e8e1;
  --surface-3:#dddcd3;
  --text:#1d241f;
  --text-muted:#626962;
  --rule-light:#c9cbc4;
  --rule:#b8bbb2;
  --cream:#fffdf8;
  --green-light:#6f8b79;
  --danger:#8b3d37;
  --danger-light:#c86b63;
}

/* The Asset Catalog has its own inline CSS. These high-specificity rules
   restore readable contrast without changing its data or JavaScript. */
#admin-screen .topbar{
  background:#20362b !important;
  border-bottom-color:#486454 !important;
}
#admin-screen .topbar-brand-main{
  color:#fffdf8 !important;
}
#admin-screen .topbar-brand-sub{
  color:#d3ae69 !important;
}
#admin-screen .topbar .btn-gold{
  color:#f1cf8b !important;
  border-color:#d3ae69 !important;
}
#admin-screen .topbar .btn-gold:hover{
  background:#d3ae69 !important;
  color:#20362b !important;
}
#admin-screen .topbar .btn-muted{
  color:#e3e9e4 !important;
  border-color:#789080 !important;
}
#admin-screen .topbar .btn-muted:hover{
  background:#304c3d !important;
  color:#ffffff !important;
}
#admin-screen .topbar .btn-danger{
  color:#ffb6ae !important;
  border-color:#c86b63 !important;
}
#admin-screen .topbar .btn-danger:hover{
  background:#8b3d37 !important;
  color:#ffffff !important;
}


.imprint-introduction{max-width:var(--max);margin:auto;padding:90px 24px;border-bottom:1px solid var(--line)}
.imprint-introduction__heading{margin-bottom:42px}
.imprint-introduction .imprint-overview{padding:1px 0 0}
.imprint-all-link{margin:28px 0 0}
.imprint-detail{max-width:var(--max);margin:auto;padding:90px 24px;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;border-bottom:1px solid var(--line)}
.imprint-detail__heading h2{margin:0;font:500 clamp(52px,7vw,88px)/.94 var(--serif);letter-spacing:-.04em}
.imprint-detail__copy{max-width:720px;color:var(--muted);font-size:19px}
.imprint-detail__copy .button{margin-top:14px}
.imprint-detail--belle{background:#efe7dc}
@media(max-width:800px){
  .imprint-detail{grid-template-columns:1fr;gap:30px}
}

/* Phase 3D layout refinement */
body{overflow-x:hidden}
main{position:relative}
main::before{
  content:"";
  position:fixed;
  left:18px;
  top:94px;
  bottom:24px;
  width:1px;
  background:rgba(48,76,61,.18);
  pointer-events:none;
}
.image-hero{
  max-width:var(--max);
  margin:34px auto 0;
  padding:0 24px;
}
.image-hero img{
  width:100%;
  max-height:620px;
  object-fit:cover;
  object-position:center;
  border:1px solid #2d332f;
  box-shadow:0 18px 45px rgba(20,25,22,.16);
}
.hero-band{
  max-width:var(--max);
  margin:auto;
  padding:72px 48px 84px;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:80px;
  align-items:end;
  border-bottom:1px solid var(--line);
}
.hero-band h1{
  margin:0;
  font:500 clamp(58px,7vw,96px)/.94 var(--serif);
  letter-spacing:-.045em;
}
.hero-band__copy{
  color:var(--muted);
  font-size:20px;
}
.imprint-introduction{
  padding-left:48px;
  padding-right:48px;
}
.imprint-introduction__lead{
  max-width:880px;
  margin-bottom:42px;
}
.imprint-introduction__lead h2{
  margin:0 0 22px;
  font:500 clamp(48px,6vw,76px)/.98 var(--serif);
  letter-spacing:-.035em;
}
.imprint-introduction__lead>p:last-child{
  max-width:760px;
  color:var(--muted);
  font-size:19px;
}
.section,.page-intro,.author-hero,.split-section,.belle-feature,.submission-wrap{
  padding-left:48px;
  padding-right:48px;
}
.imprint-overview{
  padding-left:0;
  padding-right:0;
}
@media(max-width:800px){
  main::before{display:none}
  .hero-band{grid-template-columns:1fr;gap:30px;padding-left:24px;padding-right:24px}
  .imprint-introduction,.section,.page-intro,.author-hero,.split-section,.belle-feature,.submission-wrap{padding-left:24px;padding-right:24px}
}

.services-boundary{
  max-width:var(--max);
  margin:0 auto 90px;
  padding:72px 48px;
  background:var(--green-dark);
  color:#f4f2ec;
}
.services-boundary .eyebrow{color:#d7b777}
.services-boundary h2{
  margin:0 0 22px;
  max-width:900px;
  font:500 clamp(48px,6vw,76px)/.98 var(--serif);
  letter-spacing:-.035em;
}
.services-boundary p{
  max-width:820px;
  color:#d9dfda;
  font-size:18px;
}
@media(max-width:800px){
  .services-boundary{
    margin-bottom:50px;
    padding:54px 24px;
  }
}
