/* Azbuka Core v0.4 */
:root{--azc-green:#315242;--azc-green-dark:#294538;--azc-cream:#f7f3ed;--azc-soft:#e8eee8;--azc-gold:#b58b3d;--azc-muted:#6e756f;--azc-line:rgba(49,82,66,.12)}

/* Catalog logic */
.azbuka-catalog-nav{margin:0 0 20px;padding:22px 24px;border:1px solid var(--azc-line);border-radius:24px;background:#fff;box-shadow:0 14px 35px rgba(49,73,60,.05)}
.azbuka-catalog-nav-label{display:block;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--azc-gold);margin-bottom:10px}.azbuka-stage-label{margin-top:17px}
.azbuka-catalog-chips{display:flex;gap:8px;flex-wrap:wrap}.azbuka-catalog-chips a{display:inline-flex;padding:9px 14px;border-radius:999px;border:1px solid rgba(49,82,66,.14);text-decoration:none!important;color:var(--azc-green-dark)!important;font-size:13px;font-weight:700;background:#fbfaf6;transition:.2s ease}.azbuka-catalog-chips a:hover,.azbuka-catalog-chips a.is-active{background:var(--azc-green-dark);color:#fff!important;border-color:var(--azc-green-dark)}
.azbuka-stage-chips a{font-size:12px;padding:7px 12px}.azbuka-catalog-hint{margin:14px 0 0;color:var(--azc-muted);font-size:13px;line-height:1.5}
.azbuka-archive-logic{margin:0 0 30px;padding:16px 20px;border-left:3px solid var(--azc-gold);border-radius:0 16px 16px 0;background:rgba(255,255,255,.58);color:#536158}.azbuka-archive-logic strong{display:block;color:var(--azc-green-dark);font-family:Georgia,serif;font-size:17px}.azbuka-archive-logic p{margin:5px 0 0;font-size:13px;line-height:1.55}

/* Woo cards */
body.azbuka-core-v04.woocommerce ul.products li.product{overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;will-change:transform;display:flex;flex-direction:column}
body.azbuka-core-v04.woocommerce ul.products li.product:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(49,73,60,.10)}
body.azbuka-core-v04.woocommerce ul.products li.product a img{object-fit:contain!important;object-position:center!important;background:#fff!important;padding:4px!important;box-sizing:border-box;transition:transform .3s ease}
body.azbuka-core-v04.woocommerce ul.products li.product.azbuka-image-zoom-strong a img{transform:scale(1.12)}
body.azbuka-core-v04.woocommerce ul.products li.product.azbuka-image-zoom-strong:hover a img{transform:scale(1.16)}
.azbuka-card-meta{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin:7px 14px 0}.azbuka-card-meta span{padding:5px 8px;border-radius:999px;background:#f3f0e9;color:#53665b;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.azbuka-card-blurb{font-size:12px;line-height:1.43;color:#737a75;margin:8px 18px 3px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:50px;text-align:center}
.azbuka-family-loop-badge{display:flex;flex-direction:column;align-items:center;gap:2px;margin:8px 14px 4px;padding:10px 12px;border-radius:13px;background:#315242;color:#fff;box-shadow:0 7px 18px rgba(49,82,66,.16);letter-spacing:.01em;text-align:center}
.azbuka-family-loop-badge strong{font-size:13px;font-weight:850;line-height:1.2}.azbuka-family-loop-badge small{font-size:10px;font-weight:650;line-height:1.25;color:rgba(255,255,255,.86)}

/* Families */
.azbuka-family-selector{margin:26px 0 22px;padding:22px;border:1px solid var(--azc-line);border-radius:22px;background:#fbf8f2}.azbuka-family-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px}.azbuka-family-head h3{margin:3px 0 0!important;font-size:22px!important;color:#294538}.azbuka-family-kicker{color:#ae853d;font-weight:800;font-size:9px;letter-spacing:.13em}.azbuka-family-scroll{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:380px;overflow:auto}.azbuka-family-item{display:grid;grid-template-columns:70px 1fr;gap:10px;align-items:center;padding:8px;border:1px solid var(--azc-line);border-radius:15px;background:#fff;text-decoration:none!important}.azbuka-family-item.is-current{border:2px solid #315242;padding:7px}.azbuka-family-image{width:70px;height:70px;display:grid;place-items:center;background:#fff;overflow:hidden;border-radius:10px}.azbuka-family-image img{width:100%!important;height:100%!important;object-fit:contain!important;margin:0!important;padding:2px!important}.azbuka-family-item strong{display:block;color:#294538;font-size:12px;line-height:1.25}.azbuka-family-item small{display:block;margin-top:5px;font-size:12px;font-weight:700}

/* Product detail */
.azbuka-care-passport{margin:16px 0 20px;padding:16px 18px;border:1px solid var(--azc-line);border-radius:18px;background:#f8f6f0}.azbuka-care-passport h3{margin:4px 0 10px!important;color:var(--azc-green-dark);font-size:18px!important}.azbuka-care-pills{display:flex;gap:6px;flex-wrap:wrap}.azbuka-care-pills span{padding:6px 9px;border-radius:999px;background:#e8eee8;color:#315242;font-size:10px;font-weight:750}.azbuka-care-note{margin:10px 0 0;color:#76624b;font-size:12px;line-height:1.45}
.azbuka-product-copy-v04{color:#46534c}.azbuka-product-copy-v04 h2,.azbuka-product-copy-v04 h3{color:var(--azc-green-dark)}.azbuka-product-copy-v04 h2{margin-top:0}.azbuka-product-copy-v04 h3{margin-top:22px}.azbuka-product-copy-v04 p{line-height:1.7}.azbuka-source-overview{padding:14px 16px;border-radius:14px;background:#f9f6ef}.azbuka-caution{margin:22px 0;padding:14px 16px;border-radius:14px;background:#f4eadb;border-left:3px solid #b98d46}.azbuka-caution strong{color:#6e552c}.azbuka-caution p{margin:5px 0 0}.azbuka-composition{margin:22px 0;padding:12px 14px;border:1px solid var(--azc-line);border-radius:14px;background:#fff}.azbuka-composition summary{cursor:pointer;font-weight:750;color:var(--azc-green-dark)}.azbuka-source-note{color:#707871;font-size:13px}

/* Curated homepage / section cards */
.azbuka-core-curated-grid .azbuka-product-card{position:relative;overflow:hidden;transition:transform .28s ease,box-shadow .28s ease}.azbuka-core-curated-grid .azbuka-product-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(39,61,49,.10)}
.azbuka-core-curated-grid .azbuka-product-media{min-height:260px;display:grid;place-items:center;background:#fff}.azbuka-core-curated-grid .azbuka-product-media img{width:100%;height:250px;object-fit:contain;padding:4px;transition:transform .35s ease}.azbuka-core-curated-grid .azbuka-product-card:hover img{transform:scale(1.055)}.azbuka-curated-why{font-size:12.5px;line-height:1.45;color:#727a74;margin:8px 0 10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* Hero motion - keeps Botiga child structure but gives products a more deliberate entrance */
.azbuka-hero-visual .azbuka-hero-product{opacity:0;box-shadow:0 18px 50px rgba(49,73,60,.09)}.azbuka-core-motion .azbuka-hero-product-1{animation:azFly1 .9s cubic-bezier(.16,1,.3,1) .08s forwards,azFloat1 7s ease-in-out 1.15s infinite alternate}.azbuka-core-motion .azbuka-hero-product-2{animation:azFly2 .95s cubic-bezier(.16,1,.3,1) .2s forwards,azFloat2 8s ease-in-out 1.3s infinite alternate}.azbuka-core-motion .azbuka-hero-product-3{animation:azFly3 .95s cubic-bezier(.16,1,.3,1) .34s forwards,azFloat3 6.5s ease-in-out 1.45s infinite alternate}@keyframes azFly1{from{opacity:0;transform:translate(-85px,82px) rotate(-12deg) scale(.68)}to{opacity:1;transform:translate(0,0) rotate(-4deg) scale(1)}}@keyframes azFly2{from{opacity:0;transform:translate(95px,70px) rotate(12deg) scale(.68)}to{opacity:1;transform:translate(0,0) rotate(4deg) scale(1)}}@keyframes azFly3{from{opacity:0;transform:translate(0,115px) rotate(-6deg) scale(.66)}to{opacity:1;transform:translate(0,0) rotate(1deg) scale(1)}}@keyframes azFloat1{to{transform:translate(-5px,-11px) rotate(-5deg)}}@keyframes azFloat2{to{transform:translate(7px,-9px) rotate(5deg)}}@keyframes azFloat3{to{transform:translate(-4px,-8px) rotate(0deg)}}.azbuka-hero-product img{transition:transform .35s ease;object-fit:contain!important;padding:2px!important}.azbuka-hero-product:hover img{transform:scale(1.08)}

/* AI / routine explanation */
.azbuka-ai-results{margin-top:22px;border-radius:24px;background:#fff;color:#27372f;padding:24px;box-shadow:0 18px 42px rgba(25,45,35,.16)}.azbuka-ai-results[hidden]{display:none!important}.azbuka-ai-result-head{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start;margin-bottom:16px}.azbuka-ai-result-head h3{font-family:Georgia,serif;color:var(--azc-green-dark);font-size:25px;margin:4px 0 7px}.azbuka-ai-result-head p{margin:0;color:#667169;line-height:1.5}.azbuka-ai-mode{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:var(--azc-gold);font-weight:800}.azbuka-ai-total{text-align:right;padding:10px 12px;border-radius:14px;background:#f7f3ed;min-width:145px}.azbuka-ai-total small{display:block;color:#7b817c;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.azbuka-ai-total strong{display:block;margin-top:4px;color:#263d31;font-size:18px}.azbuka-ai-logic{margin:0 0 18px;padding:14px 16px;border-radius:16px;background:#edf2ed}.azbuka-ai-logic span{display:block;color:#315242;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.azbuka-ai-logic p{margin:5px 0 0;color:#526159;line-height:1.55}.azbuka-ai-routine{display:grid;gap:12px}.azbuka-ai-step{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:start}.azbuka-ai-step-num{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--azc-green-dark);color:#fff;font-size:11px;font-weight:800;margin-top:12px}.azbuka-ai-product{display:grid;grid-template-columns:100px 1fr;gap:14px;padding:12px;border:1px solid var(--azc-line);border-radius:18px;text-decoration:none!important;background:#fff;transition:.2s ease}.azbuka-ai-product:hover{border-color:rgba(49,82,66,.32);box-shadow:0 10px 28px rgba(39,61,49,.07)}.azbuka-ai-product-media{width:100px;height:120px;display:grid;place-items:center;background:#fff;border-radius:12px;overflow:hidden}.azbuka-ai-product img{width:100%;height:100%;object-fit:contain}.azbuka-ai-product h4{margin:2px 0 0;color:var(--azc-green-dark);font-size:15px;line-height:1.25}.azbuka-ai-product .price{display:block;margin:6px 0;color:#222;font-weight:800;font-size:13px}.azbuka-ai-role{display:inline-block;color:var(--azc-gold);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.azbuka-ai-why,.azbuka-ai-how{margin:6px 0 0;color:#68736c;font-size:12px;line-height:1.42}.azbuka-ai-more{display:inline-block;margin-top:7px;color:#315242;font-size:11px;font-weight:750}.azbuka-ai-cautions{margin-top:16px;padding:14px 16px;border-radius:16px;background:#f5eadb;color:#69583b}.azbuka-ai-cautions>strong{font-size:12px}.azbuka-ai-cautions ul{margin:7px 0 0 18px;padding:0}.azbuka-ai-cautions li{margin:4px 0;font-size:12px;line-height:1.45}.azbuka-ai-details{margin:0 0 16px;padding:10px 13px;border:1px solid var(--azc-line);border-radius:14px;color:#68736c}.azbuka-ai-details summary{cursor:pointer;color:#4b5d53;font-weight:700;font-size:12px}.azbuka-ai-details ul{margin:8px 0 0 18px;padding:0;font-size:12px}.azbuka-ai-next{margin-top:16px;padding-top:15px;border-top:1px solid var(--azc-line)}.azbuka-ai-next>span{display:block;margin-bottom:8px;color:#657269;font-size:11px}.azbuka-ai-next div{display:flex;gap:7px;flex-wrap:wrap}.azbuka-ai-next button{border:1px solid rgba(49,82,66,.16);border-radius:999px;background:#fbfaf6;color:#315242;padding:7px 10px;font-size:11px;cursor:pointer}.azbuka-ai-next button:hover{background:#315242;color:#fff}.azbuka-ai-loading{display:flex;gap:10px;align-items:center;color:#607067}.azbuka-ai-loading:before{content:'';width:18px;height:18px;border:2px solid #d9e1da;border-top-color:#315242;border-radius:50%;animation:azSpin .7s linear infinite}@keyframes azSpin{to{transform:rotate(360deg)}}

/* Scroll reveal */
.azbuka-core-reveal{opacity:0;transform:translateY(26px);transition:opacity .58s ease,transform .7s cubic-bezier(.16,1,.3,1)}.azbuka-core-reveal.is-visible{opacity:1;transform:none}

@media(max-width:900px){.azbuka-ai-result-head{grid-template-columns:1fr}.azbuka-ai-total{text-align:left;width:max-content}.azbuka-core-curated-grid .azbuka-product-media{min-height:210px}.azbuka-core-curated-grid .azbuka-product-media img{height:205px}}
@media(max-width:760px){.azbuka-catalog-nav{padding:18px}.azbuka-family-scroll{grid-template-columns:1fr}.azbuka-hero-visual .azbuka-hero-product{opacity:1}.azbuka-core-motion .azbuka-hero-product-1,.azbuka-core-motion .azbuka-hero-product-2,.azbuka-core-motion .azbuka-hero-product-3{animation:none}.azbuka-ai-results{padding:17px}.azbuka-ai-step{grid-template-columns:30px 1fr}.azbuka-ai-step-num{width:28px;height:28px;font-size:9px}.azbuka-ai-product{grid-template-columns:78px 1fr}.azbuka-ai-product-media{width:78px;height:95px}.azbuka-card-blurb{min-height:0}}
@media(prefers-reduced-motion:reduce){.azbuka-hero-visual .azbuka-hero-product,.azbuka-core-reveal{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}}


/* Gift wizard v0.4 */
.azbuka-gift-wizard h3{font-family:Georgia,serif;color:var(--azc-green-dark);font-size:27px;margin:5px 0 8px}.azbuka-gift-lead{color:#667169;line-height:1.55;margin:0 0 20px}.azbuka-gift-field{border:0;padding:0;margin:0 0 18px}.azbuka-gift-field legend{font-weight:800;color:#2f4d3e;font-size:13px;margin-bottom:9px}.azbuka-gift-options{display:flex;gap:8px;flex-wrap:wrap}.azbuka-gift-option{border:1px solid rgba(49,82,66,.17);background:#faf8f3;color:#315242;border-radius:999px;padding:9px 13px;cursor:pointer;font-size:12px;transition:.18s ease}.azbuka-gift-option:hover,.azbuka-gift-option.is-selected{background:#315242;color:#fff;border-color:#315242}.azbuka-gift-wizard-actions{display:grid;gap:8px;margin-top:22px}.azbuka-gift-submit{justify-self:start;border:0;border-radius:999px;background:#315242;color:#fff;padding:12px 18px;font-weight:800;cursor:pointer}.azbuka-gift-submit.needs-attention{background:#9a6330}.azbuka-gift-wizard-actions small{color:#7b817c;line-height:1.5;max-width:680px}
.azbuka-gift-modal{position:fixed;inset:0;background:rgba(23,35,29,.55);z-index:999999;display:none;align-items:center;justify-content:center;padding:28px;overflow:auto}.azbuka-gift-modal.is-open{display:flex}.azbuka-gift-modal-inner{position:relative;width:min(860px,100%);max-height:92vh;overflow:auto;background:#f7f3ed;border-radius:28px;padding:18px}.azbuka-gift-modal-inner .azbuka-ai-results{margin:0}.azbuka-gift-close{position:absolute;right:13px;top:9px;z-index:2;border:0;background:transparent;font-size:29px;color:#56635b;cursor:pointer}
/* Better empty-image policy: cards marked missing are hidden from curated storefronts until a verified image is attached. */
.azbuka-core-curated img{background:#fff;object-fit:contain}
@media(max-width:760px){.azbuka-gift-modal{padding:10px}.azbuka-gift-modal-inner{padding:8px}.azbuka-gift-options{gap:6px}.azbuka-gift-option{font-size:11px;padding:8px 10px}}


/* v0.4: verified composition and customer club */
.azbuka-product-copy-v04 .azbuka-composition-box{margin:22px 0;padding:18px 20px;border:1px solid rgba(49,82,66,.14);border-radius:18px;background:#f7f3e9;color:#4e5e55;line-height:1.65}
.azbuka-product-copy-v04 .azbuka-composition-box strong{display:block;margin-bottom:6px;color:var(--azc-green-dark);font-family:Georgia,serif;font-size:18px}
.azbuka-product-copy-v04 .azbuka-composition-source{display:block;margin-top:8px;color:#7b817c;font-size:11px}
.azbuka-product-copy-v04 .azbuka-composition-pending{background:#fbf8f1;border-style:dashed}
.azbuka-register-note{margin:10px 0 16px;padding:11px 14px;border-radius:14px;background:#edf2ed;color:#526159;font-size:12px;line-height:1.5}
.azbuka-club{display:grid;gap:20px}.azbuka-club h2{margin:0;color:var(--azc-green-dark);font-family:Georgia,serif;font-size:30px}.azbuka-club-lead{margin:0;color:#667169;line-height:1.6}
.azbuka-club-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.azbuka-club-card,.azbuka-club-grid article{padding:18px;border:1px solid var(--azc-line);border-radius:18px;background:#fff}.azbuka-club-card small,.azbuka-club-grid article small{display:block;color:#8a8e89;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.azbuka-club-card strong,.azbuka-club-grid article strong{display:block;margin-top:5px;color:var(--azc-green-dark);font-size:24px}.azbuka-club-card p,.azbuka-club-grid article p{margin:7px 0 0;color:#6c756f;font-size:12px;line-height:1.45}
.azbuka-welcome-coupon{padding:20px;border-radius:20px;background:#315242;color:#fff}.azbuka-welcome-coupon small{display:block;color:#d8c18f;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.azbuka-welcome-coupon strong{display:block;margin:6px 0;font-family:Georgia,serif;font-size:29px}.azbuka-welcome-coupon p{margin:0;color:#e7eee9;line-height:1.55}.azbuka-club-progress{height:8px;border-radius:999px;background:#e8ece8;overflow:hidden;margin-top:10px}.azbuka-club-progress span{display:block;height:100%;border-radius:999px;background:#315242}
/* Cards use already normalized 1200x1200 product media. Never shrink the packshot through CSS. */
.woocommerce ul.products li.product .woocommerce-loop-product__link img,.azbuka-core-curated-grid .azbuka-product-media img{object-fit:contain;object-position:center;background:#fff}
@media(max-width:760px){.azbuka-club-grid{grid-template-columns:1fr}.azbuka-welcome-coupon strong{font-size:24px}}

/* v0.6 product visual normalization */
ul.products li.product .woocommerce-loop-product__link img,
.woocommerce ul.products li.product a img{background:#fff!important;object-fit:contain!important;object-position:center!important;padding:10px!important;filter:none!important;image-rendering:auto!important;}
ul.products li.product{overflow:hidden;}
.azbuka-core-curated-grid .azbuka-product-media,.azbuka-hero-product{background:linear-gradient(145deg,#fff 0%,#fbfaf6 100%)!important;box-shadow:0 18px 44px rgba(44,66,55,.09),inset 0 0 0 1px rgba(35,82,64,.05)!important;}
.azbuka-hero-visual .azbuka-hero-product{border:1px solid rgba(255,255,255,.92)!important;backdrop-filter:blur(2px);}
.azbuka-hero-product img{width:100%!important;height:100%!important;object-fit:contain!important;padding:8%!important;filter:drop-shadow(0 12px 12px rgba(39,53,44,.08));}
.azbuka-product-copy-v06 .azbuka-composition-box,.azbuka-product-copy-v04 .azbuka-composition-box{margin-top:22px;padding:18px 20px;border-radius:18px;background:#f7f4eb;border:1px solid #e8dfce}.azbuka-product-copy-v06 h3{margin-top:22px}.azbuka-product-copy-v06 p{line-height:1.7}
