:root{--ink:#1c1b18;--paper:#f4f0e6;--cream:#e9dfc9;--red:#8d2f2f;--deep:#25322d;--sage:#a4ab92;--line:rgba(28,27,24,.18);--serif:'Libre Caslon Text',Georgia,serif;--display:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input{font:inherit}.announcement{background:var(--ink);color:#fff;text-align:center;font:500 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:9px 15px}.site-header{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(244,240,230,.94);backdrop-filter:blur(12px);z-index:50}.brand{display:flex;align-items:baseline;gap:11px}.brand-name{font:500 18px var(--sans);letter-spacing:.16em}.brand-sub{font-style:italic;color:#6b675f}.nav{display:flex;gap:30px;font:500 12px var(--sans);letter-spacing:.05em;text-transform:uppercase}.nav a,.text-link{position:relative}.nav a:after,.text-link:after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1px;background:currentColor;transition:.3s}.nav a:hover:after,.text-link:hover:after{right:0}.menu-btn{display:none;background:none;border:0}.section-pad{padding:110px 7vw}.hero{min-height:710px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:7vw}.eyebrow{font:600 11px var(--sans);letter-spacing:.18em;text-transform:uppercase;margin:0 0 25px}.hero h1,.section-heading h2,.about h2,.book-copy h2,.newsletter h2,.contact h2{font-family:var(--display);font-weight:400;line-height:.98;margin:0}.hero h1{font-size:clamp(3.9rem,7.6vw,8.1rem);letter-spacing:-.045em}.hero h1 em{font-weight:400;color:var(--red)}.hero-text{max-width:620px;font-size:19px;margin:34px 0}.hero-actions,.button-row{display:flex;align-items:center;gap:30px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 24px;border:1px solid transparent;cursor:pointer;font:600 11px var(--sans);letter-spacing:.11em;text-transform:uppercase;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-dark{background:var(--ink);color:#fff}.btn-cream{background:var(--paper);color:var(--ink)}.btn-outline{border-color:var(--ink);background:transparent}.text-link{font:500 12px var(--sans);letter-spacing:.04em}.text-link span{padding-left:8px}.hero-art{height:580px;background:#d5c7aa;position:relative;overflow:hidden;border-radius:50% 50% 2px 2px/45% 45% 2px 2px;box-shadow:0 30px 70px rgba(47,38,26,.13)}.sun{position:absolute;width:160px;height:160px;border-radius:50%;background:#a8473e;right:14%;top:15%}.ridge{position:absolute;left:-10%;width:120%;height:48%;bottom:-3%;background:#606653;clip-path:polygon(0 67%,10% 43%,24% 57%,38% 28%,51% 57%,62% 39%,73% 57%,88% 25%,100% 48%,100% 100%,0 100%)}.ridge-two{background:#2e3c35;bottom:-16%;height:44%;opacity:.96}.hero-quote{position:absolute;left:10%;bottom:10%;color:#fff;font:italic 28px/1.25 var(--serif);z-index:2}.featured-book{background:var(--deep);color:#f5eee2;display:grid;grid-template-columns:1fr 1fr;min-height:760px}.book-visual{display:grid;place-items:center;padding:90px;background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.12),transparent 50%)}.book-object{width:310px;aspect-ratio:.66;box-shadow:22px 28px 50px rgba(0,0,0,.32);position:relative;transform:rotate(-4deg);display:flex}.book-object img{
 width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  position:absolute;
  inset:0;
}
.book-copy{padding:115px 10vw 110px 5vw;display:flex;flex-direction:column;justify-content:center}.light{color:#d8d2c4}.book-copy h2{font-size:clamp(3.4rem,5vw,6rem)}.book-copy p{max-width:650px;color:#ded8ce}.italic-line{font-style:italic;font-size:22px!important;color:#fff!important;margin:26px 0 8px}.light-link{color:#fff}.section-heading{max-width:750px;margin-bottom:60px}.section-heading h2,.about h2,.contact h2{font-size:clamp(3rem,5vw,5.3rem);letter-spacing:-.035em}.section-heading>p:last-child{font-size:18px;max-width:640px}.section-heading.split{max-width:none;display:grid;grid-template-columns:1fr .6fr;gap:10vw;align-items:end}.book-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.book-card{display:flex;flex-direction:column;gap:28px}.mini-cover,.product-art{aspect-ratio:.69;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0px;box-shadow:0 18px 40px rgba(52,43,28,.13)}.mini-cover span,.product-art span{font:400 30px/1.05 var(--display)}.mini-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}.mini-cover small{margin-top:auto;font:600 9px var(--sans);letter-spacing:.18em}.rubble{background:linear-gradient(160deg,#beb7a2,#6c7067 58%,#373b39);color:#f8f1e6}.sunset{background:linear-gradient(#d6c0a0 0 48%,#a94d43 48% 63%,#354039 63%);color:#f8f1e6}.zeena{background:#b7b7a0;color:#3a2f29;background-image:radial-gradient(circle at 30% 30%,rgba(255,255,255,.22),transparent 30%),linear-gradient(140deg,rgba(68,54,45,.14),transparent 60%)}.book-meta>p:first-child,.post-meta{font:600 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#6e685e}.book-meta h3,.product-card h3{font:400 28px/1.12 var(--display);margin:7px 0 14px}
.post-card h3{
  font:400 25px/1.15 var(--display);
  margin:7px 0 14px;
}.quote-band{background:#aa493d;color:#fff;text-align:center;padding:105px 16vw}.quote-mark{font:80px/1 var(--display);opacity:.5}.quote-band blockquote{font:italic 34px/1.4 var(--serif);max-width:900px;margin:0 auto 22px}.quote-band p{font:500 10px var(--sans);letter-spacing:.13em;text-transform:uppercase}.journal-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}.post-card{padding:36px;border-right:1px solid var(--line);min-height:330px}.post-card:last-child{border-right:0}.feature-post{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px}.post-art{min-height:260px;background:#d2c3a5;position:relative}.paper-art:before,.paper-art:after{content:"";position:absolute;background:#506052;clip-path:polygon(0 100%,45% 16%,100% 100%)}.paper-art:before{inset:30% -4% 0 4%}.paper-art:after{inset:50% -20% 0 35%;background:#8f493f}.post-art span{position:absolute;top:20px;left:20px;font:600 11px var(--sans)}.post-card p{color:#5d594f}.center-btn{margin:48px auto 0}.about{background:#ddd4c0;display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw;align-items:center}.portrait-placeholder{height:420px;background:#beb4a0;display:flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.12);overflow:hidden}.portrait-placeholder img{width:100%;height:100%;object-fit:cover;display:block}.portrait-monogram{width:170px;height:170px;border-radius:50%;border:1px solid rgba(0,0,0,.28);display:grid;place-items:center;font:54px var(--display)}.portrait-placeholder p{font:600 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;margin-top:25px}.about-lead{font-size:24px;font-style:italic}.about-copy p{max-width:670px}.signed{background:#f8f4eb}.shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,420px));gap:50px}.product-card{border:1px solid var(--line);padding:24px}.product-art.compact{aspect-ratio:.69;box-shadow:none}.product-art.compact img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}.product-info{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:20px 0}.product-info h3{font-size:22px;margin:0}.product-info p{margin:4px 0 0;color:#686258}.product-info strong{font:600 15px var(--sans)}.product-card .btn{width:100%}.shop-note,.placeholder-note{font:12px var(--sans);color:#6f6a61;margin-top:25px}.newsletter{background:var(--deep);color:#fff;padding:80px 7vw;display:grid;grid-template-columns:1fr .8fr;gap:8vw;align-items:center}.newsletter h2{font-size:clamp(3rem,5vw,5rem)}.newsletter-form{display:flex}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:35px}.contact-grid div{display:flex;flex-direction:column;gap:8px}.contact-grid span{font:600 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#777066}.contact-grid a{font-size:20px}footer{background:var(--ink);color:#eee7da;padding:80px 7vw 30px}.footer-name{font:400 clamp(3.7rem,10vw,10rem)/.9 var(--display);letter-spacing:-.05em;border-bottom:1px solid rgba(255,255,255,.24);padding-bottom:55px}.footer-bottom{
  padding-top:25px;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:30px;
  font:11px var(--sans);
  color:#bdb8ae;
}

.footer-bottom div{
  display:flex;
  gap:22px;
  flex-wrap:wrap;
}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){
  .nav{
    display:none;
    position:absolute;
    top:88px;
    left:0;
    right:0;
    background:var(--paper);
    padding:28px 5vw;
    flex-direction:column;
    border-bottom:1px solid var(--line);
  }

  .nav.open{
    display:flex;
    gap:20px;
  }

  .nav a{
    padding:6px 0;
  }

  .menu-btn{
    display:flex;
    flex-direction:column;
    gap:6px;
  }

  .menu-btn span{
    width:26px;
    height:1px;
    background:var(--ink);
  }

  .hero,
  .featured-book,
  .about,
  .newsletter{
    grid-template-columns:1fr;
  }

  .hero{
    padding-top:70px;
  }

  .hero-art{
    height:500px;
  }

  .book-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .journal-grid{
    grid-template-columns:1fr;
  }

  .post-card{
    border-right:0;
    border-bottom:1px solid var(--line);
  }

  .feature-post{
    grid-template-columns:1fr 1fr;
  }

  .section-heading.split{
    grid-template-columns:1fr;
    gap:15px;
  }

  .portrait-placeholder{
    height:470px;
  }

  .shop-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .contact-grid{
    grid-template-columns:1fr;
    gap:30px;
  }
}@media(max-width:640px){.section-pad{padding:78px 24px}.site-header{padding:0 24px}.brand-sub{display:none}.hero{min-height:auto}.hero h1{font-size:4rem}.hero-art{height:390px}.hero-actions,.button-row{align-items:flex-start;flex-direction:column}.featured-book{display:block}.book-visual{padding:70px 25px}.book-object{width:240px}.book-copy{padding:75px 24px}.book-grid,.shop-grid{grid-template-columns:1fr}.quote-band{padding:80px 24px}.quote-band blockquote{font-size:27px}.feature-post{grid-template-columns:1fr}.section-heading h2,.about h2,.contact h2{font-size:3.2rem}.about{padding:78px 24px}.newsletter{padding:70px 24px}.newsletter-form{
  margin-top:25px;
  width:100%;
}.product-art.compact{
  max-width:300px;
  margin:0 auto;
}

.newsletter-form .btn{
  width:100%;
}.contact-grid a{font-size:17px}.footer-bottom{flex-direction:column}.floating-cart{right:16px;bottom:15px}.post-card{
  padding:28px 0;
  min-height:auto;
}}
/* Order page */

