/*
Theme Name: FX Lighting
Theme URI: https://fx-lighting.ru
Author: FX Lighting
Description: Собственная тема сайта fx-lighting.ru — дизайн один-в-один с прежним fxgp-child поверх GeneratePress, но без родительской темы: один файл стилей, чистые шаблоны.
Version: 1.0.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: fxlighting
*/

/* ═══ Часть 1/5: каркас вёрстки (наследие GeneratePress, лицензия GPL) ═══ */

blockquote,body,dd,dl,dt,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,html,iframe,legend,li,ol,p,pre,textarea,ul{margin:0;padding:0;border:0}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}progress{vertical-align:baseline}html{box-sizing:border-box}*,::after,::before{box-sizing:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;margin:0}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}body,button,input,select,textarea{font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-weight:400;text-transform:none;font-size:17px;line-height:1.5}p{margin-bottom:1.5em}h1,h2,h3,h4,h5,h6{font-family:inherit;font-size:100%;font-style:inherit;font-weight:inherit}pre{background:rgba(0,0,0,.05);font-family:inherit;font-size:inherit;line-height:normal;margin-bottom:1.5em;padding:20px;overflow:auto;max-width:100%}blockquote{border-left:5px solid rgba(0,0,0,.05);padding:20px;font-size:1.2em;font-style:italic;margin:0 0 1.5em;position:relative}blockquote p:last-child{margin:0}table,td,th{border:1px solid rgba(0,0,0,.1)}table{border-collapse:separate;border-spacing:0;border-width:1px 0 0 1px;margin:0 0 1.5em;width:100%}td,th{padding:8px}th{border-width:0 1px 1px 0}td{border-width:0 1px 1px 0}hr{background-color:rgba(0,0,0,.1);border:0;height:1px;margin-bottom:40px;margin-top:40px}fieldset{padding:0;border:0;min-width:inherit}fieldset legend{padding:0;margin-bottom:1.5em}h1{font-size:42px;margin-bottom:20px;line-height:1.2em;font-weight:400;text-transform:none}h2{font-size:35px;margin-bottom:20px;line-height:1.2em;font-weight:400;text-transform:none}h3{font-size:29px;margin-bottom:20px;line-height:1.2em;font-weight:400;text-transform:none}h4{font-size:24px}h5{font-size:20px}h4,h5,h6{margin-bottom:20px}ol,ul{margin:0 0 1.5em 3em}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-left:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}b,strong{font-weight:700}cite,dfn,em,i{font-style:italic}address{margin:0 0 1.5em}code,kbd,tt,var{font:15px Monaco,Consolas,"Andale Mono","DejaVu Sans Mono",monospace}abbr,acronym{border-bottom:1px dotted #666;cursor:help}ins,mark{text-decoration:none}sub,sup{font-size:75%;height:0;line-height:0;position:relative;vertical-align:baseline}sup{bottom:1ex}sub{top:.5ex}small{font-size:75%}big{font-size:125%}figure{margin:0}table{margin:0 0 1.5em;width:100%}th{font-weight:700}img{height:auto;max-width:100%}button,input[type=button],input[type=reset],input[type=submit]{background:#55555e;color:#fff;border:1px solid transparent;cursor:pointer;-webkit-appearance:button;padding:10px 20px}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{border:1px solid;border-radius:0;padding:10px 15px;max-width:100%}textarea{width:100%}a,button,input{transition:color .1s ease-in-out,background-color .1s ease-in-out}a{text-decoration:none}.button,.wp-block-button .wp-block-button__link{padding:10px 20px;display:inline-block}.wp-block-button .wp-block-button__link{font-size:inherit;line-height:inherit}.using-mouse :focus{outline:0}.using-mouse ::-moz-focus-inner{border:0}.alignleft{float:left;margin-right:1.5em}.alignright{float:right;margin-left:1.5em}.aligncenter{clear:both;display:block;margin:0 auto}.size-auto,.size-full,.size-large,.size-medium,.size-thumbnail{max-width:100%;height:auto}.no-sidebar .entry-content .alignfull{margin-left:calc(-100vw / 2 + 100% / 2);margin-right:calc(-100vw / 2 + 100% / 2);max-width:100vw;width:auto}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;clip-path:none;color:#21759b;display:block;font-size:.875rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}#primary[tabindex="-1"]:focus{outline:0}.main-navigation{z-index:100;padding:0;clear:both;display:block}.main-navigation a{display:block;text-decoration:none;font-weight:400;text-transform:none;font-size:15px}.main-navigation ul{list-style:none;margin:0;padding-left:0}.main-navigation .main-nav ul li a{padding-left:20px;padding-right:20px;line-height:60px}.inside-navigation{position:relative}.main-navigation .inside-navigation{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between}.main-navigation .main-nav>ul{display:flex;flex-wrap:wrap;align-items:center}.main-navigation li{position:relative}.main-navigation .menu-bar-items{display:flex;align-items:center;font-size:15px}.main-navigation .menu-bar-items a{color:inherit}.main-navigation .menu-bar-item{position:relative}.main-navigation .menu-bar-item.search-item{z-index:20}.main-navigation .menu-bar-item>a{padding-left:20px;padding-right:20px;line-height:60px}.sidebar .main-navigation .main-nav{flex-basis:100%}.sidebar .main-navigation .main-nav>ul{flex-direction:column}.sidebar .main-navigation .menu-bar-items{margin:0 auto}.sidebar .main-navigation .menu-bar-items .search-item{order:10}.nav-align-center .inside-navigation{justify-content:center}.nav-align-center .main-nav>ul{justify-content:center}.nav-align-right .inside-navigation{justify-content:flex-end}.main-navigation ul ul{display:block;box-shadow:1px 1px 0 rgba(0,0,0,.1);float:left;position:absolute;left:-99999px;opacity:0;z-index:99999;width:200px;text-align:left;top:auto;transition:opacity 80ms linear;transition-delay:0s;pointer-events:none;height:0;overflow:hidden}.main-navigation ul ul a{display:block}.main-navigation ul ul li{width:100%}.main-navigation .main-nav ul ul li a{line-height:normal;padding:10px 20px;font-size:14px}.main-navigation .main-nav ul li.menu-item-has-children>a{padding-right:0;position:relative}.main-navigation.sub-menu-left ul ul{box-shadow:-1px 1px 0 rgba(0,0,0,.1)}.main-navigation.sub-menu-left .sub-menu{right:0}.main-navigation:not(.toggled) ul li.sfHover>ul,.main-navigation:not(.toggled) ul li:hover>ul{left:auto;opacity:1;transition-delay:150ms;pointer-events:auto;height:auto;overflow:visible}.main-navigation:not(.toggled) ul ul li.sfHover>ul,.main-navigation:not(.toggled) ul ul li:hover>ul{left:100%;top:0}.main-navigation.sub-menu-left:not(.toggled) ul ul li.sfHover>ul,.main-navigation.sub-menu-left:not(.toggled) ul ul li:hover>ul{right:100%;left:auto}.nav-float-right .main-navigation ul ul ul{top:0}.menu-item-has-children .dropdown-menu-toggle{display:inline-block;height:100%;clear:both;padding-right:20px;padding-left:10px}.menu-item-has-children ul .dropdown-menu-toggle{padding-top:10px;padding-bottom:10px;margin-top:-10px}.sidebar .menu-item-has-children .dropdown-menu-toggle,nav ul ul .menu-item-has-children .dropdown-menu-toggle{float:right}.widget-area .main-navigation li{float:none;display:block;width:100%;padding:0;margin:0}.sidebar .main-navigation.sub-menu-right ul li.sfHover ul,.sidebar .main-navigation.sub-menu-right ul li:hover ul{top:0;left:100%}.sidebar .main-navigation.sub-menu-left ul li.sfHover ul,.sidebar .main-navigation.sub-menu-left ul li:hover ul{top:0;right:100%}.site-main .comment-navigation,.site-main .post-navigation,.site-main .posts-navigation{margin:0 0 2em;overflow:hidden}.site-main .post-navigation{margin-bottom:0}.paging-navigation .nav-next,.paging-navigation .nav-previous{display:none}.paging-navigation .nav-links>*{padding:0 5px}.paging-navigation .nav-links .current{font-weight:700}.nav-links>:first-child{padding-left:0}.site-header{position:relative}.inside-header{padding:20px 40px}.main-title{margin:0;font-size:25px;line-height:1.2em;word-wrap:break-word;font-weight:700;text-transform:none}.site-description{margin:0;line-height:1.5;font-weight:400;text-transform:none;font-size:15px}.site-logo{display:inline-block;max-width:100%}.site-header .header-image{vertical-align:middle}.inside-header{display:flex;align-items:center}.header-widget{margin-left:auto}.header-widget p:last-child{margin-bottom:0}.nav-float-right .header-widget{margin-left:20px}.nav-float-right #site-navigation{margin-left:auto}.nav-float-left #site-navigation{margin-right:auto;order:-10}.nav-float-left .header-widget{margin-left:0;margin-right:20px;order:-15}.header-aligned-center:not([class*=nav-float-]) .inside-header{justify-content:center;flex-direction:column;text-align:center}.header-aligned-center:not([class*=nav-float-]) .header-widget{margin-left:auto;margin-right:auto}.header-aligned-center:not([class*=nav-float-]) .inside-header>:not(:first-child){margin-top:1em}.header-aligned-right:not([class*=nav-float-]) .inside-header{justify-content:flex-end}.header-aligned-right:not([class*=nav-float-]) .header-widget{margin-right:auto;margin-left:0;order:-10}.site-branding-container{display:inline-flex;align-items:center;text-align:left;flex-shrink:0}.site-branding-container .site-logo{margin-right:1em}.sticky{display:block}.entry-header .gp-icon,.posted-on .updated{display:none}.byline,.entry-header .cat-links,.entry-header .comments-link,.entry-header .tags-links,.group-blog .byline,.single .byline{display:inline}footer.entry-meta .byline,footer.entry-meta .posted-on{display:block}.entry-content:not(:first-child),.entry-summary:not(:first-child),.page-content:not(:first-child){margin-top:2em}.page-links{clear:both;margin:0 0 1.5em}.archive .format-aside .entry-header,.archive .format-status .entry-header,.archive .format-status .entry-meta,.archive .format-status .entry-title,.blog .format-aside .entry-header,.blog .format-status .entry-header,.blog .format-status .entry-meta,.blog .format-status .entry-title{display:none}.archive .format-aside .entry-content,.archive .format-status .entry-content,.blog .format-aside .entry-content,.blog .format-status .entry-content{margin-top:0}.archive .format-status .entry-content p:last-child,.blog .format-status .entry-content p:last-child{margin-bottom:0}.entry-header,.site-content{word-wrap:break-word}.entry-title{margin-bottom:0}.author .page-header .page-title{display:flex;align-items:center}.author .page-header .avatar{margin-right:20px}.page-header .author-info>:last-child,.page-header>:last-child{margin-bottom:0}.entry-meta{font-size:85%;margin-top:.5em;line-height:1.5}footer.entry-meta{margin-top:2em}.cat-links,.comments-link,.tags-links{display:block}.entry-content>p:last-child,.entry-summary>p:last-child,.page-content>p:last-child,.read-more-container,.taxonomy-description p:last-child{margin-bottom:0}.wp-caption{margin-bottom:1.5em;max-width:100%;position:relative}.wp-caption img[class*=wp-image-]{display:block;margin:0 auto 0;max-width:100%}.wp-caption .wp-caption-text{font-size:75%;padding-top:5px;opacity:.8}.wp-caption img{position:relative;vertical-align:bottom}.wp-block-image figcaption{font-size:13px;text-align:center}.wp-block-gallery,ul.blocks-gallery-grid{margin-left:0}.wp-block-gallery .blocks-gallery-image figcaption,.wp-block-gallery .blocks-gallery-item figcaption{background:rgba(255,255,255,.7);color:#000;padding:10px;box-sizing:border-box}.gallery{margin-bottom:1.5em}.gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%}.gallery-columns-2 .gallery-item{max-width:50%}.gallery-columns-3 .gallery-item{max-width:33.33%}.gallery-columns-4 .gallery-item{max-width:25%}.gallery-columns-5 .gallery-item{max-width:20%}.gallery-columns-6 .gallery-item{max-width:16.66%}.gallery-columns-7 .gallery-item{max-width:14.28%}.gallery-columns-8 .gallery-item{max-width:12.5%}.gallery-columns-9 .gallery-item{max-width:11.11%}.gallery-caption{display:block}.site-main .gallery{margin-bottom:1.5em}.gallery-item img{vertical-align:bottom}.gallery-icon{padding:5px}embed,iframe,object{max-width:100%}.wp-block-post-template{margin-left:0}.widget-area .widget{padding:40px}.widget select{max-width:100%}.footer-widgets .widget :last-child,.sidebar .widget :last-child{margin-bottom:0}.widget-title{margin-bottom:30px;font-size:20px;line-height:1.5;font-weight:400;text-transform:none}.widget ol,.widget ul{margin:0}.widget .search-field{width:100%}.widget .search-form{display:flex}.widget .search-form button.search-submit{font-size:15px}.footer-widgets .widget{margin-bottom:30px}.footer-widgets .widget:last-child,.sidebar .widget:last-child{margin-bottom:0}.widget ul li{list-style-type:none;position:relative;margin-bottom:.5em}.widget ul li ul{margin-left:1em;margin-top:.5em}.wp-calendar-table{table-layout:fixed}.site-content{display:flex}.grid-container{margin-left:auto;margin-right:auto;max-width:1200px}.page-header,.sidebar .widget,.site-main>*{margin-bottom:20px}.both-left .inside-left-sidebar,.both-right .inside-left-sidebar{margin-right:10px}.both-left .inside-right-sidebar,.both-right .inside-right-sidebar{margin-left:10px}.one-container.both-right .site-main,.one-container.right-sidebar .site-main{margin-right:40px}.one-container.both-left .site-main,.one-container.left-sidebar .site-main{margin-left:40px}.one-container.both-sidebars .site-main{margin:0 40px 0 40px}.one-container.archive .post:not(:last-child):not(.is-loop-template-item),.one-container.blog .post:not(:last-child):not(.is-loop-template-item){padding-bottom:40px}.one-container .site-content{padding:40px}.separate-containers .comments-area,.separate-containers .inside-article,.separate-containers .page-header,.separate-containers .paging-navigation{padding:40px}.separate-containers .site-main{margin:20px}.separate-containers.no-sidebar .site-main{margin-left:0;margin-right:0}.separate-containers.both-right .site-main,.separate-containers.right-sidebar .site-main{margin-left:0}.separate-containers.both-left .site-main,.separate-containers.left-sidebar .site-main{margin-right:0}.separate-containers .inside-left-sidebar,.separate-containers .inside-right-sidebar{margin-top:20px;margin-bottom:20px}.inside-page-header{padding:40px}.widget-area .main-navigation{margin-bottom:20px}.one-container .site-main>:last-child,.separate-containers .site-main>:last-child{margin-bottom:0}.full-width-content .container.grid-container{max-width:100%}.full-width-content.no-sidebar.separate-containers .site-main{margin:0}.full-width-content.one-container .site-content,.full-width-content.separate-containers .inside-article{padding:0}.full-width-content .entry-content .alignwide{margin-left:0;width:auto;max-width:unset}.contained-content.one-container .site-content,.contained-content.separate-containers .inside-article{padding:0}.sidebar .grid-container{max-width:100%;width:100%}.both-left .is-left-sidebar,.both-sidebars .is-left-sidebar,.left-sidebar .sidebar{order:-10}.both-left .is-right-sidebar{order:-5}.both-right .is-left-sidebar{order:5}.both-right .is-right-sidebar,.both-sidebars .is-right-sidebar{order:10}.inside-site-info{display:flex;align-items:center;justify-content:center;padding:20px 40px}.site-info{text-align:center;font-size:15px}.post-image:not(:first-child){margin-top:2em}.featured-image{line-height:0}.separate-containers .featured-image{margin-top:20px}.separate-containers .inside-article>.featured-image{margin-top:0;margin-bottom:2em}.one-container .inside-article>.featured-image{margin-top:0;margin-bottom:2em}.gp-icon{display:inline-flex;align-self:center}.gp-icon svg{height:1em;width:1em;top:.125em;position:relative;fill:currentColor}.close-search .icon-search svg:first-child,.icon-menu-bars svg:nth-child(2),.icon-search svg:nth-child(2),.toggled .icon-menu-bars svg:first-child{display:none}.close-search .icon-search svg:nth-child(2),.toggled .icon-menu-bars svg:nth-child(2){display:block}.entry-meta .gp-icon{margin-right:.6em;opacity:.7}nav.toggled .icon-arrow-left svg{transform:rotate(-90deg)}nav.toggled .icon-arrow-right svg{transform:rotate(90deg)}nav.toggled .sfHover>a>.dropdown-menu-toggle .gp-icon svg{transform:rotate(180deg)}nav.toggled .sfHover>a>.dropdown-menu-toggle .gp-icon.icon-arrow-left svg{transform:rotate(-270deg)}nav.toggled .sfHover>a>.dropdown-menu-toggle .gp-icon.icon-arrow-right svg{transform:rotate(270deg)}.container.grid-container{width:auto}.menu-toggle,.mobile-bar-items,.sidebar-nav-mobile{display:none}.menu-toggle{padding:0 20px;line-height:60px;margin:0;font-weight:400;text-transform:none;font-size:15px;cursor:pointer}.menu-toggle .mobile-menu{padding-left:3px}.menu-toggle .gp-icon+.mobile-menu{padding-left:9px}.menu-toggle .mobile-menu:empty{display:none}button.menu-toggle{background-color:transparent;flex-grow:1;border:0;text-align:center}button.menu-toggle:active,button.menu-toggle:focus,button.menu-toggle:hover{background-color:transparent}.has-menu-bar-items button.menu-toggle{flex-grow:0}nav.toggled ul ul.sub-menu{width:100%}.toggled .menu-item-has-children .dropdown-menu-toggle{padding-left:20px}.main-navigation.toggled .main-nav{flex-basis:100%;order:3}.main-navigation.toggled .main-nav>ul{display:block}.main-navigation.toggled .main-nav li{width:100%;text-align:left}.main-navigation.toggled .main-nav ul ul{transition:0s;visibility:hidden;box-shadow:none;border-bottom:1px solid rgba(0,0,0,.05)}.main-navigation.toggled .main-nav ul ul li:last-child>ul{border-bottom:0}.main-navigation.toggled .main-nav ul ul.toggled-on{position:relative;top:0;left:auto!important;right:auto!important;width:100%;pointer-events:auto;height:auto;opacity:1;display:block;visibility:visible;float:none}.main-navigation.toggled .menu-item-has-children .dropdown-menu-toggle{float:right}.mobile-menu-control-wrapper{display:none;margin-left:auto;align-items:center}.has-inline-mobile-toggle #site-navigation.toggled{margin-top:1.5em}.has-inline-mobile-toggle #site-navigation.has-active-search{margin-top:1.5em}.has-inline-mobile-toggle #site-navigation.has-active-search .nav-search-active{position:relative}.has-inline-mobile-toggle #site-navigation.has-active-search .navigation-search input{outline:auto}.nav-float-left .mobile-menu-control-wrapper{order:-10;margin-left:0;margin-right:auto;flex-direction:row-reverse}@media (max-width:768px){.hide-on-mobile{display:none!important}a,body,button,input,select,textarea{transition:all 0s ease-in-out}.inside-header{flex-direction:column;text-align:center}.site-header .header-widget{margin-top:1.5em;margin-left:auto;margin-right:auto;text-align:center}.site-content{flex-direction:column}.container .site-content .content-area{width:auto}.is-left-sidebar.sidebar,.is-right-sidebar.sidebar{width:auto;order:initial}.is-left-sidebar+.is-right-sidebar .inside-right-sidebar{margin-top:0}.both-left .inside-left-sidebar,.both-left .inside-right-sidebar,.both-right .inside-left-sidebar,.both-right .inside-right-sidebar{margin-right:0;margin-left:0}#main{margin-left:0;margin-right:0}body:not(.no-sidebar) #main{margin-bottom:0}.alignleft,.alignright{float:none;display:block;margin-left:auto;margin-right:auto}.comment .children{padding-left:10px;margin-left:0}.entry-meta{font-size:inherit}.entry-meta a{line-height:1.8em}}@media (min-width:769px) and (max-width:1024px){.hide-on-tablet{display:none!important}}@media (min-width:1025px){.hide-on-desktop{display:none!important}}

/* ═══ Часть 2/5: настройки кастомизатора (бывший inline-CSS GP) ═══ */

body{background-color:var(--base-2);color:var(--contrast);}a{color:var(--accent);}a{text-decoration:underline;}.entry-title a, .site-branding a, a.button, .wp-block-button__link, .main-navigation a{text-decoration:none;}a:hover, a:focus, a:active{color:var(--contrast);}.wp-block-group__inner-container{max-width:1200px;margin-left:auto;margin-right:auto;}:root{--contrast:#222222;--contrast-2:#575760;--contrast-3:#b2b2be;--base:#f0f0f0;--base-2:#f7f8f9;--base-3:#ffffff;--accent:#1e73be;}:root .has-contrast-color{color:var(--contrast);}:root .has-contrast-background-color{background-color:var(--contrast);}:root .has-contrast-2-color{color:var(--contrast-2);}:root .has-contrast-2-background-color{background-color:var(--contrast-2);}:root .has-contrast-3-color{color:var(--contrast-3);}:root .has-contrast-3-background-color{background-color:var(--contrast-3);}:root .has-base-color{color:var(--base);}:root .has-base-background-color{background-color:var(--base);}:root .has-base-2-color{color:var(--base-2);}:root .has-base-2-background-color{background-color:var(--base-2);}:root .has-base-3-color{color:var(--base-3);}:root .has-base-3-background-color{background-color:var(--base-3);}:root .has-accent-color{color:var(--accent);}:root .has-accent-background-color{background-color:var(--accent);}.top-bar{background-color:#636363;color:#ffffff;}.top-bar a{color:#ffffff;}.top-bar a:hover{color:#303030;}.site-header{background-color:var(--base-3);}.main-title a,.main-title a:hover{color:var(--contrast);}.site-description{color:var(--contrast-2);}.mobile-menu-control-wrapper .menu-toggle,.mobile-menu-control-wrapper .menu-toggle:hover,.mobile-menu-control-wrapper .menu-toggle:focus,.has-inline-mobile-toggle #site-navigation.toggled{background-color:rgba(0, 0, 0, 0.02);}.main-navigation,.main-navigation ul ul{background-color:var(--base-3);}.main-navigation .main-nav ul li a, .main-navigation .menu-toggle, .main-navigation .menu-bar-items{color:var(--contrast);}.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a, .main-navigation .main-nav ul li:not([class*="current-menu-"]):focus > a, .main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"]) > a, .main-navigation .menu-bar-item:hover > a, .main-navigation .menu-bar-item.sfHover > a{color:var(--accent);}button.menu-toggle:hover,button.menu-toggle:focus{color:var(--contrast);}.main-navigation .main-nav ul li[class*="current-menu-"] > a{color:var(--accent);}.navigation-search input[type="search"],.navigation-search input[type="search"]:active, .navigation-search input[type="search"]:focus, .main-navigation .main-nav ul li.search-item.active > a, .main-navigation .menu-bar-items .search-item.active > a{color:var(--accent);}.main-navigation ul ul{background-color:var(--base);}.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header{background-color:var(--base-3);}.entry-title a{color:var(--contrast);}.entry-title a:hover{color:var(--contrast-2);}.entry-meta{color:var(--contrast-2);}.sidebar .widget{background-color:var(--base-3);}.footer-widgets{background-color:var(--base-3);}.site-info{background-color:var(--base-3);}input[type="text"],input[type="email"],input[type="url"],input[type="password"],input[type="search"],input[type="tel"],input[type="number"],textarea,select{color:var(--contrast);background-color:var(--base-2);border-color:var(--base);}input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="password"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="number"]:focus,textarea:focus,select:focus{color:var(--contrast);background-color:var(--base-2);border-color:var(--contrast-3);}button,html input[type="button"],input[type="reset"],input[type="submit"],a.button,a.wp-block-button__link:not(.has-background){color:#ffffff;background-color:#55555e;}button:hover,html input[type="button"]:hover,input[type="reset"]:hover,input[type="submit"]:hover,a.button:hover,button:focus,html input[type="button"]:focus,input[type="reset"]:focus,input[type="submit"]:focus,a.button:focus,a.wp-block-button__link:not(.has-background):active,a.wp-block-button__link:not(.has-background):focus,a.wp-block-button__link:not(.has-background):hover{color:#ffffff;background-color:#3f4047;}a.generate-back-to-top{background-color:rgba( 0,0,0,0.4 );color:#ffffff;}a.generate-back-to-top:hover,a.generate-back-to-top:focus{background-color:rgba( 0,0,0,0.6 );color:#ffffff;}:root{--gp-search-modal-bg-color:var(--base-3);--gp-search-modal-text-color:var(--contrast);--gp-search-modal-overlay-bg-color:rgba(0,0,0,0.2);}@media (max-width:768px){.main-navigation .menu-bar-item:hover > a, .main-navigation .menu-bar-item.sfHover > a{background:none;color:var(--contrast);}}.nav-below-header .main-navigation .inside-navigation.grid-container, .nav-above-header .main-navigation .inside-navigation.grid-container{padding:0px 20px 0px 20px;}.site-main .wp-block-group__inner-container{padding:40px;}.separate-containers .paging-navigation{padding-top:20px;padding-bottom:20px;}.entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull{margin-left:-40px;width:calc(100% + 80px);max-width:calc(100% + 80px);}.rtl .menu-item-has-children .dropdown-menu-toggle{padding-left:20px;}.rtl .main-navigation .main-nav ul li.menu-item-has-children > a{padding-right:20px;}@media (max-width:768px){.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .separate-containers .paging-navigation, .one-container .site-content, .inside-page-header{padding:30px;}.site-main .wp-block-group__inner-container{padding:30px;}.inside-top-bar{padding-right:30px;padding-left:30px;}.inside-header{padding-right:30px;padding-left:30px;}.widget-area .widget{padding-top:30px;padding-right:30px;padding-bottom:30px;padding-left:30px;}.footer-widgets-container{padding-top:30px;padding-right:30px;padding-bottom:30px;padding-left:30px;}.inside-site-info{padding-right:30px;padding-left:30px;}.entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull{margin-left:-30px;width:calc(100% + 60px);max-width:calc(100% + 60px);}.one-container .site-main .paging-navigation{margin-bottom:20px;}}/* End cached CSS */.is-right-sidebar{width:30%;}.is-left-sidebar{width:30%;}.site-content .content-area{width:70%;}@media (max-width:768px){.main-navigation .menu-toggle,.sidebar-nav-mobile:not(#sticky-placeholder){display:block;}.main-navigation ul,.gen-sidebar-nav,.main-navigation:not(.slideout-navigation):not(.toggled) .main-nav > ul,.has-inline-mobile-toggle #site-navigation .inside-navigation > *:not(.navigation-search):not(.main-nav){display:none;}.nav-align-right .inside-navigation,.nav-align-center .inside-navigation{justify-content:space-between;}.has-inline-mobile-toggle .mobile-menu-control-wrapper{display:flex;flex-wrap:wrap;}.has-inline-mobile-toggle .inside-header{flex-direction:row;text-align:left;flex-wrap:wrap;}.has-inline-mobile-toggle .header-widget,.has-inline-mobile-toggle #site-navigation{flex-basis:100%;}.nav-float-left .has-inline-mobile-toggle #site-navigation{order:10;}}
/*# sourceURL=generate-style-inline-css */

/* ═══ Часть 3/5: правила интеграции WooCommerce (бывший inline-CSS GP) ═══ */

.woocommerce .page-header-image-single{display:none;}
.woocommerce .entry-content,.woocommerce .product .entry-summary{margin-top:0;}
.related.products{clear:both;}
.checkout-subscribe-prompt.clear{visibility:visible;height:initial;width:initial;}
@media (max-width:768px){
.woocommerce .woocommerce-ordering,.woocommerce-page .woocommerce-ordering{float:none;}
.woocommerce .woocommerce-ordering select{max-width:100%;}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product,.woocommerce-page[class*=columns-] ul.products li.product,.woocommerce[class*=columns-] ul.products li.product{width:100%;float:none;}
}

/* ═══ Часть 4/5: дизайн-система FX Lighting ═══ */

/* =============================================================
   1. ДИЗАЙН-ТОКЕНЫ (цвета, шрифты, отступы)
   Меняйте фирменные цвета ЗДЕСЬ — изменения применятся ко всему сайту.
   ============================================================= */
:root{
  /* --- Палитра (взята с действующего сайта) --- */
  --bg:          #0a0a0a;   /* основной фон (фирменный) */
  --bg-elev:     #111111;   /* приподнятый фон */
  --surface:     #161616;   /* карточки */
  --surface-2:   #1d1d1d;   /* карточки при наведении */
  --border:      #262626;   /* рамки */
  --border-soft: #1f1f1f;

  --text:        #ffffff;   /* основной текст (фирменный) */
  --text-2:      #cfcfcf;   /* вторичный текст */
  --text-3:      #8a8a8a;   /* приглушённый текст */

  /* --- Акцент: один современный синий ("луч света").
       Чтобы вернуться к строгому монохрому, поставьте: --accent:#ffffff; --on-accent:#0a0a0a; --- */
  --accent:      #2f6bff;
  --accent-bright:#5b8eff;
  --accent-soft: rgba(47,107,255,.14);
  --on-accent:   #ffffff;

  /* --- Шрифты --- */
  --font-head: 'Oswald', 'Arial Narrow', sans-serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;

  /* --- Геометрия --- */
  --container:  1240px;
  --radius:     14px;
  --radius-sm:  10px;
  --shadow:     0 18px 50px -20px rgba(0,0,0,.7);
  --shadow-glow:0 0 60px -10px var(--accent-soft);
  --ease:       cubic-bezier(.2,.7,.3,1);

  --header-h:   76px;
}

/* =============================================================
   2. БАЗА (reset, типографика, контейнер)
   ============================================================= */
*,*::before,*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }

body{
  margin:0;
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.65;
  color:var(--text-2);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  /* overflow-x:hidden здесь НЕ ставим — он ломает position:sticky шапки на мобильных.
     Горизонтальные «хвосты» (свечения) обрезают сами секции (.hero/.page-hero/.cta-band). */
}

/* Сброс светлых фонов GeneratePress, чтобы тёмная тема нигде не «просвечивала» */
#page,.site,.site-content,#primary,#content,
.inside-article,.entry-content,.entry-summary,
article.hentry,.separate-containers .inside-article{
  background:transparent !important;
  color:inherit;
}

/* фон-«свет»: мягкое свечение под шапкой */
body::before{
  content:"";
  position:fixed; inset:0 0 auto 0; height:420px;
  background:radial-gradient(120% 80% at 50% -20%, rgba(47,107,255,.18), transparent 70%);
  pointer-events:none; z-index:0;
}

img{ max-width:100%; height:auto; display:block; }
a{ color:var(--accent-bright); text-decoration:none; transition:color .2s var(--ease); }
a:hover{ color:var(--text); }

h1,h2,h3,h4,h5,h6{
  font-family:var(--font-head);
  color:var(--text);
  font-weight:600;
  line-height:1.1;
  letter-spacing:.01em;
  margin:0 0 .5em;
  text-transform:uppercase;
}
h1{ font-size:clamp(2.4rem,5vw,4rem); }
h2{ font-size:clamp(1.9rem,3.6vw,2.9rem); }
h3{ font-size:clamp(1.3rem,2vw,1.7rem); }
p{ margin:0 0 1.1em; }

.container{
  width:100%; max-width:var(--container);
  margin-inline:auto; padding-inline:24px;
  position:relative; z-index:1;
}

.section{ padding:clamp(42px,5vw,74px) 0; position:relative; }
.section--tight{ padding:clamp(30px,4vw,52px) 0; }

.eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--font-head);
  font-size:.8rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--accent-bright); margin:0 0 14px;
}
.eyebrow::before{ content:""; width:26px; height:2px; background:var(--accent); display:inline-block; }

