
*{box-sizing:border-box}
:root{--black:#080808;--ink:#111;--charcoal:#151515;--cream:#eeeae0;--paper:#f2efe8;--muted:#9a9892;--line:#343434}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;font-weight:300;background:var(--black);color:#f4f2ed}
a{color:inherit}
img{max-width:100%}
.grain{position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.site-header{position:absolute;top:0;left:0;right:0;z-index:20;height:96px;padding:0 4.7vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1)}
.brand img{display:block;width:250px;height:62px;object-fit:contain;object-position:left center}
.nav{display:flex;gap:36px;align-items:center}
.nav a{text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:.19em;color:#e7e4dc;padding:10px 0;border-bottom:1px solid transparent}
.nav a:hover{border-color:#d9d5ca}
.menu-toggle{display:none}
.eyebrow{font-size:10px;letter-spacing:.31em;text-transform:uppercase;margin:0 0 22px}
.muted{color:#98958f}.dark-text{color:#69665f}
h1,h2,h3,blockquote{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400}
.hero-home{min-height:760px;height:78vh;position:relative;overflow:hidden;border-bottom:1px solid #262626}
.hero-bg{position:absolute;inset:0;background-image:url("assets/hero-clean.jpg");background-size:cover;background-position:center 35%;filter:none}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.75) 0,rgba(0,0,0,.42) 44%,rgba(0,0,0,.18) 72%),linear-gradient(180deg,rgba(0,0,0,.38),transparent 30%,rgba(0,0,0,.42))}
.hero-inner{position:absolute;z-index:2;left:30vw;top:51%;transform:translateY(-42%);max-width:620px}
.hero-inner h1{font-size:clamp(65px,6vw,105px);line-height:.82;letter-spacing:.08em;text-transform:uppercase;margin:0 0 28px}
.hero-copy{font-family:"Cormorant Garamond",Georgia,serif;font-size:20px;line-height:1.55;max-width:540px;color:#d7d4cd}
.rule{width:62px;height:1px;background:#777;margin:28px 0}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;min-width:220px;padding:15px 19px;text-decoration:none;text-transform:uppercase;letter-spacing:.18em;font-size:10px;transition:.25s}
.button:hover{transform:translateY(-2px)}
.outline{border:1px solid #a6a29a}.light{background:#eeeae0;color:#0a0a0a;border:1px solid #eeeae0}.black{background:#111;color:#fff;border:1px solid #111}
.book-feature{display:grid;grid-template-columns:.9fr 1.1fr;min-height:650px;background:#0d0d0d;border-bottom:1px solid #2d2d2d}
.thin-book-scene{display:flex;align-items:center;justify-content:center;position:relative;background:radial-gradient(circle at 50% 48%,#292929 0,#171717 42%,#0d0d0d 73%);overflow:hidden}
.thin-book{position:relative;width:315px;aspect-ratio:2/3;transform:perspective(1100px) rotateY(-8deg) rotateZ(-1deg);transform-style:preserve-3d;z-index:2}
.thin-book img{display:block;width:100%;height:100%;object-fit:cover;box-shadow:-18px 25px 42px rgba(0,0,0,.65)}
.paper-edge{position:absolute;right:-7px;top:3px;width:8px;height:calc(100% - 6px);background:linear-gradient(90deg,#cfcac0,#f3f0e9 45%,#bdb8af);transform:translateZ(-2px);box-shadow:3px 0 7px rgba(0,0,0,.38)}
.thin-book:after{content:"";position:absolute;left:-3px;top:0;width:4px;height:100%;background:#111;opacity:.9}
.floor-shadow{position:absolute;width:390px;height:44px;bottom:74px;background:#000;filter:blur(22px);opacity:.75;transform:skewX(-15deg)}
.feature-copy{display:flex;flex-direction:column;justify-content:center;padding:90px 9vw 90px 6vw}
.feature-copy h2{font-size:clamp(52px,5vw,78px);letter-spacing:.06em;text-transform:uppercase;line-height:.9;margin:0}
.feature-copy .lead{font-family:"Cormorant Garamond",Georgia,serif;font-size:24px;line-height:1.35;color:#e2dfd8;max-width:610px}
.feature-copy>p:not(.lead):not(.eyebrow){max-width:620px;line-height:1.8;color:#a9a7a1}
.format-row{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 34px}
.format-row span{font-size:9px;text-transform:uppercase;letter-spacing:.16em;border:1px solid #414141;padding:9px 11px;color:#bbb8b1}
.button-row{display:flex;align-items:center;gap:32px;flex-wrap:wrap}
.pending-link{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#8d8982;border-bottom:1px solid #555;padding-bottom:5px}
.amazon-link,.format-buy{display:inline-flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#c9c4ba;text-decoration:none;border-bottom:1px solid #68635b;padding-bottom:5px;transition:.25s}
.amazon-link:hover,.format-buy:hover{color:#fff;border-color:#b9b3a8;transform:translateY(-1px)}
.format-buy{margin-top:18px}
.values{display:grid;grid-template-columns:repeat(3,1fr);background:#0a0a0a;border-bottom:1px solid #292929;padding:28px 8vw}
.values article{display:flex;gap:18px;align-items:center;padding:12px 30px;border-right:1px solid #363636}
.values article:last-child{border-right:none}
.values img{width:47px;height:47px;object-fit:contain}
.values h3{font-family:Inter,Arial,sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.2em;margin:0 0 8px}
.values p{font-family:"Cormorant Garamond",Georgia,serif;font-size:17px;color:#aaa69e;margin:0;line-height:1.25}
.closing-quote{text-align:center;padding:78px 20px 88px;background:#090909}
.closing-quote blockquote{font-size:clamp(28px,3vw,44px);line-height:1.25;margin:0 auto 30px;max-width:950px;color:#dbd8d1}
.closing-quote img{width:58px}
.site-footer{background:#050505;border-top:1px solid #252525;padding:58px 5vw 28px;color:#8e8b84}
.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;align-items:center;gap:30px}
.footer-brand img{width:235px}
.footer-top p{font-family:"Cormorant Garamond",Georgia,serif;font-size:18px}
.footer-top nav{display:flex;gap:20px;flex-wrap:wrap}.footer-top nav a{text-decoration:none;text-transform:uppercase;font-size:9px;letter-spacing:.14em}
.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #252525;margin-top:38px;padding-top:22px;font-size:9px;letter-spacing:.1em}
.page-hero{min-height:760px;padding:160px 8vw 90px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;background:radial-gradient(circle at 70% 45%,#292929 0,#151515 37%,#080808 69%)}
.page-hero-copy h1,.simple-hero h1{font-size:clamp(70px,7.5vw,116px);line-height:.8;margin:0 0 35px;letter-spacing:-.02em}
.page-hero-copy h1 em,.simple-hero h1 em{font-weight:400}
.book-subtitle{font-family:"Cormorant Garamond",Georgia,serif;font-size:23px;line-height:1.45;max-width:650px;color:#bdb9b1}
.meta-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:35px}.meta-strip span{padding:10px 12px;border:1px solid #393939;text-transform:uppercase;letter-spacing:.15em;font-size:9px;color:#a9a59e}
.book-page-object{display:flex;justify-content:center}
.large-book{width:355px}
.light-section{background:var(--paper);color:#171717;padding:130px 9vw}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12vw}
.light-section h2{font-size:clamp(50px,5.5vw,82px);line-height:.95;margin:0}
.prose{font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;line-height:1.65;color:#555149}
.prose p:first-child{font-size:28px;color:#191919}
.dark-section{padding:120px 9vw;background:#101010}
.purchase-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.purchase-panel h2{font-size:60px;margin:0 0 20px}.purchase-panel>div>p:not(.eyebrow){color:#999;line-height:1.7}
.purchase-options{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #373737}
.purchase-options>div{padding:35px 30px;border-right:1px solid #373737;border-bottom:1px solid #373737}.purchase-options>div:last-child{border-right:0}
.purchase-options span:first-child{font-size:10px;color:#777}.purchase-options h3{font-size:34px;margin:28px 0 10px}.purchase-options p{color:#999;line-height:1.6}
.centered-callout{text-align:center}.centered-callout h2{max-width:950px;margin:15px auto 35px}.dark-mark{width:90px;filter:invert(1);opacity:.9;margin-bottom:20px}
.simple-hero{padding:210px 9vw 120px;min-height:640px;display:flex;flex-direction:column;justify-content:end;background:radial-gradient(circle at 70% 25%,#2c2c2c 0,#121212 39%,#070707 74%)}
.simple-hero>p:last-child{font-family:"Cormorant Garamond",Georgia,serif;color:#aba79f;font-size:22px;line-height:1.55;max-width:670px}
.catalogue{padding:100px 9vw 140px;background:#0d0d0d}.catalogue-card{display:grid;grid-template-columns:.55fr 1fr;gap:8vw;align-items:center;text-decoration:none;padding-bottom:80px;border-bottom:1px solid #333}
.catalogue-cover{display:flex;justify-content:center}.catalogue-cover img{width:300px;box-shadow:0 24px 48px rgba(0,0,0,.55)}
.catalogue-card h2{font-size:70px;margin:10px 0}.catalogue-card>div:last-child>p:not(.eyebrow){color:#aaa}.catalogue-card>div:last-child>span{text-transform:uppercase;letter-spacing:.18em;font-size:10px;border-bottom:1px solid #777;padding-bottom:5px}
.principles,.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:0 9vw 130px;background:#f2efe8;color:#171717}
.principles article,.contact-grid>div{padding:45px 36px;border-top:1px solid #bbb7ae;border-right:1px solid #d0ccc3}
.principles article:last-child,.contact-grid>div:last-child{border-right:none}.principles span,.contact-grid span{font-size:10px;letter-spacing:.18em;color:#777}
.principles h3,.contact-grid h3{font-size:34px;margin:28px 0 12px}.principles p,.contact-grid p{color:#66615a;line-height:1.7}
.journal-list{padding:90px 9vw 140px;background:#eeeae0;color:#171717;display:grid;grid-template-columns:1fr 1fr;gap:50px}
.journal-list article{padding-top:35px;border-top:1px solid #b5b0a7}.journal-list h2{font-size:48px;line-height:1;margin:12px 0 20px}.journal-list article>p:not(.eyebrow){color:#625e56;line-height:1.7}.journal-list article>span{text-transform:uppercase;letter-spacing:.15em;font-size:9px;color:#827d74}
.contact-hero{min-height:680px}.contact-grid{padding-top:80px}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){
  .brand img{width:195px}.nav{gap:20px}.nav a{font-size:9px}
  .hero-inner{left:18vw}.book-feature,.page-hero,.purchase-panel{grid-template-columns:1fr}
  .book-feature{padding-top:50px}.thin-book-scene{min-height:560px}.feature-copy{padding:75px 9vw 90px}
  .page-hero{padding-top:150px;gap:60px}.book-page-object{order:-1}.large-book{width:300px}
  .values,.principles,.contact-grid{grid-template-columns:1fr}.values article{border-right:0;border-bottom:1px solid #333}
  .two-col{grid-template-columns:1fr;gap:60px}.purchase-options{margin-top:20px}
  .footer-top{grid-template-columns:1fr 1fr}.footer-top nav{grid-column:1/-1}
}
@media(max-width:760px){
  .site-header{height:78px;padding:0 22px}.brand img{width:175px;height:50px}
  .menu-toggle{display:block;background:none;border:0;width:34px;padding:0}.menu-toggle span{display:block;height:1px;background:#fff;margin:8px 0}
  .nav{position:absolute;top:78px;left:0;right:0;background:#090909;padding:26px 22px 30px;display:none;flex-direction:column;align-items:flex-start;border-top:1px solid #252525}.nav.open{display:flex}
  .hero-home{min-height:700px;height:88vh}.hero-bg{background-position:36% center}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.33))}
  .hero-inner{left:24px;right:24px;top:50%;max-width:520px}.hero-inner h1{font-size:55px;letter-spacing:.05em}.hero-copy{font-size:18px}
  .thin-book-scene{min-height:500px}.thin-book{width:245px}.paper-edge{width:6px;right:-5px}
  .feature-copy h2{font-size:52px}.values{padding:20px 24px}.values article{padding:18px 0}
  .footer-top{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:10px}
  .page-hero,.simple-hero{padding-left:24px;padding-right:24px}.page-hero-copy h1,.simple-hero h1{font-size:59px}
  .light-section,.dark-section,.catalogue,.journal-list{padding-left:24px;padding-right:24px}
  .catalogue-card{grid-template-columns:1fr;gap:45px}.catalogue-card h2{font-size:52px}
  .purchase-options{grid-template-columns:1fr}.purchase-options>div{border-right:0}
  .principles,.contact-grid{padding-left:24px;padding-right:24px}
  .journal-list{grid-template-columns:1fr}
}
@media(max-width:430px){
  .hero-inner h1{font-size:48px}.page-hero-copy h1,.simple-hero h1{font-size:51px}.book-subtitle{font-size:19px}
  .thin-book-scene{min-height:440px}.thin-book{width:215px}.feature-copy{padding-top:60px}.feature-copy h2{font-size:46px}
  .button-row{align-items:flex-start;flex-direction:column}.closing-quote{padding-left:24px;padding-right:24px}
}


/* --- v6 motion + hero polish --- */
:root{
  --ease-premium:cubic-bezier(.22,1,.36,1);
}
.hero-home{
  min-height:820px;
  height:92vh;
}
.hero-bg{
  transform:scale(1.015);
  will-change:transform;
  transition:transform .2s linear;
}
.hero-overlay{
  background:
    linear-gradient(90deg,rgba(6,8,10,.74) 0%,rgba(6,8,10,.56) 33%,rgba(6,8,10,.16) 67%,rgba(6,8,10,.05) 100%),
    linear-gradient(180deg,rgba(5,6,7,.25) 0%,rgba(5,6,7,.03) 46%,rgba(5,6,7,.22) 100%);
}
.hero-inner{
  left:7.4vw;
  top:54%;
  max-width:670px;
}
.hero-inner .eyebrow,
.hero-inner h1,
.hero-inner .rule,
.hero-inner .hero-copy,
.hero-inner .button{
  opacity:0;
  transform:translateY(26px);
  will-change:opacity,transform;
}
.hero-home.motion-ready .hero-inner .eyebrow{animation:heroReveal .85s var(--ease-premium) .10s forwards}
.hero-home.motion-ready .hero-inner h1{animation:heroReveal 1s var(--ease-premium) .20s forwards}
.hero-home.motion-ready .hero-inner .rule{animation:lineReveal .85s var(--ease-premium) .42s forwards;transform-origin:left center}
.hero-home.motion-ready .hero-inner .hero-copy{animation:heroReveal .95s var(--ease-premium) .48s forwards}
.hero-home.motion-ready .hero-inner .button{animation:heroReveal .95s var(--ease-premium) .62s forwards}

@keyframes heroReveal{
  from{opacity:0;transform:translateY(26px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes lineReveal{
  from{opacity:0;transform:scaleX(0)}
  to{opacity:1;transform:scaleX(1)}
}

.reveal{
  opacity:0;
  transform:translateY(34px);
  transition:
    opacity .95s var(--ease-premium),
    transform .95s var(--ease-premium);
  will-change:opacity,transform;
}
.reveal.visible{
  opacity:1;
  transform:translateY(0);
}
.reveal-stagger > *{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .75s var(--ease-premium),transform .75s var(--ease-premium);
}
.reveal-stagger.visible > *{opacity:1;transform:none}
.reveal-stagger.visible > *:nth-child(1){transition-delay:.04s}
.reveal-stagger.visible > *:nth-child(2){transition-delay:.12s}
.reveal-stagger.visible > *:nth-child(3){transition-delay:.20s}
.reveal-stagger.visible > *:nth-child(4){transition-delay:.28s}

.rule{
  transform-origin:left center;
  transition:transform .8s var(--ease-premium),opacity .8s var(--ease-premium);
}
.reveal.visible .rule,
.feature-copy.visible .rule{transform:scaleX(1);opacity:1}

.book-feature{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 30%,rgba(255,255,255,.03),transparent 30%),
    linear-gradient(180deg,#0d0d0d 0%,#090909 100%);
}
.thin-book-scene{
  background:
    radial-gradient(circle at 52% 44%,#303030 0,#1a1a1a 37%,#0d0d0d 72%);
}
.thin-book{
  transition:transform .8s var(--ease-premium),filter .8s var(--ease-premium);
}
.thin-book-scene.visible .thin-book{
  animation:bookLift 1.2s var(--ease-premium) both;
}
@keyframes bookLift{
  from{opacity:0;transform:perspective(1100px) rotateY(-8deg) rotateZ(-1deg) translateY(34px)}
  to{opacity:1;transform:perspective(1100px) rotateY(-8deg) rotateZ(-1deg) translateY(0)}
}
.values article{
  transition:transform .45s var(--ease-premium),background .45s var(--ease-premium);
}
.values article:hover{
  transform:translateY(-3px);
  background:rgba(255,255,255,.018);
}
.button{
  transition:
    transform .28s var(--ease-premium),
    background .28s var(--ease-premium),
    color .28s var(--ease-premium),
    border-color .28s var(--ease-premium);
}
.outline:hover{
  background:#eeeae0;
  color:#111;
  border-color:#eeeae0;
}
.closing-quote blockquote{
  opacity:.92;
}
.site-header{
  transition:background .35s ease,backdrop-filter .35s ease,border-color .35s ease;
}
.site-header.scrolled{
  position:fixed;
  background:rgba(8,8,8,.72);
  backdrop-filter:blur(14px);
  border-color:rgba(255,255,255,.08);
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal,.reveal-stagger>*,
  .hero-inner .eyebrow,.hero-inner h1,.hero-inner .rule,.hero-inner .hero-copy,.hero-inner .button{
    opacity:1!important;
    transform:none!important;
  }
  .hero-bg{transform:none!important}
}
@media(max-width:760px){
  .hero-home{min-height:760px;height:92vh}
  .hero-inner{left:24px;right:24px;top:54%;max-width:540px}
  .hero-bg{background-position:62% center}
  .hero-overlay{
    background:linear-gradient(90deg,rgba(5,6,7,.78) 0%,rgba(5,6,7,.52) 60%,rgba(5,6,7,.18) 100%);
  }
}


/* --- v7 brand/header/color corrections --- */
.site-header{
  height:112px;
  padding:0 4.6vw;
}
.brand{
  display:flex;
  align-items:center;
  text-decoration:none;
  min-width:max-content;
}
.brand-lockup{
  display:flex;
  align-items:center;
  gap:17px;
  color:#f0ede4;
}
.brand-mark{
  width:62px;
  height:62px;
  flex:0 0 62px;
  display:block;
  filter:drop-shadow(0 1px 8px rgba(0,0,0,.18));
}
.brand-wordmark{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:28px;
  font-weight:500;
  letter-spacing:.16em;
  white-space:nowrap;
  line-height:1;
}
.nav{
  gap:42px;
}
.nav a{
  font-size:12px;
  letter-spacing:.18em;
  font-weight:400;
  padding:13px 0;
}
.footer-lockup .brand-mark{
  width:66px;
  height:66px;
  flex-basis:66px;
}
.footer-lockup .brand-wordmark{
  font-size:26px;
}
.value-mark{
  width:52px;
  height:52px;
  flex:0 0 52px;
}
.dark-mark-vector{
  width:92px;
  height:92px;
  margin:0 auto 20px;
  display:block;
}
.hero-bg{
  filter:none !important;
  background-position:center center;
}
.hero-overlay{
  background:
    linear-gradient(90deg,rgba(8,12,16,.72) 0%,rgba(8,12,16,.52) 32%,rgba(8,12,16,.14) 68%,rgba(8,12,16,.02) 100%),
    linear-gradient(180deg,rgba(5,7,9,.18) 0%,rgba(5,7,9,.01) 54%,rgba(5,7,9,.16) 100%);
}
.hero-inner h1{
  color:#f4f0e7;
  text-shadow:0 2px 20px rgba(0,0,0,.18);
}
.hero-copy{
  color:#ece8df;
  text-shadow:0 1px 10px rgba(0,0,0,.22);
}
.site-header.scrolled .brand-mark{
  filter:none;
}
@media(max-width:980px){
  .site-header{padding:0 30px}
  .brand-mark{width:54px;height:54px;flex-basis:54px}
  .brand-wordmark{font-size:23px}
  .nav{gap:25px}
  .nav a{font-size:10px}
}
@media(max-width:760px){
  .site-header{height:86px;padding:0 22px}
  .brand-lockup{gap:11px}
  .brand-mark{width:46px;height:46px;flex-basis:46px}
  .brand-wordmark{font-size:18px;letter-spacing:.13em}
  .nav{top:86px}
  .nav a{font-size:11px}
  .hero-bg{background-position:66% center}
}
@media(max-width:420px){
  .brand-wordmark{font-size:16px;letter-spacing:.1em}
  .brand-mark{width:42px;height:42px;flex-basis:42px}
}


/* --- v8 definitive Dreamrift brand sizing --- */
.site-header{
  height:118px;
  padding:0 4.2vw;
}
.brand-lockup{gap:18px}
.brand-mark{
  width:72px;
  height:72px;
  flex:0 0 72px;
  filter:drop-shadow(0 2px 10px rgba(0,0,0,.2));
}
.brand-wordmark{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:31px;
  font-weight:500;
  letter-spacing:.15em;
  color:#f3efe5;
}
.nav{gap:46px}
.nav a{
  font-size:13px;
  letter-spacing:.17em;
  font-weight:400;
}
.footer-lockup .brand-mark{width:74px;height:74px;flex-basis:74px}
.footer-lockup .brand-wordmark{font-size:28px}
.value-mark{width:56px;height:56px;flex:0 0 56px}
@media(max-width:1100px){
  .brand-mark{width:62px;height:62px;flex-basis:62px}
  .brand-wordmark{font-size:26px}
  .nav{gap:30px}
  .nav a{font-size:11px}
}
@media(max-width:760px){
  .site-header{height:88px}
  .brand-mark{width:48px;height:48px;flex-basis:48px}
  .brand-wordmark{font-size:18px;letter-spacing:.11em}
  .nav{top:88px}
}


/* =========================================================
   v9 — current approved direction
   ========================================================= */
:root{
  --brand-ivory:#f3efe5;
  --brand-gold:#c79a46;
}

.site-header{
  height:116px;
  padding:0 4.4vw;
}
.brand{
  display:flex;
  align-items:center;
  text-decoration:none;
}
.brand-lockup{
  display:flex;
  align-items:center;
  gap:19px;
  color:var(--brand-ivory);
}
.brand-mark{
  width:66px;
  height:66px;
  flex:0 0 66px;
  color:var(--brand-ivory);
  display:block;
}
.brand-wordmark{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:32px;
  line-height:1;
  font-weight:500;
  letter-spacing:.145em;
  white-space:nowrap;
  color:var(--brand-ivory);
}
.nav{gap:44px}
.nav a{
  font-size:13px;
  font-weight:400;
  letter-spacing:.16em;
}
.nav a:hover{
  color:#fff;
  border-color:var(--brand-gold);
}

/* Keep the new hero in full colour. */
.hero-bg{
  filter:none!important;
  background-position:center center;
}
.hero-overlay{
  background:
    linear-gradient(90deg,rgba(8,13,18,.66) 0%,rgba(8,13,18,.46) 34%,rgba(8,13,18,.11) 66%,rgba(8,13,18,.01) 100%),
    linear-gradient(180deg,rgba(4,7,10,.16) 0%,rgba(4,7,10,.01) 60%,rgba(4,7,10,.13) 100%);
}
.hero-inner{
  left:6.8vw;
  max-width:650px;
}
.hero-inner h1{
  font-size:clamp(60px,5.4vw,92px);
  letter-spacing:.035em;
  line-height:.88;
}
.hero-inner .eyebrow{color:#e6dfd1}
.hero-copy{max-width:510px}
.outline{border-color:rgba(243,239,229,.7)}
.outline:hover{
  background:var(--brand-ivory);
  color:#111;
}
.rule{background:var(--brand-gold)}

/* Featured title: keep the actual slim paperback treatment. */
.thin-book{
  width:280px;
  transform:perspective(1100px) rotateY(-5deg) rotateZ(-.5deg);
}
.paper-edge{
  width:5px;
  right:-4px;
}
.feature-copy h2{
  font-size:clamp(50px,4.5vw,74px);
}
.format-row span{border-color:#3f3a32}

/* Four editorial values. */
.values.values-four{
  grid-template-columns:repeat(4,1fr);
  padding:34px 5.5vw 42px;
}
.values.values-four article{
  padding:18px 26px;
}
.value-mark{
  width:50px;
  height:50px;
  flex:0 0 50px;
  color:#c7a15b;
}
.values h3{font-size:11px}
.values p{font-size:16px}

/* Footer uses the same exact mark geometry. */
.footer-lockup .brand-mark{
  width:68px;
  height:68px;
  flex-basis:68px;
}
.footer-lockup .brand-wordmark{font-size:27px}

/* Slightly richer, more premium header when sticky. */
.site-header.scrolled{
  background:rgba(8,9,10,.78);
  backdrop-filter:blur(16px);
}

@media(max-width:1100px){
  .brand-mark{width:58px;height:58px;flex-basis:58px}
  .brand-wordmark{font-size:27px}
  .nav{gap:28px}
  .nav a{font-size:11px}
  .values.values-four{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:760px){
  .site-header{height:88px}
  .brand-lockup{gap:12px}
  .brand-mark{width:47px;height:47px;flex-basis:47px}
  .brand-wordmark{font-size:18px;letter-spacing:.105em}
  .nav{top:88px}
  .nav a{font-size:11px}
  .hero-bg{background-position:66% center}
  .hero-inner{left:24px;right:24px}
  .values.values-four{grid-template-columns:1fr;padding-left:24px;padding-right:24px}
}

@media(max-width:420px){
  .brand-wordmark{font-size:16px}
}


/* =========================================================
   v10 — approved bitmap logo assets from current conversation
   ========================================================= */
.site-header{
  height:116px;
  padding:0 4.3vw;
}
.brand{
  display:flex;
  align-items:center;
  text-decoration:none;
  flex:0 0 auto;
}
.brand img{
  display:block;
  width:430px;
  height:auto;
  max-height:84px;
  object-fit:contain;
  object-position:left center;
}
.nav{
  gap:42px;
}
.nav a{
  font-size:13px;
  letter-spacing:.16em;
  font-weight:400;
}
.footer-brand img{
  display:block;
  width:255px;
  height:auto;
  object-fit:contain;
}
.footer-top{
  align-items:center;
}
.values.values-four article{
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:0;
}
.values.values-four article h3{
  color:#e6d6b8;
}
.site-header.scrolled .brand img{
  filter:none;
}
@media(max-width:1200px){
  .brand img{width:350px;max-height:76px}
  .nav{gap:28px}
  .nav a{font-size:11px}
}
@media(max-width:980px){
  .brand img{width:300px;max-height:70px}
}
@media(max-width:760px){
  .site-header{height:88px;padding:0 20px}
  .brand img{width:240px;max-height:60px}
  .nav{top:88px}
  .nav a{font-size:11px}
}
@media(max-width:520px){
  .brand img{width:205px;max-height:54px}
}


/* =========================================================
   v11 — premium branding correction
   ========================================================= */

.site-header{
  height:108px;
  padding:0 5vw;
  border-bottom:1px solid rgba(255,255,255,.11);
  background:linear-gradient(180deg,rgba(6,7,8,.23),rgba(6,7,8,.02));
}

.brand{
  display:flex;
  align-items:center;
  height:100%;
  overflow:visible;
}

.brand img{
  width:390px !important;
  height:78px !important;
  max-height:none !important;
  object-fit:contain;
  object-position:left center;
  display:block;
  filter:drop-shadow(0 1px 8px rgba(0,0,0,.22));
}

.nav{
  gap:40px;
}

.nav a{
  font-size:12px !important;
  line-height:1;
  letter-spacing:.18em;
  font-weight:400;
  color:rgba(247,244,237,.9);
  padding:16px 0 14px;
  border-bottom:1px solid transparent;
}

.nav a:hover{
  color:#fff;
  border-color:#c7a15b;
}

.site-header.scrolled{
  height:92px;
  background:rgba(8,8,9,.82);
  backdrop-filter:blur(18px) saturate(120%);
  border-bottom-color:rgba(255,255,255,.09);
}

.site-header.scrolled .brand img{
  height:68px !important;
}

/* Make the hero feel more editorial and less like a template. */
.hero-home{
  min-height:840px;
  height:94vh;
}

.hero-inner{
  left:7.2vw;
  max-width:620px;
}

.hero-inner h1{
  max-width:610px;
  font-size:clamp(62px,5.2vw,90px);
  line-height:.9;
  letter-spacing:.025em;
}

.hero-copy{
  max-width:500px;
  font-size:20px;
  color:rgba(244,240,231,.92);
}

.button.outline{
  min-width:250px;
  border-color:rgba(234,224,205,.68);
  background:rgba(6,7,8,.12);
  backdrop-filter:blur(3px);
}

.button.outline:hover{
  background:#efe8dc;
  color:#111;
}

/* Book feature: more negative space, less bulky. */
.book-feature{
  grid-template-columns:.88fr 1.12fr;
}

.thin-book-scene{
  min-height:650px;
}

.thin-book{
  width:260px !important;
}

.feature-copy{
  padding-top:110px;
  padding-bottom:110px;
}

.feature-copy h2{
  letter-spacing:.045em;
}

/* Values should feel like an editorial manifesto, not cards. */
.values.values-four{
  padding:52px 6vw 58px;
  gap:0;
  background:#0a0a0a;
}

.values.values-four article{
  min-height:170px;
  padding:22px 38px;
  border-right:1px solid rgba(255,255,255,.11);
  background:transparent !important;
}

.values.values-four article:first-child{
  border-left:1px solid rgba(255,255,255,.11);
}

.values.values-four h3{
  color:#d4b277;
  font-size:10px;
  letter-spacing:.22em;
  margin-bottom:12px;
}

.values.values-four p{
  max-width:240px;
  color:#b6b0a7;
  line-height:1.5;
}

/* Footer logo: actual clean stacked mark, no rectangle. */
.site-footer{
  padding-top:72px;
  background:#070707;
}

.footer-brand{
  display:inline-flex;
  align-items:center;
}

.footer-brand img{
  width:220px !important;
  height:auto !important;
  max-height:none !important;
  display:block;
  filter:drop-shadow(0 1px 6px rgba(0,0,0,.2));
}

.footer-top{
  grid-template-columns:1.25fr .9fr 1fr;
  gap:56px;
  align-items:center;
}

.footer-top p{
  max-width:300px;
  color:#9f9a90;
}

.footer-top nav a{
  color:#a7a198;
}

.footer-bottom{
  margin-top:52px;
  padding-top:24px;
}

@media(max-width:1180px){
  .brand img{
    width:330px !important;
    height:70px !important;
  }
  .nav{gap:25px}
  .nav a{font-size:10px !important}
}

@media(max-width:900px){
  .brand img{
    width:285px !important;
    height:62px !important;
  }
}

@media(max-width:760px){
  .site-header{
    height:86px;
    padding:0 22px;
  }
  .brand img{
    width:225px !important;
    height:54px !important;
  }
  .nav{top:86px}
  .hero-home{min-height:760px;height:92vh}
  .footer-brand img{width:185px !important}
  .footer-top{grid-template-columns:1fr;gap:34px}
  .values.values-four article{
    border-left:0 !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(255,255,255,.1);
    padding-left:0;
    padding-right:0;
  }
}


/* =========================================================
   v12 — fully responsive hero viewport
   Hero continuously resizes/re-crops with the browser window.
   ========================================================= */

.hero-home{
  position:relative;
  width:100%;
  height:100svh;
  min-height:640px;
  max-height:1080px;
  overflow:hidden;
}

/* Background always fills the available hero rectangle.
   Browser resizing recalculates both dimensions automatically. */
.hero-bg{
  position:absolute;
  inset:-2%;
  width:104%;
  height:104%;
  background-size:cover !important;
  background-repeat:no-repeat;
  background-position:center center;
  will-change:transform;
}

/* Keep readable content sized relative to the viewport as well. */
.hero-inner{
  left:clamp(28px,7.2vw,138px);
  top:54%;
  width:min(620px,44vw);
}

.hero-inner h1{
  font-size:clamp(54px,5.2vw,92px);
}

.hero-copy{
  font-size:clamp(17px,1.15vw,20px);
}

/* Large/wide screens: preserve more of the coast/architecture. */
@media (min-aspect-ratio: 16/9){
  .hero-bg{
    background-position:center 48%;
  }
}

/* Taller/narrower windows: keep the visual focal area in frame. */
@media (max-aspect-ratio: 4/3){
  .hero-bg{
    background-position:62% center;
  }
  .hero-inner{
    width:min(570px,52vw);
  }
}

@media(max-width:760px){
  .hero-home{
    height:100svh;
    min-height:690px;
    max-height:none;
  }
  .hero-bg{
    inset:-1%;
    width:102%;
    height:102%;
    background-position:67% center;
  }
  .hero-inner{
    left:24px;
    right:24px;
    width:auto;
    top:55%;
  }
}

@media(max-width:430px){
  .hero-bg{
    background-position:70% center;
  }
}


/* =========================================================
   v13 — Books + title page premium pass
   Homepage v12 remains untouched.
   ========================================================= */

.nav a.active{color:#fff;border-color:#c7a15b}

/* BOOKS PAGE */
.books-hero{
  min-height:620px;
  padding:190px 8vw 110px;
  display:flex;
  align-items:flex-end;
  background:
    radial-gradient(circle at 68% 24%,#2b2a28 0%,#171717 32%,#090909 69%);
  border-bottom:1px solid #262626;
}
.books-hero-inner{max-width:900px}
.books-hero h1{
  font-size:clamp(72px,7vw,112px);
  line-height:.82;
  letter-spacing:-.025em;
  margin:0 0 28px;
}
.books-hero p:last-child{
  max-width:620px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:22px;
  line-height:1.5;
  color:#aaa59d;
}

.books-featured{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  min-height:760px;
  background:#0c0c0c;
  border-bottom:1px solid #2a2a2a;
}
.books-object{
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 48%,#32302e 0%,#1b1a19 35%,#0c0c0c 71%);
}
.books-book{
  position:relative;
  width:290px;
  aspect-ratio:2/3;
  transform:perspective(1200px) rotateY(-6deg) rotateZ(-.6deg);
  z-index:2;
}
.books-book img{
  display:block;width:100%;height:100%;object-fit:cover;
  box-shadow:-16px 26px 48px rgba(0,0,0,.62);
}
.books-shadow{
  position:absolute;
  width:420px;height:52px;
  bottom:98px;
  background:#000;
  filter:blur(24px);
  opacity:.65;
}
.books-copy{
  padding:110px 8vw 110px 7vw;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.book-index{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:62px;
  color:#4f4b45;
  line-height:1;
  margin-bottom:18px;
}
.books-copy h2{
  font-size:clamp(64px,5.6vw,90px);
  line-height:.86;
  margin:0 0 32px;
}
.books-lead{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:25px;
  line-height:1.42;
  color:#e0ddd6;
  max-width:620px;
}
.books-copy>p:not(.eyebrow):not(.books-lead){
  max-width:620px;line-height:1.8;color:#9f9b94;
}
.books-meta{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  border-top:1px solid #333;
  border-bottom:1px solid #333;
  padding:24px 0;
  margin:38px 0;
}
.books-meta div{display:flex;flex-direction:column;gap:8px}
.books-meta span{font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:#6f6b65}
.books-meta strong{font-size:11px;font-weight:400;color:#ddd8cf}

.future-list{
  background:#eeeae0;
  color:#141414;
  padding:120px 9vw 130px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12vw;
}
.future-list h2{
  font-size:clamp(52px,5.2vw,78px);
  line-height:.94;
  margin:0;
}
.future-list>p{
  align-self:end;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:23px;
  line-height:1.6;
  color:#5e5a53;
}

/* TITLE PAGE */
.title-hero{
  min-height:820px;
  padding:170px 8vw 90px;
  display:grid;
  grid-template-columns:1.12fr .88fr;
  align-items:center;
  background:
    radial-gradient(circle at 74% 42%,#302e2b 0%,#181716 36%,#080808 72%);
}
.title-copy h1{
  font-size:clamp(74px,7vw,112px);
  line-height:.81;
  margin:0 0 34px;
}
.title-sub{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:23px;
  line-height:1.5;
  color:#c7c2b8;
  max-width:670px;
}
.title-meta{display:flex;flex-wrap:wrap;gap:8px;margin:34px 0}
.title-meta span{
  border:1px solid #3c3935;
  padding:9px 11px;
  font-size:8px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#b0aaa0;
}
.title-object{
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}
.title-book{
  position:relative;
  width:335px;
  aspect-ratio:2/3;
  transform:perspective(1200px) rotateY(-6deg) rotateZ(-.4deg);
  z-index:2;
}
.title-book img{
  width:100%;height:100%;object-fit:cover;display:block;
  box-shadow:-18px 30px 52px rgba(0,0,0,.6);
}
.title-shadow{
  position:absolute;
  width:430px;height:55px;
  bottom:55px;
  background:#000;
  filter:blur(24px);
  opacity:.65;
}

.title-statement{
  padding:125px 8vw 135px;
  background:#eeeae0;
  color:#141414;
  text-align:center;
}
.title-statement blockquote{
  margin:25px auto 0;
  max-width:1100px;
  font-size:clamp(45px,5vw,74px);
  line-height:1.08;
}

.title-about{
  padding:130px 9vw;
  background:#f4f1ea;
  color:#141414;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:11vw;
}
.title-about h2{
  font-size:clamp(52px,5.2vw,80px);
  line-height:.95;margin:0;
}
.title-about-copy{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:22px;line-height:1.65;color:#5b574f;
}
.title-about-copy p:first-child{font-size:28px;color:#171717}

.title-formats{
  padding:120px 9vw 130px;
  background:#0c0c0c;
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:10vw;
}
.title-formats h2{
  font-size:clamp(52px,5vw,76px);
  line-height:.95;margin:0 0 22px;
}
.title-formats>div>p:not(.eyebrow){color:#9f9a92;line-height:1.75;max-width:540px}
.format-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  border-top:1px solid #353535;
}
.format-cards article{
  padding:38px 32px;
  border-right:1px solid #353535;
  border-bottom:1px solid #353535;
}
.format-cards article:last-child{border-right:0}
.format-cards span{
  font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:#6e6a64
}
.format-cards h3{font-size:37px;margin:26px 0 10px}
.format-cards p{color:#9b978f;line-height:1.6}
.format-cards small{color:#69655e;text-transform:uppercase;letter-spacing:.13em;font-size:8px}

.title-close{
  padding:130px 8vw 140px;
  text-align:center;
  background:#090909;
}
.title-close h2{
  font-size:clamp(54px,5.6vw,86px);
  line-height:.96;
  margin:20px auto 38px;
  max-width:1000px;
}
.title-close .button{margin:auto}

@media(max-width:960px){
  .books-featured,.title-hero,.title-formats{grid-template-columns:1fr}
  .books-object{min-height:600px}
  .title-object{order:-1;margin-bottom:30px}
  .title-hero{gap:50px}
  .future-list,.title-about{grid-template-columns:1fr;gap:55px}
}
@media(max-width:760px){
  .books-hero{padding:160px 24px 90px;min-height:560px}
  .books-hero h1{font-size:60px}
  .books-object{min-height:520px}
  .books-book{width:240px}
  .books-copy{padding:80px 24px 90px}
  .books-copy h2{font-size:58px}
  .books-meta{grid-template-columns:1fr;gap:18px}
  .future-list,.title-about,.title-formats{padding-left:24px;padding-right:24px}
  .title-hero{padding:140px 24px 85px}
  .title-copy h1{font-size:61px}
  .title-book{width:255px}
  .title-statement{padding:90px 24px 100px}
  .format-cards{grid-template-columns:1fr}
  .format-cards article{border-right:0}
  .title-close{padding-left:24px;padding-right:24px}
}


/* =========================================================
   v14 — About Dreamrift Press
   ========================================================= */
.about-hero{
  min-height:760px;
  padding:190px 8vw 100px;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:8vw;
  align-items:end;
  background:
    radial-gradient(circle at 78% 28%,#302e2b 0%,#171716 33%,#090909 69%);
  border-bottom:1px solid #292929;
}
.about-hero h1{
  font-size:clamp(78px,7.4vw,120px);
  line-height:.82;
  letter-spacing:-.03em;
  margin:0;
}
.about-intro{
  max-width:560px;
  padding-bottom:10px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:26px;
  line-height:1.55;
  color:#b8b2a9;
}

.about-manifesto{
  padding:130px 9vw 145px;
  display:grid;
  grid-template-columns:.35fr 1.65fr;
  gap:7vw;
  background:#eeeae0;
  color:#141414;
}
.about-number{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:110px;
  line-height:.8;
  color:#c4bba9;
}
.about-manifesto-copy{max-width:940px}
.about-manifesto h2{
  font-size:clamp(58px,5.8vw,90px);
  line-height:.94;
  margin:12px 0 40px;
}
.about-manifesto-copy>p:not(.eyebrow){
  max-width:720px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:23px;
  line-height:1.65;
  color:#5d5850;
}

.about-principles{
  padding:125px 8vw 140px;
  background:#0b0b0b;
}
.principles-heading{max-width:900px;margin-bottom:75px}
.principles-heading h2{
  font-size:clamp(60px,5.8vw,88px);
  line-height:.94;
  margin:12px 0 0;
}
.principles-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid #353535;
  border-bottom:1px solid #353535;
}
.principles-grid article{
  min-height:310px;
  padding:40px 38px;
  border-right:1px solid #353535;
}
.principles-grid article:last-child{border-right:0}
.principles-grid span{
  font-size:9px;
  letter-spacing:.18em;
  color:#77716a;
}
.principles-grid h3{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:32px;
  font-weight:400;
  margin:62px 0 18px;
}
.principles-grid p{
  color:#969189;
  line-height:1.7;
  max-width:330px;
}

.about-name{
  padding:135px 9vw 145px;
  background:#f2eee5;
  color:#141414;
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:10vw;
}
.about-name h2{
  font-size:clamp(76px,7vw,110px);
  margin:10px 0 0;
  line-height:.9;
}
.about-name-text{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:25px;
  line-height:1.62;
  color:#5c574f;
  max-width:720px;
}
.about-name-text p:first-child{font-size:29px;color:#171717}

.about-current{
  min-height:620px;
  padding:120px 8vw;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:
    radial-gradient(circle at 50% 40%,#282725 0%,#131313 37%,#080808 72%);
}
.about-current>div{max-width:1000px}
.about-current h2{
  font-size:clamp(58px,5.8vw,88px);
  line-height:.95;
  margin:16px 0 28px;
}
.about-current p:not(.eyebrow){
  max-width:650px;
  margin:0 auto 38px;
  color:#a49f97;
  line-height:1.75;
}

@media(max-width:900px){
  .about-hero,.about-name{grid-template-columns:1fr;gap:55px}
  .about-manifesto{grid-template-columns:1fr}
  .principles-grid{grid-template-columns:1fr}
  .principles-grid article{border-right:0;border-bottom:1px solid #353535}
  .principles-grid article:last-child{border-bottom:0}
}
@media(max-width:760px){
  .about-hero{padding:165px 24px 90px;min-height:650px}
  .about-hero h1{font-size:64px}
  .about-intro{font-size:22px}
  .about-manifesto,.about-principles,.about-name,.about-current{padding-left:24px;padding-right:24px}
  .about-number{font-size:72px}
  .principles-grid article{padding-left:0;padding-right:0}
  .about-name h2{font-size:70px}
}


/* =========================================================
   v15 FINAL REVIEW — Journal, Contact, Privacy + global polish
   ========================================================= */

.legal-links{display:flex;gap:18px}
.legal-links a{
  text-decoration:none;
  color:#817d75;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:8px;
}
.legal-links a:hover{color:#ddd7cc}

/* Journal */
.journal-hero{
  min-height:700px;
  padding:190px 8vw 110px;
  display:flex;
  align-items:flex-end;
  background:
    radial-gradient(circle at 75% 27%,#312f2c 0%,#171716 34%,#090909 70%);
}
.journal-hero-inner{max-width:940px}
.journal-hero h1{
  font-size:clamp(76px,7vw,112px);
  line-height:.82;
  margin:0 0 30px;
}
.journal-hero p:last-child{
  max-width:650px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:23px;
  line-height:1.55;
  color:#aaa59c;
}

.journal-feature{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  min-height:610px;
  background:#eeeae0;
  color:#151515;
}
.journal-feature-art{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#dad5cb;
}
.journal-feature-art>span{
  position:absolute;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:180px;
  color:#c7c0b3;
}
.journal-orbit{
  width:330px;height:330px;
  border:1px solid #aaa294;
  border-radius:50%;
  position:relative;
}
.journal-orbit:before{
  content:"";
  position:absolute;
  width:190px;height:190px;
  border:1px solid #aaa294;
  border-radius:50%;
  left:69px;top:69px;
}
.journal-orbit:after{
  content:"";
  position:absolute;
  width:10px;height:10px;
  background:#171717;border-radius:50%;
  right:40px;top:54px;
}
.journal-feature-copy{
  padding:90px 9vw 90px 7vw;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.journal-feature-copy h2{
  font-size:clamp(58px,5.5vw,84px);
  line-height:.94;margin:10px 0 28px;
}
.journal-feature-copy>p:not(.eyebrow){
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:24px;line-height:1.55;color:#5f5a52;
  max-width:620px;
}
.journal-status{
  margin-top:26px;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:9px;
  color:#7f786d;
}

.journal-grid-section{
  padding:120px 8vw 140px;
  background:#0b0b0b;
}
.journal-grid-heading{max-width:900px;margin-bottom:70px}
.journal-grid-heading h2{
  font-size:clamp(58px,5.6vw,86px);
  line-height:.94;margin:10px 0 0;
}
.journal-editorial-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid #343434;
  border-bottom:1px solid #343434;
}
.journal-editorial-grid article{
  padding:38px 34px 42px;
  border-right:1px solid #343434;
  min-height:390px;
}
.journal-editorial-grid article:last-child{border-right:0}
.journal-no{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:42px;
  color:#4d4943;
  display:block;
  margin-bottom:55px;
}
.journal-editorial-grid h3{
  font-size:32px;line-height:1.05;margin:12px 0 18px;
}
.journal-editorial-grid p:not(.eyebrow){
  color:#97928a;line-height:1.7;
}
.journal-editorial-grid small{
  display:block;margin-top:30px;
  font-size:8px;text-transform:uppercase;
  letter-spacing:.15em;color:#67635d;
}
.journal-close{
  padding:110px 20px 125px;
  text-align:center;background:#090909;
}
.journal-close blockquote{
  font-size:clamp(44px,4.8vw,72px);
  line-height:1.08;margin:15px auto 0;
}

/* Contact */
.contact-hero-premium{
  min-height:690px;
  padding:190px 8vw 105px;
  display:flex;align-items:flex-end;
  background:
    radial-gradient(circle at 70% 28%,#302e2a 0%,#171716 34%,#090909 70%);
}
.contact-hero-copy{max-width:900px}
.contact-hero-copy h1{
  font-size:clamp(80px,7.5vw,120px);
  line-height:.8;margin:0 0 30px;
}
.contact-hero-copy>p:last-child{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:24px;color:#aaa59c;
}
.contact-editorial{
  background:#eeeae0;color:#141414;
  padding:125px 8vw 140px;
}
.contact-intro{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:9vw;
  margin-bottom:75px;
}
.contact-intro .eyebrow{grid-column:1/-1;margin-bottom:-25px}
.contact-intro h2{
  font-size:clamp(55px,5.5vw,84px);
  line-height:.95;margin:0;
}
.contact-intro>p:last-child{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:23px;line-height:1.65;color:#5e5951;
  align-self:end;
}
.contact-types{
  display:grid;grid-template-columns:repeat(3,1fr);
  border-top:1px solid #bdb6aa;
  border-bottom:1px solid #bdb6aa;
}
.contact-types article{
  padding:38px 34px 42px;
  min-height:260px;
  border-right:1px solid #cbc4b8;
}
.contact-types article:last-child{border-right:0}
.contact-types span{
  font-size:9px;letter-spacing:.17em;color:#8a8378;
}
.contact-types h3{font-size:34px;margin:45px 0 12px}
.contact-types p{color:#69635a;line-height:1.65}
.contact-pending{
  min-height:570px;
  padding:110px 8vw;
  display:flex;align-items:center;justify-content:center;
  text-align:center;
  background:
    radial-gradient(circle at 50% 40%,#282725 0%,#131313 40%,#080808 74%);
}
.contact-pending>div{max-width:900px}
.contact-pending h2{
  font-size:clamp(58px,5.6vw,88px);
  line-height:.95;margin:15px 0 28px;
}
.contact-pending p:not(.eyebrow){
  max-width:630px;margin:auto;
  color:#9d988f;line-height:1.75;
}

/* Privacy */
.privacy-hero{
  min-height:500px;
  padding:190px 9vw 80px;
  display:flex;flex-direction:column;justify-content:end;
  background:
    radial-gradient(circle at 75% 20%,#282725 0%,#141414 38%,#080808 72%);
}
.privacy-hero h1{
  font-size:clamp(70px,6.4vw,100px);
  margin:0;line-height:.9;
}
.privacy-copy{
  padding:100px 9vw 130px;
  background:#eeeae0;color:#191919;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:22px;line-height:1.7;
}
.privacy-copy p{max-width:820px}
.privacy-copy strong{font-family:Inter,Arial,sans-serif;font-size:12px}

/* Global premium consistency */
.page-hero,.simple-hero,.books-hero,.about-hero,.journal-hero,.contact-hero-premium,.privacy-hero{
  border-bottom:1px solid rgba(255,255,255,.08);
}
.site-footer{border-top:1px solid #242424}
.button,.nav a,.footer-top nav a,.legal-links a{transition:all .28s var(--ease-premium)}

@media(max-width:900px){
  .journal-feature,.contact-intro{grid-template-columns:1fr}
  .journal-editorial-grid,.contact-types{grid-template-columns:1fr}
  .journal-editorial-grid article,.contact-types article{
    border-right:0;border-bottom:1px solid #343434;
  }
}
@media(max-width:760px){
  .journal-hero,.contact-hero-premium,.privacy-hero{
    padding-left:24px;padding-right:24px;
  }
  .journal-hero h1,.contact-hero-copy h1{font-size:62px}
  .journal-feature-copy,.journal-grid-section,.contact-editorial,.contact-pending,.privacy-copy{
    padding-left:24px;padding-right:24px;
  }
  .journal-feature-art{min-height:420px}
  .journal-orbit{width:250px;height:250px}
  .journal-orbit:before{width:140px;height:140px;left:54px;top:54px}
  .journal-editorial-grid article,.contact-types article{padding-left:0;padding-right:0}
  .footer-bottom{gap:14px}
}


/* v16 — author portrait */
.about-author{
  padding:135px 9vw 145px;
  background:#0a0a0a;
  display:grid;
  grid-template-columns:minmax(300px,.78fr) 1.22fr;
  gap:10vw;
  align-items:center;
  border-bottom:1px solid #292929;
}
.author-portrait{max-width:520px;justify-self:end;width:100%;}
.author-portrait img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;object-position:center 35%;filter:grayscale(100%);box-shadow:0 28px 70px rgba(0,0,0,.38)}
.author-copy{max-width:680px;}
.author-copy h2{font-size:clamp(70px,7vw,108px);line-height:.82;margin:14px 0 38px;}
.author-copy .author-lead{font-family:"Cormorant Garamond",Georgia,serif;font-size:29px;line-height:1.5;color:#ded9d0;}
.author-copy>p:not(.eyebrow):not(.author-lead){font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;line-height:1.65;color:#9f9a92;max-width:620px;}
.author-copy .text-link{display:inline-flex;margin-top:18px;color:#c7c1b7;}
@media(max-width:900px){.about-author{grid-template-columns:1fr;gap:60px}.author-portrait{justify-self:start;max-width:430px}.author-copy{max-width:720px}}
@media(max-width:760px){.about-author{padding:95px 24px 105px}.author-portrait{max-width:100%}.author-copy h2{font-size:68px}.author-copy .author-lead{font-size:25px}}