.order-page{
  min-height:70vh;
}

.order-book{
  max-width:900px;
  margin:70px auto 0;
  display:grid;
  grid-template-columns:320px 1fr;
  gap:70px;
  align-items:center;
}

.order-book-cover{
  display:flex;
  justify-content:center;
}

.order-book-cover img{
  width:100%;
  max-width:300px;
  height:auto;
  display:block;
  box-shadow:22px 28px 50px rgba(0,0,0,.18);
}

.order-book-info h2{
  font-size:42px;
  line-height:1.05;
  margin:8px 0 20px;
}

.order-book-info > p{
  max-width:560px;
  line-height:1.7;
}

.order-price{
  font:600 20px var(--sans);
  margin:28px 0;
}

.order-note{
  font:12px var(--sans);
  color:#6f6a61;
  margin-top:18px;
}

.site-footer{
  padding:35px 6vw;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  gap:20px;
  font:12px var(--sans);
}

.site-footer a{
  color:var(--ink);
}

@media(max-width:700px){

  .order-book{
    grid-template-columns:1fr;
    gap:45px;
    margin-top:45px;
  }

  .order-book-cover img{
    max-width:240px;
  }

  .order-book-info h2{
    font-size:34px;
  }

  .site-footer{
    flex-direction:column;
  }

}
/* Payment page */