.lead{ font-size:clamp(1.05rem,1.6vw,1.25rem); color:var(--text-2); max-width:62ch; }

.section-head{ max-width:760px; margin-bottom:clamp(34px,5vw,60px); }
.section-head--center{ margin-inline:auto; text-align:center; }
.section-head--center .lead{ margin-inline:auto; }
.section-head--center .eyebrow::before{ display:none; }

/* =============================================================
   2b. МАКЕТ «САЙДБАР + КОНТЕНТ» (все страницы, кроме главной)
   ============================================================= */
.fx-cols{
  display:flex; flex-direction:row; align-items:flex-start; gap:40px;
  max-width:var(--container); margin-inline:auto;
  padding:24px 24px 56px;
}
.fx-main-col{ flex:1 1 0; min-width:0; }

.fx-sidebar{
  flex:0 0 270px; width:270px;
  position:-webkit-sticky; position:sticky;
  top:calc(var(--header-h) + 24px);
  max-height:calc(100vh - var(--header-h) - 48px);
  overflow-y:auto;
}
.fx-sidebar-inner{
  background:var(--surface); border:1px solid var(--border);
  border-radius:var(--radius); padding:22px 22px 16px;
}
.fx-sidebar__title{
  font-family:var(--font-head); text-transform:uppercase; letter-spacing:.08em;
  color:var(--text); font-size:.95rem; margin:0 0 14px;
  padding-bottom:12px; border-bottom:1px solid var(--border);
}
.fx-sidebar__all{
  display:block; padding:11px 12px; margin-bottom:14px; border-radius:8px;
  background:var(--accent-soft); color:var(--accent-bright);
  font-family:var(--font-head); font-size:.85rem; letter-spacing:.04em; text-transform:uppercase;
}
.fx-sidebar__all:hover{ background:var(--accent); color:#fff; }
.fx-sidebar__cats{ list-style:none; padding:0; margin:0; }
.fx-sidebar__cats li{ margin:0; }
.fx-sidebar__cats li > a{
  display:flex; justify-content:space-between; align-items:center; gap:8px;
  padding:10px 12px; margin-bottom:2px; border-radius:8px;
  color:var(--text-2); font-size:.92rem;
  border-left:2px solid transparent;
  transition:background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
}
.fx-sidebar__cats li > a:hover,
.fx-sidebar__cats li.current-cat > a{
  background:var(--bg-elev); color:var(--text); border-left-color:var(--accent);
}
.fx-sidebar__cats .count{
  flex:none; color:var(--text-3); font-size:.78rem;
  background:var(--bg-elev); padding:1px 8px; border-radius:20px;
}
.fx-sidebar__cats li > a:hover .count{ color:var(--accent-bright); }
.fx-sidebar__empty{ color:var(--text-3); font-size:.9rem; margin:0; }

@media (max-width:980px){
  .fx-cols{ flex-direction:column; gap:24px; padding:20px 14px 50px; }
  .fx-sidebar{ position:static; width:100%; flex:none; max-height:none; order:2; }
  .fx-main-col{ order:1; }
}

/* Родной сайдбар GeneratePress (#right-sidebar) мы больше не используем нигде —
   единое левое меню каталога во всех страницах это наш .fx-sidebar. Прячем GP-сайдбар. */
#right-sidebar, #secondary, body.woocommerce #right-sidebar, body.woocommerce-page #right-sidebar{
  display:none !important;
}

