/* ============================================================
   Autickovo - hlavný štýl
   ============================================================ */

:root{
  --av-bg:#FFFDF7;
  --av-bg-2:#FFF6E4;
  --av-card:#FFFFFF;
  --av-line:#EDE6D6;
  --av-line-2:#E2D8C2;
  --av-text:#22303C;
  --av-mut:#6B7A88;
  --av-accent:#FFC21A;
  --av-blue:#2F9DE3;
  --av-coral:#FF6B5A;
  --av-green:#4FBF7B;
  --av-r:18px;
  --av-r-lg:28px;
  --av-sh:0 4px 18px rgba(34,48,60,.07);
  --av-sh-2:0 10px 30px rgba(34,48,60,.12);
  --av-wrap:1240px;
  --av-h:'Baloo 2',Verdana,system-ui,sans-serif;
  --av-b:'Nunito',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--av-bg);color:var(--av-text);font:400 16.5px/1.65 var(--av-b);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:hover{color:var(--av-blue)}
h1,h2,h3,h4{font-family:var(--av-h);font-weight:700;line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(30px,4.4vw,50px)}
h2{font-size:clamp(24px,2.9vw,34px)}
h3{font-size:clamp(19px,2vw,22px)}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--av-blue);outline-offset:2px}
.wrap{width:min(100% - 32px,var(--av-wrap));margin-inline:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:0;background:var(--av-blue);color:#fff;padding:10px 16px;z-index:999;border-radius:0 0 12px 0}
.skip:focus{left:0;top:0}
.mt{margin-top:24px}

/* --- tlačidlá --- */
.btn,.button,button.single_add_to_cart_button,.woocommerce a.button,.woocommerce button.button,
.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 26px;border:0;border-radius:999px;cursor:pointer;
  font:700 15px/1 var(--av-b);background:var(--av-accent);color:#2A2000;
  box-shadow:0 4px 0 rgba(0,0,0,.10);transition:transform .12s,box-shadow .12s,filter .12s}
.btn:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce input.button:hover,.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,.woocommerce #respond input#submit.alt:hover{
  transform:translateY(-2px);box-shadow:0 6px 0 rgba(0,0,0,.10);color:#2A2000;filter:brightness(1.03);background:var(--av-accent)}
