/*
Theme Name: Город игрушек
Theme URI:
Author: Город игрушек
Description: Тёплая классическая тема WooCommerce для магазина игрушек.
 Version: 1.1.4
Text Domain: gorod-igrushek
*/
:root{--cream:#f8f1df;--card:#fffdf7;--teal:#318a82;--peach:#f2bf5e;--navy:#20283f;--muted:#6f7482;--line:#dfd6c4}
:root{--coral:#efb0a7;--soft-teal:#d8e7df}
.site-main{padding-top:32px}
.hero{position:relative;display:block;min-height:430px;overflow:hidden;background:var(--teal);color:#fffaf0;border-radius:32px;padding:52px 64px;margin-bottom:0}
.hero-copy{position:relative;z-index:2;max-width:560px}
.hero-eyebrow,.section-eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 20px;color:var(--peach);font:11px/1.4 ui-monospace,"Courier New",monospace;letter-spacing:.18em;text-transform:uppercase}
.hero-eyebrow span{width:8px;height:8px;background:var(--peach);border-radius:50%}
.hero h1{max-width:580px;margin:0;color:#fffaf0;font:600 clamp(2.8rem,6.3vw,5rem)/.98 Georgia,"Times New Roman",serif;letter-spacing:-.045em}
.hero h1 em{color:var(--peach);font-weight:600}
.hero .hero-description{max-width:430px;margin:20px 0 0;color:rgba(255,250,240,.8);font-size:1rem;line-height:1.65}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}
.hero .button,.new-arrivals .button{display:inline-flex;align-items:center;gap:10px;padding:13px 21px;background:var(--peach);color:var(--navy);font-size:.9rem}
.hero .button-secondary{border:1px solid rgba(255,250,240,.32);background:transparent;color:#fffaf0}
.hero-scene{position:absolute;inset:0 0 0 auto;width:48%;overflow:hidden;pointer-events:none}
.hero-ring{position:absolute;top:42px;right:12%;width:300px;height:300px;border:22px solid rgba(242,191,94,.82);border-radius:50%}
.hero-block{position:absolute;right:29%;bottom:-86px;width:230px;height:245px;border-radius:42px;background:#e889a1;transform:rotate(12deg);box-shadow:12px 12px 0 rgba(242,191,94,.38)}
.hero-toy{position:absolute;right:29%;bottom:53px;display:grid;width:132px;height:132px;place-items:center;border:8px solid var(--cream);border-radius:38px;background:#e889a1;color:var(--navy);transform:rotate(-6deg);box-shadow:0 12px 22px rgba(20,40,55,.17)}
.hero-toy svg{width:62px;height:62px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}
.hero-caption{position:absolute;right:7%;bottom:24px;color:rgba(255,250,240,.65);font:10px ui-monospace,"Courier New",monospace;letter-spacing:.22em;text-transform:uppercase;writing-mode:vertical-rl}
.service-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:30px 0 0}
.service-highlights article{display:flex;align-items:flex-start;gap:14px;padding:18px;border:1px solid var(--line);border-radius:20px;background:rgba(255,253,247,.62)}
.service-icon{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:14px;background:rgba(242,191,94,.35);color:var(--teal);font-size:21px;font-weight:800}
.service-highlights h2{margin:1px 0 4px;font-size:.92rem;line-height:1.35}
.service-highlights p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.5}
.home-section{padding-top:72px}
.section-heading{margin-bottom:0}
.section-heading h2{font:600 clamp(2rem,4.3vw,3.2rem)/1.05 Georgia,"Times New Roman",serif;letter-spacing:-.035em}
.section-heading .section-eyebrow{margin-bottom:0;color:var(--teal)}
.section-heading>a{display:flex;align-items:center;gap:7px;font-weight:700}
.home-section .product-grid{margin-top:28px;gap:24px}
.product-card .thumb{background:#f4f5ef;border-radius:22px}
.product-card .thumb .placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;height:100%;color:#9aa09b}
.product-card .placeholder svg{width:92px;height:92px;fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}
.product-card .placeholder span{font-size:.72rem}
.product-card .category{font-size:.68rem}
.product-card h3{font-size:1rem;line-height:1.35}
.category-grid{margin-top:26px;gap:12px}
.category-tile{position:relative;display:flex;min-height:144px;flex-direction:column;justify-content:space-between;overflow:hidden;border-radius:22px;padding:20px;color:var(--navy);transition:transform .2s ease,box-shadow .2s ease}
.category-tile-0{background:var(--peach)}
.category-tile-1{background:var(--coral)}
.category-tile-2{background:var(--teal);color:#fffaf0}
.category-tile-3{background:#e8c56e}
.category-tile strong,.category-tile small{position:relative;z-index:1}
.category-tile strong{max-width:200px;font-size:1rem;line-height:1.35}
.category-tile small{font-size:.78rem;opacity:.78}
.category-decoration{position:absolute;right:-22px;bottom:-29px;width:105px;height:105px;border:12px solid currentColor;border-radius:50%;opacity:.12;transition:transform .2s ease}
.category-tile:hover .category-decoration{transform:scale(1.2)}
.new-arrivals{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:70px 0 20px;padding:34px 38px;border-radius:30px;background:rgba(239,176,167,.55)}
.new-arrivals .section-eyebrow{margin-bottom:0;color:var(--navy)}
.new-arrivals h2{max-width:650px;margin:10px 0 7px;font:600 clamp(1.8rem,4vw,2.8rem)/1.08 Georgia,"Times New Roman",serif;letter-spacing:-.03em}
.new-arrivals p:not(.section-eyebrow){max-width:610px;margin:0;color:rgba(32,40,63,.76)}
.new-arrivals .button{flex:none;background:var(--navy);color:var(--cream)}
@media(max-width:900px){.hero{min-height:400px;padding:44px 36px}.hero-copy{max-width:62%}.hero-scene{width:46%}.hero-ring{right:-5%;width:250px;height:250px}.hero-block{right:18%;width:190px;height:215px}.hero-toy{right:18%;width:112px;height:112px}.service-highlights{grid-template-columns:1fr}.home-section{padding-top:56px}}
@media(max-width:600px){.site-main{padding-top:20px}.hero{min-height:520px;padding:32px 24px;border-radius:26px}.hero-copy{max-width:100%}.hero h1{font-size:clamp(2.65rem,12vw,4rem)}.hero .hero-description{max-width:350px}.hero-scene{top:auto;bottom:0;width:100%;height:235px;opacity:.58}.hero-ring{top:-24px;right:-20px;width:170px;height:170px;border-width:15px}.hero-block{right:23%;bottom:-100px;width:150px;height:175px}.hero-toy{right:23%;bottom:18px;width:94px;height:94px;border-width:6px;border-radius:28px}.hero-toy svg{width:48px;height:48px}.hero-caption{right:8%;bottom:13px}.service-highlights{margin-top:18px;gap:9px}.service-highlights article{padding:15px}.home-section{padding-top:48px}.section-heading h2{font-size:2rem}.section-heading>a{font-size:.82rem}.category-tile{min-height:132px;padding:17px}.new-arrivals{align-items:flex-start;flex-direction:column;margin-top:50px;padding:25px}.new-arrivals .button{align-self:flex-start}}
 :where(.main-navigation){transition:display .2s ease}@media(max-width:900px){.main-navigation{display:block;order:4;flex-basis:100%}.main-navigation ul{flex-wrap:wrap}}

/* Keep the hero readable even when other WordPress styles override base colors. */
.site-main .hero{background:#24756f;color:#fffaf0}
.site-main .hero h1{color:#fffaf0}
.site-main .hero h1 em{color:#f2bf5e}
.site-main .hero .hero-description{color:#fffaf0}
.site-main .hero .hero-eyebrow,.site-main .hero .hero-caption{color:#fffaf0}
.site-main .hero .hero-eyebrow span{background:#f2bf5e}
.site-main .hero .button-secondary{border-color:rgba(255,250,240,.6);color:#fffaf0}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--navy);font-family:"Trebuchet MS","Segoe UI",sans-serif;line-height:1.55}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}.site-header{position:sticky;top:0;z-index:20;background:rgba(248,241,223,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.header-inner,.container{max-width:1160px;margin:auto;padding:0 24px}.header-inner{display:flex;align-items:center;gap:22px;min-height:82px}.custom-logo{width:230px;height:auto;display:block}.site-branding{flex:none}.search-form{display:flex;flex:1;max-width:420px}.search-form label{flex:1}.search-field{width:100%;border:1px solid var(--line);border-radius:999px 0 0 999px;padding:12px 18px;background:var(--card);color:var(--navy)}.search-submit,.button,button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{border:0;border-radius:999px;background:var(--teal);color:#fffaf0;padding:12px 20px;font-weight:700;cursor:pointer}.search-submit{border-radius:0 999px 999px 0}.main-navigation ul{display:flex;gap:8px;list-style:none;margin:0;padding:0}.main-navigation a{display:block;padding:10px 13px;color:var(--navy);font-weight:700}.main-navigation a:hover{color:var(--teal);text-decoration:none}.header-actions{display:flex;gap:9px;align-items:center;white-space:nowrap}.header-actions a{border:1px solid var(--line);border-radius:999px;padding:10px 14px;color:var(--navy);font-weight:700}.header-actions a:hover{background:var(--card);text-decoration:none}.site-main{padding:42px 0 70px}.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;background:var(--card);border-radius:28px;padding:48px;margin-bottom:50px}.hero h1{font:700 clamp(2.3rem,6vw,4.6rem)/1.02 Georgia,serif;margin:0 0 18px}.hero p{font-size:1.15rem;max-width:540px;color:var(--muted)}.hero-art{background:var(--teal);border-radius:28px;min-height:250px;display:grid;place-items:center;box-shadow:10px 10px 0 var(--peach)}.hero-art img{width:90%;max-width:340px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.section-heading h2,.woocommerce-products-header h1{font:700 2rem Georgia,serif;margin:0}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.product-card{min-width:0}.product-card .thumb{aspect-ratio:1;border-radius:20px;background:var(--card);display:grid;place-items:center;overflow:hidden}.product-card img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.product-card .thumb .placeholder{font-size:3rem;color:var(--teal)}.product-card h3{font-size:1.05rem;margin:10px 0 5px}.product-card .price{font-weight:700;font-size:1.15rem}.product-card .category{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.product-card .add_to_cart{float:right;padding:9px 14px}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:58px}.category-tile{background:var(--peach);border-radius:20px;padding:24px;color:var(--navy);font-weight:700}.category-tile:nth-child(2n){background:#efb0a7}.category-tile:hover{text-decoration:none;transform:translateY(-2px)}.woocommerce .site-main>.container{max-width:1160px}.woocommerce .woocommerce-breadcrumb{color:var(--muted);font-size:.9rem}.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin:28px 0}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product{float:none;width:auto;margin:0;background:transparent}.woocommerce ul.products li.product a img{border-radius:20px;background:var(--card);padding:10px}.woocommerce ul.products li.product .button{float:right;padding:9px 14px}.woocommerce span.onsale{background:var(--peach);color:var(--navy);min-height:auto;padding:5px 10px;line-height:1}.woocommerce div.product{background:var(--card);padding:30px;border-radius:24px}.woocommerce div.product div.images img{border-radius:20px}.woocommerce table.shop_table,.woocommerce form.checkout,.woocommerce form.login,.woocommerce form.register{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px}.woocommerce input.input-text,.woocommerce select,.woocommerce textarea{border:1px solid var(--line);border-radius:10px;padding:11px;background:#fffdf7}.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--teal);background:var(--card)}.site-footer{background:var(--card);border-top:1px solid var(--line);padding:45px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:35px}.footer-grid h2,.footer-grid h3{margin-top:0}.footer-bottom{border-top:1px solid var(--line);margin-top:30px;padding-top:18px;color:var(--muted);font-size:.85rem}.empty-state{padding:50px;text-align:center;border:1px dashed var(--line);border-radius:22px;background:rgba(255,253,247,.55)}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.consent-field{margin:20px 0}.consent-field label{display:flex;gap:10px;align-items:flex-start}.consent-field input{margin-top:5px}@media(max-width:900px){.header-inner{flex-wrap:wrap;padding-top:13px;padding-bottom:13px}.search-form{order:3;flex-basis:100%;max-width:none}.main-navigation{display:none}.header-actions{margin-left:auto}.product-grid,.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr;padding:30px}}@media(max-width:560px){.header-inner,.container{padding-left:16px;padding-right:16px}.custom-logo{width:190px}.header-actions a:first-child{display:none}.site-main{padding-top:24px}.product-grid,.woocommerce ul.products{gap:17px}.hero-art{min-height:170px}.footer-grid{grid-template-columns:1fr}.woocommerce div.product{padding:15px}}

/* WooCommerce product detail and related cards */
.woocommerce div.product .summary,
.woocommerce ul.products li.product,
.product-card { min-width: 0; }
.woocommerce div.product .summary,
.woocommerce div.product .product_title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.product-card h3, .product-card h3 a { overflow-wrap: anywhere; word-break: normal; }
.woocommerce ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.woocommerce div.product .related.products,
.woocommerce div.product .upsells.products { clear: both; float: none; width: 100%; margin-top: 2rem; }
.woocommerce div.product .related.products > h2,
.woocommerce div.product .upsells.products > h2 { margin: 0 0 1.1rem; }
@media (max-width: 900px) { .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }


/* Hide checkout subtotal row while keeping the calculated total. */
body.woocommerce-checkout #order_review tr.cart-subtotal,
body.woocommerce-checkout .wc-block-components-totals-item--subtotal { display: none !important; }


/* Store locations page */
.stores-directory{max-width:1080px;margin:0 auto}
.stores-intro{margin:0 0 24px;color:var(--muted);font-size:1rem;line-height:1.65}
.stores-list{display:grid;gap:22px}
.store-card{display:grid;grid-template-columns:minmax(280px,.92fr) minmax(0,1.08fr);overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--card);box-shadow:0 12px 32px rgba(32,40,63,.06)}
.store-photo{min-height:260px;margin:0;background:var(--soft-teal)}
.store-photo-image{display:block;width:100%;height:100%;min-height:260px;object-fit:cover}
.store-details{padding:28px clamp(22px,3vw,38px)}
.store-details h2{margin:0 0 20px;color:var(--navy);font:600 clamp(1.4rem,2vw,1.8rem)/1.2 Georgia,"Times New Roman",serif;letter-spacing:-.02em}
.store-label{display:block;margin:0 0 6px;color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.store-address{margin:0;color:var(--navy);font-size:1rem;line-height:1.55}
.store-city{margin:4px 0 20px;color:var(--muted)}
.store-contact-list{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0 0 18px}
.store-contact-list a{color:var(--teal);font-weight:650;text-decoration:none;overflow-wrap:anywhere}
.store-contact-list a:hover{color:var(--navy);text-decoration:underline}
.store-hours{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;margin:0;color:var(--navy)}
.store-hours span{color:var(--muted);font-size:.9rem}
.store-hours strong{font-variant-numeric:tabular-nums}
.store-greeting{margin:12px 0 0;color:var(--muted);font-size:.9rem}
@media(max-width:760px){.store-card{grid-template-columns:1fr}.store-photo{aspect-ratio:16/10;min-height:0}.store-photo-image{height:100%;min-height:0;aspect-ratio:16/10}.store-details{padding:22px}}