/* Блок «Телеграм-канал» внутри сайдбара */
.fx-sidebar__tg{
  display:flex; flex-direction:column; align-items:flex-start; gap:10px;
  margin-top:18px; padding:18px 18px 20px;
  border-radius:var(--radius);
  background:linear-gradient(150deg,#1b2a4a,#0e1730);
  border:1px solid #243a66;
  color:#fff; text-decoration:none;
  transition:transform .2s var(--ease), border-color .2s var(--ease);
}
.fx-sidebar__tg:hover{ transform:translateY(-2px); border-color:#3a5fa0; }
.fx-sidebar__tg-icon{ width:30px; height:30px; color:#4aa8ff; }
.fx-sidebar__tg-text{ display:flex; flex-direction:column; gap:2px; }
.fx-sidebar__tg-text strong{ font-family:var(--font-head); text-transform:uppercase; letter-spacing:.04em; font-size:1rem; color:#fff; }
.fx-sidebar__tg-text em{ font-style:normal; font-size:.82rem; color:#a9bdda; }
.fx-sidebar__tg-btn{
  margin-top:4px; align-self:stretch; text-align:center;
  padding:9px 12px; border-radius:100px;
  background:#4aa8ff; color:#06121f;
  font-family:var(--font-head); font-size:.8rem; letter-spacing:.05em; text-transform:uppercase;
}
.fx-sidebar__tg:hover .fx-sidebar__tg-btn{ background:#7bc4ff; }

/* =============================================================
   3. КНОПКИ
   ============================================================= */
.btn,.button,a.button,
.woocommerce #respond input#submit,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--font-head);
  font-weight:500; letter-spacing:.06em; text-transform:uppercase;
  font-size:.95rem;
  padding:15px 28px;
  border-radius:100px;
  border:1px solid transparent;
  cursor:pointer;
  transition:transform .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
  text-decoration:none;
}
.btn--primary,.button{
  background:var(--accent); color:var(--on-accent);
  box-shadow:0 12px 30px -12px rgba(47,107,255,.8);
}
.btn--primary:hover,.button:hover{
  background:var(--accent-bright); color:var(--on-accent); transform:translateY(-2px);
}
.btn--ghost{
  background:transparent; color:var(--text); border-color:var(--border);
}
.btn--ghost:hover{ border-color:var(--accent); color:var(--accent-bright); transform:translateY(-2px); }
.btn--white{ background:#fff; color:#0a0a0a; }
.btn--white:hover{ transform:translateY(-2px); background:#eaeaea; }

.btn-row{ display:flex; flex-wrap:wrap; gap:14px; }

/* =============================================================
   4. ШАПКА
   ============================================================= */
.site-header{
  position:-webkit-sticky; position:sticky; top:0; z-index:900;
  background:rgba(10,10,10,.96);
  /* ВНИМАНИЕ: здесь НЕ ставить backdrop-filter/transform — иначе position:fixed
     мобильного меню будет обрезаться по шапке и меню станет невидимым. */
  border-bottom:1px solid var(--border-soft);
  transition:background .3s var(--ease), border-color .3s var(--ease);
}
.site-header.is-scrolled{ background:#0a0a0a; border-bottom-color:var(--border); }

.header-inner{
  height:var(--header-h);
  display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.brand{ display:inline-flex; align-items:center; gap:12px; }
.brand img{ height:54px; width:auto; }

.primary-nav{ display:flex; align-items:center; gap:4px; }
.primary-nav a{
  position:relative;
  font-family:var(--font-head); font-weight:500;
  font-size:.92rem; letter-spacing:.08em; text-transform:uppercase;
  color:var(--text-2); padding:10px 16px; border-radius:8px;
}
.primary-nav a:hover,.primary-nav .current-menu-item a,.primary-nav a.current{ color:var(--text); }
.primary-nav a::after{
  content:""; position:absolute; left:16px; right:16px; bottom:4px; height:2px;
  background:var(--accent); transform:scaleX(0); transform-origin:left; transition:transform .25s var(--ease);
}
.primary-nav a:hover::after,.primary-nav .current-menu-item a::after{ transform:scaleX(1); }

.primary-nav .nav-list{
  display:flex; align-items:center; gap:4px;
  list-style:none; margin:0; padding:0;
}
.primary-nav .nav-list > li{ list-style:none; margin:0; padding:0; }

.header-cta{ display:flex; align-items:center; gap:16px; }
.header-phone{
  font-family:var(--font-head); font-weight:500; color:var(--text); font-size:.95rem; letter-spacing:.03em;
}
.header-phone:hover{ color:var(--accent-bright); }

.nav-toggle{
  display:none; width:44px; height:44px;
  background:none; border:1px solid var(--border); border-radius:10px;
  cursor:pointer; padding:0; position:relative;
}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{
  content:""; position:absolute; left:50%; top:50%;
  width:20px; height:2px; background:var(--text);
  transform:translate(-50%,-50%); transition:transform .25s var(--ease), opacity .2s var(--ease);
}
.nav-toggle span::before{ transform:translate(-50%,-7px); }
.nav-toggle span::after{ transform:translate(-50%,7px); }
body.menu-open .nav-toggle span{ background:transparent; }
body.menu-open .nav-toggle span::before{ transform:translate(-50%,-50%) rotate(45deg); }
body.menu-open .nav-toggle span::after{ transform:translate(-50%,-50%) rotate(-45deg); }

/* =============================================================
   5. ПОДВАЛ
   ============================================================= */
.site-footer{
  margin-top:auto;
  background:#060606;
  border-top:1px solid var(--border-soft);
}
.footer-top{ display:grid; grid-template-columns:1.5fr 1fr 1fr 1.2fr; gap:40px; padding:64px 0 48px; }
.footer-brand img{ height:46px; width:auto; margin-bottom:18px; }
.footer-brand p{ color:var(--text-3); font-size:.95rem; max-width:30ch; }
.footer-col h4{
  font-size:.85rem; letter-spacing:.16em; color:var(--text); margin-bottom:18px;
}
.footer-col ul{ list-style:none; padding:0; margin:0; }
.footer-col li{ margin-bottom:10px; }
.footer-col a{ color:var(--text-3); font-size:.95rem; }
.footer-col a:hover{ color:var(--accent-bright); }
.footer-contact li{ display:flex; gap:10px; align-items:flex-start; color:var(--text-3); font-size:.95rem; margin-bottom:12px; }
.footer-contact a{ color:var(--text-2); white-space:nowrap; }

.footer-bottom{
  border-top:1px solid var(--border-soft);
  padding:22px 0; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap;
  color:var(--text-3); font-size:.85rem;
}
.footer-bottom a{ color:var(--text-3); }
.footer-bottom a:hover{ color:var(--accent-bright); }

/* =============================================================
   6. КОМПОНЕНТЫ
   ============================================================= */

/* --- Hero --- */
.hero{
  position:relative; overflow:hidden;
  padding:clamp(40px,5vw,64px) 0 clamp(44px,5vw,76px);
}
.hero__inner{ max-width:900px; position:relative; z-index:2; }
.hero h1{ margin-bottom:.3em; }
.hero h1 .accent{ color:var(--accent-bright); }
.hero .lead{ font-size:clamp(1.1rem,1.8vw,1.35rem); color:var(--text-2); margin-bottom:34px; }
.hero__glow{ position:absolute; pointer-events:none; z-index:0; }
.hero__glow--a{ width:680px; height:680px; right:-160px; top:-220px;
  background:radial-gradient(circle, rgba(47,107,255,.30), transparent 65%); filter:blur(10px); }
.hero__glow--b{ width:520px; height:520px; left:-160px; bottom:-200px;
  background:radial-gradient(circle, rgba(91,142,255,.16), transparent 65%); }

/* Мини-hero для внутренних страниц */
.page-hero{
  position:relative; overflow:hidden;
  padding:clamp(30px,4vw,48px) 0 clamp(22px,3vw,40px);
  border-bottom:1px solid var(--border-soft);
}
.page-hero h1{ margin-bottom:.25em; }
.page-hero .lead{ margin-bottom:0; }
.page-hero__glow{ position:absolute; right:-120px; top:-160px; width:520px; height:520px;
  background:radial-gradient(circle, rgba(47,107,255,.22), transparent 65%); pointer-events:none; z-index:0; }

/* --- Карточки-фичи --- */
.feature-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.feature-card{
  background:var(--surface); border:1px solid var(--border);
  border-radius:var(--radius); padding:30px 26px;
  transition:transform .25s var(--ease), border-color .25s var(--ease), background .25s var(--ease);
}
.feature-card:hover{ transform:translateY(-4px); border-color:var(--accent); background:var(--surface-2); }
.feature-card__icon{
  width:52px; height:52px; border-radius:12px;
  display:grid; place-items:center; margin-bottom:20px;
  background:var(--accent-soft); color:var(--accent-bright);
}
.feature-card__icon svg{ width:26px; height:26px; }
.feature-card h3{ font-size:1.15rem; margin-bottom:10px; }
.feature-card p{ font-size:.95rem; color:var(--text-3); margin:0; }

/* --- Карточки категорий / продукции --- */
.cat-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.cat-card{
  position:relative; overflow:hidden;
  border-radius:var(--radius); border:1px solid var(--border);
  background:linear-gradient(150deg,var(--surface),var(--bg-elev));
  padding:34px 28px; min-height:200px;
  display:flex; flex-direction:column; justify-content:flex-end; gap:10px;
  transition:transform .25s var(--ease), border-color .25s var(--ease);
}
.cat-card::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(120% 100% at 0% 0%, var(--accent-soft), transparent 55%);
  opacity:0; transition:opacity .3s var(--ease);
}
.cat-card:hover{ transform:translateY(-4px); border-color:var(--accent); }
.cat-card:hover::before{ opacity:1; }
.cat-card__icon{ width:44px; height:44px; color:var(--accent-bright); margin-bottom:auto; position:relative; }
.cat-card h3{ font-size:1.2rem; position:relative; }
.cat-card span{ color:var(--text-3); font-size:.9rem; position:relative; }
.cat-card .arrow{ position:absolute; right:22px; top:22px; color:var(--text-3); transition:transform .25s var(--ease),color .25s var(--ease); }
.cat-card:hover .arrow{ transform:translate(4px,-4px); color:var(--accent-bright); }

/* --- CTA-блок --- */
.cta-band{
  position:relative; overflow:hidden;
  background:linear-gradient(135deg,var(--bg-elev),var(--surface));
  border:1px solid var(--border); border-radius:24px;
  padding:clamp(40px,6vw,72px);
  text-align:center;
}
.cta-band::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(80% 120% at 50% 0%, var(--accent-soft), transparent 60%);
}
.cta-band h2{ position:relative; margin-bottom:14px; }
.cta-band p{ position:relative; color:var(--text-2); max-width:60ch; margin-inline:auto; margin-bottom:28px; }
.cta-band .btn-row{ position:relative; justify-content:center; }

/* --- Таблица условий (дилерам) --- */
.dealer-table{ width:100%; border-collapse:collapse; border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; }
.dealer-table th,.dealer-table td{ text-align:left; padding:18px 22px; border-bottom:1px solid var(--border); vertical-align:top; }
.dealer-table thead th{
  background:var(--surface); color:var(--text);
  font-family:var(--font-head); text-transform:uppercase; letter-spacing:.08em; font-size:.9rem;
}
.dealer-table tbody tr:last-child td{ border-bottom:0; }
.dealer-table tbody tr:hover td{ background:var(--bg-elev); }
.dealer-table td:first-child{ color:var(--text); font-weight:500; width:38%; }
.dealer-table td:last-child{ color:var(--text-3); }
.dealer-cards{ display:none; }

/* --- Шаги (как стать дилером) --- */
.steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; counter-reset:step; }
.step{
  position:relative; padding:32px 26px 26px;
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
}
.step::before{
  counter-increment:step; content:counter(step,decimal-leading-zero);
  font-family:var(--font-head); font-size:2.4rem; color:var(--accent); line-height:1; margin-bottom:14px; display:block;
}
.step h3{ font-size:1.1rem; margin-bottom:8px; }
.step p{ font-size:.92rem; color:var(--text-3); margin:0; }

/* --- Карточки аудитории --- */
.audience-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.audience-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-sm); padding:24px; transition:border-color .25s var(--ease); }
.audience-card:hover{ border-color:var(--accent); }
.audience-card strong{ display:block; font-family:var(--font-head); color:var(--text); text-transform:uppercase; letter-spacing:.04em; font-size:1rem; margin-bottom:8px; }
.audience-card span{ color:var(--text-3); font-size:.9rem; }

/* --- Контакт-карточки --- */
.contact-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.contact-card{
  display:flex; gap:18px; align-items:flex-start;
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
  padding:24px 26px; transition:transform .25s var(--ease), border-color .25s var(--ease);
}
.contact-card:hover{ transform:translateY(-3px); border-color:var(--accent); }
.contact-card__icon{ width:46px; height:46px; flex:none; border-radius:12px; background:var(--accent-soft); color:var(--accent-bright); display:grid; place-items:center; }
.contact-card__icon svg{ width:24px; height:24px; }
.contact-card h3{ font-size:1.05rem; margin-bottom:4px; }
.contact-card a,.contact-card .val{ color:var(--text); font-size:1.05rem; }
.contact-card small{ color:var(--text-3); }

/* --- Список с галочками --- */
.check-list{ list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1fr 1fr; gap:14px 28px; }
.check-list li{ position:relative; padding-left:34px; color:var(--text-2); }
.check-list li::before{
  content:""; position:absolute; left:0; top:3px; width:20px; height:20px; border-radius:50%;
  background:var(--accent-soft);
}
.check-list li::after{
  content:""; position:absolute; left:6px; top:8px; width:6px; height:10px;
  border:solid var(--accent-bright); border-width:0 2px 2px 0; transform:rotate(45deg);
}

/* --- Принципы (about) --- */
.principle-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.principle-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:32px 28px; }
.principle-card__num{ font-family:var(--font-head); font-size:1rem; color:var(--accent); letter-spacing:.1em; }
.principle-card h3{ font-size:1.25rem; margin:10px 0 12px; }
.principle-card p{ color:var(--text-3); font-size:.95rem; margin:0; }

/* --- Сетка 2 колонки (текст + визуал) --- */
.split{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.split ul{ color:var(--text-3); }

/* --- Форма --- */
.fx-form{ display:grid; gap:16px; max-width:640px; }
.fx-form .row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.fx-form label{ font-size:.85rem; color:var(--text-3); display:block; margin-bottom:6px; font-family:var(--font-head); text-transform:uppercase; letter-spacing:.06em; }
.fx-form input,.fx-form textarea,.fx-form select{
  width:100%; background:var(--bg-elev); border:1px solid var(--border);
  color:var(--text); border-radius:var(--radius-sm); padding:14px 16px; font-family:var(--font-body); font-size:1rem;
  transition:border-color .2s var(--ease);
}
.fx-form input:focus,.fx-form textarea:focus,.fx-form select:focus{ outline:none; border-color:var(--accent); }
.fx-form textarea{ resize:vertical; min-height:130px; }
.fx-form .btn{ justify-self:start; }
.fx-form .consent{ font-size:.85rem; color:var(--text-3); }
.fx-form-msg{ padding:14px 18px; border-radius:var(--radius-sm); font-size:.95rem; display:none; }
.fx-form-msg.ok{ display:block; background:var(--accent-soft); color:var(--accent-bright); border:1px solid var(--accent); }
.fx-form-msg.err{ display:block; background:rgba(255,80,80,.1); color:#ff8a8a; border:1px solid rgba(255,80,80,.4); }

/* =============================================================
   7. АДАПТИВ
   ============================================================= */
@media (max-width:1024px){
  .feature-grid{ grid-template-columns:repeat(2,1fr); }
  .cat-grid{ grid-template-columns:repeat(2,1fr); }
  .steps,.audience-grid,.principle-grid{ grid-template-columns:repeat(2,1fr); }
  .footer-top{ grid-template-columns:1fr 1fr; gap:32px; }
}

@media (max-width:768px){
  body{ font-size:16px; }
  .brand img{ height:46px; }

  /* моб. меню */
  .nav-toggle{ display:inline-flex; align-items:center; justify-content:center; }
  .header-cta .header-phone{ display:none; }
  .primary-nav{
    position:fixed; inset:var(--header-h) 0 0 0;
    flex-direction:column; align-items:stretch; gap:0;
    background:rgba(8,8,8,.98); backdrop-filter:blur(16px);
    padding:18px 0;
    transform:translateX(100%); transition:transform .3s var(--ease);
    overflow-y:auto;
  }
  body.menu-open .primary-nav{ transform:translateX(0); }
  /* Единый стиль ВСЕХ пунктов мобильного меню: один шрифт/размер/цвет,
     выравнивание по левому краю, отступ слева 40px (вкл. кнопку «Стать дилером») */
  .primary-nav .nav-list{ flex-direction:column; align-items:stretch; }
  .primary-nav a,
  .primary-nav a.btn,
  .primary-nav .header-cta-btn{
    display:flex; align-items:center;
    padding:15px 40px !important;
    margin:0 !important; width:100% !important;
    justify-content:flex-start !important; text-align:left;
    border-radius:0 !important;
    border-bottom:1px solid var(--border-soft);
    background:transparent !important;
    color:var(--text-2) !important;
    font-family:var(--font-head) !important;
    font-size:1.05rem !important; font-weight:500;
    letter-spacing:.08em; text-transform:uppercase;
    box-shadow:none !important;
  }
  .primary-nav a:hover,
  .primary-nav .current-menu-item a,
  .primary-nav .header-cta-btn:hover{
    background:var(--bg-elev) !important; color:var(--text) !important;
  }
  .primary-nav a::after{ display:none; }

  .hero,.page-hero{ text-align:left; }
  .split{ grid-template-columns:1fr; gap:32px; }
  .contact-grid,.check-list,.fx-form .row{ grid-template-columns:1fr; }
  .footer-top{ grid-template-columns:1fr; }
  .footer-bottom{ flex-direction:column; gap:8px; }
}

@media (max-width:520px){
  .feature-grid,.cat-grid,.steps,.audience-grid,.principle-grid{ grid-template-columns:1fr; }
}

/* Таблица дилера → карточки на мобильных */
@media (max-width:680px){
  .dealer-table{ display:none; }
  .dealer-cards{ display:grid; grid-template-columns:1fr; gap:14px; }
  .dealer-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-sm); padding:20px; }
  .dealer-card strong{ display:block; font-family:var(--font-head); color:var(--text); text-transform:uppercase; letter-spacing:.04em; margin-bottom:6px; }
  .dealer-card span{ color:var(--text-3); font-size:.92rem; }
}

/* =============================================================
   8. УТИЛИТЫ
   ============================================================= */
.screen-reader-text{ position:absolute!important; clip:rect(1px,1px,1px,1px); width:1px; height:1px; overflow:hidden; }
.aligncenter{ display:block; margin-inline:auto; }
.entry-content p:empty{ display:none; }

/* =============================================================
   9. КНОПКА «НАВЕРХ»
   ============================================================= */
/* Кнопка «Наверх» — в стиле Divi: таб у правого края, полупрозрачная чёрная,
   со стрелкой-шевроном (нарисован чистым CSS — надёжно, без шрифтов/SVG) */
.to-top{
  position:fixed; right:0; bottom:125px; z-index:800;
  background:rgba(0,0,0,.4);
  color:#fff;
  border:0;
  border-top-left-radius:5px;
  border-bottom-left-radius:5px;
  padding:14px 13px;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer;
  opacity:0; visibility:hidden; transform:translateX(20px);
  transition:opacity .35s var(--ease), transform .35s var(--ease), background .2s var(--ease);
}
.to-top::before{
  content:"";
  display:block;
  width:15px; height:15px;
  border-top:3px solid #fff;
  border-right:3px solid #fff;
  transform:rotate(-45deg) translateY(3px);
}
.to-top.is-visible{ opacity:1; visibility:visible; transform:translateX(0); }
.to-top:hover{ background:rgba(0,0,0,.65); }
.to-top:focus-visible{ outline:2px solid var(--accent-bright); outline-offset:2px; }
@media (max-width:768px){
  .to-top{ padding:12px 12px; bottom:110px; }
  .to-top::before{ width:13px; height:13px; }
}

/* ═══ Часть 5/5: стили магазина FX Lighting ═══ */

/* =============================================================
   FX Lighting — стили магазина (WooCommerce) в тёмной теме
   Загружается после style.css, использует те же дизайн-токены.
   ============================================================= */

/* --- Общие: отступы, ширина, фон --- */
.woocommerce .site-content,
.woocommerce-archive .site-content,
body.woocommerce-page .entry-content{
  background:var(--bg);
}

.woocommerce .page-title,
.woocommerce-products-header h1{
  font-family:var(--font-head);
  text-transform:uppercase;
  font-size:clamp(2rem,4vw,3rem);
  color:var(--text);
  margin:0 0 .2em;
}

.woocommerce .woocommerce-breadcrumb,
.woocommerce .woocommerce-breadcrumb a{
  color:var(--text-3); font-size:.9rem;
}
.woocommerce .woocommerce-breadcrumb a:hover{ color:var(--accent-bright); }

/* Заголовок архива магазина */
.woocommerce-products-header{
  padding:clamp(28px,4vw,48px) 0 14px;
  position:relative;
}
.woocommerce-products-header::before{
  content:""; position:absolute; right:-120px; top:-120px; width:480px; height:480px;
  background:radial-gradient(circle, rgba(47,107,255,.18), transparent 65%); pointer-events:none;
}

/* Раскладку магазина «сайдбар слева + контент справа» теперь делает единый .fx-cols
   (см. style.css) — он оборачивает и страницы, и магазин. GP-сайдбар #right-sidebar
   спрятан везде. Сюда остаются только правки витрины магазина. */
#fx-content > #primary{ float:none !important; }

/* Заголовок магазина */
.woocommerce .woocommerce-products-header{ margin-bottom:24px; }

/* Стилизация сайдбара и виджета категорий под тёмную тему */
body.woocommerce #right-sidebar,
body.woocommerce-page #right-sidebar{ padding-inline:0; }
.woocommerce .widget-area .widget,
.woocommerce #right-sidebar .widget{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:22px 22px 16px;
  margin-bottom:20px;
}
.woocommerce .widget-area .widget-title,
.woocommerce #right-sidebar .widget-title{
  font-family:var(--font-head);
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--text);
  font-size:.95rem;
  margin:0 0 14px;
  padding-bottom:12px;
  border-bottom:1px solid var(--border);
}
/* Список категорий товаров */
.woocommerce .widget_product_categories ul,
.woocommerce .widget_product_categories ul ul{
  list-style:none; padding:0; margin:0;
}
.woocommerce .widget_product_categories li{ margin:0; }
.woocommerce .widget_product_categories li > a{
  display:block;
  padding:11px 12px;
  margin-bottom:4px;
  border-radius:8px;
  color:var(--text-2);
  font-size:.95rem;
  border-left:2px solid transparent;
  transition:background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
}
.woocommerce .widget_product_categories li > a:hover,
.woocommerce .widget_product_categories li.current-cat > a{
  background:var(--accent-soft);
  color:var(--accent-bright);
  border-left-color:var(--accent);
}
.woocommerce .widget_product_categories .count{
  float:right;
  color:var(--text-3);
  font-size:.85rem;
  background:var(--bg-elev);
  padding:1px 8px;
  border-radius:20px;
}
.woocommerce .widget_product_categories ul ul{ margin-left:10px; }

