/*
Theme Name: A to Z Stories
Theme URI: https://example.invalid/
Author: A to Z Stories
Description: A fast, accessible editorial theme for books, stories, and YouTube-connected content.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: atoz-stories
*/

:root {
  --ink: #101c36;
  --muted: #5f6570;
  --paper: #fffaf0;
  --cream: #f4ead4;
  --leaf: #b37a2e;
  --leaf-dark: #8f5e20;
  --coral: #c48a3b;
  --sun: #e2b552;
  --line: #ded1b9;
  --white: #fff;
  --shadow: 0 18px 48px rgba(24,48,45,.10);
  --radius: 1.1rem;
  --step--1: clamp(.82rem,.8rem + .1vw,.9rem);
  --step-0: clamp(1rem,.96rem + .18vw,1.12rem);
  --step-1: clamp(1.25rem,1.12rem + .6vw,1.65rem);
  --step-2: clamp(1.65rem,1.38rem + 1.2vw,2.45rem);
  --step-3: clamp(2.25rem,1.7rem + 2.4vw,4.1rem);
  --space: clamp(1rem,2vw,1.5rem);
  --wide: 76rem;
  --text: 46rem;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font: 400 var(--step-0)/1.65 system-ui,-apple-system,"Segoe UI",sans-serif; }