.payment-page{
  min-height:70vh;
}

.payment-card{
  max-width:900px;
  margin:70px auto 0;
  padding:40px;
  background:#f8f4eb;
  border:1px solid var(--line);
  display:grid;
  grid-template-columns:260px 1fr;
  gap:60px;
  align-items:center;
}

.payment-book{
  display:flex;
  justify-content:center;
}

.payment-book img{
  width:70%;
  max-width:190px;
  height:auto;
  display:block;
  box-shadow:18px 24px 40px rgba(0,0,0,.16);
}

.payment-info h2{
  font-size:38px;
  line-height:1.08;
  margin:8px 0 22px;
}

.payment-info > p{
  max-width:520px;
  line-height:1.7;
}

.payment-price{
  font:600 26px var(--sans);
  margin:28px 0 12px;
}

.payment-price span{
  display:block;
  font:12px var(--sans);
  color:#6f6a61;
  margin-top:5px;
}

.payment-note{
  font:12px var(--sans);
  color:#6f6a61;
  margin-top:18px;
}

.payment-help{
  max-width:900px;
  margin:35px auto 0;
  padding-top:30px;
  border-top:1px solid var(--line);
}

.payment-help h3{
  font-size:22px;
  margin:0 0 10px;
}

.payment-help p{
  max-width:700px;
  line-height:1.7;
}

.payment-help a{
  color:var(--ink);
}

@media(max-width:700px){

  .payment-card{
    grid-template-columns:1fr;
    gap:40px;
    padding:25px;
    margin-top:45px;
  }

  .payment-book img{
    max-width:210px;
  }

  .payment-info h2{
    font-size:32px;
  }

}
/* Legal pages */

.legal-page{
  min-height:70vh;
}

.legal-content{
  max-width:780px;
  margin:60px auto 0;
}