/* --- Сетка товаров --- */
.woocommerce ul.products{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  margin:0 0 40px;
  padding:0;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after{ display:none !important; }
.woocommerce ul.products li.product{
  width:auto !important;
  margin:0 !important;
  padding:0;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
  transition:transform .25s var(--ease), border-color .25s var(--ease);
  display:flex !important;
  flex-direction:column;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-4px);
  border-color:var(--accent);
}

/* Изображение товара */
.woocommerce ul.products li.product a img{
  margin:0;
  background:var(--bg-elev);
  border-radius:0;
  aspect-ratio:1/1;
  object-fit:cover;
  padding:18px;
  box-sizing:border-box;
}

/* Блок информации под фото */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--font-head);
  text-transform:uppercase;
  letter-spacing:.03em;
  font-size:1.05rem;
  font-weight:500;
  color:var(--text);
  padding:18px 20px 6px;
  margin:0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title:hover{ color:var(--accent-bright); }

.woocommerce ul.products li.product .price{
  color:var(--accent-bright);
  font-family:var(--font-head);
  font-weight:500;
  padding:0 20px 16px;
  font-size:1.1rem;
}
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price del .amount{
  color:var(--text-3); opacity:.7; font-weight:400; margin-right:6px;
}
.woocommerce ul.products li.product .price ins{ text-decoration:none; }

