/*
Theme Name: UDG Fire
Description: Тема магазина UDG Fire (повторяет дизайн udgfire.md на Tilda)
Version: 0.1
Text Domain: udgfire
*/
:root{--black:#000;--red:#dd0f2d;--grey:#f5f5f5;--card:#ebebeb;--text:#58595b;--radius:8px;--wrap:1200px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Inter Tight',Arial,sans-serif;color:#000;background:#fff;font-size:16px;line-height:1.55}
h1,h2,h3,h4,.menu a,.btn,button,.button,.price,.woocommerce-loop-product__title{font-family:'Oswald',Arial,sans-serif}
h1,h2,h3{text-transform:uppercase;font-weight:600;line-height:1.1;margin:0 0 .5em}
h1{font-size:clamp(28px,4vw,48px)}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
/* header */
.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e6e6e6}
.site-header .wrap{display:flex;align-items:center;gap:32px;min-height:72px}
.site-header .logo img{height:44px;width:auto;display:block}
.menu{display:flex;gap:28px;list-style:none;margin:0 auto;padding:0}
.menu>li{position:relative}
.menu a{font-size:18px;font-weight:500;text-transform:uppercase;padding:24px 0;display:block}
.menu a:hover,.menu .current-menu-item>a{color:var(--red)}
.menu .sub-menu{display:none;position:absolute;top:100%;left:-16px;min-width:340px;background:#fff;border:1px solid #e6e6e6;border-radius:var(--radius);padding:8px 0;list-style:none;margin:0;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.menu li:hover>.sub-menu{display:block}
.menu .sub-menu a{padding:10px 20px;text-transform:none;font-weight:400;font-size:17px}
.hdr-right{display:flex;align-items:center;gap:20px}
.cart-link{position:relative;display:flex}
.cart-link svg{width:22px;height:22px}
.cart-count{position:absolute;top:-8px;right:-10px;background:var(--red);color:#fff;border-radius:99px;font:600 11px/1 'Oswald';padding:3px 6px}
.btn,.button,button.button,input[type=submit],.wc-block-components-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#000;color:#fff!important;border:1px solid #000;border-radius:var(--radius);padding:9px 28px;font-size:18px;font-weight:500;text-transform:uppercase;cursor:pointer;transition:.2s}
.btn:hover,.button:hover,input[type=submit]:hover{background:var(--red);border-color:var(--red)}
.button.alt,.single_add_to_cart_button{background:#000}
.btn-outline{background:#fff;color:#000!important}
.btn-outline:hover{color:#fff!important}
.lang{font:500 16px 'Oswald'}
/* footer */
.site-footer{background:#000;color:#fff;margin-top:80px;padding:56px 0 24px}
.site-footer .cols{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.site-footer h4{text-transform:uppercase;font-weight:500;margin:0 0 14px}
.site-footer a{display:block;color:#c5c5c5;padding:4px 0}
.site-footer a:hover{color:#fff}
.site-footer .copy{border-top:1px solid #333;margin-top:36px;padding-top:18px;color:#888;font-size:14px}
/* shop */
.shop-title{margin:48px 0 24px}
.woocommerce-breadcrumb{font-size:14px;color:#777;margin:24px 0}
ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:0}
ul.products li.product{margin:0!important;width:auto!important;float:none!important;position:relative;text-align:center}
ul.products li.product img{background:var(--card);border-radius:var(--radius);width:100%;aspect-ratio:1/1;object-fit:contain;margin:0 0 14px}
.woocommerce-loop-product__title{font-size:20px!important;text-transform:uppercase;font-weight:600;line-height:1.15;padding:0!important}
.price{color:var(--red);font-weight:600;font-size:20px;display:block;margin:10px 0 14px}
.price del{color:#999;font-weight:400;font-size:16px}
ul.products li.product .button{width:100%;padding:8px 10px;font-size:16px}
.woocommerce-result-count,.woocommerce-ordering{margin:0 0 20px}
.woocommerce-ordering select{border:1px solid #ccc;border-radius:var(--radius);padding:8px 12px;font:inherit}
.woocommerce-pagination ul{display:flex;gap:6px;justify-content:center;list-style:none;padding:0;margin:32px 0;border:0!important}
.woocommerce-pagination li{border:0!important}
.woocommerce-pagination a,.woocommerce-pagination span{display:block;padding:8px 14px;border:1px solid #ccc;border-radius:var(--radius)}
.woocommerce-pagination .current{background:#000;color:#fff;border-color:#000}
/* single product */
.single-product div.product{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.single-product div.product .woocommerce-product-gallery{background:var(--card);border-radius:var(--radius);margin:0!important;width:100%!important;float:none!important}
.single-product div.product .woocommerce-product-gallery img{width:100%;aspect-ratio:1/1;object-fit:contain}
.single-product .summary{width:100%!important;float:none!important}
.product_title{font-size:clamp(24px,3vw,36px)}
.single-product .summary .price{font-size:30px}
.single-product .woocommerce-product-details__short-description{font-size:17px;color:var(--text)}
.sku_wrapper,.posted_in{display:block;font-size:14px;color:#777;margin-top:6px}
form.cart{display:flex;gap:12px;margin:22px 0}
form.cart .quantity input{width:72px;height:100%;border:1px solid #ccc;border-radius:var(--radius);padding:8px;font:inherit;text-align:center}
.woocommerce-tabs{grid-column:1/-1;margin-top:20px}
.woocommerce-tabs ul.tabs{display:flex;justify-content:center;gap:48px;border-bottom:1px solid #ddd;padding:0;margin:0 0 28px;list-style:none}
.woocommerce-tabs ul.tabs li a{display:block;font:500 20px 'Oswald';text-transform:uppercase;padding:14px 0;color:#999;border-bottom:3px solid transparent}
.woocommerce-tabs ul.tabs li.active a{color:#000;border-color:var(--red)}
.woocommerce-tabs .panel{max-width:1000px;margin:0 auto}
.woocommerce-tabs .panel h2{display:none}
table.shop_attributes{width:100%;border-collapse:collapse}
table.shop_attributes th,table.shop_attributes td{text-align:left;padding:10px 12px;border-bottom:1px solid #eee;font-style:normal}
table.shop_attributes th{width:38%;font-weight:500;color:#555}
table.shop_attributes td p{margin:0}
.features-list{list-style:none;padding:0;margin:0}
.features-list li{padding:8px 0 8px 22px;position:relative}
.features-list li:before{content:'•';position:absolute;left:4px;color:var(--red)}
.related.products,.up-sells{grid-column:1/-1;margin-top:40px}
.related.products>h2,.up-sells>h2{font-size:28px}
/* cart/checkout */
.woocommerce table.shop_table{width:100%;border-collapse:collapse}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:12px;border-bottom:1px solid #eee;text-align:left}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{width:100%;border:1px solid #ccc;border-radius:var(--radius);padding:10px 12px;font:inherit}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;border-left:4px solid var(--red);background:var(--grey);padding:14px 18px;margin:0 0 20px}
#place_order{width:100%;font-size:20px;padding:14px}
.page-content{padding:32px 0}
@media(max-width:1000px){ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.single-product div.product{grid-template-columns:1fr}.menu{display:none}.site-footer .cols{grid-template-columns:1fr 1fr}.site-header .wrap{justify-content:space-between}}
@media(max-width:560px){.hdr-phone{display:none}.site-footer .cols{grid-template-columns:1fr}}
.menu a,.hdr-phone,.btn{white-space:nowrap}
.site-header .wrap{gap:24px}
@media(max-width:1180px){.menu{gap:18px}.menu a{font-size:16px}.hdr-phone{padding:8px 16px;font-size:16px}}
/* перенесённый контент Tilda */
.blk{margin:0 0 40px}
.blk h2{font-size:clamp(24px,3vw,38px);margin:.8em 0 .4em}
.blk h3{font-size:22px;margin:1em 0 .4em}
.blk p{margin:0 0 1em;max-width:900px}
.blk img{border-radius:var(--radius);display:block}
.blk p:has(>img){max-width:none}
.blk .btn{margin:6px 0}
.blk .video iframe,.blk video{width:100%;aspect-ratio:16/9;border:0;border-radius:var(--radius)}
.entry-title{margin:48px 0 20px}
.post-meta{color:#777;margin:-10px 0 24px}
.post-hero{width:100%;max-height:480px;object-fit:cover;border-radius:var(--radius);margin:0 0 28px}
.entry-content{max-width:900px}
.entry-content.wide{max-width:none}
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius);margin-bottom:12px}
.post-card h3{font-size:20px}
@media(max-width:800px){.post-grid{grid-template-columns:1fr}}
/* главная */
.hero{display:grid;grid-template-columns:minmax(260px,400px) 1fr;gap:20px;align-items:center;padding:24px 0}
.hero h1{font-size:clamp(34px,4.2vw,56px);font-weight:600;margin:0 0 20px}
.hero-sub{font:300 clamp(28px,3.4vw,44px)/1.1 'Oswald';text-transform:uppercase;color:var(--text);margin:0 0 28px}
.hero-media video{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);display:block}
.btn-dl,.btn-arrow{gap:14px}
.section-title{font-size:clamp(32px,4vw,52px);margin:56px 0 24px}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e0e0e0;border-radius:var(--radius);overflow:hidden}
.tile{display:block;padding:20px 24px 0;border-right:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;min-height:380px;position:relative}
.tile:nth-child(3n){border-right:0}.tile:nth-last-child(-n+3){border-bottom:0}
.tile h3{font-size:22px;font-weight:600;margin:0;max-width:78%}
.tile img{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:86%;height:290px;object-fit:contain;transition:.3s}
.tile:hover img{transform:translateX(-50%) scale(1.04)}.tile:hover h3{color:var(--red)}
.about-video{position:relative;margin-top:60px;border-radius:var(--radius);overflow:hidden;background:#000;min-height:380px}
.about-video video{width:100%;height:100%;min-height:380px;object-fit:cover;display:block;position:absolute;inset:0}
.about-card{position:relative;margin:150px 40px 40px auto;max-width:420px;background:#fff;border-radius:var(--radius);padding:20px 24px;text-align:center}
.about-card p{margin:0 0 16px;text-align:left;font-size:15px}
.brands{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.brand{aspect-ratio:375/490;border-radius:var(--radius);background-size:cover;background-position:center;display:flex;align-items:flex-end;justify-content:center;padding:24px}
.btn-white{background:#fff;color:#000!important;border-color:#fff}.btn-white:hover{background:var(--red);color:#fff!important}
.btn-sm{padding:6px 18px;font-size:15px}
.news-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.news-grid{grid-template-columns:repeat(4,1fr)}
.post-card{display:block}.post-card .btn{margin-top:8px}
.cta-box{position:relative;background:var(--black);color:#fff;border-radius:var(--radius);margin:70px 0 0;padding:90px 20px;text-align:center;overflow:hidden}
.cta-box h2{max-width:640px;margin:0 auto 28px;font-weight:500}
.cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.cta-l,.cta-r{position:absolute;bottom:0;height:90%;width:auto;opacity:.95}.cta-l{left:-4%}.cta-r{right:-2%}
@media(max-width:1000px){.hero{grid-template-columns:1fr}.tiles{grid-template-columns:1fr 1fr}.tile:nth-child(3n){border-right:1px solid #e0e0e0}.tile:nth-child(2n){border-right:0}.brands{grid-template-columns:1fr}.news-grid{grid-template-columns:1fr 1fr}.cta-l,.cta-r{display:none}.about-card{margin:150px 16px 16px}}
@media(max-width:560px){.tiles{grid-template-columns:1fr}.tile{border-right:0!important}.news-grid{grid-template-columns:1fr}}
/* футер */
.partners{text-align:center;margin-bottom:40px}
.partners h4{font-size:24px;margin-bottom:20px}
.partners .logos{display:flex;flex-wrap:wrap;gap:36px;justify-content:center;align-items:center}
.partners .logos img{height:40px;width:auto;opacity:.9}
.site-footer .cols{border-top:1px solid #333;padding-top:36px}
.social{display:flex;gap:14px;margin-top:32px}.social a{padding:0}.social img{width:32px;height:32px;object-fit:contain;filter:invert(1)}
.subcats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}
.subcat{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border:1px solid #e0e0e0;border-radius:var(--radius);font:600 22px 'Oswald';text-transform:uppercase}
.subcat em{font:400 16px 'Inter Tight';color:#888;font-style:normal}.subcat:hover{border-color:var(--red);color:var(--red)}
@media(max-width:800px){.subcats{grid-template-columns:1fr}}
.page-products{margin-top:20px}
/* WP-страницы (магазин, корзина, оформление): отступ под фиксированной шапкой Tilda */
.udg-main{padding-top:63px;padding-bottom:40px}@media(max-width:640px){.udg-main{padding-top:38px}}
.udg-main .shop-title,.udg-main h1.page-title{margin-top:0}

.woocommerce-loop-product__title{overflow-wrap:break-word;hyphens:manual}
@media(max-width:600px){ul.products{gap:14px}.woocommerce-loop-product__title{font-size:15px!important;letter-spacing:-.2px}ul.products li.product .price{font-size:18px}ul.products li.product .button{font-size:14px;padding:8px 6px}}
ul.products li.product{display:flex!important;flex-direction:column}
ul.products li.product .woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1 1 auto}
ul.products li.product .woocommerce-loop-product__title{flex:1 1 auto}
ul.products li.product .button{margin-top:auto}

.udg-wc-title{font:600 40px/1.1 'Oswald',Arial,sans-serif;text-transform:uppercase;max-width:none;margin:0 0 28px;padding:0}
@media(max-width:600px){.udg-wc-title{font-size:30px}}
.woocommerce-pagination{margin:36px 0 12px}
.woocommerce-pagination ul.page-numbers{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;list-style:none;margin:0;padding:0;border:0}
.woocommerce-pagination ul.page-numbers li{margin:0;border:0;float:none}
.woocommerce-pagination .page-numbers a,.woocommerce-pagination .page-numbers span{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;border:1px solid #ddd;border-radius:8px;font:500 16px 'Oswald',Arial,sans-serif;color:#000;text-decoration:none;background:#fff}
.woocommerce-pagination .page-numbers a:hover{border-color:var(--red,#dd0f2d);color:var(--red,#dd0f2d)}
.woocommerce-pagination .page-numbers span.current{background:#000;border-color:#000;color:#fff}
.woocommerce-pagination .page-numbers span.dots{border:0;background:none;min-width:auto}
/* Корзина (WooCommerce Blocks): таблица не должна шире экрана на телефоне */
.wc-block-cart-items{table-layout:fixed;width:100%}
.wc-block-cart-item__total{width:80px}
.wc-block-cart-item__total .wc-block-formatted-money-amount{white-space:nowrap}
@media(max-width:600px){.wc-block-cart-item__total .wc-block-formatted-money-amount{font-size:14px}}


/* Хлебные крошки: единый вид на всём сайте */
.udg-bc{margin:0 0 16px;padding:0;font:400 14px/20px 'Inter',Arial,sans-serif;color:#777}
.udg-bc ol{display:flex;flex-wrap:wrap;gap:2px 8px;list-style:none;margin:0;padding:0}
.udg-bc li{margin:0;padding:0}.udg-bc li+li:before{content:'/';margin-right:8px;color:#bbb}
.udg-bc a{color:#555;text-decoration:none}.udg-bc a:hover{color:#dd0f2d}
.udg-bc [aria-current]{color:#777}
.udg-main .udg-product{padding-top:0}
.udg-bc ol{flex-wrap:nowrap;overflow:hidden;max-width:100%}.udg-bc li{flex:0 0 auto}
.udg-bc li:last-child{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.udg-onreq{color:#dd0f2d;font-weight:600}
a.udg-buy{display:flex;align-items:center;justify-content:center;text-decoration:none}