.legal-content h2{
  font-size:28px;
  margin:45px 0 12px;
}

.legal-content h2:first-child{
  margin-top:0;
}

.legal-content p{
  max-width:700px;
  line-height:1.8;
  margin:0 0 20px;
}

.legal-content a{
  color:var(--ink);
}
/* Book detail page */

.book-page-hero{
  min-height:720px;
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:9vw;
  align-items:center;
}

.book-page-cover{
  display:flex;
  justify-content:center;
}

.book-page-cover img{
  width:100%;
  max-width:360px;
  height:auto;
  display:block;
  box-shadow:24px 30px 55px rgba(52,43,28,.18);
}

.book-page-intro h1{
  font:400 clamp(3.5rem,6vw,6.5rem)/.95 var(--display);
  letter-spacing:-.045em;
  margin:0;
}

.book-page-tagline{
  font:italic 25px/1.4 var(--serif);
  margin:30px 0 22px;
}

.book-page-intro > p:not(.eyebrow):not(.book-page-tagline){
  max-width:650px;
  font-size:18px;
  line-height:1.75;
}

.book-page-actions{
  display:flex;
  align-items:center;
  gap:30px;
  margin-top:38px;
}

.book-page-description{
  background:#ddd4c0;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:9vw;
  align-items:start;
}

.book-page-copy{
  max-width:700px;
}

.book-page-copy p{
  font-size:20px;
  line-height:1.8;
  margin:0 0 25px;
}

.book-page-quote{
  background:var(--deep);
  color:#f5eee2;
  padding:110px 12vw;
}

.book-page-quote-inner{
  max-width:900px;
  margin:0 auto;
  text-align:center;
}

.book-page-quote blockquote{
  font:italic 34px/1.45 var(--serif);
  margin:25px auto 0;
}

.book-page-buy{
  background:#f8f4eb;
}

.book-buy-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
  max-width:900px;
}

.book-buy-card{
  min-height:150px;
  padding:30px;
  border:1px solid var(--line);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:.2s;
}

.book-buy-card:hover{
  transform:translateY(-3px);
}

.book-buy-card span{
  font:600 10px var(--sans);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#6e685e;
}

.book-buy-card strong{
  font:400 27px var(--display);
}

.book-buy-card.featured-buy{
  background:var(--ink);
  color:#fff;
  border-color:var(--ink);
}

.book-buy-card.featured-buy span{
  color:#c9c3b8;
}

.book-page-details{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9vw;
  align-items:start;
}

.book-page-details h2{
  font:400 clamp(3rem,5vw,5rem)/1 var(--display);
  letter-spacing:-.035em;
  margin:0;
}

.book-details-list{
  border-top:1px solid var(--line);
}

.book-details-list div{
  display:flex;
  justify-content:space-between;
  gap:30px;
  padding:18px 0;
  border-bottom:1px solid var(--line);
}

.book-details-list span{
  font:600 10px var(--sans);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#777066;
}

.book-details-list strong{
  font:400 16px var(--serif);
}

@media(max-width:980px){

  .book-page-hero{
    grid-template-columns:1fr;
    gap:60px;
    min-height:auto;
  }

  .book-page-cover{
    justify-content:flex-start;
  }

  .book-page-cover img{
    max-width:330px;
  }

  .book-page-description{
    grid-template-columns:1fr;
    gap:35px;
  }

  .book-page-details{
    grid-template-columns:1fr;
    gap:45px;
  }

}

@media(max-width:640px){

  .book-page-hero{
    gap:45px;
  }

  .book-page-cover img{
    max-width:280px;
  }

  .book-page-intro h1{
    font-size:3.6rem;
  }

  .book-page-tagline{
    font-size:21px;
  }

  .book-page-intro > p:not(.eyebrow):not(.book-page-tagline){
    font-size:17px;
  }

  .book-page-actions{
    align-items:flex-start;
    flex-direction:column;
    gap:22px;
  }

  .book-page-copy p{
    font-size:18px;
  }

  .book-page-quote{
    padding:80px 24px;
  }

  .book-page-quote blockquote{
    font-size:27px;
  }

  .book-buy-grid{
    grid-template-columns:1fr;
  }

  .book-buy-card{
    min-height:135px;
  }

  .book-page-details h2{
    font-size:3.2rem;
  }

  .book-details-list div{
    flex-direction:column;
    gap:6px;
  }

}
.book-page-hero{
  position:relative;
}

.book-back-link{
  position:absolute;
  top:45px;
  left:7vw;
  font:500 11px var(--sans);
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#6e685e;
  z-index:2;
}

.book-back-link:hover{
  color:var(--ink);
}
