/* Little Paper Stories · The Archive */
@font-face{font-family:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/dm-serif-display-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"DM Serif Display";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/dm-serif-display-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/eb-garamond-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/eb-garamond-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/eb-garamond-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/eb-garamond-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Pinyon Script";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/pinyon-script-latin-400-normal.woff2) format("woff2")}

:root{
  color-scheme:light;
  --paper:#F4EADB;--paper-deep:#EADAC2;--card:#FBF5EC;--ink:#3B2A24;--ink-soft:#6B574C;
  --burgundy:#6E1A2A;--burgundy-deep:#541220;--blush-soft:#F3DCD5;--sage:#6F7F63;--gold:#A5834A;--line:#D9C4A6;
  --display:"DM Serif Display","Playfair Display",Georgia,serif;
  --body:"EB Garamond",Garamond,"Times New Roman",serif;
  --script:"Pinyon Script","Snell Roundhand",cursive;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:
    radial-gradient(ellipse 40% 30% at 12% 18%,rgba(165,131,74,.10),transparent 70%),
    radial-gradient(ellipse 30% 25% at 88% 62%,rgba(165,131,74,.09),transparent 70%),
    radial-gradient(circle at 70% 8%,rgba(110,26,42,.04),transparent 30%),
    var(--paper);
  color:var(--ink);font-family:var(--body);font-size:19px;line-height:1.55;
  padding-inline:20px;
}
img{max-width:100%;display:block}
[hidden]{display:none!important}
.wrap{max-width:1120px;margin:0 auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--burgundy);outline-offset:3px;border-radius:2px}

.eyebrow{font-weight:500;font-size:.78rem;letter-spacing:.32em;text-transform:uppercase;color:var(--burgundy)}
.flourish{display:flex;align-items:center;gap:10px;color:var(--gold);width:100%}
.flourish::before,.flourish::after{content:"";flex:1;height:1px;background:currentColor}
.flourish svg{width:44px;height:16px;flex:none}

.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:22px;flex-wrap:wrap}
.brand{font-family:var(--script);font-size:2rem;color:var(--burgundy);line-height:1;text-decoration:none}
.topbar nav{display:flex;gap:22px;flex-wrap:wrap;font-size:.95rem}
.topbar nav a{text-decoration:none;color:var(--ink-soft)}
.topbar nav a:hover{color:var(--burgundy)}

.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:32px;padding-block:24px 56px;border-bottom:1px solid var(--line)}
.hero-art{display:grid;place-items:center}
.hero-art img{width:min(440px,100%);height:auto;mix-blend-mode:multiply}
.hero-copy{display:grid;gap:18px;justify-items:stretch}\n.hero-copy .eyebrow,.hero-copy .hero-actions{justify-self:start}
.hero h1{margin:0;font-family:var(--display);font-weight:400;color:var(--burgundy);font-size:clamp(3.4rem,9vw,6.4rem);line-height:.92;letter-spacing:-.01em}
.hero h1 em{font-family:var(--script);font-style:normal;font-size:.62em;display:block;color:var(--burgundy-deep);margin-bottom:.1em;letter-spacing:0}
.hero p{margin:0;font-size:1.12rem;color:var(--ink-soft)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}

.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--body);font-size:1rem;font-weight:600;padding:11px 20px;border-radius:999px;text-decoration:none;border:1px solid var(--burgundy);cursor:pointer;transition:background .2s,color .2s}
.btn-solid{background:var(--burgundy);color:var(--card)}
.btn-solid:hover{background:var(--burgundy-deep)}
.btn-ghost{background:transparent;color:var(--burgundy)}
.btn-ghost:hover{background:var(--blush-soft)}