/* Кнопка "В корзину" / запрос цены */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button{
  margin:auto 20px 20px;
  width:calc(100% - 40px);
  justify-content:center;
}
.woocommerce ul.products li.product .button:hover{
  background:var(--accent-bright) !important; color:var(--on-accent) !important;
}

/* Ярлык "Распродажа" */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale{
  background:var(--accent);
  color:var(--on-accent);
  font-family:var(--font-head);
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:.7rem;
  min-height:auto;
  min-width:auto;
  padding:6px 12px;
  border-radius:8px;
  line-height:1;
  top:14px; left:14px;
  margin:0;
}

/* Рейтинг */
.woocommerce .star-rating{ color:#ffb400; }
.woocommerce .star-rating span{ color:#ffb400; }

/* --- Пагинация --- */
.woocommerce nav.woocommerce-pagination ul{
  border:0; display:flex; gap:8px; justify-content:center; margin:0 0 30px;
}
.woocommerce nav.woocommerce-pagination ul li{ border:0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:inline-grid; place-items:center;
  min-width:44px; height:44px; padding:0 12px;
  border:1px solid var(--border); border-radius:10px;
  background:var(--surface); color:var(--text-2);
  font-family:var(--font-head);
}
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--accent); border-color:var(--accent); color:var(--on-accent);
}

