/*
Theme Name: WEB PRO
Theme URI: 
Description: Ready Made WP Theme by RassDigital.com
Author: Rass Digital
Author URI: https://rassdigital.com
Version: 1.0
License: GPL
License URI: http://www.gnu.org/copyleft/gpl.html
*/

/* -------------------------------------------------- 
BASIC STYLES
-------------------------------------------------- */
html, body {border: 0; margin: 0; padding: 0; width: 100%; height: 100%; position: relative;} a img {border: 0}
html {scroll-behavior: smooth;}
*, *:before, *:after {-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}
body {background: #fff; color: #000; padding: 0; margin: 0!important; font-size: 1rem; line-height: 1.4;}
img, object, embed {max-width: 100%; height: auto;} input:focus {outline: none;} *:focus {outline: none;} 
input, textarea, select, button {transition: .3s;}
input::placeholder {color: #adadad; opacity: 1;}
.icon::before {display: inline-block; text-rendering: auto; -webkit-font-smoothing: antialiased;}
select {-webkit-appearance: none; -moz-appearance: none; appearance: none; background-color: #fff; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e"); background-repeat: no-repeat; background-position: right 0.4em center; background-size: 18px; padding-right: 2em; border: 1px solid #ccc; border-radius: 6px; font-size: 16px; line-height: 1.4; color: #333;}
select:focus {outline: none; border-color: #009b5d;}
select::-ms-expand {display: none;}
select {cursor: pointer;box-shadow: 0 1px 2px rgba(0,0,0,0.05);}
select option:first-child {color: #d3d3d3;}
.select {position: relative; line-height: 3; display: flex; overflow: hidden;}
.select::after {background: url('images/chev-down.svg') no-repeat; background-size: 10px; width: 10px; height: 10px; color: #222; position: absolute; top: 37%; right: 10px; cursor: pointer; pointer-events: none; transition:.25s all ease; content: '';}
.select:hover::after {color: #23b499;}
::-webkit-scrollbar {width: 8px; height: 6px;}
::-webkit-scrollbar-track {background: #f1f1f1;}
::-webkit-scrollbar-thumb {background-color: #7f7f7f; border-radius: 30px; border: 1px solid #f1f1f1;}
::-webkit-scrollbar-thumb:hover {background-color: #555;}
/* -------------------------------------------------- 
LINK
-------------------------------------------------- */
a, input, #submit, textarea, button, button:hover, a i, a:hover i,.thumb a img, .thumb a:hover img, a:hover .thumb img, a .thumb img, .close img, .close img:hover, a .thumb::before, a:hover .thumb::before, .b-menu a, .b-menu a:hover {text-decoration: none; -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;}
a {-webkit-tap-highlight-color: transparent !important;}
*{-webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;}
/* -------------------------------------------------- 
TYPOGRAPHY
-------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {font-weight: 700; text-transform: capitalize; letter-spacing: -.02em; margin: 0; padding: 0;}
ul, li, ol {list-style: none; margin: 0; padding: 0;}
p {margin: 0;}
li, p, input, textarea, select, button {letter-spacing: -.02em;}
body, input, textarea, select, button {font-family: 'Inter', Helvetica Neue, Helvetica, Arial, "sans-serif"!important;}
button, select {cursor: pointer;}
button {border: none; padding: 0; box-shadow: 0; background: none;}
/* -------------------------------------------------- 
BREADCRUMB
-------------------------------------------------- */
#breadcrumbs {margin-bottom: 30px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1;}
#breadcrumbs span {display: flex; align-items: center; gap: 6px;}
#breadcrumbs span, #breadcrumbs a {font-size: .7rem; color: #333; text-transform: uppercase;}
#breadcrumbs a {font-weight: 500; color: #333;}
#breadcrumbs a:hover {color: #000;}
#breadcrumbs i {font-size: .5rem; color: #a1a1a1;}
/* -------------------------------------------------- 
LAYOUT CONTROL
-------------------------------------------------- */
.control {max-width: 1400px; margin: 0 auto; position: relative; padding: 0 20px;}
.sec {width: 100%; position: relative;}
.thumb img {width: 100%; height: auto; margin-bottom: -5px;}
.js-offcanvas, .b-menu, .fancybox-caption-wrap {display: none;}
/* -------------------------------------------------- 
ELEMENTOR FIX
-------------------------------------------------- */
.elementor-widget-text-editor p {margin-bottom: 15px!important;}
.elementor-widget-text-editor p strong {font-weight: 600;}
.elementor-widget-text-editor a {color: #101e8b; font-weight: 500;}
.elementor-widget-text-editor a:hover {text-decoration: underline;}
.elementor-widget-text-editor h3 {font-weight: normal;}
.elementor-widget-text-editor h3 strong {font-weight: 600;}
.elementor-widget-text-editor ul, .elementor-widget-text-editor ol {padding-left: 18px; margin-bottom: 20px;}
.elementor-widget-text-editor ul li {list-style: disc; margin-bottom: 10px;}
.elementor-widget-text-editor ol li {list-style: decimal;}
.elementor-widget:not(:last-child), .elementor-widget-text-editor p:last-child {margin-bottom: 0!important;}
.text-one a {color: #fff;}
.text-two a {color: #000; font-weight: 400;}
.text-one a:hover, .text-two a:hover {text-decoration: none;}
.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {margin: 0 3px!important;}
.i-btn a i {font-size: .55rem;}
.i-btn .elementor-button-icon .e-font-icon-svg {height: .7em!important;}
.swiper-button-prev, .swiper-button-next {width: 44px!important; height: 44px!important; background: #fff; display: flex; justify-content: center; align-items: center; border-radius: 50%; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;}
.swiper-button-prev:after, .swiper-button-next:after {font-size: 1.2rem!important; color: #000;}
.swiper-button-prev:after {margin-right: 2px;}
.swiper-button-next:after {margin-left: 2px;}
/* --------------------------------------------------
HEADER
-------------------------------------------------- */
.rh-hp {display: none;}
.head {padding: 10px 0; height: 60px; border-bottom: 1px solid #ddd; width: 100%; position: relative; z-index: 3;}
.h-box {display: flex; justify-content: space-between; align-items: center;}
.l-head {display: flex; align-items: center; gap: 40px;}
.r-head {display: flex; align-items: center; gap: 20px;}
.logo-img img {margin-bottom: -6px;}
.rh-icon-btn {display: flex; gap: 2px;}
.acc .sBtn {width: 34px; height: 40px; display: flex; justify-content: center; align-items: center;}
.acc .sBtn svg {width: 24px; height: 24px; color: #000;}
.rh-box {position: relative;}
.rh-box .rh-wrap {opacity: 0; visibility: hidden; position: absolute; top: 90%; right: -35px; z-index: 99; transition: all .25s ease-in-out;}
.rh-box:hover .rh-wrap {opacity: 1; visibility: visible; top: calc(105%);}
.rh-item {width: 220px; padding: 10px 15px; background: #fff; border: 1px solid #ddd; border-radius: 6px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;}
.rh-item li a {font-size: 1.05rem; line-height: 1.2; color: #35363e; padding: 5.5px 0; display: block;}
.rh-item li a:hover {color: #000;}
.rh-item.non-login .btn {display: flex; flex-direction: column; gap: 5px; width: 100%;}
.rh-item.non-login a {font-size: .95rem; line-height: 1.1; font-weight: 500; padding: 10px 0; color: #000; border: 1px solid #333; border-radius: 4px; text-align: center; width: 100%; display: inline-block;}
.rh-item.non-login a.btn-two {background: #2f6fed; color: #fff; border-color: #2f6fed;}
.rh-item.non-login a.btn-one:hover {background: #000; color: #fff; border-color: #000;}
.rh-item.non-login a.btn-two:hover {background: #3d79f0;}
.minicart {position: relative;}
.cart-count {font-size: .6rem; width: 16px; height: 16px; background: #000; color: #fff; top: 1px; right: 1px; display: flex; justify-content: center; align-items: center; border-radius: 50%; position: absolute; z-index: 2;}
.gtranslate_wrapper a {font-size: .9rem; color: #000;}
.gtranslate_wrapper a::before {content: '|'; font-size: .5rem; color: rgba(0,0,0,.5); margin: 0 5px 0 1px; vertical-align: 2px;}
.gtranslate_wrapper a:first-child::before {display: none;}
.gtranslate_wrapper a.gt-current-lang {color: #0a54d7; font-weight: 600!important;}
/* --------------------------------------------------
MINICART
-------------------------------------------------- */
.m-cart {display: flex; flex-direction: column; height: 100%;}
.mc-head {padding: 15px 20px; display: flex; align-items: center; gap: 20px; border-bottom: 1px solid #ddd; position: relative;}
.mc-head h3 {font-size: 1.15rem; line-height: 1; font-weight: 600; color: #2c2929;}
.mc-head span {font-size: .95rem; line-height: 1; font-weight: 300;}
.mc-list {border-top: 1px solid #ddd; padding: 0 20px; max-height: 530px; overflow: auto;}
.mc-list ul {overflow-y: auto; height: auto;}
.mc-list li {width: 100%; padding: 15px 0; border-bottom: 1px solid #ddd; position: relative;}
.mc-list li .item {display: grid; grid-template-columns: 65px 1fr; gap: 15px;}
.mc-list li .c-thumb img {width: 100%; height: auto;}
.mc-list li .cp-info a {color: #2c2929; font-size: .95rem; line-height: 1.2; font-weight: 600;}
.mc-list li .cp-price {margin: 8px 0 10px; font-size: .88rem; line-height: 1.1; font-weight: 500;}
.mc-list li .remove-item {position: absolute; bottom: 15px; right: 0;}
.mc-list li .cp-info a img {display: none!important;}
.mC-btm {position: absolute; bottom: 0; left: 0; background: #f5f5f5; width: 100%; padding: 15px 20px;}
.mC-btm .mC-total {margin-bottom: 10px; font-size: 1rem; line-height: 1.2; display: flex; justify-content: space-between;}
.mC-btm .mc-end {display: flex; gap: 8px;}
.mC-btm a.mc-btn {font-size: 1rem; line-height: 1; font-weight: 600; padding: 12px 0; border-radius: 4px; text-align: center; display: block; width: 100%;}
.mC-btm a.btn-one {background: #fff; font-weight: 500; color: #2c2929; border: 1px solid #2c2929;}
.mC-btm a.btn-two {background: #2c2929; color: #fff;}
.mC-btm a:hover {background: #2c2929; color: #fff;}
.empty-cart {display: flex; align-items: center; justify-content: center; padding: 40px; flex: 1 1 auto; height: auto; overflow-y: auto;}
.ec-info {margin: 30px 0; display: flex; flex-direction: column; justify-content: center; align-items: center;}
.ec-info h3 {font-size: 1.1rem; line-height: 1.2; margin-bottom: 15px;}
.ec-info p {font-size: .95rem; line-height: 1.4; color: #2c2929;}
.ec-button a {width: 220px; padding: 14px 0; font-size: .96rem; line-height: 1; font-weight: 500; color: #000; background: #9cee69; border-radius: 4px; display: block; text-align: center;}
.ec-button a:hover {background: #7be33a;}
/* --------------------------------------------------
NAVIGATION
-------------------------------------------------- */
#cssmenu {display: block; padding: 0; margin: 0;}
#cssmenu > ul {padding: 0; margin: 0; display: flex; justify-content: center; align-items: center; gap: 28px;}
#cssmenu > ul > li {padding: 0; margin: 0; display: block; position: relative; list-style: none;}
#cssmenu > ul > li > a {padding: 10px 0; font-size: 1.05rem; line-height: 1.2; font-weight: 500; text-decoration: none; display: block; position: relative; transition: .3s ease-in-out;}
#cssmenu > ul > li.has-sub > a {display: flex; gap: 4px;}
#cssmenu > ul > li.has-sub > a:after {margin-top: 5px; -webkit-mask: url('images/chev-down.svg') no-repeat center; mask: url('images/chev-down.svg') no-repeat center; -webkit-mask-size: contain; mask-size: contain; width: 11px; height: 11px; position: relative; transition: .3s ease-in-out; content: '';}
#cssmenu .submenu-wrap {width: 230px; padding: 5px 0; background: #fff; border: 1px solid #ddd; border-radius: 6px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; opacity: 0; visibility: hidden; position: absolute; top: 90%; left: -16px; z-index: 99; transition: all .25s ease-in-out;}
#cssmenu li.has-sub:hover > .submenu-wrap {opacity: 1; visibility: visible; top: calc(100%);}
#cssmenu .submenu-wrap ul {display: flex; flex-direction: column; margin: 0; list-style: none;}
#cssmenu .submenu-wrap ul li {width: 100%; padding: 0; margin: 0; display: block; position: relative;}
#cssmenu .submenu-wrap ul li a {padding: 8px 15px; margin: 0; font-size: 1rem; line-height: 1.2; font-weight: 500; text-transform: capitalize; text-decoration: none; display: block; position: relative; transition: all .2s ease-in-out;}
#cssmenu > ul > li > a {color: #2F3D38;}
#cssmenu > ul > li.has-sub > a:after {background-color: #000;}
#cssmenu > ul > li > a:hover, #cssmenu > ul > li.has-sub:hover > a {color: #3845ee;}
#cssmenu > ul > li.has-sub > a:hover:after {background-color: #000;}
#cssmenu .submenu-wrap ul li a {color: #000;}
#cssmenu .submenu-wrap ul li a:hover {color: #0a54d7;}
/* --------------------------------------------------
HOME
-------------------------------------------------- */
.hero {padding: 60px 0; background: url('images/hero-bg.png') no-repeat center center; background-size: cover;}
.hero-item {display: flex; align-items: center; gap: 60px;}
.hero-one {width: 50%;}
.hero-two {width: 50%;}
.hero-one h1 {font-size: 2.4rem; line-height: 1.3;}
.hero-one p {font-size: 1.1rem; line-height: 1.5; margin-top: 15px;}
.h-sc {position: relative; width: 100%;}
.h-sc input.search-field {padding: 20px 20px 20px 26px; font-size: 1.05rem; line-height: 1.1; background: #fff; border: 1px solid #ddd; border-radius: 50px; width: 100%; box-shadow: #ccc 0 5px 16px;}
.h-sc input.search-field:focus {border-color: #000;}
.h-sc button.search-btn {padding: 12px 20px; font-size: 1rem; line-height: 1; font-weight: 500; background: #4f5bf0; color: #fff; top: 9px; right: 12px; border-radius: 50px; position: absolute; display: flex; align-items: center; gap: 6px;}
.h-sc button.search-btn img {width: 15px; height: 15px; filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(196deg) brightness(105%) contrast(101%);}
.h-end ul {display: flex; justify-content: center; gap: 15px; align-items: center; padding: 0; margin: 0;}
.h-end ul li {display: flex; align-items: center; gap: 5px; position: relative; margin: 0;}
.h-end ul li::before {content: ''; background: url('images/check.svg') no-repeat; background-size: contain; width: 14px; height: 14px; filter: invert(51%) sepia(39%) saturate(6168%) hue-rotate(101deg) brightness(98%) contrast(93%);}

.features {display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;}
.features .row {padding: 40px; border: 1px solid #ddd; border-radius: 6px; background: #fff; overflow: hidden; box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px;}
.features img {width: 42px; height: 42px;}
.features h3 {font-size: 1.2rem; line-height: 1.3; font-weight: 600; margin: 12px 0 10px;}
.features p {font-size: 1rem; line-height: 1.4; color: #343434;}
/* -------------------------------------------------- 
WOO GLOBAL
-------------------------------------------------- */
.woo-page {padding: 60px 0;}
.woocommerce-breadcrumb {display: none!important;}
.woocommerce-breadcrumb {margin-bottom: 30px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1;}
.woocommerce-breadcrumb span::before {content: ''; background: url('images/chev-right.svg') no-repeat; background-size: contain; width: 9px; height: 9px; margin: 0 1px; display: inline-block; vertical-align: -.5px;}
.woocommerce-breadcrumb, .woocommerce-breadcrumb a {font-size: .7rem; color: #333; text-transform: uppercase;}
.woocommerce-breadcrumb a {font-weight: 500;}
.woocommerce-breadcrumb a:hover {color: #000;}
.quantity {border: 1px solid #CBD5E0; border-radius: 4px; width: 100px; background: #fff;}
.quantity:hover {border: 1px solid #2c2929;}
.quantity input {border: none; text-align: center; font-weight: 300; width: 40px;}
.quantity button {width: 24px; text-align: center; display: inline-block; line-height: 28px; background: none; border: none; cursor: pointer; color: rgba(0,0,0,.8);}
.quantity button:hover {color: rgba(0,0,0,1);}
.price {font-size: 1.1rem;}
.price bdi {font-weight: 600;}
.price del bdi {color: #757575; font-size: .95rem; font-weight: 400;}
.price ins {font-weight: 600; text-decoration: none;}
/* -------------------------------------------------- 
WOO NOTICE
-------------------------------------------------- */
.woocommerce-message a {display: none;}
.woocommerce-notices-wrapper {max-width: 1400px; margin: 0 auto; padding: 0 20px;}
.woocommerce-message {font-size: .95rem; line-height: 1.3; font-weight: 500; color: #000; background: #f1f6d5; padding: 15px 18px; margin-bottom: 20px; border-radius: 6px; display: flex; align-items: center; gap: 5px;}
.woocommerce-message::before {content: ''; background: url('images/check.svg') no-repeat; background-size: contain; width: 20px; height: 20px; filter: invert(58%) sepia(42%) saturate(2760%) hue-rotate(43deg) brightness(95%) contrast(99%);}
/* -------------------------------------------------- 
WOO SHOP
-------------------------------------------------- */
.woocommerce-products-header {margin-bottom: 40px;}
.woocommerce-products-header h1 {font-size: 3.6rem; line-height: 1.4; text-align: center; max-width: 830px; margin: 0 auto;}
.page-description {max-width: 830px; margin: 20px auto 0;}
.page-description p {font-size: 1.2rem; line-height: 1.5; color: #444; text-align: center;}
.woocommerce-result-count {font-size: .95rem;}
.woocommerce-ordering select {font-size: .9rem; border: none; box-shadow: none;}
.woocommerce-ordering select:hover {border-color: #a0a0a0;}
.woocommerce-pagination .page-numbers {display: flex; justify-content: center;}
.woocommerce-pagination .page-numbers span, .woocommerce-pagination .page-numbers a {font-size: 1rem; line-height: 1; font-weight: 300; width: 1.5em; height: 2em; display: flex; align-items: center; justify-content: center;}
.woocommerce-pagination .page-numbers span {color: #0A54D7; font-weight: 600;}
.woocommerce-pagination .page-numbers a {color: #000;}    
/* -------------------------------------------------- 
WOO PRODUCT
-------------------------------------------------- */
.hp-top {margin-bottom: 20px;}
.wd-top {margin: 20px 0; display: flex; justify-content: space-between; align-items: center; position: relative;}
.lp-category-dropdown {position: relative; width: 320px;}
.lp-category-btn {padding: 14px 18px; border: 1px solid #ddd; border-radius: 8px; background: #fff; display: flex; justify-content: space-between; align-items: center; gap: 2px; cursor: pointer; transition: .25s;}
.lp-category-btn:hover {border-color: #bbb;}
.lp-category-btn span {font-size: .98rem; font-weight: 500;}
.lp-arrow {transition: .3s ease;}
.lp-category-dropdown.active .lp-arrow {transform: rotate(180deg);}
.lp-category-list {width: 250px; max-height: 200px; position: absolute; top: calc(100% + 6px); left: 0; right: 0; background: #fff; border: 1px solid #ddd; border-radius: 10px; box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px; opacity:0; visibility: hidden; transform: translateY(-10px);  overflow: hidden; transition: .3s; z-index: 99;}
.lp-category-dropdown.active .lp-category-list {opacity: 1; visibility: visible; transform: translateY(0); overflow-y: auto;}
.lp-category-list a {font-size: .98rem; line-height: 1.2; color: #222; display: flex; justify-content: space-between; align-items: center; padding: 10px 18px; transition: .2s;}
.lp-category-list a span {font-size: .75rem; font-weight: 300!important; background: #f7f9fd; width: 28px; height: 20px; border-radius: 50px; display: flex; justify-content: center; align-items: center;}
.lp-category-list a:hover {background: #f7f7f7;}
.lp-category-list a.active {background: #fafafa; font-weight: 500;}
.products {display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 30px; grid-row-gap: 40px; transition: opacity .2s ease; margin-bottom: 20px;}
.products .wd-product-item {position: relative; transition: .3s ease; transform: translate(0);}
.products .wd-product-item:hover {transform: translateY(-2px);}
.wd-thumb {border: 1px solid rgba(100, 100, 100, .15); border-radius: 8px; overflow: hidden;}
.wd-thumb img {width: 100%; height: auto; display: block;}
.wd-body {margin-top: 12px;}
.wd-title h3 {font-size: 1.15rem; line-height: 1.4; font-weight: 600; color: #333; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1;}
.wd-intro {font-size: .85rem; line-height: 1.2; color: #444; margin: 3px 0 10px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1;}
.wd-intro span {font-size: .45rem; margin: 0 1px; vertical-align: 2px;}
.wd-price {font-size: .94rem; line-height: 1.2; color: #333; font-weight: 600;}
.wd-price del {text-decoration: line-through #757575;}
.more {margin-top: 25px; display: flex; justify-content: center;}
.more a {padding: 12px 0; width: 240px; font-size: .95rem; line-height: 1.1; font-weight: 500; color: #000; border: 1px solid #333; border-radius: 4px; text-align: center; display: block;}
/* -------------------------------------------------- 
SINGLE PRODUCT TOP FLOATING
-------------------------------------------------- */
.cta-top {background: #fff; padding: 10px 0; position: fixed; top: 0; left: 0; width: 100%; z-index: 99; transform: translateY(-100%); opacity: 0; visibility: hidden; pointer-events: none; transition: transform .3s ease, opacity .3s ease, visibility .3s ease;}
.cta-top.is-visible {transform: translateY(0); opacity: 1; visibility: visible; pointer-events: auto; box-shadow: rgba(0, 0, 0, 0.08) 0px 10px 30px 0px;}
.cta-top .box {display: flex; justify-content: space-between; align-items: center;}
.cta-top .row-one {display: flex; align-items: center; gap: 25px;}
.cta-top .ctt-title {font-size: 1.4rem; line-height: 1.2; font-weight: 700;}
.cta-top .ctt-price {font-size: 1.06rem;}
.cta-top .ctt-price del bdi {font-size: 1.01rem;}
.cta-top .ctt-price ins {font-weight: 500;}
.cta-top .ctt-price del {text-decoration: line-through #757575;}
.cta-top .spt-end {margin: 0; gap: 10px;}
.cta-top button.single_add_to_cart_button, .cta-top .preview-btn a {font-size: .95rem; padding: 12px 0; width: 160px; display: flex; justify-content: center; align-items: center; gap: 5px;}
[id] {scroll-margin-top: 60px;}
/* -------------------------------------------------- 
SINGLE PRODUCT
-------------------------------------------------- */
.wc-tabs, .s-product .quantity, .entry-summary .product_meta, .s-product .onsale, .related, .woocommerce-product-gallery, .woocommerce-Tabs-panel h2, .summary .product_title, .cta-top .quantity, .spe-img {display: none;}
.s-page {padding-top: 20px;}
.sp-top {padding: 40px 0; display: grid; grid-template-columns: 400px 1fr; gap: 40px; max-width: 1100px; margin: 0 auto;}
.product-title h1 {font-size: 2.6rem; line-height: 1.3;}
.sdt-intro {font-size: .95rem; line-height: 1.5; color: #444; margin-top: 12px; display: flex; flex-wrap: wrap; align-items: center; gap: 5px; grid-row-gap: 5px;}
.sdt-intro span {font-size: .45rem;}
.sp-price {margin-bottom: 20px;}
.sp-price .price {font-size: 1.3rem;}
.sp-price .price del {text-decoration: line-through #757575;}
.sp-price .price del bdi {font-size: 1.2rem;}
.after-price {margin-top: 6px;}
.after-price ul {display: flex;}
.after-price li {font-size: .8rem; line-height: 1.1; font-weight: 500; text-transform: uppercase; color: #ff0000;}
.after-price li span {font-size: .45rem; margin: 0 4px 0 2px; vertical-align: 2px;}
.woocommerce-product-details__short-description {margin-bottom: 20px;}
.woocommerce-product-details__short-description p {font-size: 1.12rem; line-height: 1.55; color: #222; margin-bottom: 10px;}
.woocommerce-product-details__short-description p:last-child {margin-bottom: 0;}
.spt-end {display: flex; gap: 12px; margin-top: 30px;}
button.single_add_to_cart_button, .preview-btn a {font-size: 1rem; line-height: 1.1; font-weight: 500; color: #fff; padding: 14px 0; border-radius: 6px; width: 200px; display: flex; justify-content: center; align-items: center; gap: 5px; text-transform: capitalize;}
.preview-btn a {background: #fff; color: #222; border: 1px solid #555;}
.preview-btn a:hover {background: #f8f8f8;}
button.single_add_to_cart_button {background: #3845ee;}
button.single_add_to_cart_button:hover {background: #4956f3;}
.summary .nota {margin-top: 20px; font-size: .88rem; line-height: 1.35; padding: 12px 18px; border: 1px solid #ccc; background: #fafafb; border-radius: 6px;}
.summary .nota a {font-weight: 600; color: #1c36de;}
.summary .nota a:hover {text-decoration: underline;}
.sp-embed {padding-top: 80px;}
.sp-embed-toolbar {display: flex; align-items: center; justify-content: center; gap: 20px; margin-bottom: 14px;}
.spem-text {display: flex; align-items: center; gap: 6px; font-size: .85rem; line-height: 1.1; font-weight: 600; text-transform: uppercase;}
.spem-text svg {width: 20px; height: 20px;}
.sp-embed-label {display: flex; align-items: center; gap: 8px; font-size: .85rem; line-height: 1; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: #000;}
.sp-embed-label img {width: 12px; height: auto; transition: transform .2s ease;}
.sp-embed-label:hover img {transform: translateX(3px);}
.sp-device-switch {display: flex; align-items: center; gap: 10px;}
.sp-device-btn {display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; color: #8c8c8c; cursor: pointer; transition: .2s ease;}
.sp-device-btn svg {width: 32px; height: 32px;}
.sp-device-btn:hover {color: #1a1a1a;}
.sp-device-btn.active {color: #000;}
.sp-embed-frame-wrap {width: 100%; max-width: 1400px; margin: 0 auto; border: 1px solid #ddd; border-radius: 16px; overflow: hidden; background: #fff; box-shadow: rgba(0, 0, 0, 0.08) 0px 10px 30px 0px; transition: max-width .35s ease;}
.sp-embed-frame-wrap[data-device="tablet"] {max-width: 980px;}
.sp-embed-frame-wrap[data-device="mobile"] {max-width: 400px;}
.sp-embed-browser {display: flex; gap: 6px; height: 34px; padding: 15px 15px 0; background: #1a1a1a; flex-shrink: 0;}
.sp-embed-browser span {width: 8px; height: 8px; border-radius: 50%; background: rgba(255, 255, 255, .55);}
.sp-embed-frame-inner {position: relative; width: 100%; height: 720px; background: #f5f5f5; border: 6px solid #000;}
.sp-embed-iframe {display: block; width: 100%; height: 100%; border: 0;}
.sp-mid {position: relative; overflow: hidden;}
.sp-mid .control {max-width: 1300px;}
.spc-item {padding: 60px 0; border-top: 1px solid #666;}
.spc-first .spc-item {border-top: none;}
.spc-title {margin-bottom: 30px;}
.spc-title h2 {font-size: 2.2rem; line-height: 1.2; font-weight: 600; color: #222;}
.spc-title p {margin-top: 10px; font-size: 1.1rem; line-height: 1.5; color: #333;}
.sp-sec .entry-content p {font-size: 1.12rem; line-height: 1.5; color: #222; margin-bottom: 10px;}
.sp-sec .entry-content p:last-child {margin-bottom: 0;}
#g-review:not(.badge).grwp_grid .grwp_body {gap: 20px;}
#g-review.layout_style-10 .g-review {border: 1px solid #ddd; box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px;}
.spc-how {display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px;}
.spc-how .row {padding: 30px 25px; border: 1px solid #ddd; border-radius: 6px; box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px;}
.spch-top {font-size: 1rem; line-height: 1.2; font-weight: 600; text-transform: uppercase; color: #3845ee;}
.spch-info {margin-top: 20px;}
.spch-info p {font-size: 1rem; line-height: 1.4; color: #000; margin-top: 10px;}
.faq-hidden {display: none;}
.faq {display: flex; flex-direction: column;}
.faq-item {margin-bottom: 24px; padding-bottom: 24px; border-bottom: 1px solid #ddd;}
.faq-q {font-size: 1.16rem; line-height: 1.4; font-weight: 600;}
.faq-arrow {display: none;}
.faq-a {font-size: 1.05rem; line-height: 1.4; color: #333; margin-top: 5px;}
.faq-a strong {font-weight: 500;}
.faq-more button {font-size: .95rem; line-height: 1; font-weight: 600; color: #3845ee; display: flex; align-items: center;}
.faq-more button svg {width: 22px; height: 22px;}
.sp-more {overflow: hidden;}
.swiper-button-prev.wd-prev, .swiper-button-next.wd-next {top: 20px; box-shadow: none; border-radius: 0;}
.swiper-button-prev.wd-prev {left: inherit; right: 54px;}
.swiper-button-prev.wd-prev::after {background: url('images/arrow-left.svg') no-repeat; content: '';}
.swiper-button-next.wd-next::after {background: url('images/arrow-right.svg') no-repeat; content: '';}
.swiper-button-prev.wd-prev::after, .swiper-button-next.wd-next::after {background-size: 28px; width: 28px; height: 28px;}
.sp-end {padding-top: 60px; background: url('images/bg-line.webp') no-repeat top center; background-size: 1200px; position: relative;}
.sp-end .box {display: flex; flex-direction: column; align-items: center; gap: 40px;}
.spe-title h3 {font-size: 2.8rem; line-height: 1.3; font-weight: 600; text-transform: none; color: #000; text-align: center;}
.spe-title h3 span {display: block;}
.sp-end .row-one {max-width: 800px; margin: 0 auto;}
.sp-end .row-two {max-width: 1000px;}
.sp-end .spt-end {justify-content: center;}
.sp-end img {margin-bottom: -6px; border: 6px solid #000; border-bottom: none; border-top-left-radius: 15px; border-top-right-radius: 15px;}
.spcs-tab ul {display: flex; justify-content: center; gap: 40px; list-style: none; margin: 0 0 28px; padding: 0;}
.spcs-tab li {cursor: pointer; padding: 12px 0; display: flex; align-items: center; gap: 6px; color: #222; font-weight: 600; font-size: 1.1rem; line-height: 1.2; border-bottom: 3px solid transparent; transition: background .25s ease, color .25s ease; user-select: none;}
.spcs-tab li svg {width: 18px; height: 18px;}
.spcs-tab li.active {color: #3845ee; border-color: #3845ee;}
.spcs-panel {display: none;}
.spcs-panel.active {display: flex; flex-direction: column; align-items: center; gap: 35px;}
.spcs-sec {display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 50px;}
.spcs-item {display: flex; flex-direction: column; align-items: center; gap: 12px;}
.spcs-item--pill {justify-content: center;}
.spcs-circle-wrap {position: relative; width: 100px; height: 100px;}
.spcs-circle {width: 100%; height: 100%; transform: rotate(-90deg);}
.spcs-circle-track, .spcs-circle-bar {fill: none; stroke-width: 4;}
.spcs-circle-track {stroke: #e7f6ec;}
.spcs-circle-bar {stroke: #22c55e; stroke-linecap: round; stroke-dasharray: 282.743; stroke-dashoffset: 282.743;}
.spcs-score-num {position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; line-height: 1; font-weight: 700; color: #16a34a;}
.spcs-label {font-size: 1rem; line-height: 1.2; font-weight: 500; color: #333;}
.spcs-pill {display: inline-flex; align-items: center; gap: 8px; background: #eafaf0; color: #16a34a; padding: 9px 18px; border-radius: 999px; font-weight: 600; font-size: 14px; transform: scale(.6); opacity: 0; transition: transform .5s ease, opacity .5s ease;}
.spcs-pill.is-animated { transform: scale(1); opacity: 1;}
.spcs-pill-dot {width: 8px; height: 8px; border-radius: 50%; background: #16a34a;}
.spcs-link {font-size: .9rem; line-height: 1.3; color: #222;}
.spcs-link a {font-weight: 600; color: #4956f3;}
/* -------------------------------------------------- 
WOO CART PAGE
--------------------------------------------------  */
.ci-qty {display: none;}
.p-cart .box {display: grid; grid-template-columns: 1fr 360px; gap: 40px;}
.cart-wrap {display: flex; align-items: flex-start; gap: 30px;}
.cart-list {flex: 1; min-width: 0; background: #fff; border-top: 1px solid #ddd; overflow: hidden;}
.cart-side {width: 100%; flex-shrink: 0;}
.cart-items {display: flex; flex-direction: column;}
.cart-item {display: grid; grid-template-columns: 150px 1fr 40px; align-items: center; gap: 18px; padding: 15px 0; border-bottom: 1px solid #ddd; position: relative;}
.ci-thumb img {border-radius: 6px; border: 1px solid rgba(100, 100, 100, .15);}
.ci-info {min-width: 0;}
.ci-name {display: flex; align-items: center; gap: 5px;}
.ci-name a {font-size: 1.1rem; font-weight: 600; color: #000; text-transform: none;}
.ci-name a:hover {text-decoration: underline;}
.ci-intro {font-size: .83rem; line-height: 1.4; color: #444; margin: 2px 0 8px;}
.ci-intro span {font-size: .45rem; vertical-align: 2px; margin: 0 1px;}
.ci-price {font-size: .96rem; color: #000; font-weight: 500;}
.ci-price del {color: #757575; font-weight: 400;}
.ci-remove a {font-size: .88rem; line-height: 1.4; color: #000;}
.ci-remove a:hover {color: #ff0000;}
.cart-actions {display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; padding: 15px 0;}
.coupon {display: grid; grid-template-columns: 1fr 130px; align-items: center; gap: 8px;}
.coupon #coupon_code {width: 100%; border: 1px solid #b3b3b3; border-radius: 6px; padding: 0 14px; font-size: .9rem;}
.coupon #coupon_code:focus {border-color: #000;}
.coupon #coupon_code, .coupon button.apply-coupon {height: 44px;}
.coupon button.apply-coupon {padding: 0 16px; border-radius: 6px; font-size: .88rem; font-weight: 600; background: #fff; color: #2c2929; border: 1px solid #2c2929;}
.coupon button.apply-coupon:hover {background: #2c2929; color: #fff;}
button.update-cart {height: 44px; padding: 0 24px; border-radius: 6px; font-size: .88rem; font-weight: 600; background: #2c2929; color: #fff;}
button.update-cart:hover {background: #000;}
button.update-cart:disabled {opacity: .5; cursor: not-allowed;}
.cart-collaterals {background: #fff; border-radius: 4px; padding: 24px; border: 1px solid #ddd; box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px;}
.cart_totals h2 {font-size: 1.6rem; font-weight: 600; margin: 0 0 30px;}
.cart_totals table.shop_table {width: 100%; border-collapse: collapse;}
.cart_totals table.shop_table tr {display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #ddd; padding: 10px 0;}
.cart_totals table.shop_table tr:first-child {padding-top: 0;}
.cart_totals table.shop_table th {font-size: .88rem; font-weight: 500; color: #222; text-align: left;}
.cart_totals table.shop_table td {font-size: .92rem; font-weight: 400; color: #000; text-align: right;}
.cart_totals table.shop_table tr.order-total {border-bottom: none; padding-top: 14px;}
.cart_totals table.shop_table tr.order-total th, .cart_totals table.shop_table tr.order-total td {font-size: 1.05rem; font-weight: 600;}
.cart_totals table.shop_table tr.order-total td strong {font-weight: 600;}
.cart_totals .woocommerce-shipping-destination {font-size: .8rem; color: #8a8a8a;}
.cart_totals .shipping-calculator-button {font-size: .78rem; color: #009b5d; font-weight: 600;}
.cart_totals .shipping-calculator-form {margin-top: 10px;}
.cart_totals .shipping-calculator-form p {margin-bottom: 8px;}
.cart_totals .shipping-calculator-form select,
.cart_totals .shipping-calculator-form input.input-text {width: 100%; height: 42px; padding: 0 12px;}
.cart_totals .shipping-calculator-form button {height: 42px; padding: 0 18px; border-radius: 6px; background: #2c2929; color: #fff; font-size: .85rem; font-weight: 600; width: 100%;}
.wc-proceed-to-checkout {margin-top: 20px;}
.wc-proceed-to-checkout .checkout-button {padding: 12px 0; border-radius: 4px; background: #2c2929; color: #fff; font-size: 1.05rem; font-weight: 600; display: block; text-align: center; width: 100%;}
.wc-proceed-to-checkout .checkout-button:hover {background: #000;}
.cart-more {position: relative; margin-top: 60px; overflow: hidden;}
.cart-more .spc-title {margin-bottom: 15px;}
.cart-more .spc-title h2 {font-size: 1.8rem;}
/* -------------------------------------------------- 
WOO CHECKOUT COUPON
--------------------------------------------------  */
.woocommerce-form-coupon-toggle {padding: 14px; background: #fff; border: 1px solid #000; border-radius: 4px;}
.woocommerce-form-coupon-toggle .woocommerce-info {font-size: .9rem; line-height: 1.3; font-weight: 500; background: none!important; padding: 0!important; color: #222; margin: 0;}
.woocommerce-form-coupon-toggle .woocommerce-info a {color: #0555c1; font-weight: 600;}
.woocommerce-form-coupon-toggle .woocommerce-info a:hover {text-decoration: underline;}
.woocommerce-form-login-toggle {margin-bottom: 15px;}
.woocommerce-form-login-toggle .woocommerce-info a {color: #e67b8d;}
.woocommerce-form-login-toggle .woocommerce-info a:hover {text-decoration: underline;}
.checkout_coupon {display: flex; gap: 10px; margin-top: 8px;}
.checkout_coupon input, .checkout_coupon button {height: 38px; line-height: 1.1; border-radius: 4px;}
.checkout_coupon input {padding: 8px 10px; font-size: .9rem; width: 300px; border: 1px solid #aeaeae;}
.checkout_coupon input:hover {border-color: #757575;}
.checkout_coupon input:focus {border-color: #222;}
.checkout_coupon button {padding: 0 15px; font-size: .85rem; font-weight: 500; background: #333; color: #fff; border: none; cursor: pointer; display: flex; justify-content: center; align-items: center;}
.checkout_coupon button:hover {background: #000;}
.woocommerce-form-coupon-toggle .woocommerce-message {margin-top: 10px; color: #368a01; padding: 0; background: none; border: none;}
.checkout_coupon input.has-error {border-color: #ff0000;}
/* -------------------------------------------------- 
WOO CHECKOUT FORM
--------------------------------------------------  */
.woo-checkout .col-2, .woo-checkout .checkout-inline-error-message {display: none!important;}
.woocommerce-checkout {margin: 30px 0 40px; width: 100%;}
.woo-checkout {display: grid; grid-template-columns: 1fr 420px; gap: 40px;}
.woo-checkout h3 {font-size: 1.4rem; line-height: 1.3; font-weight: 600; margin-bottom: 15px;}
#customer_details .form-row-first {border-top: 2px solid #e5e5e5;}
#customer_details .form-row {width: 100%; display: flex; align-items: flex-start; border-bottom: 1px solid #e5e5e5; margin: 0;}
#customer_details label, #customer_details .woocommerce-input-wrapper {position: relative;}
#customer_details label {width: 25%; font-size: .98rem; margin: 0; padding: 25px 10px 25px 15px; line-height: 1.1; font-weight: 600; display: block; background: #fafafa;}
#customer_details label .required {color: #ff0000;}
#customer_details label abbr {text-decoration: none!important; color: #ff0000;}
#customer_details label .optional {font-weight: 300; font-style: italic;}
#customer_details .woocommerce-input-wrapper {width: 75%; padding: 11px 0 11px 15px;}
#customer_details .woocommerce-input-wrapper input, #customer_details .woocommerce-input-wrapper textarea,
#customer_details .woocommerce-input-wrapper select, .o-content .woocommerce-address-fields .form-row select {width: 100%; display: block; font-size: 1rem; line-height: 1.4; padding: 10px 12px; border: 1px solid #b3b3b3; background-color: #fff; border-radius: 3px; text-transform: capitalize; cursor: pointer;}
#customer_details .woocommerce-input-wrapper textarea {height: 100px;}
#customer_details .woocommerce-input-wrapper select {padding: 10px; cursor: pointer;}
#customer_details #billing_email_field input, .woocommerce-additional-fields textarea {text-transform: inherit!important;}
#customer_details .woocommerce-input-wrapper input:hover, #customer_details .woocommerce-input-wrapper textarea:hover,
#customer_details .woocommerce-input-wrapper select:hover, #customer_details .woocommerce-input-wrapper input:focus, #customer_details .woocommerce-input-wrapper textarea:focus {border: 1px solid #000;}
#customer_details #billing_address_1_field label, .woocommerce-additional-fields label {height: 122px; padding-top: 15px!important;}
#customer_details #billing_country_field {align-items: center;}
#customer_details #billing_country_field strong {font-weight: 500;}
#customer_details .form-row.woocommerce-invalid .woocommerce-input-wrapper input, #customer_details .form-row.woocommerce-invalid .woocommerce-input-wrapper textarea {border: 1px solid #ff0000;}
#billing_customer_note_field label {height: 122px;}
.woocommerce-NoticeGroup-checkout {margin-bottom: 15px; font-size: .9rem;}
.woocommerce-NoticeGroup-checkout .woocommerce-error a {color: #ff0000;}
.ro-item-name img {display: none;}
.check-order {padding: 30px; border: 1px solid #333; border-bottom-width: 6px; border-radius: 10px;}
.check-order h3 {font-size: 1.2rem; line-height: 1.2; font-weight: 600; margin-bottom: 20px;}
.check-order table {width: 100%; border-spacing: 0;}
.check-order table thead th {font-size: .85rem; border-top: 1px solid #2c2929; border-bottom: 1px solid #2c2929;}
.check-order table th, .check-order table td {padding: 10px 20px 10px 0; text-align: left; font-size: .9rem; line-height: 1.3; color: #303e48;}
.check-order table td {padding: 12px 10px 12px 0; border-bottom: 1px solid #ddd; vertical-align: top;}
.check-order table td.product-name {border-bottom: 1px solid #ddd;}
.check-order table th.product-name, .check-order table td.product-name {width: 70%;}
.check-order .ro-item {display: grid; grid-template-columns: 60px 1fr; gap: 15px;}
.check-order .ro-item-name {font-size: .9rem; line-height: 1.35; font-weight: 500; color: #000;}
.check-order .ro-item-name span {font-weight: 300;}
.check-order .ro-item-name a {color: #000; font-size: .65rem; line-height: 1; text-transform: uppercase; display: block; margin-top: 10px;}
.check-order .ro-item-name a:hover {color: #ff0000;}
.check-order table .cart-subtotal th {border-bottom: 1px solid #ddd;}
.check-order table .cart-subtotal th, .check-order table .cart-subtotal td {border-top: 1px solid #2c2929;}
.check-order table .order-total th, .check-order table .order-total td {border-top: 1px solid #2c2929; border-bottom: 1px solid #2c2929;}
.payment-title {margin: 30px 0 10px;}
.payment-title h3 {margin-bottom: 10px;}
.payment-title p {font-size: .86rem; line-height: 1.3; color: #444;}
.woocommerce-checkout-payment {background: none!important; margin-top: 20px;}
.woocommerce-checkout-payment ul.wc_payment_methods.payment_methods.methods {padding: 0!important;}
.woocommerce-checkout-payment ul.wc_payment_methods.payment_methods.methods li {}
.woocommerce-checkout-payment ul.wc_payment_methods.payment_methods.methods li:hover {}
.woocommerce-checkout-payment ul.wc_payment_methods.payment_methods.methods li:first-child {}
.woocommerce-checkout-payment ul.wc_payment_methods.payment_methods.methods li:last-child {}
.woocommerce-checkout-payment ul.wc_payment_methods.payment_methods.methods li label {font-size: 1rem; font-weight: 700; text-transform: capitalize;}
.woocommerce-checkout-payment ul.wc_payment_methods.payment_methods.methods li:hover label {color: #000;}
.woocommerce-checkout-payment ul.wc_payment_methods.payment_methods.methods li input, ul.wc_payment_methods.payment_methods.methods li label {cursor: pointer;}
.woocommerce-checkout-payment ul.wc_payment_methods.payment_methods.methods li img {max-width: inherit!important; max-height: inherit!important; width: 100%; height: auto;}
#payment div.payment_box {background: #f7f7f7; padding: 15px; margin-top: 6px;}
#payment div.payment_box::before {border: 1em solid #f5f5f5;}
#payment div.payment_box p {font-size: .9rem; line-height: 1.2;}
.woocommerce-privacy-policy-text {padding: 15px 0; clear: both;}
.woocommerce-privacy-policy-text p {font-size: .78rem; line-height: 1.35; font-weight: 300; color: #000;}
.woocommerce-privacy-policy-text a {color: #0555c1; font-weight: 400;}
.woocommerce-privacy-policy-text a:hover {text-decoration: underline;}
#payment button#place_order {width: 100%; background: #3845ee; color: #fff; font-size: 1.1rem; line-height: 1; padding: 18px 0; border-radius: 4px; text-transform: capitalize; font-weight: 600; border: none; cursor: pointer;}
#payment button:hover#place_order {background: #4956f3}
/* -------------------------------------------------- 
WOO THANK YOU
-------------------------------------------------- */
.woocommerce-order {max-width: 900px; margin: 0 auto 40px; padding: 30px; border: 1px solid #ddd; border-radius: 10px; box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px;}
.woocommerce-thankyou-order-received {font-size: 1.6rem; line-height: 1.3; color: #1cba07; font-weight: 600; text-align: center;}
.woocommerce-thankyou-order-details {margin: 30px 0; border-top: 3px solid #000; display: flex; flex-direction: row; flex-wrap: wrap; width: 100%;}
.woocommerce-thankyou-order-details li {width: 50%; color: #666; padding: 15px 0 0; font-size: .94rem; line-height: 1.2; font-weight: 500; padding-right: 20px;}
.woocommerce-thankyou-order-details li strong {margin-top: 2px; font-size: 1.3rem; font-weight: 500; text-transform: none!important; color: #000; border-bottom: 1px dashed #ddd; width: 100%; padding-bottom: 15px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1;}
.woocommerce-order .woocommerce-order-details {margin: 10px 0;}
.woocommerce-order h2.woocommerce-order-details__title {font-size: 1.3rem; line-height: 1.1; font-weight: 600; margin-bottom: 20px;}
.woocommerce-order table.order_details {border-spacing: 0; width: 100%;}
.woocommerce-order table.order_details th {font-size: .95rem; line-height: 1.1; border-bottom: 1px solid #ddd; padding: 10px 10px 10px 0;}
.woocommerce-order table.order_details th.product-name, .woocommerce-order table.order_details th.product-total {font-size: 1rem; line-height: 1.1; font-weight: 600; border-top: 1px solid #000; padding: 10px 0; border-bottom: 1px solid #000; text-align: center;}
.woocommerce-order table.order_details td {padding: 10px 20px 10px 0; border-bottom: 1px solid #ddd; font-size: .95rem; line-height: 1.2;}
.woocommerce-order table.order_details th, .woocommerce-order table.order_details td {text-align: left;}
.woocommerce-order table.order_details .product-name {display: flex; align-items: center;}
.woocommerce-order table.order_details .product-name a {font-weight: 400; color: #303e48;}
.woocommerce-order table.order_details .product-name a:hover {text-decoration: underline; color: #000;}
.woocommerce-order table.order_details .product-name strong {margin-left: 5px; font-weight: 400;}
.woocommerce-customer-details {margin-top: 30px;}
.woocommerce-customer-details .woocommerce-columns {float: left; width: 100%;}
.woocommerce-customer-details .woocommerce-column {float: left; width: 50%; padding-right: 20px;}
.woocommerce-customer-details h2.woocommerce-column__title {font-size: 1.2rem; line-height: 1.1; font-weight: 600; margin-bottom: 10px;}
.woocommerce-customer-details .woocommerce-column address {font-style: normal; font-size: 1.05rem; line-height: 1.3;}
address {font-style: normal; font-size: .95rem;}
/* -------------------------------------------------- 
USER DASHBOARD (page-DASHBOARD.php)
-------------------------------------------------- */
.dash-wrap {display: flex; align-items: flex-start; gap: 30px; padding-bottom: 60px;}
.dash-main {flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 20px;}
.dash-side {width: 300px; flex-shrink: 0; position: sticky; top: 20px;}
.dash-card {background: #fff; border: 1px solid #666; border-radius: 10px; padding: 24px;}
.dash-card h3 {font-size: 1.3rem; font-weight: 700; margin-bottom: 20px;}
/* Section 1 — Profile */
.dash-profile {display: flex; align-items: center; gap: 16px;}
.dp-avatar img {width: 54px; height: 54px; border-radius: 50%; display: block;}
.dp-info {flex: 1; min-width: 0;}
.dp-info h2 {font-size: 1.2rem; font-weight: 700; color: #000;}
.dp-info p {font-size: .9rem; color: #8a8a8a; margin-top: 2px;}
.btn-logout {flex-shrink: 0; padding: 10px 22px; border-radius: 6px; background: #2c2929; color: #fff; font-size: .88rem; font-weight: 600;}
.btn-logout:hover {background: #000;}
/* Section 2 — Purchase History */
.order-list {display: flex; flex-direction: column;}
.order-row {display: grid; grid-template-columns: 1fr 180px 100px; align-items: center; gap: 40px; padding: 15px 0; border-top: 1px solid #ddd;}
.l-order {display: flex; align-items: center; gap: 20px;}
.or-thumb {flex-shrink: 0;}
.or-thumb img {width: 88px; height: 88px; object-fit: cover; border-radius: 8px; display: block; background: #f2f2f2;}
.or-info {flex-shrink: 0; display: flex; flex-direction: column; gap: 3px;}
.or-number {font-size: .82rem; font-weight: 700; color: #e6473d;}
.or-product-line {display: flex; align-items: baseline; gap: 6px;}
.or-product-name {font-size: 1rem; font-weight: 600; color: #000;}
.or-product-name:hover {text-decoration: underline;}
.or-qty {font-size: .85rem; color: #8a8a8a; font-weight: 500;}
.or-price {font-size: .9rem; color: #444;}
.or-date {font-size: .85rem; color: #8a8a8a;}
.or-status {display: flex; justify-content: center;}
.order-status {display: inline-block; padding: 6px 16px; border-radius: 20px; font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .02em;}
.order-status.status-completed {background: #e3f6ea; color: #1a8a4a;}
.order-status.status-processing {background: #e2ecfb; color: #1f4a7a;}
.order-status.status-on-hold {background: #fdf1de; color: #96660b;}
.order-status.status-pending {background: #f2f2f2; color: #5a5a5a;}
.order-status.status-failed,
.order-status.status-cancelled {background: #fbe1e1; color: #c0392b;}
.order-status.status-refunded {background: #ece3fb; color: #5b3fa0;}
.or-action {margin-left: auto; flex-shrink: 0;}
.or-action a {display: inline-block; padding: 8px 26px; border: 1px solid #2f6fed; border-radius: 4px; color: #2f6fed; background: #fff; font-size: .88rem; line-height: 1.1; font-weight: 600;}
.or-action a:hover {background: #2f6fed; color: #fff;}
.no-orders {font-size: .9rem; color: #8a8a8a;}
/* Section 3 — Reset Password */
.reset-password-form .form-row {margin-bottom: 14px;}
.reset-password-form label {display: block; font-size: .88rem; font-weight: 600; color: #000; margin-bottom: 6px;}
.reset-password-form input.input-text {width: 100%; max-width: 360px; border: 1px solid #ccc; border-radius: 5px; padding: 12px 14px; font-size: .92rem;}
.reset-password-form input.input-text:hover {border-color: #7b7b7b;}
.reset-password-form input.input-text:focus {border-color: #000;}
.btn-update-password {padding: 12px 24px; border-radius: 6px; background: #2c2929; color: #fff; font-size: .88rem; font-weight: 600;}
.btn-update-password:hover {background: #000;}
.password-notice {font-size: .85rem; padding: 10px 14px; border-radius: 6px; margin-bottom: 16px;}
.password-notice.notice-success {background: #e3f6ea; color: #1a8a4a;}
.password-notice.notice-error {background: #fbe1e1; color: #c0392b;}
/* Right side — floating Need Help / WhatsApp card */
.help-card {background: #f7f7f7; border-radius: 10px; padding: 25px; text-align: center;}
.help-card h4 {font-size: 1.05rem; font-weight: 800; margin-bottom: 8px;}
.help-card p {font-size: .9rem; color: #333; padding: 0 10px; margin-bottom: 16px;}
.help-card .btn-whatsapp {display: inline-flex; align-items: center; justify-content: center; gap: 8px; width: 100%; padding: 12px 0; border-radius: 6px; background: #25D366; color: #fff; font-size: .9rem; font-weight: 600;}
.help-card .btn-whatsapp:hover {background: #1ebe5b;}

.f-box {display: flex;}
.footer {background: #000; width: 100%; position: relative; overflow: hidden;}
.f-top {padding: 40px 0 20px;}
.f-sec h3 {font-size: 1.3rem; list-height: 1.2; color: #fff; margin-bottom: 10px;}
.f-sec ul {display: flex; flex-wrap: wrap;}
.f-sec li {width: 20%; padding-right: 60px; margin-bottom: 8px;}
.f-sec li a {font-size: .98rem; line-height: 1.3; font-weight: 500; color: #d4d4d5;}
.f-sec li a:hover {color: #fff;}
.f-socmed {margin-top: 15px;}
.f-socmed ul {display: flex; flex-wrap: wrap; margin-left: -12px;}
.f-socmed li a {width: 40px; height: 40px; color: #d4d4d5; display: flex; justify-content: center; align-items: center;}
.f-socmed li svg {width: 20px; height: 20px; display: block; fill: currentColor;}
.f-socmed li a:hover {color: #888888;}
.f-btm {padding: 30px 0; border-top: 1px solid rgba(255,255,255,.2);}
.copy p {font-size: .9rem; line-height: 1.4; color: #d4d4d5;}
.f-note {margin-top: 10px;}
.f-note p {font-size: .785rem; line-height: 1.35; color: #d4d4d5;}
/* -------------------------------------------------- 
PAGE
-------------------------------------------------- */
.fx-page {padding-top: 15px;}
.fx-content {padding-bottom: 40px; position: relative;}
.back {margin-bottom: 30px;}
.back button {font-size: .72rem; line-height: 1.2; color: #000; font-weight: 400; padding: 5px 8px; border: 1px solid rgba(0,0,0,.5); text-transform: uppercase; border-radius: 3px; display: flex; align-items: center; gap: 1px;}
.back button:hover {border-color: #000;}
.bl-top {margin-bottom: 40px; padding-bottom: 30px; border-bottom: 1px solid #ddd;}
.bl-sub {display: flex; align-items: center; gap: 5px; margin-bottom: 10px;}
.bl-sub svg {margin-top: -.5px;}
.bl-sub h4 {font-size: .75rem; line-height: 1.1; font-weight: 300; text-transform: uppercase; color: #000;}
.bl-title h3 {font-size: 2.4rem; line-height: 1.3; font-weight: 700;}
.bl-title p {font-size: .96rem; line-height: 1.4; color: #282828; margin-top: 8px; max-width: 900px;}
.post-edit-link {position: fixed; left: 20px; bottom: 20px; font-size: .75rem; font-weight: 500; color: #fff; background: #36980a; text-transform: uppercase; width: 50px; height: 50px; border-radius: 50%; display: block; padding-top: 17px; text-align: center; z-index: 999;}
.p-title {margin-bottom: 20px;}
.p-title h1 {font-size: 2rem; line-height: 1.3; font-weight: 700; color: #000; text-transform: capitalize;}
.page-content h2, .page-content h3, .page-content h4 {font-size: 1.2rem; line-height: 1.3; font-weight: 600; margin: 20px 0 15px; text-transform: capitalize;}
.page-content h2 {text-transform: uppercase; font-size: 1.1rem; font-weight: 700; text-decoration: underline;}
.page-content p {margin-bottom: 15px; word-wrap: break-word;}
.page-content p, .page-content ul li, .page-content ol li {font-size: .98rem; line-height: 1.5;}
.page-content a {color: #0A54D7; font-weight: 600;}
.page-content a:hover {text-decoration: underline;}
.page-content ul, .page-content ol {margin: 0 0 15px; padding-left: 30px;}
.page-content ol li {list-style: decimal;}
.page-content ul li {list-style: disc;}
.page-content ul li, .page-content ol li {padding: 1px 0; word-wrap: break-word; margin-bottom: 2px;}
/* -------------------------------------------------- 
PLACEHOLDER
-------------------------------------------------- */
@keyframes skeletonShimmer {
 0%   {background-position: -600px 0;}
 100% {background-position: 600px 0;}
}
.sk-thumb {position: absolute; inset: 0; background: linear-gradient(90deg, #f4f4f4 25%, #e8e8e8 50%, #f4f4f4 75%); background-size: 600px 100%; animation: skeletonShimmer 2s infinite linear; z-index: 1;}
.v-thumb {position: relative;}
.v-thumb img {width: 100%; height: auto; margin-bottom: -5px; position: relative; z-index: 2; opacity: 0; transition: opacity .3s ease;}
.v-thumb img.loaded {opacity: 1;}
.sk-info {}
.sk-title {margin-top: 16px;}
.sk-flex {display: flex; flex-direction: column; gap: 12px;}
.sk-line {height: 12px; border-radius: 6px; background: linear-gradient(90deg, #f4f4f4 25%, #e8e8e8 50%, #f4f4f4 75%); background-size: 600px 100%; animation: skeletonShimmer 2s infinite linear;}
.sk-short  {width: 40%; margin: 18px 0 20px;}
.sk-long   {width: 100%;}
.sk-title .sk-long {width: 90%;}
.sk-medium {width: 65%;}
.b-list .sk-thumb {border-radius: 8px;}
.c-side .sk-title {margin-top: 0;}
/* -------------------------------------------------- 
BLOG LIST
-------------------------------------------------- */
.post-meta {font-size: .8rem; line-height: 1.2; font-weight: 300; color: #303030;}
.post-meta span {font-size: .5rem; margin: 0 1px; vertical-align: 1px;}
.b-list a .v-thumb img {border-radius: 8px;}
.b-list .info {margin-top: 12px;}
.b-list a h3 {font-size: 1.2rem; line-height: 1.4; font-weight: 600; color: #000; transition: .3s;}
.b-list a:hover h3 {color: #0A54D7}
.b-list .post-meta {margin: 8px 0;}
.b-list a .excerpt p {color: #333; font-size: .96rem; line-height: 1.4; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3;}
.more-btn {margin-top: 30px;}
.more-btn a {padding: 12px 30px; font-size: .95rem; line-height: 1; font-weight: 500; color: #000; border: 1px solid #666; display: inline-block; border-radius: 4px;}
.more-btn a span {display: flex; align-items: center; gap: 4px;}
.more-btn a svg {width: 10px; height: 10px;}
.more-btn a:hover {border-color: #000;}
.b-list .swiper-button-next, .b-list .swiper-button-prev {width: 38px!important; height: 38px!important; background: #fff; top: -38px; display: block; box-shadow: none; border-radius: 0; transition: .3s;}
.b-list .swiper-button-prev {right: 40px; left: inherit;}
.b-list .swiper-button-next {right: 0;}
.b-list .swiper-button-next:after, .b-list .swiper-button-prev:after {color: #222; padding-top: 1px; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%;}
.b-list .swiper-button-prev:after {content: ''; background: url('images/arrow-left.svg') no-repeat center; background-size: 22px;}
.b-list .swiper-button-next:after {content: ''; background: url('images/arrow-right.svg') no-repeat center; background-size: 22px;}
.b-list .swiper-button-next.swiper-button-disabled, .b-list .swiper-button-prev.swiper-button-disabled {opacity: .3!important;}
.b-list .bs-box {display: grid; grid-template-columns: repeat(3, 1fr); gap: 35px;}
/* -------------------------------------------------- 
BLOG SINGLE
-------------------------------------------------- */
.bs .bs-box {display: grid; grid-template-columns: 1fr 300px; gap: 60px;}
.sb-top {margin-bottom: 20px;}
.sb-top h1 {font-size: 2rem; line-height: 1.4; font-weight: 600;}
.sb-top .post-meta {margin: 0 0 12px;}
.sb-top .post-meta a {font-weight: 500; color: #303030;}
.sb-top .post-meta a:hover {color: #000;}
/* -------------------------------------------------- 
ENTRY CONTENT
-------------------------------------------------- */
.sb-thumb {margin-bottom: 15px;}
.sb-thumb img {width: 100%; height: auto;}
.entry-content h2, .entry-content h3, .entry-content h4 {font-weight: 600; margin: 20px 0 15px; text-transform: capitalize;}
.entry-content h2, .entry-content h3 {font-size: 1.4rem; line-height: 1.3;}
.entry-content h4 {font-size: 1.3rem; line-height: 1.3;}
.entry-content p {margin-bottom: 15px;}
.entry-content p, .entry-content ul li, .entry-content ol li {font-size: 1rem; line-height: 1.5;}
.entry-content a {color: #0A54D7; font-weight: 600;}
.entry-content a:hover {text-decoration: underline;}
.entry-content img, .page-content img {width: 100%; height: auto; margin-bottom: 15px;}
.entry-content ul, .entry-content ol {margin: 0 0 1.5em; padding-left: 30px;}
.entry-content ul li, .entry-content ol li {padding: 1px 0; margin-bottom: 2px;}
.entry-content ul li {list-style: disc;}
.entry-content ol li {list-style: decimal;}
.entry-content iframe {display: flex; margin: 0 auto;}
.entry-content .video {margin-bottom: 15px;}
.galeri {display: flex; flex-wrap: wrap;}
.galeri .item {width: 33.3333333333%; padding: 5px;}
.galeri .item a img {margin-bottom: -5px;}
.galeri .item a:hover img {opacity: .7;}
.wp-embedded-content {width: 100%!important;}
.twitter-tweet {margin: 0 auto 10px!important;}
.tag {margin-bottom: 20px; display: flex; flex-wrap: wrap; gap: 5px;}

.tag span {font-size: .815rem; line-height: 1.3; font-weight: 300; color: #000; background: #f8f8f8; padding: 6px 8px; border: 1px solid transparent; border-radius: 4px; display: inline-block; transition: .3s;}
.sharer {margin: 30px 0;}
.sharer h4 {margin-bottom: 10px; font-size: .95rem; line-height: 1.2; font-weight: 300; color: #000; z-index: 3;}
.sharer ul {display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 24px;}
.sharer li a {font-size: .75rem; line-height: 1.1; color: #000; font-weight: 300; text-transform: uppercase; text-align: center; border-radius: 50%; display: block;}
.sharer li a svg {width: 30px; height: 30px;}
.sharer li a span {display: block; margin-top: 8px;}
.sharer li a:hover, .sharer li a:hover span {color: #0A54D7;}
/* -------------------------------------------------- 
COMMENT AREA
-------------------------------------------------- */
.comment-area {width: 100%; padding-top: 30px;}
.comment-title h3 {font-size: 1.3rem; line-height: 1; font-weight: 600; margin-bottom: 10px;}
.comment-title h3 i {margin-right: 4px; font-size: 1.1rem;}
.comment-title p {font-size: .85rem; line-height: 1.4; color: #444;}
.comment-title p em {color: #ff0000;}
.no-cmt {margin: 40px 0;}
.no-cmt p {font-size: 1.1rem; line-height: 1.3; font-weight: 300; color: #444;}
.commentlist li:first-child {border-top: none;}
.commentlist li {border-top: 1px solid #ddd; padding: 20px 0 20px; position: relative; display: block;}
.author-gravatar {position: absolute; width: 50px; height: 50px;}
.author-gravatar img {border-radius: 50%;}
.comment-right {padding-left: 65px;}
.comment-meta {display: flex; align-items: center; gap: 5px; font-size: .8rem; line-height: 1.1; color: #797d86; position: relative;}
.komenName, .komenName a {font-size: .93rem; line-height: 1.1; font-weight: 600; text-transform: capitalize;}
.komenName a {color: #0A54D7;}
.komenName a:hover {color: #0b4fc8;}
.comment-content {margin: 8px 0 0;}
.comment-wrp p {font-size: .96rem; line-height: 1.4; color: #000; margin-bottom: 10px; word-wrap: break-word;}
.comment-wrp p:last-child {margin-bottom: 0;}
.commentlist li ul.children {margin-bottom: -20px;}
.commentlist li ul.children li.depth-2 {padding-left: 60px;}
.commentlist .reply {margin-top: 5px;}
.commentlist .reply a {font-size: .8rem; font-weight: 600; color: #000; margin-right: 10px;}
.commentlist .reply a:hover {color: #0A54D7;}
.commentlist li ul.children .comment-respond {margin-bottom: 25px;}
/* -------------------------------------------------- 
COMMENT FORM
-------------------------------------------------- */
.comment-respond {margin-top: 15px; padding-top: 30px; border-top: 1px solid #ddd;}
.logged-in-as {font-size: .85rem; line-height: 1.2; margin-bottom: 12px;}
.logged-in-as strong {font-weight: 500; color: #0A54D7; text-transform: capitalize;}
.logged-in-as a {color: #fff;}
.logged-in-as a:hover {text-decoration: underline;}
.cmt-form .col {position: relative; margin-bottom: 25px;}
.cmtform-one {display: flex; gap: 40px;}
.cmtform-one .col {width: 50%; }
#commentform label {display: block; width: 100%; font-size: .95rem; line-height: 1.2; font-weight: 500; color: #000; margin-bottom: 6px;}
#commentform label span {color: #ff0000;}
#commentform input, #commentform textarea {font-size: .95rem; line-height: 1.2; padding: 0 0 10px; background: transparent; color: #000; border: none; border-bottom: 1px solid #ccc; width: 100%;}
#commentform input:hover, #commentform textarea:hover {border-color: #7a7a7a;}
#commentform input:focus, #commentform textarea:focus {border-color: #0A54D7;}
#commentform textarea {line-height: 1.4; height: 100px; width: 100%; font-family: 'Inter', sans-serif;}
.btn-submit {margin-top: 10px;}
.btn-submit input#submit {background: #0A54D7; color: #fff; font-size: .98rem; line-height: 1.1; font-weight: 600; padding: 16px 0; border: none; cursor: pointer; text-align: center; width: 100%; border-radius: 4px; transition: all 0.2s ease-in-out; display: block;}
.btn-submit input:hover#submit {background: #094bc1;}
.cancel-comment-reply {margin: 20px 0 20px;}
.cancel-comment-reply a {font-size: 1.2rem; color: #0A54D7; font-weight: 500;}
.comment-extra {font-size: 12px!important;}
/* -------------------------------------------------- 
SINGLE MORE POST
-------------------------------------------------- */
.b-title h2 {font-size: 1.5rem; line-height: 1; font-weight: 700;}
.sb-more {margin-top: 40px;}
.sb-more.b-list .row {padding: 25px 0; border-bottom: 1px solid #ddd;}
.sb-more.b-list .row:last-child {border-bottom: 0;}
.sb-more a {display: grid; grid-template-columns: 300px 1fr; align-items: center; gap: 25px;}
.sb-more.b-list .info {margin-top: 0;}
.sb-more.b-list a h3 {font-size: 1.35rem; line-height: 1.4; font-weight: 600;}
/* -------------------------------------------------- 
SIDEBAR
-------------------------------------------------- */
.wp-block-search__label {display: none;}
.sidebar h3, h2.wp-block-heading {font-size: 1.3rem; line-height: 1.2;}
.c-side li a {display: flex; align-items: center; padding: 15px 0; border-bottom: 1px solid #ddd; position: relative;}
.c-side .info {padding-right: 15px; width: 100%;}
.c-side li a h4 {font-size: 1rem; line-height: 1.35; color: #000; font-weight: 500; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; transition: .3s;}
.c-side li a:hover h4 {color: #0A54D7;}
.c-side li a .post-meta {font-size: .75rem; display: flex; align-items: center; margin-top: 10px;}
.c-side a .thumb {max-width: 110px; height: 110px; overflow: hidden;}
.c-side a .thumb img {min-width: 200px; margin-left: -40%; transition: 1.3s;}
.wp-block-search {margin: 30px 0 20px;}
.wp-block-search__input {padding: 10px; border-radius: 4px;}
.wp-block-search__button {padding: 8px 16px; display: flex; justify-content: center; align-items: center; border-radius: 4px; margin-left: 5px;}
.wp-block-search__button:hover {background: #151618;}
h2.wp-block-heading {margin-bottom: 10px;}
ul.wp-block-archives {display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px;}
ul.wp-block-archives li a {font-size: .95rem; line-height: 1.2; color: #000;}
ul.wp-block-archives li a:hover {color: #0A54D7;}
/* -------------------------------------------------- 
PAGINATION
-------------------------------------------------- */
.WPpagi {width: 100%; position: relative; margin: 30px 0 0; display: flex; justify-content: center; align-items: center;}
.WPpagi span, .WPpagi a {font-size: 1rem; line-height: 1; font-weight: 300; color: #000; border: none!important; border-radius: 50%; width: 1.5em; height: 2em; display: flex; align-items: center; justify-content: center; margin: 0!important; padding: 0!important;}
.WPpagi a:hover {color: #666;}
.WPpagi span.current {color: #0A54D7; font-weight: 600!important;}
.WPpagi .prev, .WPpagi .next {content: '';}
.WPpagi .prev {background: url('images/chev-left.svg') no-repeat center; background-size: 12px;}
.WPpagi .next {background: url('images/chev-right.svg') no-repeat center; background-size: 12px;}
/* -------------------------------------------------- 
SEARCH PAGE
-------------------------------------------------- */
.search-title {margin-bottom: 30px;}
.search-title h1 {font-size: 1.4rem; line-height: 1.2; color: #000; font-weight: 600;}
/* -------------------------------------------------- 
404
-------------------------------------------------- */
.notfound {padding: 5em 0;}
.notfound h1 {font-size: 15rem; line-height: 1.1; font-weight: 700;}
.notfound p {font-size: 1.2rem; line-height: 1.2;}
/* -------------------------------------------------- 
ADD ON
-------------------------------------------------- */
.video, .maps {overflow: hidden; padding-bottom: 50%; position: relative; height: 0;}
.video iframe, .maps iframe {left: 0; top: 0; height: 100%; width: 100%; position: absolute;}
.maps {margin-bottom: 0;}
.fb-ico {background: #4267b2;}
.threads-ico {background: #000;}
.twit-ico {background: #000;}
.ig-ico {background: #d6249f; background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);}
.pin-ico {background: #cc2127;}
.in-ico {background: #0077b5;}
.be-ico {background: #053eff;}
.utube-ico {background: #ff0000;}
.tiktok-ico {background: #000;}
/* --------------------------------------------------
MENU MOBILE
-------------------------------------------------- */
.b-menu {margin-right: -5px;}
.b-menu button {width: 34px; height: 34px; display: flex; justify-content: center; align-items: center; padding: 3px;}
.b-menu img {width: 28px; height: 28px; display: block;}
.offcanvas-close {width: 32px; height: 32px; padding: 9px; margin: 0; display: flex; justify-content: center; align-items: center; top: 10px; right: 5px; position: absolute;}
.canv {padding: 20px;}
.bb-logo {margin-bottom: 20px; max-width: 130px;}
.bb-nav {margin-bottom: 25px;}
#navhp ul {display: flex; flex-direction: column; gap: 5px;}
#navhp li a {font-size: 1.1rem; line-height: 1.2; font-weight: 500; color: #000; padding: 5.5px 0; display: block; width: 100%;}
.bb-socmed ul {display: flex; flex-wrap: wrap; gap: 3px;}
.bb-socmed li a {color: #000; width: 36px; height: 36px; border: 1px solid #000; display: flex; justify-content: center; align-items: center; border-radius: 50%;}
.bb-socmed li a svg {width: 18px; height: 18px; fill: currentColor; color: #000;}
/* --------------------------------------------------
OFF CANVAS
-------------------------------------------------- */
.offcanvas {position: fixed; top: 0; width: 280px; max-width: 85vw; height: 100vh; background: #fff; z-index: 9999; transition: transform .35s ease; overflow-y: auto;}
.offcanvas-left {left: 0; transform: translateX(-100%);}
.offcanvas-left.active {transform: translateX(0);}
.offcanvas-right {width: 400px; right: 0; transform: translateX(100%);}
.offcanvas-right.active {transform: translateX(0);}
.offcanvas-right .offcanvas-close {top: 8px; z-index: 9;}
.offcanvas-top {top: 0; left: 0; width: 100%; max-height: 90vh; transform: translateY(-100%);}
.offcanvas-bottom {bottom: 0; left: 0; width: 100%; max-height: 90vh; border-radius: 20px 20px 0 0; transform: translateY(100%);}
.offcanvas-bottom.active {transform: translateY(0);}
.offcanvas-overlay {position: fixed; inset: 0; background: rgba(0,0,0,.7); opacity: 0; visibility: hidden; transition: .3s ease; z-index: 9998;}
.offcanvas-overlay.active {opacity: 1; visibility: visible;}
/* -------------------------------------------------- 
LOGIN / REGISTER (page-LOGIN.php, page-REGISTER.php)
-------------------------------------------------- */
.auth-wrap {display: flex; justify-content: center; padding: 20px 0 60px;}
.auth-card {width: 100%; max-width: 600px; background: #fff; border: 1px solid #ececec; border-radius: 10px; padding: 40px; box-shadow: rgba(17, 12, 46, 0.15) 0px 48px 100px 0px;}
.auth-card h2 {font-size: 1.8rem; margin-bottom: 30px;}
.auth-desc {font-size: .9rem; line-height: 1.4; color: #8a8a8a; margin-bottom: 20px;}
.auth-form .form-row {margin-bottom: 18px;}
.auth-form label {display: block; font-size: .95rem; font-weight: 500; color: #000; margin-bottom: 6px;}
.auth-form label .required {color: #ff0000;}
.auth-form input.input-text {width: 100%; border: 1px solid #ccc; border-radius: 6px; padding: 12px 14px; font-size: .92rem; color: #000;}
.auth-form input.input-text:hover {border-color: #777;}
.auth-form input.input-text:focus {border-color: #000;}
.auth-row-inline {display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap;}
.auth-row-inline label {font-weight: 300;}
.auth-checkbox {display: flex; align-items: center; gap: 6px; font-size: .85rem; font-weight: 500; color: #444; margin-bottom: 0 !important; cursor: pointer;}
.auth-checkbox input[type="checkbox"] {width: 15px; height: 15px; vertical-align: -2.5px; margin: 0 2px 0 0; accent-color: #009b5d; cursor: pointer;}
.auth-link-forgot {font-size: .9rem; font-weight: 500; color: #000;}
.auth-link-forgot:hover {text-decoration: underline;}
.btn-auth-submit {width: 100%; padding: 16px 0; border-radius: 6px; background: #2c2929; color: #fff; font-size: 1rem; line-height: 1.1; font-weight: 600; margin-top: 4px;}
.btn-auth-submit:hover {background: #000;}
.btn-auth-submit:disabled {opacity: .6; cursor: not-allowed;}
.auth-switch {text-align: center; font-size: .95rem; color: #333; margin-top: 20px;}
.auth-switch a {font-weight: 600; color: #0a54d7;}
.auth-switch a:hover {text-decoration: underline;}
.auth-notice {display: none; font-size: .85rem; padding: 10px 14px; border-radius: 6px; margin-bottom: 18px;}
.auth-notice.notice-success {display: block; background: #e3f6ea; color: #1a8a4a;}
.auth-notice.notice-error {display: block; background: #fbe1e1; color: #c0392b;}
/* Password show/hide toggle + strength meter (page-REGISTER.php) */
.password-field-wrap {position: relative; display: block;}
.password-field-wrap input.input-text {padding-right: 44px;}
.toggle-password {position: absolute; top: 50%; right: 8px; transform: translateY(-50%); background: none; border: none; padding: 6px; display: flex; align-items: center; justify-content: center; color: #8a8a8a; cursor: pointer;}
.toggle-password:hover {color: #2c2929;}

.password-strength {margin-top: 8px;}
.password-strength-bar {height: 4px; border-radius: 2px; background: #ececec; overflow: hidden;}
.password-strength-bar span {display: block; height: 100%; width: 0%; background: transparent; transition: width .2s ease, background-color .2s ease;}
.password-strength-bar span.weak {background: #c0392b;}
.password-strength-bar span.medium {background: #d98c1f;}
.password-strength-bar span.strong {background: #1a8a4a;}
.password-strength-label {display: inline-block; margin-top: 4px; font-size: .78rem; font-weight: 600;}
.password-strength-label.weak {color: #c0392b;}
.password-strength-label.medium {color: #d98c1f;}
.password-strength-label.strong {color: #1a8a4a;}