.catalogue-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;padding-block:48px 0}
.catalogue-head h2{margin:6px 0 0;font-family:var(--display);font-weight:400;font-size:clamp(2rem,4.4vw,2.8rem);color:var(--ink);line-height:1.05}
.count{font-style:italic;color:var(--ink-soft);font-size:1rem}
.tabs{display:flex;gap:6px;margin-top:22px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.tab{font-family:var(--body);font-size:1rem;font-weight:500;color:var(--ink-soft);background:var(--paper-deep);border:1px solid var(--line);border-bottom:none;padding:9px 20px 8px;border-radius:12px 12px 0 0;cursor:pointer;position:relative;top:1px}
.tab[aria-selected="true"]{background:var(--card);color:var(--burgundy);font-weight:600}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px;padding-block:32px 16px}
.kit{background:var(--card);border:1px solid var(--line);border-radius:6px;display:grid;grid-template-rows:auto 1fr;overflow:hidden;box-shadow:0 1px 0 rgba(59,42,36,.04),0 10px 24px -18px rgba(59,42,36,.45)}
.cover{position:relative;aspect-ratio:1/1;max-width:100%;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 55%,var(--blush-soft),var(--paper-deep) 75%)}
.cover img{width:74%;height:auto;mix-blend-mode:multiply}
.cover.photo img{width:100%;height:100%;object-fit:cover;object-position:center;mix-blend-mode:normal}
.badge{position:absolute;top:14px;left:14px;z-index:1;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;padding:5px 11px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--sage)}
.badge.premium{color:var(--card);background:var(--burgundy);border-color:var(--burgundy)}
.accession{position:absolute;top:14px;right:16px;z-index:1;font-family:var(--display);font-style:italic;color:var(--burgundy);font-size:1.05rem}
.cover.photo .accession{background:var(--card);padding:2px 10px;border-radius:999px;border:1px solid var(--line)}
.kit-body{padding:20px 22px 22px;display:grid;gap:10px;align-content:start}
.kit-body h3{margin:0;font-family:var(--display);font-weight:400;font-size:1.65rem;line-height:1.1;color:var(--ink)}
.kit-meta{font-size:.9rem;color:var(--ink-soft);font-style:italic}
.kit-body p{margin:0;font-size:1.02rem}
.contents{list-style:none;margin:4px 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.contents li{font-size:.82rem;padding:3px 10px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);background:var(--paper)}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.empty{padding:40px 0;text-align:center;color:var(--ink-soft);font-style:italic}