img { max-width: 100%; height: auto; }
a { color: var(--leaf); text-underline-offset: .18em; }
a:hover { color: var(--coral); }
:focus-visible { outline: 3px solid var(--sun); outline-offset: 4px; }
.container { width: min(calc(100% - 2rem),var(--wide)); margin-inline: auto; }
.reading-width { width: min(calc(100% - 2rem),var(--text)); margin-inline: auto; }
.site-main { min-height: 60vh; }
.skip-link { position: fixed; left: 1rem; top: -10rem; z-index: 1000; padding: .75rem 1rem; background: var(--ink); color: var(--white); }
.skip-link:focus { top: 1rem; }
.site-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid rgba(220,216,204,.75); background: rgba(255,253,248,.94); backdrop-filter: blur(12px); }
.header-inner { min-height: 4.75rem; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; }
.brand { display: inline-flex; align-items: center; gap: .7rem; color: var(--ink); font-weight: 800; text-decoration: none; letter-spacing: -.02em; }
.brand-mark { display: grid; place-items: center; width: 2.35rem; aspect-ratio: 1; border-radius: 50% 50% 45% 55%; color: var(--white); background: var(--leaf); font: 800 .88rem/1 Georgia,serif; transform: rotate(-3deg); }
.menu-toggle { display:none; min-height:44px; align-items:center; justify-content:center; gap:.55rem; padding:.62rem .9rem; border:2px solid #e2b552; border-radius:999px; color:#101c36; background:linear-gradient(145deg,#f6d47f,#d49b36); font:800 .88rem/1 system-ui,-apple-system,"Segoe UI",sans-serif; letter-spacing:.01em; box-shadow:0 7px 16px rgba(0,0,0,.2); cursor:pointer; transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease; }.menu-toggle-icon { display:inline-grid; width:1.15rem; place-items:center; font-size:1.25rem; line-height:1; }.menu-toggle:hover { background:#f7d77f; box-shadow:0 9px 20px rgba(0,0,0,.25); transform:translateY(-1px); }.menu-toggle[aria-expanded="true"] { color:#f8e6b1; background:#20365a; border-color:#f0cc70; }
.primary-nav ul { display: flex; align-items: center; gap: 1.4rem; margin: 0; padding: 0; list-style: none; }
.primary-nav a { color: var(--ink); font-weight: 650; font-size: var(--step--1); text-decoration: none; }
.primary-nav a:hover,.primary-nav .current-menu-item>a { color: var(--coral); }
.hero { position:relative; overflow:hidden; isolation:isolate; padding:clamp(4rem,10vw,8rem) 0; color:var(--cream); background:radial-gradient(circle at 86% 20%,rgba(226,181,82,.24),transparent 22rem),radial-gradient(circle at 12% 28%,rgba(80,112,166,.2),transparent 24rem),linear-gradient(135deg,#07142d,#172747 68%,#211b30); }
.hero:before,.hero:after { position:absolute; pointer-events:none; }
.hero:before { content:"\2605    \00B7    \2726       \2605        \00B7   \2727"; z-index:0; top:clamp(.8rem,2vw,1.4rem); left:5%; width:44%; color:#f0c75f; font-size:clamp(.7rem,1.45vw,1.35rem); letter-spacing:clamp(.65rem,1.6vw,1.7rem); text-shadow:0 0 10px rgba(240,199,95,.52),30rem .8rem 0 rgba(255,239,185,.28); opacity:.92; }
.hero:after { content:"\263E"; z-index:0; right:clamp(7rem,11vw,11rem); top:clamp(-2.75rem,-3vw,-1.25rem); color:#e7bd55; font:400 clamp(15rem,29vw,27rem)/1 Georgia,serif; text-shadow:0 0 2rem rgba(226,181,82,.2),0 0 5rem rgba(226,181,82,.14); opacity:.88; transform:rotate(-15deg); }.hero .container { position:relative; z-index:1; }
.hero .lede { color:rgba(255,250,240,.78); }
.hero-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(17rem,.85fr); gap: clamp(2rem,7vw,7rem); align-items: center; }
.eyebrow { margin: 0 0 .75rem; color: var(--coral); font-size: .78rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
h1,h2,h3 { margin: 0 0 .65em; font-family: Georgia,"Times New Roman",serif; line-height: 1.08; letter-spacing: -.025em; }
h1 { font-size: var(--step-3); max-width: 15ch; }
h2 { font-size: var(--step-2); }
h3 { font-size: var(--step-1); }
.lede { max-width: 42rem; color: var(--muted); font-size: var(--step-1); line-height: 1.5; }
.actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.7rem; }
.button,.wp-element-button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; padding: .72rem 1.15rem; border: 2px solid var(--leaf); border-radius: 999px; color: var(--white); background: var(--leaf); font-weight: 750; text-decoration: none; }
.button:hover { border-color: var(--leaf-dark); color: var(--white); background: var(--leaf-dark); }
.button.secondary { color: var(--leaf); background: transparent; }
.button.secondary:hover { color: var(--white); background: var(--leaf); }
.story-stack { position: relative; min-height: 23rem; }
.story-card { position: absolute; width: min(72%,17rem); aspect-ratio: 3/4; padding: 1.5rem; border-radius: .6rem 1.2rem 1.2rem .6rem; color: var(--white); box-shadow: var(--shadow); font: 700 var(--step-1)/1.15 Georgia,serif; }
.story-card:before { content: ""; position: absolute; inset: 0 auto 0 1rem; border-left: 1px solid rgba(255,255,255,.35); }
.story-card:nth-child(1) { right: 22%; top: 0; background: var(--coral); transform: rotate(-8deg); }
.story-card:nth-child(2) { right: 2%; top: 2.5rem; background: var(--leaf); transform: rotate(6deg); }
.story-card:nth-child(3) { right: 11%; top: 7rem; background: #32456c; transform: rotate(-1deg); }
.section { padding: clamp(3.5rem,7vw,6.5rem) 0; }
.section.alt { background: var(--cream); }
.section-head { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 2rem; }
.section-head h2 { margin-bottom: 0; }
.text-link { font-weight: 750; }
.card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(1rem,2.5vw,2rem); }
.card { overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); transition: transform .2s ease,box-shadow .2s ease; }
.card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.card-media { display: block; aspect-ratio: 4/3; overflow: hidden; background: #e7e1d5; }
.book-card .card-media { aspect-ratio: 4/5; padding: 1.2rem; background: var(--cream); }
.book-card .card-media img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 12px 15px rgba(24,48,45,.18)); }
.card:not(.book-card) .card-media img { width: 100%; height: 100%; object-fit: cover; }
.card-body { padding: 1.25rem; }
.card-body h3 { margin-bottom: .35rem; }
.card-body h3 a { color: var(--ink); text-decoration: none; }
.meta { color: var(--muted); font-size: var(--step--1); }
.empty-state { padding: 2rem; border: 1px dashed var(--line); border-radius: var(--radius); color: var(--muted); background: rgba(255,255,255,.55); }
.newsletter { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: center; padding: clamp(2rem,5vw,4rem); border-radius: calc(var(--radius) * 1.5); color: var(--white); background: var(--leaf); }
.newsletter p { color: rgba(255,255,255,.8); }
.newsletter-actions { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: flex-end; }
.newsletter-actions .button { margin: 0; }
.newsletter-actions .secondary { border-color: rgba(255,255,255,.72); color: var(--white); }
input,select,textarea { min-height: 46px; max-width: 100%; padding: .7rem .85rem; border: 1px solid #8d9b97; border-radius: .55rem; color: var(--ink); background: var(--white); font: inherit; }
.newsletter-form input { flex: 1; }
.newsletter-form button { border-color: var(--sun); color: var(--ink); background: var(--sun); }
.archive-head { padding: clamp(3rem,7vw,6rem) 0 2.5rem; }
.filters { display: flex; flex-wrap: wrap; gap: .65rem; margin: 1.5rem 0 2rem; }
.filter-link { padding: .48rem .85rem; border: 1px solid var(--line); border-radius: 999px; text-decoration: none; }
.filter-link[aria-current="page"] { color: var(--white); background: var(--leaf); }
.breadcrumbs { padding-top: 1.25rem; color: var(--muted); font-size: var(--step--1); }
.breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .35rem; margin: 0; padding: 0; list-style: none; }
.breadcrumbs li:not(:last-child):after { content: "/"; padding-left: .35rem; color: #9aa5a2; }
.book-hero { display: grid; grid-template-columns: minmax(14rem,.65fr) minmax(0,1.35fr); gap: clamp(2rem,6vw,6rem); align-items: start; padding: 2.5rem 0 4rem; }
.book-cover { padding: 1.5rem; border-radius: var(--radius); background: var(--cream); }
.book-cover img { display: block; margin: auto; box-shadow: var(--shadow); }
.book-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem 1.5rem; margin: 1.7rem 0; padding: 1.25rem 0; border-block: 1px solid var(--line); }
.book-facts dt { color: var(--muted); font-size: var(--step--1); }
.book-facts dd { margin: 0; font-weight: 700; }
.purchase-box { padding: 1.4rem; border-radius: var(--radius); background: var(--cream); }
.purchase-box .actions { margin-top: .8rem; }
.disclosure { color: var(--muted); font-size: .78rem; }
.article-header { padding: 2.5rem 0 1.5rem; text-align: center; }
.article-header h1 { margin-inline: auto; }
.article-content { padding-bottom: 4rem; }
.article-content h2 { margin-top: 2em; }
.article-content img { border-radius: var(--radius); }
.video-shell { position: relative; aspect-ratio: 16/9; overflow: hidden; border-radius: var(--radius); background: var(--ink); }
.video-shell iframe { width: 100%; height: 100%; border: 0; }
.site-footer { padding: 4rem 0 2rem; color: rgba(255,255,255,.78); background: var(--ink); }
.footer-grid { display: grid; grid-template-columns: 1.4fr repeat(2,1fr); gap: 3rem; }
.site-footer h2,.site-footer h3,.site-footer a { color: var(--white); }
.site-footer ul { margin: 0; padding: 0; list-style: none; }
.site-footer li { margin: .4rem 0; }
.footer-bottom { margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,.15); font-size: var(--step--1); }
.pagination .nav-links { display: flex; gap: .5rem; margin-top: 2.5rem; }
.page-numbers { padding: .5rem .75rem; border: 1px solid var(--line); border-radius: .4rem; }
.screen-reader-text { position: absolute!important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 780px) {
  .menu-toggle { display:inline-flex; }
  .primary-nav { position: absolute; inset: 100% 0 auto; display: none; padding: 1rem; border-bottom: 1px solid var(--line); background: var(--paper); }
  .primary-nav.is-open { display: block; }
  .primary-nav ul { align-items: stretch; flex-direction: column; gap: 0; }
  .primary-nav a { display: block; padding: .8rem; }
  .hero-grid,.newsletter,.book-hero,.footer-grid { grid-template-columns: 1fr; }
  .story-stack { min-height: 18rem; margin-top: 1rem; }
  .story-card { width: 13rem; }
  .card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .newsletter-form { flex-direction: column; }
}
@media (max-width: 520px) {
  .card-grid,.book-facts { grid-template-columns: 1fr; }
  .section-head { align-items: start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*:before,*:after { scroll-behavior: auto!important; transition: none!important; animation-duration: .01ms!important; }
}


.channel-band { padding:clamp(2rem,5vw,4rem); border:1px solid rgba(226,181,82,.45); border-radius:1.6rem; color:var(--cream); background:linear-gradient(130deg,#0d1a34,#1b2b4d); box-shadow:var(--shadow); }
.channel-band p { max-width:48rem; color:rgba(255,250,240,.78); }
.woocommerce ul.products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
.woocommerce ul.products li.product { width:auto!important; margin:0!important; padding:1rem; border:1px solid var(--line); border-radius:var(--radius); background:var(--white); }
.woocommerce .price { color:var(--leaf-dark)!important; font-weight:800; }
.woocommerce .button,.woocommerce button.button { border-radius:999px!important; color:white!important; background:var(--leaf)!important; }
@media(max-width:780px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.woocommerce ul.products{grid-template-columns:1fr}}


/* Production navy-and-gold surface system */
body { color:#f7edd8; background:#0b1730; }
a { color:#e2b552; }
a:hover { color:#f6d889; }
.site-header { border-bottom-color:rgba(226,181,82,.25); background:rgba(11,23,48,.96); }
.brand,.primary-nav a { color:#fff7e7; }
.primary-nav a:hover,.primary-nav .current-menu-item>a { color:#e2b552; }
.section,.archive-head,.article-header,.article-content,.book-hero { color:#f7edd8; background:#0b1730; }
.section.alt { background:#142543; }
.lede,.meta,.breadcrumbs,.disclosure { color:#c9c4ba; }
.breadcrumbs a,.text-link { color:#e2b552; }
.card { border-color:rgba(226,181,82,.32); background:#172947; box-shadow:0 18px 48px rgba(0,0,0,.22); }
.card-body h3 a { color:#fff7e7; }
.card-media,.book-card .card-media,.book-cover,.purchase-box,.empty-state { background:#20365a; }
.book-facts { border-color:rgba(226,181,82,.35); }
.book-facts dt { color:#d4c9b5; }
.book-facts dd { color:#fff7e7; }
.article-content h2,.article-content h3,.archive-head h1,.article-header h1,.book-hero h1,.section h2 { color:#fff7e7; }
.article-content blockquote { margin-inline:0; padding:1rem 1.25rem; border-left:4px solid #e2b552; background:#142543; }
input,select,textarea { border-color:#b89b68; color:#101c36; background:#fffaf0; }
.filter-link { border-color:rgba(226,181,82,.45); color:#f7edd8; }
.filter-link[aria-current="page"] { color:#101c36; background:#e2b552; }
.woocommerce ul.products li.product { border-color:rgba(226,181,82,.32); background:#172947; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color:#fff7e7; }
.woocommerce div.product .product_title,.woocommerce div.product .woocommerce-tabs h2 { color:#fff7e7; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border-color:rgba(226,181,82,.35); background:#20365a; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color:#f7edd8; }
.woocommerce-result-count,.woocommerce-ordering { color:#c9c4ba; }
@media(max-width:780px){.primary-nav{background:#0b1730;border-bottom-color:rgba(226,181,82,.25)}}
/* Gilded story-card hierarchy */
.card { position:relative; border:2px solid #c99a3c; background:linear-gradient(155deg,#20385f,#142744); box-shadow:inset 0 0 0 1px rgba(255,235,184,.12),0 14px 34px rgba(0,0,0,.30); }
.card:before { content:""; position:absolute; z-index:2; inset:0 1rem auto; height:3px; background:linear-gradient(90deg,transparent,#f2cf78,transparent); opacity:.9; }
.card:hover { transform:translateY(-6px); border-color:#efc766; box-shadow:inset 0 0 0 1px rgba(255,235,184,.18),0 20px 44px rgba(0,0,0,.38),0 0 24px rgba(226,181,82,.16); }
.card-media,.book-card .card-media { border-bottom:1px solid rgba(226,181,82,.55); background:radial-gradient(circle at 50% 42%,#314c74,#101e36 72%); }
.book-card .card-media { padding:1.45rem; }
.book-card .card-media img { filter:drop-shadow(0 14px 18px rgba(0,0,0,.42)); }
.card-body { position:relative; padding:1.35rem; }
.card-body:before { content:"✦"; position:absolute; right:1.1rem; top:.85rem; color:#e2b552; opacity:.65; font-size:.75rem; }
.card-body h3 a { color:#f9e7b5; }
.card-body h3 a:hover { color:#fff4d6; }
.card .eyebrow { color:#efc766; }
.woocommerce ul.products li.product { position:relative; border:2px solid #c99a3c; background:linear-gradient(155deg,#20385f,#142744); box-shadow:inset 0 0 0 1px rgba(255,235,184,.12),0 14px 34px rgba(0,0,0,.30); transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.woocommerce ul.products li.product:hover { transform:translateY(-6px); border-color:#efc766; box-shadow:0 20px 44px rgba(0,0,0,.38),0 0 24px rgba(226,181,82,.16); }
.woocommerce ul.products li.product img { padding:.75rem; border-radius:.55rem; background:radial-gradient(circle at 50% 42%,#314c74,#101e36 72%); box-shadow:0 10px 22px rgba(0,0,0,.28); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color:#f9e7b5; }
.woocommerce ul.products li.product .button { border:1px solid #efc766!important; color:#101c36!important; background:#e2b552!important; }
/* Full-gold cards and restrained storefront cover sizing */
.card { border-color:#f0cc70; color:#101c36; background:linear-gradient(145deg,#f2d27c,#c99535 72%,#b47d26); box-shadow:inset 0 0 0 1px rgba(255,248,214,.58),0 16px 36px rgba(0,0,0,.34); }
.card:before { background:linear-gradient(90deg,transparent,#fff3bd,transparent); }
.card:hover { border-color:#fff0ad; box-shadow:inset 0 0 0 1px rgba(255,250,224,.72),0 22px 46px rgba(0,0,0,.40),0 0 30px rgba(226,181,82,.25); }
.card-media,.book-card .card-media { aspect-ratio:4/3; padding:1.1rem; border-bottom:1px solid rgba(91,57,12,.36); background:linear-gradient(145deg,#e8bd5a,#f7df9c); }
.book-card .card-media { aspect-ratio:4/5; }
.card-media img,.card:not(.book-card) .card-media img,.book-card .card-media img { width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 12px 15px rgba(58,35,7,.30)); }
.card-body,.card-body h3 a,.card .meta,.card .eyebrow,.card-body p { color:#101c36; }
.card-body h3 a:hover { color:#4f3009; }
.card-body:before { color:#65400d; opacity:.75; }
.woocommerce ul.products li.product { color:#101c36; border-color:#f0cc70; background:linear-gradient(145deg,#f2d27c,#c99535 72%,#b47d26); box-shadow:inset 0 0 0 1px rgba(255,248,214,.58),0 16px 36px rgba(0,0,0,.34); }
.woocommerce ul.products li.product:hover { border-color:#fff0ad; box-shadow:inset 0 0 0 1px rgba(255,250,224,.72),0 22px 46px rgba(0,0,0,.40),0 0 30px rgba(226,181,82,.25); }
.woocommerce ul.products li.product a.woocommerce-loop-product__link { display:flex; flex-direction:column; align-items:center; }
.woocommerce ul.products li.product img { width:auto!important; max-width:180px; height:220px!important; margin:0 auto 1rem!important; padding:.55rem; object-fit:contain; border:1px solid rgba(91,57,12,.28); background:#f7e3ad; box-shadow:0 10px 22px rgba(58,35,7,.24); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { align-self:stretch; color:#101c36; }
.woocommerce ul.products li.product .price { align-self:stretch; color:#3f290a!important; }
.woocommerce ul.products li.product .button { border-color:#101c36!important; color:#f8e6b1!important; background:#101c36!important; }
@media(max-width:520px){.woocommerce ul.products li.product img{max-width:150px;height:190px!important}}
/* Keep archive covers generous; restrain only the cover on product detail pages. */
.woocommerce ul.products li.product img {
  width:100%!important;
  max-width:none;
  height:auto!important;
  margin:0 0 1rem!important;
  padding:.75rem;
}
.single-product div.product .woocommerce-product-gallery,
.single-product div.product div.images {
  width:320px;
  max-width:34%;
}
.single-product div.product .summary {
  width:calc(66% - 3rem);
}
.single-product div.product .woocommerce-product-gallery__image img {
  width:100%;
  max-height:430px;
  object-fit:contain;
}
@media(max-width:780px){
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product div.images {
    float:none;
    width:100%;
    max-width:260px;
    margin-inline:auto;
  }
  .single-product div.product .summary {
    float:none;
    width:100%;
  }
  .single-product div.product .woocommerce-product-gallery__image img {
    max-height:350px;
  }
}

/* Editorial commerce layout and logo seal */
.brand-logo { width:3.1rem; height:3.1rem; flex:0 0 auto; border:1px solid rgba(226,181,82,.72); border-radius:50%; object-fit:cover; box-shadow:0 4px 14px rgba(0,0,0,.28); }
.footer-brand .brand-logo { width:5.25rem; height:5.25rem; }
.commerce-main { min-height:70vh; padding:2rem 0 5rem; background:radial-gradient(circle at 18% 10%,rgba(42,69,110,.58),transparent 30rem),#0b1730; }
.commerce-shell { max-width:1180px; }
.single-product .breadcrumbs { margin-bottom:1.35rem; }
.single-product div.product { position:relative; display:grid; grid-template-columns:minmax(250px,340px) minmax(0,1fr); gap:clamp(2rem,5vw,5rem); padding:clamp(1.25rem,3vw,2.6rem); border:1px solid rgba(226,181,82,.38); border-radius:1.4rem; background:linear-gradient(145deg,rgba(27,47,80,.98),rgba(14,29,54,.98)); box-shadow:0 28px 70px rgba(0,0,0,.34); }
.single-product div.product:before { content:""; position:absolute; inset:0 2.5rem auto; height:3px; background:linear-gradient(90deg,transparent,#f0cc70,transparent); }
.single-product div.product .woocommerce-product-gallery,
.single-product div.product div.images { grid-column:1; width:100%; max-width:340px; margin:0!important; padding:1rem; align-self:start; border:1px solid rgba(226,181,82,.3); border-radius:1rem; background:linear-gradient(145deg,#f5dfaa,#d9aa50); box-shadow:0 18px 38px rgba(0,0,0,.3); }
.single-product div.product .woocommerce-product-gallery__image { overflow:hidden; border-radius:.55rem; background:#f8ebca; }
.single-product div.product .woocommerce-product-gallery__image img { width:100%; max-height:430px; object-fit:contain; }
.single-product div.product .summary { grid-column:2; width:100%; margin:0!important; align-self:center; }
.single-product div.product .summary:before { content:"A TO Z STORYBOOK CORNER"; display:block; margin-bottom:.7rem; color:#efc766; font-size:.72rem; font-weight:800; letter-spacing:.16em; }
.single-product div.product .product_title { max-width:14ch; margin:0 0 1rem; font-size:clamp(2.2rem,5vw,4.5rem); line-height:.98; letter-spacing:-.04em; }
.single-product div.product .summary .price { margin:.75rem 0 1.2rem; color:#f0cc70!important; font-size:1.35rem; }
.single-product div.product .woocommerce-product-details__short-description { max-width:42rem; color:#d9d2c4; font-size:1.05rem; line-height:1.75; }
.single-product div.product .stock { display:inline-flex; margin:1rem 0; padding:.45rem .8rem; border:1px solid rgba(226,181,82,.35); border-radius:999px; color:#f4dda0; background:rgba(226,181,82,.1); font-size:.82rem; font-weight:700; }
.single-product div.product .product_meta { margin-top:1.5rem; padding-top:1rem; border-top:1px solid rgba(226,181,82,.2); color:#aba79f; font-size:.82rem; }
.single-product div.product .woocommerce-tabs { grid-column:1 / -1; width:100%; margin-top:.5rem; padding-top:1.5rem; border-top:1px solid rgba(226,181,82,.25); }
.single-product div.product .woocommerce-tabs ul.tabs { margin:0 0 1.5rem!important; padding:0!important; }
.single-product div.product .woocommerce-tabs ul.tabs:before { border-color:rgba(226,181,82,.28)!important; }
.single-product div.product .woocommerce-tabs ul.tabs li { margin:0 .35rem 0 0!important; border-radius:.55rem .55rem 0 0!important; }
.single-product div.product .woocommerce-tabs .panel { max-width:48rem; color:#d9d2c4; line-height:1.75; }
@media(max-width:780px){
  .header-inner { min-height:4.6rem; }
  .brand-logo { width:2.65rem; height:2.65rem; }
  .single-product div.product { grid-template-columns:1fr; gap:1.6rem; }
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product div.images { grid-column:1; width:100%; max-width:270px; margin-inline:auto!important; }
  .single-product div.product .summary { grid-column:1; }
  .single-product div.product .product_title { font-size:clamp(2.15rem,12vw,3.5rem); }
  .single-product div.product .woocommerce-tabs { grid-column:1; }
}

.single-product div.product .summary { width:100%!important; max-width:42rem; }


/* Book-detail cards use the shared full-gold visual system. */
.single-book .book-cover,
.single-book .purchase-box {
  position:relative;
  border:2px solid #f0cc70;
  color:#101c36;
  background:linear-gradient(145deg,#f2d27c,#c99535 72%,#b47d26);
  box-shadow:inset 0 0 0 1px rgba(255,248,214,.58),0 16px 36px rgba(0,0,0,.34);
}
.single-book .book-cover:before,
.single-book .purchase-box:before {
  content:"";
  position:absolute;
  inset:0 1.5rem auto;
  height:3px;
  background:linear-gradient(90deg,transparent,#fff3bd,transparent);
}
.single-book .book-cover { padding:1.5rem; }
.single-book .book-cover img { box-shadow:0 14px 28px rgba(58,35,7,.34); }
.single-book .purchase-box h2,
.single-book .purchase-box p,
.single-book .purchase-box .eyebrow,
.single-book .purchase-box .disclosure { color:#101c36; }
.single-book .purchase-box .button {
  border:1px solid #101c36;
  color:#f8e6b1;
  background:#101c36;
}
.single-book .purchase-box .button:hover { color:#101c36; background:#fff0b8; }

/* Center journal and reading-guide imagery without affecting commerce covers. */
.single-post article > .container > .wp-post-image,
.single-post .article-content img {
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  margin-inline:auto;
}
.single-post article > .container { text-align:center; }

/* Story-specific discussion modules */
.conversation-topic { margin:1.5rem 0; padding:1.35rem 1.5rem; border:1px solid #f0cc70; border-radius:var(--radius); color:#101c36; background:linear-gradient(145deg,#f2d27c,#c99535 72%,#b47d26); box-shadow:inset 0 0 0 1px rgba(255,248,214,.48),0 12px 28px rgba(0,0,0,.24); }
.conversation-topic h3,.conversation-topic p,.conversation-topic strong,.conversation-topic .eyebrow { color:#101c36; }
.conversation-topic h3 { margin:.15rem 0 .65rem; }
.conversation-topic p:last-child { margin-bottom:0; padding-top:.75rem; border-top:1px solid rgba(16,28,54,.24); }

/* Feature the direct-store action immediately beneath each book cover. */
.book-cover-column { display:flex; min-width:0; flex-direction:column; gap:1rem; }
.single-book .book-shop-card { padding:1.25rem 1.35rem 1.35rem; }
.single-book .book-shop-card h2 { margin:.15rem 0 .55rem; color:#101c36; font-size:clamp(1.55rem,2.5vw,2.15rem); }
.single-book .book-shop-card p:not(.eyebrow) { margin:.35rem 0 1rem; line-height:1.55; }
.single-book .book-shop-card .button { display:block; width:100%; padding:.8rem 1rem; text-align:center; }
@media(max-width:780px){.book-cover-column{width:100%;max-width:30rem;margin-inline:auto}}

.book-cover-column { gap:1.75rem; }


/* Keep the related reading guide inside the primary book narrative. */
.book-inline-related { margin-top:clamp(2rem,4vw,3.25rem); padding-top:1.75rem; border-top:1px solid rgba(226,181,82,.3); }
.book-inline-related > h2 { margin:0 0 1.25rem; }
.book-inline-related .card-grid { grid-template-columns:minmax(0,34rem); }
.book-inline-related .card { width:100%; }
.book-inline-related .card-media { max-height:19rem; }
@media(max-width:780px){.book-inline-related .card-grid{grid-template-columns:1fr}}

/* Purpose-built proportions for the in-body related-story card. */
.book-inline-related .card-grid { grid-template-columns:minmax(0,1fr); max-width:48rem; }
.book-inline-related .card { display:grid; grid-template-columns:minmax(12rem,15rem) minmax(0,1fr); width:100%; min-height:19rem; }
.book-inline-related .card-media { width:100%; max-height:none; height:100%; min-height:19rem; aspect-ratio:auto; padding:1rem; border-right:1px solid rgba(91,57,12,.3); border-bottom:0; }
.book-inline-related .card-media img { display:block; width:100%; height:100%; object-fit:contain; }
.book-inline-related .card-body { display:flex; min-width:0; flex-direction:column; justify-content:center; padding:clamp(1.35rem,3vw,2rem); }
.book-inline-related .card-body h3 { font-size:clamp(1.4rem,2.5vw,2rem); }
@media(max-width:620px){
  .book-inline-related .card { display:block; min-height:0; }
  .book-inline-related .card-media { height:auto; min-height:0; aspect-ratio:4/3; border-right:0; border-bottom:1px solid rgba(91,57,12,.3); }
  .book-inline-related .card-body { display:block; padding:1.35rem; }
}

/* Integrate the read-aloud into the book-to-discussion reading flow. */
.book-inline-video { margin:clamp(1.75rem,4vw,3rem) 0; padding:1.35rem; border:1px solid rgba(226,181,82,.34); border-radius:1rem; background:#172b4b; box-shadow:0 16px 36px rgba(0,0,0,.24); }
.book-inline-video .eyebrow { margin-bottom:.25rem; }
.book-inline-video h2 { margin:0 0 1rem; font-size:clamp(1.65rem,3vw,2.35rem); }
.book-inline-video .video-shell { width:100%; }
@media(max-width:520px){.book-inline-video{margin-inline:-.25rem;padding:.75rem}.book-inline-video h2{font-size:1.65rem}}

/* Match the embedded read-aloud panel to the full-gold card system. */
.book-inline-video { border:2px solid #f0cc70; color:#101c36; background:linear-gradient(145deg,#f2d27c,#c99535 72%,#b47d26); box-shadow:inset 0 0 0 1px rgba(255,248,214,.58),0 16px 36px rgba(0,0,0,.3); }
.book-inline-video .eyebrow,.book-inline-video h2 { color:#101c36; }
.book-inline-video .video-shell { border:1px solid rgba(16,28,54,.42); background:#101c36; box-shadow:0 10px 24px rgba(58,35,7,.3); }

/* Consolidated Reading Guide narrative: intro, video, discussion, book. */
.guide-featured-image { margin-bottom:clamp(1.75rem,4vw,3rem); text-align:center; }
.guide-featured-image img { display:block; width:auto; max-width:100%; max-height:34rem; margin-inline:auto; object-fit:contain; border-radius:var(--radius); box-shadow:0 16px 38px rgba(0,0,0,.28); }
.guide-inline-video { margin-top:clamp(1.5rem,3vw,2.25rem); }
.guide-inline-book { margin-top:clamp(2.5rem,5vw,4rem); }
.guide-inline-book .book-card .card-media { aspect-ratio:auto; }
@media(max-width:620px){.guide-featured-image img{max-height:28rem}}

/* About and contact pages. */
.about-hero{padding-top:clamp(2rem,5vw,5rem)}
.about-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(17rem,.65fr);gap:clamp(2rem,7vw,6rem);align-items:center}
.about-mark{display:grid;place-items:center;padding:clamp(1rem,3vw,2rem);background:var(--sun);border:2px solid #f6d47f;border-radius:50%;box-shadow:0 20px 50px rgba(0,0,0,.3)}
.about-mark img{display:block;width:100%;border-radius:50%}
.about-story p:not(.eyebrow){font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.8}
.about-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.about-pillar{padding:clamp(1.5rem,3vw,2.25rem);color:var(--ink);background:linear-gradient(145deg,#f6d47f,var(--sun));border:2px solid #f6d47f;border-radius:var(--radius);box-shadow:0 15px 35px rgba(0,0,0,.22)}

.about-pillar h3{font-size:1.55rem}
.about-schedule{display:flex;justify-content:space-between;gap:2rem;align-items:center}.about-schedule>div{max-width:48rem}
.contact-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(25rem,1.2fr);gap:clamp(2rem,7vw,6rem);align-items:start}
.contact-intro{position:sticky;top:8rem}
.contact-direct{margin-top:clamp(2rem,5vw,4rem);padding-top:1.5rem;border-top:1px solid rgba(232,185,70,.45)}
.contact-direct a{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.25rem,2vw,1.65rem);font-weight:700;color:#f6d47f}
.contact-panel{padding:clamp(1.5rem,4vw,3rem);color:var(--ink);background:linear-gradient(145deg,#f6d47f,var(--sun));border:2px solid #f6d47f;border-radius:var(--radius);box-shadow:0 20px 45px rgba(0,0,0,.3)}
.contact-form{display:grid;gap:1.25rem}.form-row{display:grid;gap:.5rem}.form-row label{font-weight:800}
.form-row input,.form-row select,.form-row textarea{width:100%;padding:.85rem 1rem;color:var(--ink);background:#fffdf7;border:2px solid rgba(6,28,61,.25);border-radius:.55rem;font:inherit}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:3px solid rgba(6,28,61,.2);border-color:var(--ink)}
.form-row textarea{resize:vertical;min-height:11rem}.form-privacy{margin:0;font-size:.9rem}
.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-notice{margin-bottom:1.5rem;padding:1rem 1.2rem;border-radius:.65rem;background:rgba(255,255,255,.58)}
.form-notice h2{font-size:1.35rem;margin-bottom:.35rem}.form-notice p{margin:0}
.form-notice.error{border-left:5px solid #8b1e1e}.form-notice.success{border-left:5px solid #1e6532}
@media(max-width:800px){.about-hero-grid,.contact-grid{grid-template-columns:1fr}.about-mark{max-width:20rem;margin-inline:auto}.about-pillars{grid-template-columns:1fr}.about-schedule{align-items:flex-start;flex-direction:column}.contact-intro{position:static}}
/* Store coming-soon state. */
.store-coming-soon{clear:both;margin:0 0 clamp(1.5rem,4vw,3rem);padding:clamp(1.35rem,3vw,2.25rem);color:#101c36;background:linear-gradient(145deg,#f6d47f,#d49b36);border:2px solid #f5cf68;border-radius:var(--radius);box-shadow:0 16px 36px rgba(0,0,0,.28)}
.store-coming-soon .eyebrow{color:#101c36}.store-coming-soon h2{margin:.15rem 0 .5rem;font-size:clamp(1.7rem,3vw,2.45rem)}.store-coming-soon p:last-child{max-width:48rem;margin:0;line-height:1.65}
.single-product .store-coming-soon{grid-column:1/-1;margin-bottom:0}
.product-coming-soon{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;margin:1.1rem 0;padding:1rem 1.15rem;color:#101c36;background:linear-gradient(145deg,#f6d47f,#d49b36);border:1px solid #f5cf68;border-radius:.75rem}
.product-coming-soon strong{text-transform:uppercase;letter-spacing:.14em;font-size:.8rem}.product-coming-soon span{font-size:.95rem}
.woocommerce ul.products li.product .coming-soon-button{display:inline-flex;justify-content:center}
/* Reading Guides as the primary value. */
.reading-guide-value{background:linear-gradient(155deg,#142947,#0b1730)} .reading-guide-value-intro{max-width:54rem;margin-bottom:2.5rem}.reading-guide-value-intro h2{font-size:clamp(2.3rem,5vw,4.25rem)}.guide-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.guide-value-grid article,.cover-guide-card{padding:1.5rem;color:#101c36;background:linear-gradient(145deg,#f6d47f,#d49b36);border:2px solid #f5cf68;border-radius:var(--radius);box-shadow:0 16px 36px rgba(0,0,0,.28)}.guide-value-grid h3{margin-bottom:.65rem;font-size:1.5rem}.cover-guide-card{margin-top:1.25rem}.cover-guide-card .eyebrow,.cover-guide-card h2,.cover-guide-card p{color:#101c36}.cover-guide-card h2{font-size:1.7rem}.cover-guide-card .button{display:block;width:100%;text-align:center;color:#f8e6b1;background:#101c36}.book-cover-column .book-shop-card{margin-top:1.25rem}@media(max-width:800px){.guide-value-grid{grid-template-columns:1fr}}
/* Primary support call-to-action. */
.primary-nav .support-channel-item a{display:inline-flex;align-items:center;padding:.65rem 1rem;color:#101c36!important;background:linear-gradient(145deg,#f6d47f,#d49b36);border:1px solid #f5cf68;border-radius:999px;font-weight:850;box-shadow:0 8px 20px rgba(0,0,0,.22)}
.primary-nav .support-channel-item a:hover{color:#101c36!important;background:#f7d77f;transform:translateY(-1px)}
@media(max-width:780px){.primary-nav .support-channel-item{margin-top:.45rem}.primary-nav .support-channel-item a{display:block;text-align:center}}

.primary-nav .youtube-channel-item a{font-weight:800;color:#f0cc70}
.primary-nav .youtube-channel-item a:hover{color:#fff1b7}

/* Celestial interior atmosphere */
.site-main { position:relative; isolation:isolate; overflow:hidden; background-image:radial-gradient(circle at 91% 5rem,rgba(226,181,82,.13) 0 1px,transparent 2px),radial-gradient(circle at 86% 9rem,rgba(226,181,82,.18) 0 2px,transparent 3px),radial-gradient(circle at 96% 15rem,rgba(244,218,147,.12) 0 1px,transparent 2px),radial-gradient(circle at 7% 25rem,rgba(226,181,82,.11) 0 1px,transparent 2px); background-size:23rem 29rem,31rem 37rem,41rem 43rem,37rem 47rem; }
.site-main:before { content:"\2726"; position:absolute; z-index:-1; top:clamp(5.5rem,11vw,9rem); right:clamp(1rem,5vw,5rem); color:rgba(226,181,82,.24); font-size:clamp(2rem,4vw,4rem); line-height:1; text-shadow:-4.5rem 3.5rem 0 rgba(226,181,82,.12),2rem 8rem 0 rgba(247,221,151,.1); pointer-events:none; }
.archive-head,.article-header,.book-hero,.about-hero,.contact-hero { position:relative; }
.archive-head:after,.article-header:after,.about-hero:after,.contact-hero:after { content:"\263E"; position:absolute; z-index:0; top:clamp(.5rem,2vw,1.5rem); right:clamp(1rem,5vw,4rem); color:rgba(226,181,82,.12); font:400 clamp(6rem,12vw,10rem)/1 Georgia,serif; transform:rotate(-14deg); pointer-events:none; }
.archive-head > *,.article-header > *,.about-hero > *,.contact-hero > * { position:relative; z-index:1; }
@media(max-width:780px){.hero:before{width:78%;top:.75rem;letter-spacing:.6rem;text-shadow:none}.hero:after{right:-3.75rem;top:-1.75rem;font-size:13rem;opacity:.38}.site-main:before{right:.75rem;opacity:.7}.archive-head:after,.article-header:after,.about-hero:after,.contact-hero:after{right:-2rem;opacity:.75}}
@media(prefers-reduced-motion:no-preference){.hero:before{animation:atoz-twinkle 5s ease-in-out infinite alternate}}@keyframes atoz-twinkle{from{opacity:.7}to{opacity:1}}
/* Production newsletter control sizing */
.newsletter { grid-template-columns:minmax(0,1.05fr) minmax(25rem,.95fr); gap:clamp(2rem,5vw,5rem); }
.newsletter-form { display:grid; grid-template-columns:minmax(15rem,1fr) 9.75rem; gap:.75rem; width:100%; max-width:34rem; justify-self:end; align-items:stretch; }
.newsletter-form input,.newsletter-form button { width:100%; height:3.5rem; min-height:3.5rem; margin:0; border-radius:.75rem; font-size:1rem; }
.newsletter-form input { padding:.85rem 1rem; border:2px solid rgba(16,28,54,.18); box-shadow:inset 0 1px 2px rgba(16,28,54,.06); }
.newsletter-form button { padding:.75rem 1rem; white-space:nowrap; border:2px solid #efc65d; font-weight:800; box-shadow:0 8px 18px rgba(77,46,5,.16); opacity:1; cursor:not-allowed; }
.newsletter-form button:disabled,.newsletter-form input:disabled { opacity:1; }
.newsletter-form input:disabled { color:#5f6570; -webkit-text-fill-color:#5f6570; background:#fffaf0; }
@media(max-width:900px){.newsletter{grid-template-columns:1fr}.newsletter-form{justify-self:start;max-width:38rem}}
@media(max-width:520px){.newsletter-form{grid-template-columns:1fr}.newsletter-form input,.newsletter-form button{height:3.35rem;min-height:3.35rem}}
/* Reading-guide card button interaction */
.cover-guide-card .button { border-color:#101c36; transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease; }
.cover-guide-card .button:hover { border-color:#29446f; color:#fff4d2; background:#29446f; box-shadow:0 8px 18px rgba(16,28,54,.28); transform:translateY(-2px); }
.cover-guide-card .button:focus-visible { border-color:#fff4d2; color:#fff4d2; background:#29446f; outline:3px solid #101c36; outline-offset:3px; box-shadow:0 0 0 2px #f5cf68,0 8px 18px rgba(16,28,54,.28); }
.cover-guide-card .button:active { transform:translateY(0); box-shadow:0 3px 8px rgba(16,28,54,.24); }
/* Storybook shop card button interaction matches the Reading Guide card. */
.single-book .book-shop-card .button { display:block; width:100%; border:2px solid #101c36; border-radius:999px; color:#f8e6b1; background:#101c36; text-align:center; transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease; }
.single-book .book-shop-card .button:hover { border-color:#29446f; color:#fff4d2; background:#29446f; box-shadow:0 8px 18px rgba(16,28,54,.28); transform:translateY(-2px); }
.single-book .book-shop-card .button:focus-visible { border-color:#fff4d2; color:#fff4d2; background:#29446f; outline:3px solid #101c36; outline-offset:3px; box-shadow:0 0 0 2px #f5cf68,0 8px 18px rgba(16,28,54,.28); }
.single-book .book-shop-card .button:active { transform:translateY(0); box-shadow:0 3px 8px rgba(16,28,54,.24); }