/* --- Сортировка / результат --- */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering select{
  color:var(--text-3);
}
.woocommerce .woocommerce-ordering select{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:10px;
  padding:10px 14px;
  color:var(--text);
}

/* --- Карточка категории (на странице категорий) --- */
.woocommerce .products .product-category a{
  color:var(--text);
}
.woocommerce .products .product-category .woocommerce-loop-category__title{
  color:var(--text); font-weight:500;
}
.woocommerce .products .product-category mark.count{ background:none; color:var(--text-3); }

/* --- Один товар --- */
.woocommerce div.product .product_title{
  font-family:var(--font-head); text-transform:uppercase; color:var(--text);
  font-size:clamp(1.8rem,3.5vw,2.6rem); margin-bottom:.3em;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  color:var(--accent-bright); font-family:var(--font-head); font-size:1.6rem;
}
.woocommerce div.product p.price del,
.woocommerce div.product span.price del{ color:var(--text-3); opacity:.7; }

.woocommerce div.product .woocommerce-product-gallery{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:18px;
}
.woocommerce div.product .woocommerce-product-gallery img{ border-radius:var(--radius-sm); }

.woocommerce div.product .woocommerce-tabs ul.tabs{
  padding:0; margin:0 0 20px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:none; border:0; border-radius:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  color:var(--text-3); font-family:var(--font-head); text-transform:uppercase; letter-spacing:.06em;
  padding:12px 18px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--accent-bright); }