.member{margin-block:56px 40px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:32px}
.member img{width:min(280px,100%);height:auto;justify-self:center;mix-blend-mode:multiply}
.member h2{margin:6px 0 10px;font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,3.6vw,2.4rem);color:var(--burgundy);line-height:1.1}
.member > div > p{margin:0}
.member{row-gap:32px}
.tiers{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tier{display:flex;flex-direction:column;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:28px}
.tier-premium{background:var(--card);border-color:var(--burgundy);box-shadow:0 14px 30px -22px rgba(110,26,42,.55)}
.tier-name{margin:0;font-family:var(--display);font-size:1.6rem;line-height:1.1;color:var(--ink)}
.price{margin:0;color:var(--ink-soft);font-size:1rem}
.price span{font-family:var(--display);font-size:2.4rem;line-height:1;color:var(--burgundy);margin-right:4px}
.price-note{margin:-4px 0 0;font-style:italic;font-size:.92rem;color:var(--ink-soft)}
.tier ul{margin:4px 0 8px;padding-left:1.1em;font-size:1rem;color:var(--ink);flex:1}
.tier li{margin-bottom:6px}
.tier .btn{align-self:flex-start}

footer{border-top:1px solid var(--line);padding-block:24px 36px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.92rem;color:var(--ink-soft)}
footer .brand{font-size:1.6rem}

@media (max-width:760px){
  body{font-size:18px}
  .hero{grid-template-columns:1fr;padding-block:8px 40px}
  .hero-art img{width:min(320px,80%)}
  .member{grid-template-columns:1fr;padding:24px}
  .tiers{grid-template-columns:1fr}
  .grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:no-preference){
  .kit{transition:transform .25s ease,box-shadow .25s ease}
  .kit:hover{transform:translateY(-3px);box-shadow:0 1px 0 rgba(59,42,36,.04),0 18px 30px -20px rgba(59,42,36,.55)}
}

/* ---------- Landing page ---------- */
.home-hero h1{font-size:clamp(3rem,7.4vw,5.6rem)}
.section-title{margin:6px 0 0;font-family:var(--display);font-weight:400;font-size:clamp(2rem,4.4vw,2.8rem);color:var(--ink);line-height:1.08;text-wrap:balance}
.footer-links{display:flex;gap:20px;flex-wrap:wrap}
.footer-links a{text-decoration:none}
.footer-links a:hover{color:var(--burgundy)}

.gift{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center;padding-block:64px;border-bottom:1px solid var(--line)}
.gift-copy{display:grid;gap:16px;justify-items:start}
.gift-copy p{margin:0;color:var(--ink-soft)}
.gift-cover{border:1px solid var(--line);border-radius:6px;transform:rotate(1.5deg);box-shadow:0 18px 36px -26px rgba(59,42,36,.6)}

.inside{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;padding-block:64px;border-bottom:1px solid var(--line)}
.inside-intro{display:grid;gap:8px;align-content:start}
.inside-intro img{width:min(240px,70%);height:auto;margin-top:24px;mix-blend-mode:multiply}
.inside-list{list-style:none;margin:0;padding:0}
.inside-list li{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:20px;padding-block:22px;border-top:1px solid var(--line)}
.inside-list li:last-child{border-bottom:1px solid var(--line)}
.inside-list strong{font-family:var(--display);font-weight:400;font-size:1.45rem;line-height:1.15;color:var(--burgundy)}
.inside-list span{color:var(--ink-soft)}

.latest{padding-block:16px 0}
.latest .catalogue-head{align-items:center}

.about{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:center;padding:64px 33px 8px}
.about > img{width:min(360px,100%);height:auto;justify-self:center;mix-blend-mode:multiply}
.about-copy{display:grid;gap:14px}
.about-copy p{margin:0;color:var(--ink-soft)}
.about-copy .signature{font-family:var(--script);font-size:2.4rem;line-height:1;color:var(--burgundy)}

.cta-band{margin-block:0 48px;padding:56px 28px;border-radius:6px;text-align:center;display:grid;justify-items:center;gap:14px;color:#FBF5EC;background:radial-gradient(ellipse at 50% 40%,#7A2233,#4E1019)}
.cta-band .script{margin:0;font-family:var(--script);font-size:2.6rem;line-height:1;color:#E7B8AE}
.cta-band h2{margin:0;font-family:var(--display);font-weight:400;font-size:clamp(2rem,4.5vw,3rem);line-height:1.1;color:#FBF5EC;max-width:22ch;text-wrap:balance}
.btn-light{background:#FBF5EC;color:var(--burgundy);border-color:#FBF5EC;margin-top:8px}
.btn-light:hover{background:#F3DCD5}

@media (max-width:760px){
  .gift,.inside,.about{grid-template-columns:1fr;gap:28px;padding-block:44px}
  .gift-cover{transform:none}
  .inside-list li{grid-template-columns:1fr;gap:4px}
  .inside-intro img{display:none}
  .about{padding-inline:0}
  .about > img{width:min(240px,70%)}
}

/* Hero text and divider match the title's width */
.hero-copy p,.hero-copy .flourish{max-width:var(--title-w,100%)}
@media (min-width:761px){
  .hero-copy{max-width:var(--title-w,100%);justify-self:center}
}
/* Home membership: text left, image right */
.member-flip{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.member-flip > img{order:2}
.member-flip > .tiers{order:3}
@media (max-width:760px){
  .member-flip{grid-template-columns:1fr}
  .member-flip > img{order:0}
}

/* ---------- Mobile polish ---------- */
@media (max-width:760px){
  body{padding-inline:18px}
  .topbar{justify-content:center;text-align:center;gap:8px;padding-block:18px 8px}
  .topbar nav{justify-content:center;gap:16px;font-size:.9rem}
  .eyebrow{letter-spacing:.2em;font-size:.72rem}
  .hero{gap:20px;text-align:center}
  .hero-art img{width:min(280px,72%)}
  .hero-copy{justify-items:center;gap:14px}
  .hero-copy .eyebrow,.hero-copy .hero-actions{justify-self:center}
  .hero-copy p,.hero-copy .flourish{max-width:none}
  .hero h1{font-size:clamp(2.6rem,12vw,3.4rem)}
  .hero p{font-size:1.05rem}
  .hero-actions{justify-content:center}
  .flourish{width:min(300px,100%)}
  .section-title{font-size:clamp(1.8rem,8vw,2.2rem)}
  .catalogue-head{padding-block:36px 0}
  .latest .catalogue-head{align-items:flex-start}
  .gift-copy .btn,.member .tier .btn{align-self:stretch;justify-content:center}
  .member{margin-block:40px 32px}
  .member > img{width:min(200px,60%)}
  .tier{padding:22px}
  .cta-band{padding:44px 20px}
  .cta-band .script{font-size:2.1rem}
  footer{flex-direction:column;align-items:center;text-align:center}
}
@media (max-width:760px){
  .inside{border-bottom:none;padding-bottom:12px}
  .about{padding-top:32px}
}

/* Top bar: Join button (1.3.2) */
.topbar nav{align-items:center}
.topbar nav a.nav-join{background:var(--burgundy);color:var(--card);font-weight:600;padding:9px 20px;border-radius:999px;margin-left:6px;box-shadow:0 2px 8px rgba(110,26,42,.18);transition:background .2s,box-shadow .2s}
.topbar nav a.nav-join:hover,.topbar nav a.nav-join:focus-visible{background:var(--burgundy-deep);color:var(--card);box-shadow:0 3px 12px rgba(110,26,42,.28)}
@media (max-width:760px){.topbar nav a.nav-join{margin-left:0}}

/* Kit preview slider (1.3.3) */
.cover .slider{position:absolute;inset:0}
.cover .slides{display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.cover .slides::-webkit-scrollbar{display:none}
.cover .slides:focus-visible{outline:2px solid var(--burgundy);outline-offset:-4px}
.cover.photo .slides img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;scroll-snap-align:start;scroll-snap-stop:always}
.slide-btn{position:absolute;top:50%;z-index:2;transform:translateY(-50%);width:38px;height:38px;padding:0;border-radius:50%;border:1px solid var(--line);background:rgba(251,245,236,.92);color:var(--burgundy);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(59,42,36,.18);transition:background .2s}
.slide-btn:hover,.slide-btn:focus-visible{background:var(--card)}
.slide-btn.prev{left:10px}
.slide-btn.next{right:10px}
.slide-count{position:absolute;right:12px;bottom:12px;z-index:2;font-size:.8rem;padding:3px 10px;border-radius:999px;background:rgba(251,245,236,.92);border:1px solid var(--line);color:var(--ink-soft);pointer-events:none}
@media (max-width:760px){.slide-btn{width:34px;height:34px}}

/* Blog (1.3.4) */
.post{max-width:760px;margin:0 auto;padding-block:24px 40px}
.post-head,.blog-head{display:grid;gap:14px;justify-items:center;text-align:center;padding-block:16px 32px}
.blog-head{border-bottom:1px solid var(--line);padding-bottom:40px}
.post-head h1,.blog-head h1{margin:0;font-family:var(--display);font-weight:400;color:var(--burgundy);font-size:clamp(2.4rem,6vw,3.8rem);line-height:1.05;text-wrap:balance}
.post-head .flourish,.blog-head .flourish{width:min(320px,100%)}
.post-meta{margin:0;color:var(--ink-soft);font-size:.95rem;font-style:italic}
.blog-head p{margin:0;max-width:52ch;color:var(--ink-soft)}
.post-body>*{margin:0 0 1.1em}
.post-body h2{font-family:var(--display);font-weight:400;font-size:clamp(1.7rem,3.6vw,2.2rem);color:var(--ink);line-height:1.15;margin:1.6em 0 .5em;text-wrap:balance}
.post-body strong{color:var(--burgundy-deep);font-weight:600}
.post-body a{color:var(--burgundy)}
.post-body figure{margin:.4em 0 1.3em}
.post-body img{width:100%;height:auto;display:block;border-radius:6px;border:1px solid var(--line);box-shadow:0 14px 30px -24px rgba(59,42,36,.6)}
.post-body ul{padding-left:1.2em;display:grid;gap:.35em}
.post-body li::marker{color:var(--gold)}
.post-body .wp-block-buttons{display:flex;justify-content:center;margin-top:1.4em}
.post-body .wp-block-button__link{display:inline-flex;align-items:center;font-family:var(--body);font-size:1rem;font-weight:600;padding:11px 22px;border-radius:999px;text-decoration:none;border:1px solid var(--burgundy);background:var(--burgundy);color:var(--card);transition:background .2s}
.post-body .wp-block-button__link:hover{background:var(--burgundy-deep);color:var(--card)}
.post-more{display:flex;justify-content:center;padding-top:28px;margin-top:12px;border-top:1px solid var(--line)}
.post-card{background:var(--card);border:1px solid var(--line);border-radius:6px;overflow:hidden;box-shadow:0 1px 0 rgba(59,42,36,.04),0 10px 24px -18px rgba(59,42,36,.45)}
.post-card a{display:grid;grid-template-rows:auto 1fr;height:100%;text-decoration:none;color:inherit}
.post-card img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.post-card-body{padding:20px 22px 22px;display:grid;gap:8px;align-content:start}
.post-card h3{margin:0;font-family:var(--display);font-weight:400;font-size:1.55rem;line-height:1.12;color:var(--ink)}
.post-card p{margin:0;font-size:1rem;color:var(--ink-soft)}
.read-more{font-weight:600;color:var(--burgundy);font-size:.95rem;margin-top:4px}
.post-card a:hover .read-more,.post-card a:focus-visible .read-more{text-decoration:underline}
.blog-empty{text-align:center;color:var(--ink-soft);padding-block:32px 8px;margin:0}
.blog-grid{padding-block:40px 48px}
@media (prefers-reduced-motion:no-preference){.post-card{transition:transform .25s ease,box-shadow .25s ease}.post-card:hover{transform:translateY(-3px)}}
@media (max-width:760px){.post{padding-block:8px 32px}.post-head,.blog-head{padding-block:8px 24px}.post-body h2{margin-top:1.2em}}