:root {
    --az-bg: #f7f3ed;
    --az-surface: #fffdf9;
    --az-text: #2f342f;
    --az-muted: #6f726c;
    --az-green: #496555;
    --az-green-dark: #31493c;
    --az-green-soft: #dfe7df;
    --az-sand: #d9c8aa;
    --az-sand-soft: #eee4d2;
    --az-spa: #a9bab7;
    --az-lavender: #c9bfd7;
    --az-line: rgba(49, 73, 60, 0.14);
    --az-radius-sm: 18px;
    --az-radius: 28px;
    --az-radius-lg: 38px;
    --az-shadow: 0 22px 60px rgba(49, 73, 60, 0.10);
    --az-container: 1220px;
    --az-serif: Georgia, 'Times New Roman', serif;
    --az-sans: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
}

html { scroll-behavior: smooth; }
body.azbuka-site { margin: 0; background: var(--az-bg); color: var(--az-text); font-family: var(--az-sans); font-size: 17px; line-height: 1.65; }
body.azbuka-site * { box-sizing: border-box; }
body.azbuka-site a { color: inherit; }
body.azbuka-site img { max-width: 100%; height: auto; }
.azbuka-main { min-height: 60vh; overflow: hidden; }
.azbuka-container { width: min(calc(100% - 48px), var(--az-container)); margin: 0 auto; }
.azbuka-section { padding: 92px 0; }
.azbuka-kicker { display: inline-block; color: #b58b3d; font-size: 12px; line-height: 1.2; letter-spacing: .16em; font-weight: 800; text-transform: uppercase; }
.azbuka-section h2, .azbuka-page-hero h1, .azbuka-ai-card h2, .azbuka-story h2, .azbuka-selector-card h2 { font-family: var(--az-serif); font-weight: 700; letter-spacing: -.035em; line-height: 1.05; margin: 10px 0 20px; color: var(--az-green-dark); }
.azbuka-section h2, .azbuka-ai-card h2, .azbuka-story h2, .azbuka-selector-card h2 { font-size: clamp(38px, 4vw, 62px); }
.azbuka-section-heading { max-width: 760px; margin-bottom: 42px; }
.azbuka-section-heading p { color: var(--az-muted); max-width: 680px; margin: 0; }
.azbuka-heading-row { display: flex; max-width: none; align-items: end; justify-content: space-between; gap: 28px; }
.azbuka-heading-row > div { max-width: 800px; }

.azbuka-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 24px; border-radius: 999px; font-weight: 750; text-decoration: none !important; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; border: 1px solid transparent; cursor: pointer; font-family: var(--az-sans); font-size: 15px; }
.azbuka-btn:hover { transform: translateY(-2px); }
.azbuka-btn-primary { background: var(--az-green-dark); color: #fff !important; box-shadow: 0 12px 30px rgba(49,73,60,.18); }
.azbuka-btn-primary:hover { background: #24382e; }
.azbuka-btn-secondary { background: transparent; color: var(--az-green-dark) !important; border-color: rgba(49,73,60,.28); }
.azbuka-btn-light { background: #f4ead7; color: var(--az-green-dark) !important; }
.azbuka-text-link { color: var(--az-green-dark); font-weight: 750; text-decoration: none !important; }
.azbuka-text-link span { display: inline-block; transition: transform .2s ease; }
.azbuka-text-link:hover span { transform: translateX(4px); }

.azbuka-skip-link { position: fixed; left: 16px; top: -80px; background: #fff; color: #111; padding: 10px 14px; z-index: 99999; border-radius: 8px; }
.azbuka-skip-link:focus { top: 16px; }

.azbuka-header { position: sticky; top: 0; z-index: 999; background: rgba(247,243,237,.94); border-bottom: 1px solid rgba(49,73,60,.08); backdrop-filter: blur(18px); }
.admin-bar .azbuka-header { top: 32px; }
.azbuka-header-inner { width: min(calc(100% - 48px), 1450px); height: 88px; margin: 0 auto; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; }
.azbuka-brand { display: inline-flex; flex-direction: column; width: max-content; text-decoration: none !important; color: var(--az-green-dark) !important; line-height: 1; }
.azbuka-brand-main { font-family: var(--az-serif); font-size: 19px; font-weight: 700; letter-spacing: .02em; }
.azbuka-brand-sub { font-size: 9px; font-weight: 800; letter-spacing: .25em; margin-top: 6px; color: #a27731; }
.azbuka-nav { display: flex; align-items: center; gap: 30px; }
.azbuka-nav a { text-decoration: none !important; font-size: 14px; font-weight: 650; color: var(--az-text) !important; position: relative; }
.azbuka-nav a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: -7px; height: 1px; background: var(--az-green); transition: right .2s ease; }
.azbuka-nav a:hover::after { right: 0; }
.azbuka-header-actions { justify-self: end; display: flex; align-items: center; gap: 8px; }
.azbuka-icon-button, .azbuka-menu-toggle { width: 42px; height: 42px; border: 0; background: transparent; border-radius: 50%; display: inline-grid; place-items: center; cursor: pointer; position: relative; color: var(--az-text); text-decoration: none !important; }
.azbuka-icon-button:hover, .azbuka-menu-toggle:hover { background: rgba(49,73,60,.07); }
.azbuka-icon-search { width: 18px; height: 18px; border: 1.8px solid currentColor; border-radius: 50%; position: relative; }
.azbuka-icon-search::after { content: ''; position: absolute; width: 7px; height: 1.8px; background: currentColor; right: -5px; bottom: 0; transform: rotate(45deg); transform-origin: center; }
.azbuka-icon-bag { width: 18px; height: 17px; border: 1.8px solid currentColor; border-radius: 2px 2px 5px 5px; position: relative; }
.azbuka-icon-bag::before { content: ''; position: absolute; width: 8px; height: 6px; border: 1.8px solid currentColor; border-bottom: 0; border-radius: 8px 8px 0 0; left: 3px; top: -6px; }
.azbuka-cart-count { position: absolute; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 999px; background: #cf6e62; color: #fff; display: grid; place-items: center; font-size: 10px; right: -1px; top: 1px; }
.azbuka-menu-toggle { display: none; }
.azbuka-menu-toggle span:not(.screen-reader-text) { position: absolute; width: 18px; height: 1.5px; background: currentColor; transition: transform .2s ease; }
.azbuka-menu-toggle span:first-child { transform: translateY(-4px); }
.azbuka-menu-toggle span:nth-child(2) { transform: translateY(4px); }
.azbuka-menu-toggle[aria-expanded="true"] span:first-child { transform: rotate(45deg); }
.azbuka-menu-toggle[aria-expanded="true"] span:nth-child(2) { transform: rotate(-45deg); }

.azbuka-search-panel { position: fixed; inset: 0; z-index: 2000; background: rgba(33,43,37,.48); backdrop-filter: blur(10px); padding: 24px; }
.azbuka-search-panel[hidden] { display: none; }
.azbuka-search-dialog { width: min(680px, 100%); background: var(--az-surface); margin: 12vh auto 0; padding: 48px; border-radius: 30px; box-shadow: var(--az-shadow); position: relative; }
.azbuka-search-dialog h2 { font-family: var(--az-serif); font-size: 44px; margin: 10px 0 24px; color: var(--az-green-dark); }
.azbuka-search-close { position: absolute; right: 20px; top: 16px; width: 40px; height: 40px; border: 0; background: transparent; font-size: 30px; cursor: pointer; }
.azbuka-search-form { display: flex; gap: 10px; }
.azbuka-search-form input { flex: 1; min-width: 0; border: 1px solid var(--az-line); background: #fff; border-radius: 999px; padding: 0 20px; min-height: 54px; font-size: 16px; }

.azbuka-hero { padding: 58px 0 80px; min-height: 720px; display: flex; align-items: center; }
.azbuka-hero-grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(420px,.95fr); gap: 78px; align-items: center; }
.azbuka-hero-copy h1 { font-family: var(--az-serif); font-size: clamp(54px, 5.8vw, 86px); line-height: .98; letter-spacing: -.05em; color: var(--az-green-dark); margin: 18px 0 26px; max-width: 820px; }
.azbuka-hero-copy > p { max-width: 720px; font-size: 19px; color: #62675f; margin: 0 0 30px; }
.azbuka-hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.azbuka-trust-line { display: flex; gap: 20px; flex-wrap: wrap; margin-top: 34px; color: #73776f; font-size: 13px; }
.azbuka-trust-line span { display: inline-flex; align-items: center; gap: 8px; }
.azbuka-trust-line span::before { content: ''; width: 5px; height: 5px; background: #b58b3d; border-radius: 50%; }
.azbuka-hero-visual { position: relative; min-height: 540px; background: linear-gradient(145deg,#e9dfcf,#dfe6df); border-radius: 46% 46% 36% 42% / 43% 38% 48% 39%; isolation: isolate; }
.azbuka-hero-visual::before { content: ''; position: absolute; inset: 9% 11% 10% 10%; border: 1px solid rgba(49,73,60,.13); border-radius: inherit; z-index: -1; }
.azbuka-hero-orbit { position: absolute; border: 1px solid rgba(49,73,60,.14); border-radius: 50%; }
.azbuka-hero-orbit-one { width: 280px; height: 280px; right: 7%; top: 8%; }
.azbuka-hero-orbit-two { width: 190px; height: 190px; left: 5%; bottom: 7%; }
.azbuka-hero-product { position: absolute; display: block; overflow: hidden; box-shadow: 0 22px 38px rgba(49,73,60,.14); background: #fff; }
.azbuka-hero-product img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.azbuka-hero-product-1 { width: 42%; height: 54%; left: 10%; top: 11%; border-radius: 45% 45% 22px 22px; transform: rotate(-4deg); }
.azbuka-hero-product-2 { width: 35%; height: 48%; right: 10%; top: 20%; border-radius: 26px; transform: rotate(4deg); }
.azbuka-hero-product-3 { width: 30%; height: 37%; left: 35%; bottom: 8%; border-radius: 50% 50% 26px 26px; transform: rotate(1deg); }
.azbuka-hero-placeholder { display: grid; place-items: center; background: linear-gradient(180deg,#fff,#f1e8d9); }
.azbuka-hero-placeholder span { writing-mode: vertical-rl; text-transform: uppercase; letter-spacing: .18em; color: var(--az-green); font-size: 11px; font-weight: 800; }
.azbuka-hero-caption { position: absolute; right: 5%; bottom: -16px; padding: 16px 20px; min-width: 210px; background: var(--az-green-dark); color: #fff; border-radius: 18px; box-shadow: var(--az-shadow); }
.azbuka-hero-caption span { display: block; font-size: 9px; letter-spacing: .16em; color: #d8c6a7; font-weight: 800; }
.azbuka-hero-caption strong { font-family: var(--az-serif); font-size: 19px; display: block; margin-top: 3px; }

.azbuka-needs { background: #f0e8dc; border-radius: 50px 50px 0 0; }
.azbuka-needs-grid { display: grid; grid-template-columns: 1.35fr 1fr 1fr; grid-template-rows: repeat(2, minmax(240px,auto)); gap: 18px; }
.azbuka-need-card { background: rgba(255,255,255,.78); border: 1px solid rgba(49,73,60,.08); border-radius: var(--az-radius); padding: 30px; text-decoration: none !important; position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: end; min-height: 250px; transition: transform .25s ease, box-shadow .25s ease; }
.azbuka-need-card:hover { transform: translateY(-5px); box-shadow: var(--az-shadow); }
.azbuka-need-card-large { grid-row: 1 / 3; min-height: 510px; background: var(--az-green-dark); color: #fff !important; }
.azbuka-need-card-large h3, .azbuka-need-card-large .azbuka-text-link { color: #fff; }
.azbuka-need-card-large p { color: rgba(255,255,255,.75); }
.azbuka-need-card h3 { font-family: var(--az-serif); color: var(--az-green-dark); font-size: 30px; margin: 10px 0 6px; line-height: 1.05; }
.azbuka-need-card p { margin: 0 0 18px; color: var(--az-muted); font-size: 15px; max-width: 360px; }
.azbuka-need-number { position: absolute; left: 28px; top: 24px; font-size: 12px; font-weight: 800; letter-spacing: .14em; color: #b58b3d; }
.azbuka-need-art { position: absolute; right: 24px; top: 22px; width: 92px; height: 92px; opacity: .65; }
.azbuka-need-card-large .azbuka-need-art { width: 230px; height: 230px; top: 50px; right: 36px; opacity: .25; }
.azbuka-art-leaf::before, .azbuka-art-leaf::after { content:''; position:absolute; background:#d4c19e; border-radius: 100% 0 100% 0; width: 54%; height: 80%; transform: rotate(28deg); left: 17%; top: 8%; }
.azbuka-art-leaf::after { transform: rotate(-38deg); left: 43%; top: 24%; background:#afc0b3; }
.azbuka-art-wave::before, .azbuka-art-wave::after { content:''; position:absolute; border:2px solid var(--az-spa); width:90%; height:46%; border-radius:50%; left:4%; top:20%; transform:rotate(-10deg); }
.azbuka-art-wave::after { top:38%; transform:rotate(8deg); }
.azbuka-art-gift::before { content:''; position:absolute; inset:18px; border:2px solid #b58b3d; border-radius:12px; }
.azbuka-art-gift::after { content:''; position:absolute; left:46%; top:13px; bottom:13px; width:2px; background:#b58b3d; box-shadow:-26px 27px 0 -1px #b58b3d,26px 27px 0 -1px #b58b3d; }
.azbuka-art-home::before { content:''; position:absolute; width:56px; height:56px; border:2px solid var(--az-green); left:18px; top:28px; transform:rotate(45deg); border-radius:4px; }

.azbuka-selector-section { background: var(--az-bg); }
.azbuka-selector-card { display: grid; grid-template-columns: .85fr 1.15fr; gap: 60px; padding: 58px; background: var(--az-green-dark); border-radius: var(--az-radius-lg); color: #fff; box-shadow: var(--az-shadow); }
.azbuka-selector-copy h2 { color: #fff; }
.azbuka-selector-copy p { color: rgba(255,255,255,.72); max-width: 510px; }
.azbuka-selector-form { align-self: center; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.12); padding: 28px; border-radius: 28px; }
.azbuka-selector-form label { display: block; font-weight: 750; margin-bottom: 12px; }
.azbuka-selector-input-row { display: flex; background: #fff; border-radius: 999px; padding: 6px; gap: 6px; }
.azbuka-selector-input-row input { border: 0 !important; background: transparent !important; box-shadow: none !important; flex: 1; min-width: 0; padding: 0 18px; font-size: 15px; }
.azbuka-selector-suggestions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.azbuka-selector-suggestions button { border: 1px solid rgba(255,255,255,.2); background: transparent; color: #fff; border-radius: 999px; padding: 8px 12px; font-size: 12px; cursor: pointer; }
.azbuka-selector-status { min-height: 24px; margin: 10px 0 0; color: #e9dec9; font-size: 13px; }

.azbuka-ritual-section { background: #fffdf9; }
.azbuka-ritual-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 12px; }
.azbuka-ritual-grid-4 { grid-template-columns: repeat(4, minmax(0,1fr)); }
.azbuka-ritual-step { border: 1px solid var(--az-line); border-radius: 22px; padding: 24px 22px; min-height: 250px; background: #fff; }
.azbuka-ritual-step > span { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: var(--az-green-soft); color: var(--az-green-dark); font-size: 12px; font-weight: 800; }
.azbuka-ritual-step small { display: block; margin-top: 34px; color: #ae853d; font-weight: 800; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.azbuka-ritual-step h3 { font-family: var(--az-serif); font-size: 23px; line-height: 1.05; color: var(--az-green-dark); margin: 7px 0 12px; }
.azbuka-ritual-step p { font-size: 14px; color: var(--az-muted); margin: 0; }

.azbuka-products-section { background: var(--az-bg); }
.azbuka-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.azbuka-product-card { background: #fff; border-radius: 24px; border: 1px solid rgba(49,73,60,.08); overflow: hidden; transition: transform .2s ease, box-shadow .2s ease; }
.azbuka-product-card:hover { transform: translateY(-4px); box-shadow: var(--az-shadow); }
.azbuka-product-media { display: block; height: 300px; background: #f0ebe2; position: relative; overflow: hidden; }
.azbuka-product-media img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; padding: 18px; transition: transform .3s ease; }
.azbuka-product-card:hover .azbuka-product-media img { transform: scale(1.035); }
.azbuka-product-copy { padding: 22px; }
.azbuka-product-type { color: #b58b3d; font-weight: 800; font-size: 9px; letter-spacing: .13em; }
.azbuka-product-card h3 { font-family: var(--az-serif); color: var(--az-green-dark); font-size: 22px; line-height: 1.12; margin: 8px 0 12px; }
.azbuka-product-card h3 a { text-decoration: none !important; }
.azbuka-product-price { color: var(--az-text); font-weight: 800; margin-bottom: 16px; }
.azbuka-product-fallback { display: grid; place-items: center; height: 100%; }
.azbuka-product-fallback span { width: 94px; height: 160px; border-radius: 45px 45px 22px 22px; background: linear-gradient(180deg,#fff,#d8c6a7); box-shadow: 0 16px 30px rgba(49,73,60,.10); position: relative; }
.azbuka-product-fallback span::before { content:''; position:absolute; width:52px; height:17px; border-radius:4px 4px 0 0; background:var(--az-green); left:21px; top:-15px; }
.azbuka-product-card-placeholder p { color: var(--az-muted); font-size: 13px; margin-bottom: 0; }

.azbuka-story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.azbuka-story { min-height: 470px; border-radius: var(--az-radius-lg); padding: 54px; display: flex; flex-direction: column; align-items: flex-start; justify-content: end; text-decoration: none !important; position: relative; overflow: hidden; }
.azbuka-story::before { content:''; position:absolute; width:280px; height:280px; border-radius:50%; right:-65px; top:-65px; border:1px solid rgba(255,255,255,.22); }
.azbuka-story::after { content:''; position:absolute; width:160px; height:240px; right:68px; top:54px; background:rgba(255,255,255,.12); border-radius:80px 80px 28px 28px; transform:rotate(8deg); }
.azbuka-story-gift { background:#d9c8aa; color:var(--az-green-dark) !important; }
.azbuka-story-spa { background:var(--az-green-dark); color:#fff !important; }
.azbuka-story-full { min-height: 390px; }
.azbuka-story h2 { max-width: 620px; font-size: clamp(36px,4vw,58px); margin-right: 180px; color: inherit; }
.azbuka-story p { max-width: 620px; margin: 0 0 24px; opacity: .78; }

.azbuka-category-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.azbuka-category-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.azbuka-category-card { min-height: 250px; padding: 28px; border-radius: 22px; border: 1px solid var(--az-line); background:#fff; text-decoration:none !important; display:flex; flex-direction:column; transition:background .2s ease, transform .2s ease; }
.azbuka-category-card:hover { background:#f1e9dc; transform:translateY(-3px); }
.azbuka-category-letter { width:42px; height:42px; display:grid; place-items:center; background:var(--az-green-soft); color:var(--az-green-dark); border-radius:50%; font-family:var(--az-serif); font-weight:700; }
.azbuka-category-card h3 { font-family:var(--az-serif); color:var(--az-green-dark); font-size:27px; margin:28px 0 8px; }
.azbuka-category-card p { color:var(--az-muted); font-size:14px; margin:0 0 22px; }
.azbuka-category-card > span:last-child { margin-top:auto; font-weight:750; color:var(--az-green-dark); }
.azbuka-category-card-compact { min-height: 190px; }
.azbuka-category-card-compact h3 { margin-top:22px; }

.azbuka-brands-section { padding-top: 30px; }
.azbuka-brand-list { display:flex; gap:12px; flex-wrap:wrap; margin-top:22px; }
.azbuka-brand-list span { border:1px solid var(--az-line); border-radius:999px; padding:12px 18px; background:#fff; font-weight:700; }

.azbuka-ai-card { background:#efe4d1; border-radius:var(--az-radius-lg); padding:54px; display:flex; justify-content:space-between; align-items:end; gap:50px; }
.azbuka-ai-card > div { max-width:800px; }
.azbuka-ai-card p { color:var(--az-muted); margin:0; }

.azbuka-page-hero { padding: 100px 0 80px; background: linear-gradient(180deg,#f7f3ed,#eee5d6); }
.azbuka-page-hero-warm { background:linear-gradient(145deg,#f7f3ed,#ead9bd); }
.azbuka-page-hero-spa { background:linear-gradient(145deg,#f7f3ed,#d8e2df); }
.azbuka-page-hero-lavender { background:linear-gradient(145deg,#f7f3ed,#e1d8e7); }
.azbuka-page-hero .azbuka-container { max-width:1000px; }
.azbuka-page-hero h1 { font-size:clamp(50px,6vw,84px); margin-top:18px; }
.azbuka-page-hero p { max-width:790px; font-size:19px; color:var(--az-muted); }
.azbuka-page-hero .azbuka-btn, .azbuka-page-hero .azbuka-hero-actions { margin-top:26px; }
.azbuka-content-card { background:#fff; border-radius:var(--az-radius); padding:44px; border:1px solid var(--az-line); }

.azbuka-need-chips { display:flex; gap:10px; flex-wrap:wrap; margin-top:28px; }
.azbuka-chip { display:inline-flex; gap:9px; align-items:center; border:1px solid var(--az-line); background:#fff; border-radius:999px; padding:10px 14px; text-decoration:none !important; font-weight:700; font-size:13px; }
.azbuka-chip-icon { width:20px; height:20px; border-radius:50%; background:var(--az-green-soft); position:relative; }

.azbuka-shop-intro { padding: 70px 0 36px; background:linear-gradient(180deg,#f7f3ed,#efe7da); margin-bottom:30px; }
.azbuka-shop-intro h1 { font-family:var(--az-serif); font-size:clamp(44px,5vw,68px); color:var(--az-green-dark); margin:12px 0 12px; }
.azbuka-shop-intro p { color:var(--az-muted); max-width:720px; }

body.azbuka-site.woocommerce .site-main, body.azbuka-site.woocommerce-page .site-main { width:min(calc(100% - 48px),var(--az-container)); margin:0 auto; }
body.azbuka-site.woocommerce ul.products, body.azbuka-site.woocommerce-page ul.products { gap:18px; }
body.azbuka-site.woocommerce ul.products li.product, body.azbuka-site.woocommerce-page ul.products li.product { background:#fff; border:1px solid var(--az-line); border-radius:24px; padding:14px 14px 20px; overflow:hidden; transition:transform .2s ease, box-shadow .2s ease; }
body.azbuka-site.woocommerce ul.products li.product:hover { transform:translateY(-4px); box-shadow:var(--az-shadow); }
body.azbuka-site.woocommerce ul.products li.product img { border-radius:18px; background:#f0ebe2; }
body.azbuka-site.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family:var(--az-serif); color:var(--az-green-dark); font-size:21px !important; }
body.azbuka-site.woocommerce ul.products li.product .price { color:var(--az-text) !important; font-weight:800; }
body.azbuka-site.woocommerce a.button, body.azbuka-site.woocommerce button.button, body.azbuka-site.woocommerce input.button { border-radius:999px !important; background:var(--az-green-dark) !important; color:#fff !important; font-weight:700 !important; padding:13px 20px !important; }
body.azbuka-site.woocommerce div.product { padding-top:50px; }
body.azbuka-site.woocommerce div.product div.images img { border-radius:26px; background:#f0ebe2; }
body.azbuka-site.woocommerce div.product .product_title { font-family:var(--az-serif); color:var(--az-green-dark); font-size:clamp(38px,4vw,58px); line-height:1.05; }
body.azbuka-site.woocommerce div.product p.price, body.azbuka-site.woocommerce div.product span.price { color:var(--az-green-dark) !important; font-weight:800; }
.azbuka-product-advisor { margin:60px 0; background:#efe4d1; border-radius:28px; padding:42px; }
.azbuka-product-advisor h3 { font-family:var(--az-serif); color:var(--az-green-dark); font-size:34px; margin:8px 0 12px; }
.azbuka-product-advisor p { color:var(--az-muted); max-width:800px; }
body.azbuka-site .woocommerce-message, body.azbuka-site .woocommerce-info { border-top-color:var(--az-green) !important; background:#eef2ed; border-radius:16px; }
body.azbuka-site .woocommerce-error { border-top-color:#b9695c !important; border-radius:16px; }

.azbuka-footer { background:#263b31; color:#fff; padding:72px 0 28px; margin-top:50px; }
.azbuka-footer-grid { display:grid; grid-template-columns:1.4fr .7fr .7fr 1fr; gap:50px; }
.azbuka-footer .azbuka-brand { color:#fff !important; }
.azbuka-footer p { color:rgba(255,255,255,.66); max-width:360px; font-size:14px; }
.azbuka-footer h3 { font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:#d7c09a; margin:0 0 16px; }
.azbuka-footer-grid > div > a { display:block; color:#fff !important; text-decoration:none !important; margin:9px 0; font-size:14px; opacity:.86; }
.azbuka-footer-note { padding:22px; border:1px solid rgba(255,255,255,.12); border-radius:20px; }
.azbuka-footer-bottom { margin-top:54px; padding-top:24px; border-top:1px solid rgba(255,255,255,.12); display:flex; justify-content:space-between; gap:20px; font-size:12px; color:rgba(255,255,255,.5); }

@media (max-width: 1100px) {
    .azbuka-nav { gap: 20px; }
    .azbuka-hero-grid { grid-template-columns: 1fr .9fr; gap: 40px; }
    .azbuka-ritual-grid { grid-template-columns: repeat(3,1fr); }
    .azbuka-product-grid { grid-template-columns: repeat(2,1fr); }
    .azbuka-footer-grid { grid-template-columns: 1.3fr 1fr 1fr; }
    .azbuka-footer-note { grid-column: 1 / -1; }
}

@media (max-width: 860px) {
    .admin-bar .azbuka-header { top: 46px; }
    .azbuka-container { width:min(calc(100% - 32px),var(--az-container)); }
    .azbuka-section { padding:66px 0; }
    .azbuka-header-inner { width:calc(100% - 30px); height:76px; grid-template-columns:1fr auto; }
    .azbuka-menu-toggle { display:inline-grid; }
    .azbuka-nav { position:fixed; left:16px; right:16px; top:90px; display:none; flex-direction:column; align-items:stretch; gap:0; background:#fff; border-radius:22px; box-shadow:var(--az-shadow); padding:16px; }
    .admin-bar .azbuka-nav { top:136px; }
    .azbuka-nav.is-open { display:flex; }
    .azbuka-nav a { padding:14px 12px; border-bottom:1px solid var(--az-line); }
    .azbuka-nav a:last-child { border-bottom:0; }
    .azbuka-nav a::after { display:none; }
    .azbuka-hero { min-height:auto; padding:56px 0 64px; }
    .azbuka-hero-grid { grid-template-columns:1fr; }
    .azbuka-hero-copy h1 { font-size:clamp(48px,11vw,68px); }
    .azbuka-hero-visual { min-height:480px; max-width:620px; width:100%; margin:0 auto; }
    .azbuka-needs-grid { grid-template-columns:1fr 1fr; grid-template-rows:auto; }
    .azbuka-need-card-large { grid-row:auto; grid-column:1 / -1; min-height:390px; }
    .azbuka-selector-card { grid-template-columns:1fr; padding:36px; gap:32px; }
    .azbuka-ritual-grid, .azbuka-ritual-grid-4 { grid-template-columns:repeat(2,1fr); }
    .azbuka-story-grid, .azbuka-category-grid, .azbuka-category-grid-3 { grid-template-columns:1fr 1fr; }
    .azbuka-heading-row { align-items:flex-start; flex-direction:column; }
    .azbuka-footer-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width: 600px) {
    body.azbuka-site { font-size:16px; }
    .azbuka-brand-main { font-size:16px; }
    .azbuka-brand-sub { font-size:8px; }
    .azbuka-icon-button { width:38px; height:38px; }
    .azbuka-header-actions { gap:2px; }
    .azbuka-section h2, .azbuka-selector-card h2, .azbuka-ai-card h2 { font-size:38px; }
    .azbuka-hero-copy h1 { font-size:48px; }
    .azbuka-hero-copy > p { font-size:16px; }
    .azbuka-hero-actions .azbuka-btn { width:100%; }
    .azbuka-trust-line { display:none; }
    .azbuka-hero-visual { min-height:390px; }
    .azbuka-hero-caption { right:8px; bottom:-10px; }
    .azbuka-needs { border-radius:30px 30px 0 0; }
    .azbuka-needs-grid { grid-template-columns:1fr; }
    .azbuka-need-card-large { grid-column:auto; min-height:340px; }
    .azbuka-selector-card { padding:28px 20px; border-radius:28px; }
    .azbuka-selector-form { padding:18px; }
    .azbuka-selector-input-row { flex-direction:column; background:transparent; }
    .azbuka-selector-input-row input { min-height:54px; background:#fff !important; border-radius:999px; padding:0 18px; }
    .azbuka-selector-input-row .azbuka-btn { width:100%; }
    .azbuka-ritual-grid, .azbuka-ritual-grid-4, .azbuka-product-grid, .azbuka-story-grid, .azbuka-category-grid, .azbuka-category-grid-3 { grid-template-columns:1fr; }
    .azbuka-product-media { height:340px; }
    .azbuka-story { min-height:400px; padding:34px 26px; }
    .azbuka-story h2 { margin-right:0; max-width:100%; }
    .azbuka-story::after { opacity:.45; }
    .azbuka-ai-card { padding:34px 24px; flex-direction:column; align-items:flex-start; gap:26px; }
    .azbuka-page-hero { padding:70px 0 56px; }
    .azbuka-page-hero h1 { font-size:48px; }
    .azbuka-search-dialog { padding:36px 20px 24px; }
    .azbuka-search-form { flex-direction:column; }
    .azbuka-footer-grid { grid-template-columns:1fr; }
    .azbuka-footer-bottom { flex-direction:column; }
}