.woocommerce div.product .woocommerce-tabs .panel{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:26px;
}
.woocommerce div.product .woocommerce-tabs .panel h2,
.woocommerce div.product .woocommerce-tabs .panel h3{
  color:var(--text);
}

/* Похожие товары */
.woocommerce .related.products h2{
  font-family:var(--font-head); text-transform:uppercase; color:var(--text); margin:0 0 24px;
}

/* --- Корзина / оформление --- */
.woocommerce table.shop_table{
  border:1px solid var(--border); border-radius:var(--radius); border-collapse:separate;
  background:var(--surface);
}
.woocommerce table.shop_table th{
  background:var(--bg-elev); color:var(--text);
  font-family:var(--font-head); text-transform:uppercase; letter-spacing:.06em; font-weight:500;
}
.woocommerce table.shop_table td{ border-top:1px solid var(--border); color:var(--text-2); }
.woocommerce table.shop_table a{ color:var(--accent-bright); }

.woocommerce-cart table.cart img,
.woocommerce-checkout-review-order-table img{
  width:70px; border-radius:8px;
}

/* Количество */
.woocommerce .quantity .qty{
  background:var(--bg-elev); border:1px solid var(--border); color:var(--text);
  border-radius:8px; padding:8px 10px;
}

/* Поля формы (оформление заказа, купон и т.д.) */
.woocommerce form .form-row input[type=text],
.woocommerce form .form-row input[type=email],
.woocommerce form .form-row input[type=tel],
.woocommerce form .form-row input[type=password],
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-checkout .input-text,
.select2-container--default .select2-selection--single{
  background:var(--bg-elev) !important;
  border:1px solid var(--border) !important;
  color:var(--text) !important;
  border-radius:10px !important;
  padding:12px 14px !important;
}
.woocommerce form .form-row label{ color:var(--text-2); }
.select2-container--default .select2-selection--single .select2-selection__rendered{ color:var(--text) !important; }

