@font-face{font-family:Quicksand;src:url('assets/fonts/quicksand-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Quicksand;src:url('assets/fonts/quicksand-medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Quicksand;src:url('assets/fonts/quicksand-semibold.ttf') format('truetype');font-weight:600 800;font-display:swap}
@font-face{font-family:'Playfair Display';src:url('assets/fonts/playfair-display-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
:root{--cream:#f4e4d1;--hero-cream:#f4e4ca;--paper:#fbf7ed;--ink:#3e382c;--soft-ink:#665d4d;--sage:#626b4e;--tan:#d1b98f;--tan-hover:#c8ae82;--line:#d5c9b2;--max:1280px}
*{box-sizing:border-box}
html{margin:0;padding:0;scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:'Quicksand',sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid var(--sage);outline-offset:6px}
a:hover{text-decoration:underline;text-underline-offset:5px}
.wrap{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.skip-link{position:fixed;top:-100px;left:16px;z-index:10;padding:10px 20px;background:var(--ink);color:white}
.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:100;background:transparent;border-bottom:1px solid transparent;transition:background-color 280ms ease,border-color 280ms ease,backdrop-filter 280ms ease,-webkit-backdrop-filter 280ms ease}
.site-header.is-scrolled{background:rgba(244,228,202,.8);border-bottom-color:rgba(62,56,44,.06);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:57px}
.brand{display:block;width:120px;flex-shrink:0}
.brand img{width:100%}
nav{display:flex;gap:22px;align-items:center;font-size:.875rem}
nav a{padding-block:12px}
nav a span{margin-left:5px}
.hero{background:var(--hero-cream);position:relative;isolation:isolate;margin-top:-58px;padding-top:58px;min-height:100svh;overflow:hidden}
.hero-inner{position:relative;z-index:1;min-height:calc(100svh - 58px)}
.hero-copy{position:relative;z-index:1;text-align:center;padding:36px 20px 0;margin:0 auto;max-width:850px}
.eyebrow{font-size:.8125rem;letter-spacing:.15em;text-transform:uppercase;font-weight:600;margin:0 0 20px}
h1,h2{font-weight:600;letter-spacing:-.04em;margin:0;line-height:1.14}
h1{font-size:clamp(2.5rem,6vw,4.1rem);margin-inline:auto;max-width:800px}
h1 span{font-family:'Quicksand',sans-serif;font-style:normal;font-weight:700;letter-spacing:-.04em}
.hero-description{color:var(--soft-ink);max-width:620px;margin:24px auto;font-size:1rem;line-height:1.8}
.button{display:inline-flex;gap:26px;align-items:center;border-radius:999px;background:var(--tan);color:var(--ink);padding:12px 25px;min-height:48px;font-size:.875rem;font-weight:600;transition:background .2s}
.button:hover{background:var(--tan-hover);text-decoration:none}
.world{margin:0;position:absolute;inset:0;z-index:0;overflow:hidden}
.world-scene{position:absolute;inset:0;overflow:hidden}
.world-scene::after{content:"";position:absolute;inset:0;background:rgba(244,228,202,.1);pointer-events:none;z-index:2}
.landscape{--scenery-scale:1.025;--scenery-y:0px;position:absolute;inset:0;width:100%;max-width:none;height:100%;object-fit:cover;object-position:center bottom;transform:scale(var(--scenery-scale));transform-origin:center bottom;animation:scenery-breeze 18s ease-in-out infinite alternate}
.coming-soon{padding:64px 0 74px}
.coming-grid{display:grid;gap:45px;align-items:center}
.book-preview{margin:0}
.book-stage{position:relative;aspect-ratio:1.12;background:#e7dac0;overflow:hidden;border-radius:3px}
.feature-image{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;object-position:center}
h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.25rem,3.6vw,3.2rem);font-weight:500;letter-spacing:-.025em}
.coming-copy{max-width:510px;color:var(--soft-ink);font-size:1.0625rem}
.coming-copy .eyebrow{color:var(--sage)}
.coming-copy h2{color:var(--ink)}
.coming-copy p{margin:20px 0}
.coming-copy p.eyebrow{margin:0 0 20px}
.tag{display:inline-block;margin-top:24px;padding:4px 13px;border:1px solid #a5b29d;border-radius:24px;color:var(--sage);font-size:.8125rem}
cite{font-style:italic;color:var(--ink)}
.text-link{display:inline-flex;gap:18px;align-items:center;color:var(--ink);text-decoration:underline;text-underline-offset:6px;min-height:44px;font-size:.9375rem;margin-top:8px}
.our-story{background:#F7F2E8;padding:88px 0}
.story-grid{display:grid;gap:36px}
.story-text{max-width:610px}
.story-heading{max-width:520px}
.story-heading h2{font-size:clamp(2.75rem,6vw,4.75rem);color:var(--ink)}
.story-image{width:100%;max-width:none;margin:36px 0 0}
.story-image img{width:100%;aspect-ratio:900/1068;object-fit:cover}
.story-copy{max-width:610px;color:var(--soft-ink);font-size:1rem;line-height:1.68}
.story-text .story-copy{margin-top:34px}
.story-copy p{margin:0}
.story-copy p:first-child{font-size:1.125rem;line-height:1.65;font-weight:500;color:var(--ink)}
.story-copy p+p{margin-top:26px}
.site-footer{background:#DFDCD5;padding-top:44px}
.footer-top{display:flex;flex-wrap:wrap;gap:36px;justify-content:space-between;padding-bottom:40px}
.footer-brand{width:168px}
.footer-brand img{mix-blend-mode:normal}
.footer-top p:not(.eyebrow){font-size:.9375rem;color:var(--soft-ink);line-height:1.65;margin:16px 0 0}
.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.footer-contact .eyebrow{margin:0 0 9px}
.footer-contact a{padding:6px 0;font-size:.9375rem;overflow-wrap:anywhere}
.footer-contact a span{margin-left:12px}
.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;padding:22px 0;font-size:.8125rem;color:var(--soft-ink)}
.footer-bottom small{font-size:inherit}
@keyframes scenery-breeze{from{transform:scale(var(--scenery-scale)) translate3d(-3px,var(--scenery-y),0) rotate(-.12deg)}to{transform:scale(var(--scenery-scale)) translate3d(3px,var(--scenery-y),0) rotate(.12deg)}}
@media(min-width:600px){.wrap{width:min(var(--max),calc(100% - 72px))}.hero-copy{padding-top:48px}.coming-soon{padding-block:90px}}
@media(min-width:1000px){.wrap{width:min(var(--max),calc(100% - 104px))}.header-inner{min-height:63px}.brand{width:134px}nav{font-size:.8125rem;letter-spacing:.07em;text-transform:uppercase;gap:38px}.hero{margin-top:-64px;padding-top:64px}.hero-inner{min-height:calc(100svh - 64px)}.hero-copy{padding:35px 24px 0}.hero-description{max-width:650px}.landscape{--scenery-scale:1.04}.coming-grid{grid-template-columns:1fr 1fr;gap:90px}.coming-copy{justify-self:end}.coming-soon{padding-block:110px}.story-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px;align-items:start}.story-text{max-width:590px}.story-text .story-copy{margin-top:34px}.story-image{width:100%;max-width:none;justify-self:end;margin:0}.our-story{padding:136px 0}.footer-brand{width:180px}.footer-contact{min-width:290px}.site-footer{padding-top:52px}}
@media(max-width:767px){.hero-copy{padding-top:64px}.hero-description{display:none}.hero-copy .button{margin-top:24px}.landscape{--scenery-scale:1.07;--scenery-y:22px}}
@media(max-width:599px){
  .hero-description,.coming-copy,.story-copy{font-size:1rem;line-height:1.6}
  .story-copy p:first-child{font-size:1rem;line-height:1.6}
  nav a{display:inline-flex;align-items:center;min-height:44px;padding-block:10px}
  .footer-top{display:grid;grid-template-columns:1fr;gap:28px;padding-bottom:32px}
  .footer-contact a{display:inline-flex;align-items:center;min-height:44px;padding-block:9px}
  .footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding-block:20px 24px}
  .footer-bottom small{grid-column:1/-1;min-height:24px;display:flex;align-items:center}
  .footer-bottom span{grid-column:1;grid-row:2;display:flex;align-items:center;min-height:32px}
  .footer-bottom a{grid-column:2;grid-row:2;justify-self:end;display:inline-flex;align-items:center;min-height:44px}
}
@media(max-width:380px){.header-inner{gap:8px}nav{gap:14px;font-size:.8125rem}nav a{white-space:nowrap}.brand{width:112px}.eyebrow{font-size:.75rem;letter-spacing:.08em}.hero-copy{padding-top:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