.btn--soft{background:#fff;color:var(--av-text);box-shadow:0 4px 0 var(--av-line-2)}
.btn--soft:hover{box-shadow:0 6px 0 var(--av-line-2)}

/* --- horný pruh --- */
.topbar{background:var(--av-blue);color:#fff;font-size:14px}
.topbar__in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:40px;flex-wrap:wrap}
.topbar__claim{margin:0;font-weight:600}
.topbar__links{display:flex;gap:18px;list-style:none;flex-wrap:wrap}
.topbar a:hover{color:#FFF3C4}

/* --- hlavička --- */
.hdr{position:sticky;top:0;z-index:60;background:rgba(255,253,247,.96);backdrop-filter:blur(8px);border-bottom:2px solid var(--av-line)}
.hdr__in{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;padding:14px 0}
.brand{display:inline-flex;align-items:center;gap:9px}
.brand__car{color:var(--av-coral)}
.brand__name{font:700 30px/1 var(--av-h);color:var(--av-text)}
.custom-logo{max-height:52px;width:auto}
.hdr__tools{display:flex;align-items:center;gap:8px}
.hdr__icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;
  background:#fff;border:2px solid var(--av-line);border-radius:50%;transition:border-color .15s,transform .15s}
.hdr__icon:hover{border-color:var(--av-blue);transform:translateY(-1px);color:var(--av-blue)}
.hdr__cart-count{position:absolute;top:-4px;right:-4px;min-width:21px;height:21px;padding:0 5px;border-radius:11px;
  background:var(--av-coral);color:#fff;font:700 12px/21px var(--av-b);text-align:center}
.hdr__cart-count.is-empty{display:none}
.hdr__burger{display:none;width:46px;height:46px;background:#fff;border:2px solid var(--av-line);border-radius:50%;cursor:pointer}

/* --- vyhľadávanie --- */
.srch{display:flex;background:#fff;border:2px solid var(--av-line);border-radius:999px;overflow:hidden}
.srch:focus-within{border-color:var(--av-blue)}
.srch__input{flex:1;min-width:0;background:transparent;border:0;padding:13px 20px;font:400 15.5px var(--av-b);color:var(--av-text)}
.srch__input::placeholder{color:var(--av-mut)}
.srch__input:focus{outline:none}
.srch__btn{background:var(--av-accent);border:0;color:#2A2000;padding:0 22px;cursor:pointer;display:grid;place-items:center}

/* --- menu --- */
.mainnav{background:transparent;border-top:2px solid var(--av-line)}
.mainnav__list{display:flex;list-style:none;flex-wrap:wrap;gap:2px}
.mainnav__list>li{position:relative}
.mainnav__list>li>a{display:flex;align-items:center;gap:8px;padding:13px 16px;font:700 15px/1 var(--av-b);border-radius:999px}
.mainnav__list>li>a:hover{background:var(--av-bg-2);color:var(--av-text)}
.dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none}
.mainnav .submenu{position:absolute;top:100%;left:0;min-width:230px;background:#fff;border:2px solid var(--av-line);
  border-radius:var(--av-r);list-style:none;padding:8px;display:none;z-index:70;box-shadow:var(--av-sh-2)}
.mainnav li:hover>.submenu,.mainnav li:focus-within>.submenu{display:block}
.mainnav .submenu a{display:block;padding:9px 12px;border-radius:12px;font-size:15px}
.mainnav .submenu a:hover{background:var(--av-bg-2)}
.submenu-toggle{display:none}

/* --- hero --- */
.hero{background:linear-gradient(180deg,var(--av-bg-2),var(--av-bg));border-bottom:2px solid var(--av-line)}
.hero__in{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center;padding:56px 0 62px}
.hero__text p{font-size:18.5px;color:var(--av-mut);max-width:50ch}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.hero__blob{display:grid;place-items:center;color:var(--av-blue);
  background:radial-gradient(closest-side,#fff,transparent);border-radius:50%;aspect-ratio:1;max-width:360px;margin-inline:auto}

/* --- sekcie --- */
.sec{padding:52px 0}
.sec--alt{background:var(--av-bg-2)}
.sec__title{margin-bottom:26px}

/* --- veky --- */
.ages{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}
.ages__tile{display:flex;flex-direction:column;align-items:center;gap:4px;padding:26px 16px;border-radius:var(--av-r-lg);
  background:var(--tile);color:#fff;box-shadow:var(--av-sh);transition:transform .15s,box-shadow .15s}
.ages__tile:hover{transform:translateY(-3px);box-shadow:var(--av-sh-2);color:#fff}
.ages__num{font:700 44px/1 var(--av-h)}
.ages__lbl{font-weight:700}

/* --- kategórie --- */
.cats{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.cats__tile{display:flex;flex-direction:column;gap:6px;min-height:118px;padding:20px;border-radius:var(--av-r-lg);
  background:#fff;border:2px solid var(--av-line);box-shadow:var(--av-sh);transition:transform .15s,border-color .15s;
  border-bottom:6px solid var(--tile)}
.cats__tile:hover{transform:translateY(-3px);border-color:var(--tile);color:var(--av-text)}
.cats__name{font:700 20px/1.2 var(--av-h)}
.cats__count{color:var(--av-mut);font-size:14px}

/* --- rady --- */
.tips__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.tips__card{background:#fff;border:2px solid var(--av-line);border-radius:var(--av-r-lg);padding:22px}
.tips__age{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;color:#fff;
  font:700 19px/1 var(--av-h);margin-bottom:10px}
.tips__card h3{margin-bottom:6px}
.tips__card p{color:var(--av-mut);font-size:15.5px;margin:0}

/* --- obchod --- */
.shop-wrap{padding:24px 0 60px}
.agebar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#fff;border:2px solid var(--av-line);
  border-radius:var(--av-r-lg);padding:14px 18px;margin-bottom:22px}
.agebar__lbl{font-weight:700}
.agebar ul{display:flex;gap:8px;list-style:none;flex-wrap:wrap}
.agepill{display:inline-block;padding:9px 16px;border-radius:999px;background:var(--pill,#EEE);color:#fff;font-weight:700;font-size:14px}
.agepill:hover{color:#fff;filter:brightness(1.06)}
.agepill--all{background:#fff;color:var(--av-text);border:2px solid var(--av-line)}
.shop-body{display:grid;grid-template-columns:1fr;gap:30px;align-items:start}
.shop-body.has-filters{grid-template-columns:250px minmax(0,1fr)}
.shop-main{min-width:0}
.shop-filters{background:#fff;border:2px solid var(--av-line);border-radius:var(--av-r-lg);padding:18px;position:sticky;top:100px}
.shop-filters__title{font-size:19px;margin-bottom:12px}
.shop-filters .widget{margin-bottom:20px}
.shop-filters .widget__title{font-size:16px;margin-bottom:8px}
.shop-filters ul{list-style:none;font-size:15px}
.shop-filters li{padding:5px 0}


.crumbs{margin-bottom:14px;font-size:14px;color:var(--av-mut)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.crumbs li+li::before{content:"›";margin-right:8px}

/* --- mriežka produktov --- */
ul.products{list-style:none;display:grid;gap:18px;margin:0 0 32px;grid-template-columns:repeat(auto-fill,minmax(238px,1fr))}
ul.products li.product{position:relative;background:var(--av-card);border:2px solid var(--av-line);border-radius:var(--av-r-lg);
  padding:14px;display:flex;flex-direction:column;margin:0;transition:transform .15s,box-shadow .15s,border-color .15s}
ul.products li.product:hover{transform:translateY(-3px);box-shadow:var(--av-sh-2);border-color:var(--av-line-2)}
ul.products li.product img{aspect-ratio:1/1;object-fit:contain;border-radius:14px;background:#fff;margin-bottom:12px}
.agebadge{position:absolute;top:16px;left:16px;z-index:3;color:#fff;font:700 13px/1 var(--av-b);
  padding:7px 11px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.loop-brand{margin:0 0 2px;font-size:13px;font-weight:700;color:var(--av-blue)}
.loop-spec{margin:0 0 8px;font-size:13.5px;color:var(--av-mut)}
ul.products li.product .woocommerce-loop-product__title{
  font:700 16.5px/1.35 var(--av-b)!important;margin:0 0 6px;padding:0;color:var(--av-text)}
ul.products li.product .price{font:700 22px/1 var(--av-h)!important;color:var(--av-text);margin:auto 0 12px}
ul.products li.product .price del{color:var(--av-mut);font-size:15px;margin-right:6px}
ul.products li.product .price ins{text-decoration:none;color:var(--av-coral)}
ul.products li.product .button{width:100%;padding:12px 16px;font-size:14px}
.woocommerce span.onsale{position:absolute;top:16px;right:16px;left:auto;z-index:3;background:var(--av-coral);color:#fff;
  font:700 12px/1 var(--av-b);padding:7px 11px;border-radius:999px;min-height:0;min-width:0;margin:0}

.woocommerce-result-count{color:var(--av-mut);font-size:15px}
.woocommerce-ordering select,.shop-filters select{
  background:#fff;border:2px solid var(--av-line);border-radius:999px;padding:10px 16px;color:var(--av-text)}

/* --- detail produktu --- */
.single-product div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:start}
.single-product .woocommerce-product-gallery{background:#fff;border:2px solid var(--av-line);border-radius:var(--av-r-lg);padding:16px}
.single-product .product_title{font-size:clamp(25px,3vw,38px)}
.pdp-age{display:inline-block;background:var(--av-green);color:#fff;font-weight:700;font-size:14px;padding:7px 14px;border-radius:999px;margin:0 0 12px}
.single-product .price{font:700 34px/1 var(--av-h);color:var(--av-text);margin:0 0 8px}
.single-product .woocommerce-product-details__short-description{color:var(--av-mut)}
.pdp-meta{list-style:none;display:grid;gap:6px;margin:0 0 20px;font-size:15px}
.pdp-meta li{display:flex;gap:10px}
.pdp-meta span{color:var(--av-mut);min-width:80px}
.single-product form.cart{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:20px 0}
.single-product .quantity input.qty{width:80px;background:#fff;border:2px solid var(--av-line);border-radius:999px;
  padding:12px;text-align:center;color:var(--av-text)}
.stock.in-stock{color:#2E9E5B;font-weight:700}
.stock.out-of-stock,.stock.available-on-backorder{color:#C77700;font-weight:700}
.pdp-specs,.pdp-safety{grid-column:1/-1;margin-top:36px;background:#fff;border:2px solid var(--av-line);
  border-radius:var(--av-r-lg);padding:24px}
.pdp-specs dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px 26px;margin:0}
.pdp-specs__row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--av-line);padding:9px 0}
.pdp-specs dt{color:var(--av-mut)}
.pdp-specs dd{margin:0;font-weight:700;text-align:right}
.pdp-safety dl{display:grid;grid-template-columns:230px 1fr;gap:10px 14px;margin:0}
.pdp-safety dt{color:var(--av-mut)}
.pdp-safety dd{margin:0}
.woocommerce-tabs{grid-column:1/-1;margin-top:34px}
.woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:8px;padding:0;margin:0 0 18px;border:0}
.woocommerce-tabs ul.tabs::before{display:none}
.woocommerce-tabs ul.tabs li{background:#fff;border:2px solid var(--av-line);border-radius:999px;margin:0;padding:0}
.woocommerce-tabs ul.tabs li a{display:block;padding:10px 20px;font-weight:700;color:var(--av-text)}
.woocommerce-tabs ul.tabs li.active{background:var(--av-accent);border-color:var(--av-accent)}
.related.products,.up-sells{grid-column:1/-1;margin-top:42px}

/* --- stránky --- */
.page{padding:26px 0 60px}
.page__title{margin-bottom:20px}
.page__main--doc{max-width:76ch}
.prose{font-size:17px;line-height:1.78}
.prose h2{margin-top:1.7em}
.prose h3{margin-top:1.4em}
.prose ul,.prose ol{padding-left:22px;margin:0 0 1.2em}
.prose li{margin-bottom:.4em}
.prose a{color:var(--av-blue);text-decoration:underline}
.prose table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:15.5px}
.prose th,.prose td{border:1px solid var(--av-line);padding:10px 12px;text-align:left}
.notice{background:#fff;border:2px solid var(--av-line);border-radius:var(--av-r);padding:16px 18px}
.postlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.postcard{background:#fff;border:2px solid var(--av-line);border-radius:var(--av-r-lg);padding:18px}
.postcard p{color:var(--av-mut);margin:0}

/* --- WooCommerce prvky --- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  background:#fff!important;border-top:4px solid var(--av-green)!important;border-radius:var(--av-r);color:var(--av-text)!important;list-style:none}
.woocommerce-error{border-top-color:var(--av-coral)!important}
.woocommerce table.shop_table{background:#fff;border:2px solid var(--av-line);border-radius:var(--av-r-lg)}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:var(--av-line)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
.woocommerce form .form-row select,.select2-container--default .select2-selection--single{
  background:#fff!important;border:2px solid var(--av-line)!important;border-radius:14px!important;
  padding:12px 14px!important;height:auto!important;color:var(--av-text)!important;font:400 15.5px var(--av-b)}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.4!important;padding:0!important}
.woocommerce-checkout #payment{background:#fff!important;border:2px solid var(--av-line);border-radius:var(--av-r-lg)}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:8px;justify-content:center}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{
  background:#fff;border:2px solid var(--av-line);border-radius:999px;padding:10px 16px;color:var(--av-text)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--av-accent);border-color:var(--av-accent)}
.woocommerce-MyAccount-navigation ul{list-style:none}
.woocommerce-MyAccount-navigation li a{display:block;padding:11px 6px;border-bottom:1px solid var(--av-line)}

/* --- pätička --- */
.ftr{background:#fff;border-top:2px solid var(--av-line);margin-top:auto}
.ftr__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:30px;padding:48px 0 36px}
.ftr__col h2{font-size:19px;margin-bottom:12px}
.ftr__col ul{list-style:none;font-size:15.5px}
.ftr__col li{margin-bottom:8px}
.ftr__brand{display:flex;align-items:center;gap:8px;font:700 24px/1 var(--av-h);margin-bottom:10px;color:var(--av-coral)}
.ftr__addr,.ftr__line{color:var(--av-mut);font-size:15px;margin:0 0 6px;display:flex;align-items:center;gap:8px}
.ftr__bar{background:var(--av-bg-2);font-size:14px;color:var(--av-mut)}
.ftr__bar-in{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 0}
.ftr__bar p{margin:0}

/* --- responzívne --- */
@media (max-width:1080px){
  .shop-body.has-filters{grid-template-columns:1fr}
  .shop-filters{position:static}
  .single-product div.product{grid-template-columns:1fr}
  .ftr__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .hdr__in{grid-template-columns:auto auto;gap:12px}
  .hdr__search{grid-column:1/-1;order:3}
  .hdr__burger{display:grid;place-items:center}
  .mainnav{display:none}
  .mainnav.is-open{display:block}
  .mainnav__list{flex-direction:column;padding:10px 0}
  .mainnav__list>li>a{padding:14px 10px;font-size:16px}
  .mainnav .submenu{position:static;display:none;border:0;box-shadow:none;padding:0 0 8px 22px}
  .mainnav li.is-open>.submenu{display:block}
  .submenu-toggle{display:block;position:absolute;right:0;top:4px;width:42px;height:42px;background:#fff;
    border:2px solid var(--av-line);border-radius:50%;cursor:pointer}
  .submenu-toggle span{display:block;width:9px;height:9px;margin:auto;border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-2px,-2px)}
  .hero__in{grid-template-columns:1fr;padding:38px 0 44px}
  .hero__blob{display:none}
  .topbar__claim{display:none}
  .pdp-safety dl{grid-template-columns:1fr}
}
@media (max-width:560px){
  .ftr__grid{grid-template-columns:1fr;gap:24px;padding:34px 0 24px}
  ul.products{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:12px}
  ul.products li.product{padding:10px;border-radius:20px}
  .agebadge{top:12px;left:12px;font-size:12px;padding:5px 9px}
  .sec{padding:34px 0}
  .ages__num{font-size:36px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* --- panel filtrov --- */
.f-cats,.f-list,.f-sub{list-style:none;font-size:15px}
.f-cats>li{padding:5px 0}
.f-cats>li>a{font-weight:700}
.f-sub{padding:3px 0 4px 12px}
.f-sub li{padding:3px 0}
.f-list li{padding:4px 0}
.f-list li.is-on>a{color:var(--av-coral);font-weight:800}
.shop-filters a{display:flex;justify-content:space-between;gap:8px}
.shop-filters a span{color:var(--av-mut);font-size:12.5px}
.f-reset a{color:var(--av-coral);text-decoration:underline}
ul.products li.product{height:100%}

/* Galéria sa nesmie skrývať, keď skript nedobehne. */
.woocommerce-product-gallery{opacity:1!important;transition:none!important}
.woocommerce-product-gallery__wrapper{display:block}
.woocommerce-product-gallery .flex-viewport{max-height:none}
.woocommerce-product-gallery__image img{width:100%;height:auto}
.woocommerce-product-gallery__image--placeholder img{opacity:.5}

/* Na mobile chce návštevník najprv produkty, filtre až pod nimi. */
@media (max-width:1080px){
  .shop-body.has-filters{display:flex;flex-direction:column}
  .shop-body.has-filters .shop-main{order:1}
  .shop-body.has-filters .shop-filters{order:2}
}