/* Кнопки WC */
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  background:var(--accent); color:var(--on-accent);
  font-family:var(--font-head); text-transform:uppercase; letter-spacing:.06em;
  border-radius:100px; padding:14px 26px; border:0;
}
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover{
  background:var(--accent-bright); color:var(--on-accent); transform:translateY(-2px);
}
.woocommerce a.button.checkout-button{ display:inline-block; margin-top:14px; }

/* Корзина в шапке (если добавлен виджет) */
.woocommerce .widget_shopping_cart_content,
.woocommerce.widget_shopping_cart{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:16px;
  color:var(--text-2);
}

/* --- Уведомления (notices) --- */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error{
  background:var(--surface);
  border-top:0;
  border:1px solid var(--border);
  border-left:3px solid var(--accent);
  border-radius:var(--radius-sm);
  color:var(--text-2);
  padding:16px 20px 16px 24px;
  margin-bottom:20px;
}
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before{ color:var(--accent-bright); }
.woocommerce .woocommerce-error{
  border-left-color:#ff5a5a;
}
.woocommerce .woocommerce-error::before{ color:#ff8a8a; }
.woocommerce .woocommerce-message a.button,
.woocommerce .woocommerce-info a.button{
  background:transparent; border:1px solid var(--border); color:var(--text); padding:8px 16px;
}
.woocommerce .woocommerce-message a.button:hover{ border-color:var(--accent); color:var(--accent-bright); }

/* --- YITH Request a Quote (если установлен) --- */
.yith-ywraq-message,
.woocommerce .yith-ywraq-add-to-quote{
  color:var(--text-2);
}
.woocommerce a.add-request-quote-button,
.woocommerce a.add-request-quote-button.link{
  background:transparent !important;
  border:1px solid var(--border) !important;
  color:var(--text) !important;
  font-family:var(--font-head);
  text-transform:uppercase; letter-spacing:.06em;
  border-radius:100px !important;
  padding:14px 26px !important;
  margin:auto 20px 20px !important;
  width:calc(100% - 40px) !important;
  text-align:center;
}
.woocommerce a.add-request-quote-button:hover{
  border-color:var(--accent) !important; color:var(--accent-bright) !important;
}

/* --- Мини-виджеты / сайдбары WC --- */
.woocommerce .widget,
.woocommerce .widget-title{
  color:var(--text-2);
}
.woocommerce .widget-area .widget{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:22px;
}
.woocommerce .widget ul li a{ color:var(--text-3); }
.woocommerce .widget ul li a:hover{ color:var(--accent-bright); }

/* --- Адаптив магазина --- */
@media (max-width:980px){
  .woocommerce ul.products{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .woocommerce ul.products{ grid-template-columns:1fr; }
  .woocommerce div.product .woocommerce-product-gallery,
  .woocommerce div.product .summary{ width:100%; float:none; }
}

/* =============================================================
   ГЛАВНАЯ: блок «4 товара» (обёртка .home-products имеет класс woocommerce,
   поэтому к карточкам применяются общие стили магазина выше)
   ============================================================= */
.home-products ul.products{ grid-template-columns:repeat(4,1fr) !important; margin-bottom:10px; }
.home-products ul.products li.product .button{ font-size:.85rem; padding:12px 14px; gap:6px; }
.home-products__more{ text-align:center; margin-top:34px; }

@media (max-width:980px){
  .home-products ul.products{ grid-template-columns:repeat(2,1fr) !important; }
}
@media (max-width:560px){
  .home-products ul.products{ grid-template-columns:1fr !important; }
}

/* =============================================================
   ПРАВКИ: мобильная карточка товара + дубль «Description»
   ============================================================= */

/* 1) Убираем повторный заголовок «Description» внутри вкладки —
      сама вкладка уже называется Description, второй раз заголовок не нужен. */
.woocommerce .woocommerce-Tabs-panel--description > h2:first-child,
.woocommerce #tab-description > h2:first-child,
.woocommerce .wc-tab.description > h2:first-child{ display:none !important; }

/* 2) Мобильная карточка товара: всё вмещается в экран (длинные названия/слова переносятся) */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce div.product .product_title{
  overflow-wrap:anywhere; word-break:break-word; hyphens:auto;
}
.woocommerce ul.products li.product,
.woocommerce div.product .summary{ min-width:0; }

/* Текст карточки товара вмещается в экран: длинные слова/строки переносятся,
   широкие таблицы получают внутренний горизонтальный скролл, не ломая ширину страницы.
   Галерею и раскладку фото/характеристик НЕ трогаем — WC и GP сами складывают их на мобильном. */
.woocommerce div.product,
.woocommerce div.product .summary,
.woocommerce div.product .woocommerce-Tabs-panel,
.woocommerce div.product .product_meta{ min-width:0; overflow-wrap:anywhere; word-break:break-word; }
.woocommerce div.product table{ display:block; max-width:100%; overflow-x:auto; }
.woocommerce div.product img{ max-width:100%; height:auto; }

/* Содержимое товара (и описание) — в полную ширину колонки: убираем внутренние отступы
   обёрток GP (.inside-article / .entry-content), чтобы описание было той же ширины,
   что и нижнее меню-сайдбар (.fx-sidebar). */
.woocommerce .inside-article,
.woocommerce-page .inside-article{ padding:0 !important; }
.woocommerce .entry-content,
.woocommerce-page .entry-content{ padding-inline:0 !important; margin-inline:0 !important; }
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .wc-tabs-wrapper,
.woocommerce div.product .woocommerce-Tabs-panel{ max-width:none; }

@media (max-width:768px){
  /* Витрина: компактнее, без переполнения */
  .woocommerce ul.products li.product a img{ padding:10px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{ padding:14px 16px 6px; font-size:.98rem; }
  .woocommerce ul.products li.product .price{ padding:0 16px 14px; font-size:1rem; }
  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product a.add-request-quote-button{
    margin:auto 16px 16px !important; width:calc(100% - 32px) !important;
    font-size:.82rem !important; padding:11px 12px !important; text-align:center;
  }
}