:root { --cream:#f3e8d2; --paper:#fffaf0; --forest:#274536; --moss:#5f7848; --gold:#d7ad55; --ink:#2b2b28; --line:#d8c9aa; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; max-width:100vw; overflow-x:hidden; background:var(--paper); color:var(--ink); font:17px/1.65 Georgia,serif; }
img { max-width:100%; height:auto; display:block; }
a:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.skip-link { position:fixed; top:8px; left:8px; z-index:20; padding:10px 14px; background:var(--forest); color:#fff; transform:translateY(-160%); }
.skip-link:focus { transform:none; }
.site-header { min-height:82px; padding:12px clamp(20px,6vw,90px); display:flex; align-items:center; justify-content:space-between; gap:28px; background:rgba(255,250,240,.96); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:5; }
.brand { flex:0 0 auto; }
.brand img, footer img { width:170px; }
.site-header nav { display:flex; align-items:center; justify-content:flex-end; gap:clamp(14px,2.4vw,28px); flex-wrap:wrap; }
.site-header a { color:var(--forest); text-decoration:none; font:600 15px/1.2 Arial,sans-serif; }
.site-header nav>a:not(.language) { padding:11px 4px; }
.site-header nav a:hover { text-decoration:underline; text-underline-offset:5px; }
.site-header .language { padding:7px 9px; border:1px solid var(--moss); border-radius:999px; }
.hero { min-height:670px; padding:80px clamp(24px,8vw,130px); display:grid; grid-template-columns:1.2fr .8fr; align-items:center; gap:60px; background:radial-gradient(circle at 75% 30%,#fff9e9 0,transparent 35%),linear-gradient(145deg,var(--cream),#fbf4e5); }
.hero-copy { max-width:800px; }
.hero h1 { margin:.15em 0 .35em; color:var(--forest); font-size:clamp(48px,6vw,84px); line-height:1.02; letter-spacing:-.035em; }
.hero-copy>p:not(.eyebrow) { max-width:650px; font-size:20px; }
.hero-art { justify-self:center; display:grid; place-items:center; width:min(100%,340px); aspect-ratio:4/5; padding:30px; border:1px solid var(--line); border-radius:50% 48% 52% 46%; background:#fff9e9; box-shadow:0 24px 70px rgba(39,69,54,.12); }
.hero-art img { width:min(100%,254px); margin:auto; }
.eyebrow, .edition { margin:0; color:var(--moss); font:700 13px/1.2 Arial,sans-serif; letter-spacing:.16em; text-transform:uppercase; }
.button, .unavailable, .secondary-link { display:inline-block; margin-top:18px; padding:14px 22px; border-radius:999px; font:700 14px/1.2 Arial,sans-serif; }
.button { background:var(--forest); color:#fff; text-decoration:none; }
.button:hover { background:#1d362a; }
.nature, .coming-soon, .about, .product-lines, .social { padding:88px clamp(24px,12vw,190px); text-align:center; }
.nature h2, .coming-soon h2, .about h2, .product-lines>h2, .section-heading h2, .social h2 { margin:.25em 0; color:var(--forest); font-size:clamp(34px,4vw,56px); line-height:1.1; }
.nature p:last-child, .coming-soon p:last-child, .about p { max-width:800px; margin:20px auto; }
.books { padding:70px clamp(24px,8vw,130px) 100px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px; background:var(--cream); }
.section-heading { grid-column:1/-1; max-width:820px; margin:0 auto 18px; text-align:center; }
.books>* { min-width:0; }
.section-heading>p:last-child { margin:16px auto 0; }
.book-card { display:grid; grid-template-columns:minmax(160px,42%) 1fr; gap:30px; align-items:center; padding:28px; background:var(--paper); border:1px solid var(--line); border-radius:22px; box-shadow:0 16px 45px rgba(39,69,54,.08); }
.book-card>img { box-shadow:0 10px 24px rgba(43,43,40,.18); }
.book-card h3 { margin:.35em 0; color:var(--forest); font-size:32px; line-height:1.05; }
.book-details { grid-column:1/-1; display:grid; grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr); gap:40px; align-items:center; margin-top:16px; padding:34px; border-radius:22px; background:#fffdf7; border:1px solid var(--line); }
.book-details h3 { margin:.35em 0; color:var(--forest); font-size:30px; line-height:1.15; }
.book-details ul { padding-left:1.2em; }
.preview-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.preview-grid img { width:100%; border-radius:14px; box-shadow:0 8px 22px rgba(43,43,40,.14); }
.unavailable { background:#e6dfd0; color:#4e514b; }
.secondary-link { border:2px solid var(--forest); color:var(--forest); text-decoration:none; }
.secondary-link:hover { background:var(--forest); color:#fff; }
.product-lines { background:#fffdf7; }
.line-grid, .social-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; max-width:1100px; margin:42px auto 0; text-align:left; }
.line-card { display:flex; flex-direction:column; padding:34px; border:1px solid var(--line); border-radius:22px; background:var(--paper); box-shadow:0 12px 35px rgba(39,69,54,.07); }
.line-card .secondary-link, .line-card .unavailable { align-self:flex-start; margin-top:auto; }
.line-card h3, .social-grid h3 { margin:.4em 0; color:var(--forest); font-size:28px; line-height:1.15; }
.coming-soon { background:var(--forest); color:#f8f0df; }
.coming-soon h2, .coming-soon .eyebrow { color:#fff2c4; }
.coming-soon>p:last-child { max-width:760px; margin:18px auto 0; }
.status-pill { display:inline-block; margin:22px 0 6px; padding:8px 13px; border:1px solid rgba(255,242,196,.45); border-radius:999px; color:#fff2c4; font:700 12px/1 Arial,sans-serif; letter-spacing:.12em; text-transform:uppercase; }
.social { background:#fffdf7; }
.social>p:not(.eyebrow) { max-width:760px; margin:18px auto; }
.social-grid article, .social-card { padding:28px; border:1px solid var(--line); border-radius:18px; background:var(--paper); }
.social-card { color:var(--ink); text-decoration:none; transition:transform .18s ease,box-shadow .18s ease; }
.social-card:hover { transform:translateY(-2px); box-shadow:0 12px 30px rgba(39,69,54,.1); }
.social-icon { width:30px; height:30px; fill:none; stroke:var(--forest); stroke-width:1.8; }
.about { background:#fffaf0; }
footer { padding:50px 24px; text-align:center; background:#e8dcc5; color:var(--forest); }
footer img { margin:0 auto 16px; }
footer p { margin:0 0 14px; }
.footer-language, .footer-links a { color:var(--forest); font:700 14px/1.2 Arial,sans-serif; text-underline-offset:4px; }
.footer-links { display:flex; justify-content:center; flex-wrap:wrap; gap:10px 22px; }
.legal-slots { display:flex; justify-content:center; flex-wrap:wrap; gap:10px 24px; margin:0 0 16px; font:600 13px/1.4 Arial,sans-serif; color:#5e665f; }
.legal-slots a { color:var(--forest); text-underline-offset:4px; }
.legal-shell { width:min(820px,calc(100% - 48px)); min-height:62vh; margin:0 auto; padding:88px 0 110px; }
.legal-shell h1 { margin:.2em 0 .6em; color:var(--forest); font-size:clamp(42px,6vw,68px); line-height:1.05; }
.legal-shell h2 { margin:2em 0 .55em; color:var(--forest); font-size:28px; line-height:1.2; }
.legal-shell h1, .legal-shell h2 { overflow-wrap:anywhere; }
.legal-shell h3 { margin:1.7em 0 .4em; color:var(--forest); font-size:21px; line-height:1.25; }
.legal-shell address { font-style:normal; }
.legal-shell a { overflow-wrap:anywhere; color:var(--forest); text-underline-offset:3px; }
.legal-note { padding:18px 20px; border-left:4px solid var(--gold); background:#fff7df; }
.human-input { margin:34px 0; padding:24px 26px; border:2px solid var(--gold); border-radius:18px; background:#fff7df; }
.human-input strong { color:var(--forest); font:800 13px/1.2 Arial,sans-serif; letter-spacing:.1em; }
.human-input p { margin:10px 0 0; }
@media(max-width:820px) {
  .site-header { align-items:flex-start; }
  .site-header nav { max-width:330px; }
  .hero { grid-template-columns:1fr; text-align:center; padding-top:55px; }
  .hero-copy>p:not(.eyebrow) { margin-left:auto; margin-right:auto; }
  .hero-art { width:min(100%,260px); padding:24px; }
  .books { grid-template-columns:1fr; }
  .line-grid, .social-grid { grid-template-columns:1fr; }
  .book-card { grid-template-columns:150px 1fr; }
  .book-details { grid-template-columns:1fr; }
}
@media(max-width:560px) {
  .site-header { position:static; display:block; width:100%; padding-left:12px; padding-right:12px; text-align:center; }
  .brand img { margin:0 auto; }
  .site-header nav { width:100%; justify-content:center; max-width:none; margin-top:12px; gap:10px 12px; }
  .site-header a { font-size:14px; }
  .hero { min-height:auto; width:100%; padding-left:20px; padding-right:20px; overflow:hidden; }
  .hero-copy { min-width:0; width:100%; }
  .hero h1 { font-size:32px; overflow-wrap:anywhere; }
  .hero-copy p { overflow-wrap:anywhere; }
  .book-card { grid-template-columns:1fr; text-align:center; }
  .book-card>img { width:190px; margin:auto; }
  .book-details { padding:24px; text-align:left; }
  .preview-grid { gap:8px; }
  .legal-shell { width:min(100% - 40px,820px); padding:60px 0 80px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
