/*
Theme Name: GearO Child
Theme URI: https://gearo.presslayouts.com/landing
Author: PressLayouts Team
Description: This is a child theme for GearO
Version: 1.0
Author URI: https://www.presslayouts.com/
Template: gearo
Text Domain: gearo-child
*/

/* ===== Marksam Product Category Cards ===== */
.msm-cat-section {
    padding: 60px 20px;
    background: #fff;
    font-family: inherit;
}
.msm-cat-heading {
    text-align: center;
    margin-bottom: 44px;
}
.msm-cat-heading h2 {
    font-size: 36px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 10px;
    line-height: 1.2;
}
.msm-cat-heading h2 span {
    color: #f59d3d;
}
.msm-cat-heading p {
    color: #777;
    font-size: 15px;
    margin: 0;
}
.msm-cat-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    max-width: 1200px;
    margin: 0 auto;
}
.msm-cat-card {
    display: flex;
}
.msm-card-inner {
    background: #fdf0e8;
    border-radius: 20px;
    padding: 18px 18px 18px 18px;
    display: flex;
    flex-direction: column;
    width: 100%;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.msm-card-inner:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 36px rgba(0,0,0,0.10);
}

/* Top row: icon left, title right */
.msm-card-top {
    display: flex;
    align-items: center;
    flex-direction: row;
    margin-bottom: 16px;
    gap: 12px;
}
.msm-cat-icon-link {
    order: 0;
}
.msm-card-title {
    font-size: 20px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0;
    line-height: 1.25;
    flex: 1;
    order: 1;
}
.msm-card-title a {
    color: inherit;
    text-decoration: none;
}
.msm-card-title a:hover {
    color: #f59d3d;
}

/* Category icon — circular */
.msm-cat-icon-link {
    display: block;
    flex-shrink: 0;
    text-decoration: none !important;
}
.msm-cat-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    transition: transform 0.2s;
}
.msm-cat-icon-link:hover .msm-cat-icon {
    transform: scale(1.08);
}

/* Bottom photo — rounded corners all sides */
.msm-card-photo {
    display: block;
    border-radius: 14px;
    overflow: hidden;
    flex: 1;
    margin-top: 4px;
}
.msm-card-photo img {
    width: 100%;
    height: 190px;
    object-fit: cover;
    display: block;
    border-radius: 14px;
    transition: transform 0.3s ease;
}
.msm-card-photo:hover img {
    transform: scale(1.04);
}

/* Responsive */
@media (max-width: 1024px) {
    .msm-cat-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
    .msm-cat-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .msm-cat-section { padding: 40px 16px; }
    .msm-cat-heading h2 { font-size: 26px; }
    .msm-card-title { font-size: 18px; }
    .msm-card-photo img { height: 150px; }
    .msm-cat-icon { width: 50px; height: 50px; }
}
/* ===== End Category Cards ===== */

/* Contact page uses shortcode with inline styles */

/* ── Hide page title sub-header on all interior pages ── */
#page-title,
.pls-page-title {
    display: none !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

/* Show sub-header on contact page only */
.page-id-633 #page-title,
.page-id-633 .pls-page-title {
    display: block !important;
    height: auto !important;
    padding: revert !important;
    margin: revert !important;
    overflow: visible !important;
}

/* ── Shop content top padding fix ── */
.woocommerce-shop .pls-site-content .pls-page-content,
.woocommerce-page .pls-site-content .pls-page-content,
.woocommerce-shop .pls-primary,
.woocommerce-page.post-type-archive-product .pls-primary {
    padding-top: 32px !important;
}

/* ── Force solid header on shop/catalog pages (header is transparent by default on catalog) ── */
.woocommerce-shop #header,
.woocommerce-page #header,
.woocommerce-shop .pls-site-header,
.woocommerce-page .pls-site-header,
.pls-catalog-page #header,
.pls-catalog-page .pls-site-header {
    background: #fff !important;
    box-shadow: 0 1px 0 rgba(0,0,0,.07) !important;
}

/* Ensure nav links, logo visible on white header */
.woocommerce-shop .pls-main-navigation .nav-link,
.woocommerce-page .pls-main-navigation .nav-link,
.pls-catalog-page .pls-main-navigation .nav-link {
    color: #1a1a1a !important;
}
.woocommerce-shop .pls-main-navigation .nav-link:hover,
.woocommerce-page .pls-main-navigation .nav-link:hover,
.pls-catalog-page .pls-main-navigation .nav-link:hover {
    color: #70b346 !important;
}
/* Show dark logo (not white version) */
.woocommerce-shop .pls-logo-white,
.woocommerce-page .pls-logo-white,
.pls-catalog-page .pls-logo-white { display: none !important; }
.woocommerce-shop .pls-logo,
.woocommerce-page .pls-logo,
.pls-catalog-page .pls-logo { display: block !important; }

/* ════════════════════════════════
   SHOP — CATALOG MODE (no cart/price)
   + CLEAN CARD DESIGN
   ════════════════════════════════ */

/* ── Hide all e-commerce UI ── */
/* Cart icon in header */
.pls-header-cart,
.pls-header-cart-count,
.pls-site-header .pls-header-cart { display: none !important; }

/* Wishlist heart in header */
.pls-header-wishlist,
.pls-header-wishlist-count,
.pls-header-wishlist-icon,
.pls-site-header .pls-header-wishlist { display: none !important; }

/* Prices on shop/archive pages only — NOT on single product */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price *,
.woocommerce ul.products li.product .woocommerce-Price-amount { display: none !important; }

/* Add to cart buttons on shop/category pages */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product a.button,
.added_to_cart,
.pls-product-info .button { display: none !important; }

/* Wishlist / compare product icons */
.pls-product-icons,
.woosw-btn,
.woosc-btn { display: none !important; }

/* ── Hide header user/account icon & dropdown ── */
.pls-header-myaccount,
.pls-header-account,
.pls-header-user,
.pls-login-register,
.pls-header-icon-account,
.pls-header-col .pls-login-register,
a.pls-header-account-link,
.header-icon-account,
.customer-signinup,
.pls-myaccount-login { display: none !important; }

/* Compare bar at bottom */
.woosc-bar,
.woosc-area { display: none !important; }

/* Wishlist popup */
.woosw-popup { display: none !important; }

/* Cart page */
.woocommerce-cart .pls-site-content { display: none !important; }

/* Remove from cart */
.woocommerce-cart .remove,
.woocommerce td.product-remove { display: none !important; }

/* Checkout */
.woocommerce-checkout .pls-site-content { display: none !important; }

/* My account cart/orders visibility - keep login only */
.woocommerce-MyAccount-navigation-link--orders,
.woocommerce-MyAccount-navigation-link--downloads { display: none !important; }

/* ── Page background ── */
.woocommerce-shop .pls-site-content,
.woocommerce-page.post-type-archive-product .pls-site-content {
    background: #f5f5f5;
}

/* ── Product grid — 3 columns, generous gap ── */
.woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    clear: both !important;
    float: none !important;
}
@media (max-width: 900px) {
    .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 16px !important; }
}
@media (max-width: 540px) {
    .woocommerce ul.products { grid-template-columns: 1fr !important; gap: 14px !important; }
}

/* ── Product card wrapper — reset li/div ── */
.woocommerce ul.products li.product,
.woocommerce ul.products .product {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    float: none !important;
    display: block !important;
    cursor: pointer !important;
}

/* ── pls-product-inner = the visible card (target directly, no parent needed) ── */
.pls-product-inner {
    background: #fff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    border: 1px solid #e0e0e0 !important;
    box-shadow: 0 4px 20px rgba(0,0,0,.09) !important;
    transition: box-shadow .3s ease, transform .3s ease !important;
    display: flex !important;
    flex-direction: column !important;
}
.pls-product-inner:hover {
    box-shadow: 0 12px 36px rgba(0,0,0,.13) !important;
    transform: translateY(-4px) !important;
}

/* ── Image zone ── */
.pls-product-image {
    background: #fff !important;
    aspect-ratio: 1 / 1 !important;
    display: block !important;
    overflow: hidden !important;
    border-bottom: 1px solid #efefef !important;
    position: relative !important;
    flex-shrink: 0 !important;
}
.pls-product-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    padding: 24px !important;
    display: block !important;
    transition: transform .4s ease !important;
    box-sizing: border-box !important;
}
.pls-product-inner:hover .pls-product-image img {
    transform: scale(1.05) !important;
}

/* ── Hide actions, wishlist, quick-view, cart, price ── */
.pls-product-actions,
.pls-product-icons,
.woosw-btn,
.woosc-btn,
.wooqv-button,
.woocommerce-loop-product__link::after { display: none !important; }

/* ── Info area inside card ── */
.pls-product-info {
    padding: 14px 16px 16px !important;
    background: #fff !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* ── Title ── */
.pls-product-info .woocommerce-loop-product__title,
.pls-product-info h2,
.pls-product-info .product-title {
    font-family: Montserrat, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

/* ── Price + Add-to-cart hidden ── */
.pls-product-info .price,
.pls-product-info .button,
.pls-product-info .add_to_cart_button { display: none !important; }

/* ── Category pills ── */
.pls-product-info .pls-product-cats {
    display: flex !important; flex-wrap: wrap !important;
    gap: 4px !important; margin-bottom: 8px !important;
}
.pls-product-info .pls-product-cats a {
    font-family: Montserrat, sans-serif !important; font-size: 9px !important;
    font-weight: 700 !important; letter-spacing: .5px !important;
    text-transform: uppercase !important; color: #70b346 !important;
    background: #eef7e6 !important; border-radius: 20px !important;
    padding: 3px 9px !important; text-decoration: none !important;
}

/* ── Toolbar — single row ── */
/* ══════════════════════════════════════════
   SHOP TOOLBAR — single row layout
   Actual DOM: .pls-products-header
               ├── .pls-products-header-controls
               │   ├── .pls-products-header-filter  (hidden)
               │   ├── .pls-products-header-layout  (grid toggles)
               │   └── .pls-products-header-sorting (sort form)
               └── .pls-products-active-filters
                   └── .woocommerce-result-count
   ══════════════════════════════════════════ */

/* Make the whole header one flex row */
.pls-products-header {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    background: #fff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 12px !important;
    padding: 10px 16px !important;
    margin-bottom: 24px !important;
    gap: 0 !important;
}

/* Controls (grid icons + sort) — pushed to the right */
.pls-products-header-controls {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    margin-left: auto !important;
    order: 2 !important;
}

/* Result count — stays on the left */
.pls-products-active-filters {
    display: flex !important;
    align-items: center !important;
    order: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.pls-active-filters { display: none !important; }

/* Hide filter button (not needed here) */
.pls-products-header-filter { display: none !important; }
.pls-product-onsale         { display: none !important; }

/* ── Result count ── */
.woocommerce-result-count {
    font-family: Montserrat, sans-serif !important;
    font-size: 12px !important;
    color: #999 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

/* ── Grid view toggle icons ── */
.pls-products-view {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin: 0 12px !important;
    flex-shrink: 0 !important;
}
.pls-products-view a,
.pls-products-view span {
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 7px !important;
    border: 1.5px solid #e5e5e5 !important;
    background: #fff !important;
    color: #aaa !important;
    cursor: pointer !important;
    transition: all .15s !important;
    text-decoration: none !important;
}
.pls-products-view a:hover,
.pls-products-view span:hover {
    border-color: #70b346 !important;
    color: #70b346 !important;
    background: #f3fae9 !important;
}
.pls-products-view a.active,
.pls-products-view span.active,
.pls-products-view a.pls-active,
.pls-products-view span.pls-active {
    border-color: #70b346 !important;
    background: #70b346 !important;
    color: #fff !important;
}
.pls-products-view a svg,
.pls-products-view span svg,
.pls-products-view a i,
.pls-products-view span i {
    width: 14px !important;
    height: 14px !important;
    font-size: 14px !important;
}

/* ── Sort by ── */
.woocommerce-ordering {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}
/* Theme already outputs <span class="pls-ordering-label">Sort by:</span> — no duplicate needed */
.woocommerce-ordering::before { content: none !important; display: none !important; }
.pls-ordering-label {
    font-family: Montserrat, sans-serif !important;
    font-size: 12px !important;
    color: #888 !important;
    white-space: nowrap !important;
}
.woocommerce-ordering select {
    border: 1.5px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 7px 12px !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 12px !important;
    color: #333 !important;
    background: #fff !important;
    box-shadow: none !important;
    cursor: pointer !important;
    outline: none !important;
    appearance: auto !important;
}
.woocommerce-ordering select:focus { border-color: #70b346 !important; }

/* ── Hide Availability widget (In Stock / On Sale — not relevant for catalog) ── */
.widget_pls_product_stock_status { display: none !important; }

/* ── Hide product counts e.g. "(2)" next to category names ── */
.widget_product_categories .count,
.woocommerce-widget-layered-nav .count,
.pls-sidebar .count,
#secondary .count { display: none !important; }

/* ── Sidebar container ── */
#secondary,
.pls-sidebar {
    background: transparent !important;
}

/* ── Sidebar widget cards ── */
#secondary .widget,
.pls-sidebar .widget,
.sidebar .widget {
    background: #fff !important;
    border-radius: 14px !important;
    border: 1px solid #eaeaea !important;
    padding: 22px 20px !important;
    margin-bottom: 14px !important;
    box-shadow: none !important;
}

/* ── Widget toggle row (title + chevron) ── */
#secondary .pls-widget-title-wrap,
.pls-sidebar .pls-widget-title-wrap {
    padding: 0 !important;
    border: none !important;
    background: none !important;
}

/* ── Widget title ── */
#secondary .widget-title,
#secondary .widgettitle,
.pls-sidebar .widget-title,
.sidebar .widget-title,
.pls-sidebar .widgettitle,
.sidebar .widgettitle {
    font-family: Montserrat, sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: #1a1a1a !important;
    margin: 0 0 16px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    border-top: none !important;
    background: none !important;
}

/* ════════════════════════════════
   CATEGORY FILTER PANEL
   ════════════════════════════════ */

/* Hide the original WP category widget list entirely — replaced by JS panel */
#secondary .widget_product_categories ul,
.pls-sidebar .widget_product_categories ul { display: none !important; }

/* ── Filter panel injected by JS ── */
.msm-filter-panel { font-family: Montserrat, sans-serif; }

/* Checkbox rows */
.msm-filter-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
}
.msm-filter-item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 9px 2px !important;
    border-bottom: 1px solid #f2f2f2 !important;
    cursor: pointer !important;
    transition: background .12s !important;
    border-radius: 6px !important;
}
.msm-filter-item:last-child { border-bottom: none !important; }
.msm-filter-item:hover { background: #f8fdf4 !important; padding-left: 6px !important; }

/* Custom checkbox box */
.msm-filter-check {
    width: 17px !important;
    height: 17px !important;
    min-width: 17px !important;
    border: 1.5px solid #ccc !important;
    border-radius: 4px !important;
    background: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all .15s !important;
    flex-shrink: 0 !important;
}
.msm-filter-check svg { display: none; }

/* Label text */
.msm-filter-label {
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #444 !important;
    flex: 1 !important;
    line-height: 1.4 !important;
    transition: color .15s !important;
}

/* Checked state */
.msm-filter-item.checked .msm-filter-check {
    background: #70b346 !important;
    border-color: #70b346 !important;
}
.msm-filter-item.checked .msm-filter-check svg { display: block; }
.msm-filter-item.checked .msm-filter-label {
    color: #1a1a1a !important;
    font-weight: 700 !important;
}
.msm-filter-item:hover .msm-filter-check { border-color: #70b346 !important; }
.msm-filter-item:hover .msm-filter-label { color: #70b346 !important; }
.msm-filter-item.checked:hover .msm-filter-label { color: #1a1a1a !important; }

/* ── Footer buttons ── */
.msm-filter-footer {
    display: flex !important;
    gap: 8px !important;
    padding-top: 14px !important;
    border-top: 1px solid #f0f0f0 !important;
}
.msm-filter-apply {
    flex: 1 !important;
    background: #70b346 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 9px 0 !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .5px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: background .15s !important;
}
.msm-filter-apply:hover { background: #5a9236 !important; }
.msm-filter-apply:disabled {
    background: #ccc !important;
    cursor: default !important;
}
.msm-filter-clear {
    background: #fff !important;
    color: #888 !important;
    border: 1.5px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 9px 14px !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .5px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: all .15s !important;
    white-space: nowrap !important;
}
.msm-filter-clear:hover {
    border-color: #999 !important;
    color: #555 !important;
}

/* ── Price range slider ── */
.widget_price_filter .ui-slider .ui-slider-range { background: #70b346 !important; }
.widget_price_filter .ui-slider .ui-slider-handle { background: #70b346 !important; border-color: #70b346 !important; border-radius: 50% !important; }
.widget_price_filter .price_slider_amount .button {
    background: #70b346 !important; color: #fff !important; border-radius: 8px !important;
    font-size: 11px !important; padding: 7px 16px !important; font-family: Montserrat, sans-serif !important;
}

/* ── Pagination ── */
.woocommerce nav.woocommerce-pagination { margin-top: 36px !important; }
.woocommerce nav.woocommerce-pagination ul {
    border: none !important; display: flex !important;
    justify-content: center !important; gap: 6px !important; flex-wrap: wrap !important;
}
.woocommerce nav.woocommerce-pagination ul li { border: none !important; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    font-family: Montserrat, sans-serif !important; font-size: 12px !important; font-weight: 600 !important;
    border-radius: 8px !important; border: 1px solid #e5e5e5 !important; color: #666 !important;
    background: #fff !important; min-width: 38px !important; height: 38px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    padding: 0 12px !important; transition: all .2s !important; margin: 0 !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: #70b346 !important; border-color: #70b346 !important; color: #fff !important;
}

/* ── Sale badge ── */
.woocommerce ul.products li.product .onsale {
    background: #70b346 !important; color: #fff !important;
    border-radius: 6px !important; font-size: 10px !important; font-weight: 700 !important;
    min-width: auto !important; min-height: auto !important;
    padding: 3px 9px !important; top: 10px !important; left: 10px !important; right: auto !important;
}

/* ════════════════════════════════
   OUR COMPANY PAGE
   ════════════════════════════════ */
.moc-wrap{font-family:Montserrat,sans-serif;max-width:1100px;margin:0 auto;padding:0 24px 60px}

/* Hero slider */
.moc-slider-wrap{position:relative;width:100%;overflow:hidden;border-radius:18px;margin-bottom:60px;height:480px}
.moc-slider{display:flex;transition:transform .7s ease;height:100%}
.moc-slider img{min-width:100%;height:100%;object-fit:cover;display:block;flex-shrink:0}
.moc-slider-dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.moc-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:background .3s}
.moc-dot.active{background:#fff}

/* About section */
.moc-about{display:grid;grid-template-columns:38fr 62fr;gap:52px;align-items:start;margin-bottom:60px}
.moc-about-label{display:inline-block;font-size:10px;font-weight:700;color:#70b346;letter-spacing:2px;text-transform:uppercase;margin-bottom:14px}
.moc-about h2{font-size:24px;font-weight:800;color:#1a1a1a;margin:0 0 20px;line-height:1.3;letter-spacing:-0.2px}
.moc-about p{font-size:14px;color:#666;line-height:1.85;margin:0 0 16px}
.moc-about p:last-child{margin:0}

/* Stats row */
.moc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid #ececec;border-radius:14px;overflow:hidden;margin-bottom:60px}
.moc-stat{padding:24px 20px;text-align:center;border-right:1px solid #ececec}
.moc-stat:last-child{border-right:none}
.moc-stat-num{font-size:32px;font-weight:800;color:#70b346;line-height:1;margin-bottom:5px}
.moc-stat-lbl{font-size:10px;color:#999;letter-spacing:.5px;text-transform:uppercase}

/* Two-col section */
.moc-section-title{font-size:11px;font-weight:700;color:#aaa;letter-spacing:2px;text-transform:uppercase;margin:0 0 24px;padding-bottom:12px;border-bottom:1px solid #ececec}
.moc-two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:60px}
.moc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.moc-list li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:#555;line-height:1.6}
.moc-list li::before{content:"";width:5px;height:5px;border-radius:50%;background:#70b346;flex-shrink:0;margin-top:7px}

/* Responsive */
@media(max-width:900px){
  .moc-about{grid-template-columns:1fr;gap:32px}
  .moc-two-col{grid-template-columns:1fr;gap:32px}
  .moc-stats{grid-template-columns:1fr 1fr}
  .moc-stat:nth-child(2){border-right:none}
  .moc-stat:nth-child(3){border-top:1px solid #ececec}
  .moc-stat:nth-child(4){border-top:1px solid #ececec;border-right:none}
  .moc-slider-wrap{height:260px;border-radius:12px}
}
@media(max-width:600px){
  .moc-about h2{font-size:24px}
  .moc-stat-num{font-size:24px}
  .moc-slider-wrap{margin-bottom:40px}
}

/* ════════════════════════════════
   OUR BRANDS PAGE
   ════════════════════════════════ */
.mb-wrap{font-family:Montserrat,sans-serif;max-width:1100px;margin:0 auto;padding:0 24px 60px}

/* Tab nav */
.mb-tabs{display:flex;gap:0;border-bottom:1px solid #e2e2e2;margin-bottom:0;overflow-x:auto;scrollbar-width:none}
.mb-tabs::-webkit-scrollbar{display:none}
.mb-tab{flex-shrink:0;padding:16px 32px;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#999;background:transparent;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s;white-space:nowrap}
.mb-tab:hover{color:#1a1a1a}
.mb-tab.active{color:#70b346;border-bottom-color:#70b346}

/* Panel */
.mb-panel{display:none;padding-top:48px}
.mb-panel.active{display:block}

/* Hero image */
.mb-hero{width:100%;height:420px;object-fit:cover;border-radius:16px;display:block;margin-bottom:36px}

/* Brand header */
.mb-brand-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px;flex-wrap:wrap}
.mb-brand-title{font-size:28px;font-weight:800;color:#1a1a1a;margin:0 0 6px;letter-spacing:-0.3px}
.mb-brand-url{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#70b346;text-decoration:none;letter-spacing:.5px}
.mb-brand-url:hover{color:#5a9236}
.mb-brand-url svg{transition:transform .2s}
.mb-brand-url:hover svg{transform:translateX(3px)}

/* Description */
.mb-brand-desc{font-size:14px;color:#666;line-height:1.85;margin:0 0 40px;max-width:680px}

/* Thumbs */
.mb-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.mb-thumb{border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#f4f4f4}
.mb-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.mb-thumb:hover img{transform:scale(1.04)}

/* Mobile */
@media(max-width:700px){
  .mb-hero{height:220px;border-radius:10px}
  .mb-thumbs{grid-template-columns:1fr 1fr}
  .mb-tab{padding:12px 18px;font-size:10px;letter-spacing:1.2px}
  .mb-brand-title{font-size:22px}
}
@media(max-width:480px){
  .mb-thumbs{grid-template-columns:1fr}
}

/* ════════════════════════════════
   PAGE TITLE HERO
   ════════════════════════════════ */
.msm-page-title {
    max-width: 100%;
    margin: 0 0 48px;
    padding: 40px 0 36px;
    border-bottom: 1px solid #efefef;
    font-family: Montserrat, sans-serif;
}
.msm-page-title .msm-pt-label {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: #70b346;
    margin-bottom: 10px;
}
.msm-page-title h1 {
    font-size: 38px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 8px;
    line-height: 1.15;
    letter-spacing: -0.5px;
}
.msm-page-title h1 span { color: #70b346; }
.msm-page-title p {
    font-size: 14px;
    color: #999;
    margin: 0;
    line-height: 1.6;
}
@media(max-width:768px){
    .msm-page-title h1 { font-size: 26px; }
    .msm-page-title { padding: 28px 20px 24px; margin-bottom: 32px; }
}

/* ════════════════════════════════
   BRAND REPERTOIRE SECTION
   ════════════════════════════════ */
.mbr-wrap {
    font-family: Montserrat, sans-serif;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 24px 56px;
    border-bottom: 2px solid #f0f0f0;
    margin-bottom: 56px;
}
.mbr-label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: #70b346;
    margin-bottom: 10px;
    display: block;
}
.mbr-heading {
    font-size: 28px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 40px;
    letter-spacing: -0.3px;
}
.mbr-heading span { color: #70b346; }

/* Category block */
.mbr-category {
    margin-bottom: 36px;
}
.mbr-category:last-child { margin-bottom: 0; }
.mbr-cat-label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #70b346;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 2px solid #e8f5e0;
    display: flex;
    align-items: center;
    gap: 8px;
}
.mbr-cat-label::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #70b346;
    flex-shrink: 0;
}

/* Logo cards grid */
.mbr-logos {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.mbr-logo-card {
    background: #fff;
    border: 1.5px solid #70b346;
    border-radius: 10px;
    width: 160px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    transition: background .18s, box-shadow .18s, transform .18s;
    cursor: default;
    overflow: hidden;
}
.mbr-logo-card:hover {
    background: #f3fae9;
    box-shadow: 0 4px 14px rgba(112,179,70,.18);
    transform: translateY(-2px);
}
.mbr-logo-card img {
    max-width: 128px;
    max-height: 48px;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
    filter: grayscale(20%) opacity(0.85);
    transition: filter .18s;
}
.mbr-logo-card:hover img {
    filter: grayscale(0%) opacity(1);
}
.mbr-name {
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: #70b346;
    letter-spacing: 0.3px;
    white-space: nowrap;
    text-align: center;
    transition: color .18s;
}
.mbr-logo-card:hover .mbr-name { color: #5a9236; }
@media(max-width:768px){
    .mbr-wrap { padding: 32px 20px 44px; }
    .mbr-heading { font-size: 22px; }
    .mbr-logo-card { width: 140px; height: 64px; }
    .mbr-name { font-size: 11px; }
}

/* ════════════════════════════════
   BRAND ARCHIVE — [marksam_brands]
   ════════════════════════════════ */
.msm-ba-wrap {
    font-family: Montserrat, sans-serif;
    padding: 0 0 60px;
    width: 100%;
    box-sizing: border-box;
}

/* Top bar — filter tabs right-aligned */
.msm-ba-topbar {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 32px;
}
.msm-ba-filterbar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
    row-gap: 8px;
}
.msm-ba-filter {
    font-family: Montserrat, sans-serif;
    background: none !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    color: #aaa;
    padding: 6px 0 !important;
    margin: 0 18px;
    position: relative;
    transition: color .2s;
    letter-spacing: -0.1px;
    white-space: nowrap;
    outline: none;
}
.msm-ba-filter:first-child { margin-left: 0; }
.msm-ba-filter:last-child  { margin-right: 0; }
.msm-ba-filter:not(:last-child)::after {
    content: '';
    position: absolute;
    right: -18px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 13px;
    background: #ddd;
}
.msm-ba-filter:hover  { color: #1a1a1a; background: none !important; }
.msm-ba-filter.active {
    color: #1a1a1a !important;
    font-weight: 700 !important;
    background: none !important;
    background-color: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 6px 0 !important;
}

/* Grid */
.msm-ba-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    background: transparent;
    width: 100%;
}

/* Card */
.msm-ba-card {
    background: #fff;
    border-radius: 20px;
    border: 1px solid #efefef;
    box-shadow: 0 2px 14px rgba(0,0,0,.06);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 28px 32px;
    text-decoration: none !important;
    gap: 20px;
    transition: box-shadow .25s, transform .25s;
    position: relative;
}
.msm-ba-card:hover {
    box-shadow: 0 12px 40px rgba(0,0,0,.13);
    transform: translateY(-5px);
    z-index: 2;
}

/* Logo area */
.msm-ba-logo {
    width: 100%;
    height: 96px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.msm-ba-logo-img {
    max-width: 170px;
    max-height: 86px;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
    transition: transform .22s;
}
.msm-ba-card:hover .msm-ba-logo-img { transform: scale(1.05); }
.msm-ba-logo-text {
    font-size: 17px;
    font-weight: 800;
    color: #1a1a1a;
    text-align: center;
    letter-spacing: -0.5px;
    line-height: 1.25;
}

/* Brand name */
.msm-ba-name {
    font-size: 12px;
    font-weight: 600;
    color: #777;
    text-align: center;
    letter-spacing: 0.3px;
}

@media(max-width:1024px){ .msm-ba-grid { grid-template-columns: repeat(3,1fr); } }
@media(max-width:700px){
    .msm-ba-grid { grid-template-columns: repeat(2,1fr); gap: 14px; }
    .msm-ba-topbar { justify-content: flex-start; }
    .msm-ba-filter { font-size: 12px; margin: 0 12px; }
    .msm-ba-filter:not(:last-child)::after { right: -12px; }
}
@media(max-width:480px){
    .msm-ba-card { padding: 32px 16px 24px; }
    .msm-ba-logo { height: 72px; }
    .msm-ba-logo-img { max-width: 130px; max-height: 64px; }
}

/* ════════════════════════════════
   BRAND SINGLE PAGE
   ════════════════════════════════ */
/* Remove sidebar, full-width content */
.single-brand #secondary { display: none !important; }
.single-brand #primary {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
}
/* Remove any entry-content inner constraints */
.single-brand .entry-content,
.single-brand .entry-post,
.single-brand .entry-content-wrapper {
    padding: 0 !important;
    max-width: none !important;
}
/* Hide theme title, meta, featured image, share, nav, related */
.single-brand .entry-header,
.single-brand .pls-page-title,
.single-brand .entry-title { display: none !important; }
.single-brand .entry-thumbnail-wrapper { display: none !important; }
.single-brand .pls-share,
.single-brand .pls-share-wrap,
.single-brand .pls-share-box,
.single-brand .entry-share,
.single-brand .share-post,
.single-brand .post-share,
.single-brand .share-links,
.single-brand .share-wrapper,
.single-brand .post-footer-share,
.single-brand .sharedaddy,
.single-brand [class*="share-"]:not(.msm-bs-url),
.single-brand [id*="share"] { display: none !important; }
.single-brand .post-navigation,
.single-brand .pls-post-navigation,
.single-brand .nav-links,
.single-brand .navigation { display: none !important; }
.single-brand .related-posts,
.single-brand .related-articles,
.single-brand .pls-related-posts { display: none !important; }
/* msm-bs-related must remain visible */
.msm-bs-related { display: block !important; }

/* Outer wrap — full width of content column */
.msm-bs-wrap {
    width: 100%;
    padding: 8px 0 60px;
    font-family: Montserrat, sans-serif;
}

/* Back link */
.msm-bs-back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    color: #70b346;
    text-decoration: none !important;
    margin-bottom: 32px;
    transition: gap .15s;
}
.msm-bs-back:hover { gap: 10px; color: #5a9236; }

/* ── Social profile: cover + logo badge ── */
.msm-bs-cover-wrap {
    position: relative;
    margin-bottom: 68px;
    width: 100%;
}
.msm-bs-cover {
    width: 100%;
    height: 500px;
    border-radius: 20px;
    overflow: hidden;
    background: #f0f2f0;
}
.msm-bs-cover-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
/* Logo badge overlapping the cover bottom-left */
.msm-bs-logo-badge {
    position: absolute;
    bottom: -44px;
    left: 36px;
    width: 110px;
    height: 110px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 4px 24px rgba(0,0,0,.13);
    border: 4px solid #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
}
.msm-bs-logo-badge img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}

/* Meta — indent to clear the logo badge */
.msm-bs-meta {
    margin-bottom: 32px;
    padding-left: 0;
}
.msm-bs-cat {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #70b346;
    background: #f0fae6;
    border-radius: 20px;
    padding: 5px 14px;
    margin-bottom: 16px;
}
.msm-bs-title {
    font-size: 38px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 14px;
    letter-spacing: -0.5px;
    line-height: 1.1;
}
.msm-bs-url {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 600;
    color: #70b346;
    text-decoration: none !important;
    letter-spacing: 0.3px;
}
.msm-bs-url:hover { color: #5a9236; }
.msm-bs-url svg { transition: transform .15s; }
.msm-bs-url:hover svg { transform: translateX(3px); }

/* Description */
.msm-bs-desc p {
    font-size: 15px;
    color: #555;
    line-height: 1.9;
    margin: 0 0 18px;
}
.msm-bs-desc p:last-child { margin: 0; }

@media(max-width:768px){
    .msm-bs-cover { height: 220px; border-radius: 14px; }
    .msm-bs-logo-badge { width: 80px; height: 80px; bottom: -32px; left: 20px; border-radius: 14px; }
    .msm-bs-cover-wrap { margin-bottom: 52px; }
    .msm-bs-title { font-size: 26px; }
    .msm-bs-wrap { padding: 8px 0 40px; }
}

/* ════════════════════════════════
   OTHER BRANDS SECTION
   ════════════════════════════════ */
.msm-bs-related {
    border-top: 2px solid #f0f0f0;
    margin-top: 56px;
    padding-top: 40px;
}
.msm-bs-related-heading {
    font-size: 20px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 28px;
    letter-spacing: -0.3px;
}
.msm-bs-related-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: #e8e8e8;
    border: 1px solid #e8e8e8;
    border-radius: 16px;
    overflow: hidden;
}
.msm-bs-rcard {
    background: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 28px 16px 22px;
    text-decoration: none !important;
    gap: 10px;
    transition: box-shadow .2s, transform .2s;
    position: relative;
}
.msm-bs-rcard:hover {
    box-shadow: 0 8px 24px rgba(0,0,0,.09);
    transform: translateY(-2px);
    z-index: 2;
}
.msm-bs-rlogo {
    width: 100%;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.msm-bs-rlogo img {
    max-width: 120px;
    max-height: 50px;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: grayscale(10%) opacity(0.85);
    transition: filter .2s;
}
.msm-bs-rcard:hover .msm-bs-rlogo img { filter: none; }
.msm-bs-rlogo-text {
    font-size: 13px;
    font-weight: 700;
    color: #70b346;
    text-align: center;
    line-height: 1.3;
}
.msm-bs-rname {
    font-size: 13px;
    font-weight: 700;
    color: #1a1a1a;
    text-align: center;
}
.msm-bs-rcat {
    font-size: 10px;
    color: #888;
    text-align: center;
    letter-spacing: 0.5px;
}
@media(max-width: 900px) {
    .msm-bs-related-grid { grid-template-columns: repeat(3, 1fr); }
}
@media(max-width: 600px) {
    .msm-bs-related-grid { grid-template-columns: repeat(2, 1fr); }
    .msm-bs-related-heading { font-size: 17px; }
}

/* ════════════════════════════════
   OUR COMPANY — AREAS OF EXPERTISE
   ════════════════════════════════ */
.moc-exp-wrap {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    padding: 60px 24px 70px;
    box-sizing: border-box;
    font-family: Montserrat, sans-serif;
}
.moc-exp-inner {
    max-width: 1320px;
    margin: 0 auto;
}
.moc-exp-header {
    margin-bottom: 32px;
}
.moc-exp-label {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #70b346;
    margin-bottom: 14px;
}
.moc-exp-heading {
    font-size: 32px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 12px;
    line-height: 1.2;
    letter-spacing: -0.3px;
}
.moc-exp-heading span { color: #70b346; }
.moc-exp-sub {
    color: #666;
    font-size: 14px;
    line-height: 1.8;
    margin: 0;
    max-width: 560px;
}
.moc-exp-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}
.moc-exp-card {
    background: #eef7e6;
    border-radius: 20px;
    padding: 24px 20px;
    transition: background .2s, transform .2s;
}
.moc-exp-card:hover {
    background: #dff0cc;
    transform: translateY(-2px);
}
.moc-exp-title {
    font-size: 13px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 7px;
    line-height: 1.3;
}
.moc-exp-desc {
    font-size: 12px;
    color: #4a6e36;
    line-height: 1.65;
    margin: 0;
}

/* Responsive */
@media(max-width: 1100px) {
    .moc-exp-grid { grid-template-columns: repeat(2, 1fr); }
}
@media(max-width: 700px) {
    .moc-exp-grid { grid-template-columns: 1fr; }
    .moc-exp-heading { font-size: 26px; }
}

/* ════════════════════════════════════════════════════════════
   SINGLE PRODUCT PAGE REDESIGN
   ════════════════════════════════════════════════════════════ */

.single-product .pls-single-product { font-family: Montserrat, sans-serif; }

/* ── 2-column: 54% gallery | 46% summary ── */
.single-product .pls-product-gallery-summary {
    display: grid;
    grid-template-columns: 54fr 46fr;
    gap: 52px;
    align-items: start;
    padding: 24px 0 48px;
}

/* ════ GALLERY — let Swiper work, just ensure it's visible ════ */
.single-product .pls-product-gallery { position: sticky; top: 100px; }

/* Un-hide gallery (WooCommerce JS sets opacity:0 inline — override it) */
.single-product .woocommerce-product-gallery {
    opacity: 1 !important;
    background: #f6f6f6;
    border-radius: 12px;
}
.single-product .woocommerce-product-gallery__image img {
    object-fit: contain;
    background: #f6f6f6;
}
.single-product .woocommerce-product-gallery__thumbnail {
    border: 2px solid #e0e0e0;
    border-radius: 6px;
    overflow: hidden;
    cursor: pointer;
    transition: border-color .2s;
}
.single-product .woocommerce-product-gallery__thumbnail.swiper-slide-thumb-active,
.single-product .woocommerce-product-gallery__thumbnail:hover {
    border-color: #70b346;
}

/* ── Force price + cart visible ── */
.single-product .price,
.single-product .pls-product-price-info .price,
.single-product .price.pls-product-price,
.single-product .woocommerce-Price-amount,
.single-product .woocommerce-Price-amount bdi,
.single-product .woocommerce-Price-currencySymbol { display: inline !important; }
.single-product .pls-product-price-info { display: block !important; }
.single-product form.cart { display: flex !important; }
.single-product .single_add_to_cart_button { display: flex !important; }

/* ── Hide B2B-irrelevant theme elements ── */
.single-product .pls-deliver-return,
.single-product .pls-estimated-delivery,
.single-product .pls-product-return,
.single-product .pls-product-store-location,
.single-product .pls-product-trust-badge,
.single-product .pls-ask-questions,
.single-product .pls-product-share,
.single-product .pls-product-sold-count,
.single-product .pls-visitor-count,
.single-product .pls-product-rating-info { display: none !important; }

/* ════ SUMMARY PANEL ════ */
.single-product .summary.entry-summary {
    position: sticky;
    top: 100px;
    padding: 0;
}

/* SKU / Meta */
.single-product .product_meta {
    font-size: 12px;
    color: #999;
    margin: 0 0 10px;
    padding: 0;
    border: none;
    display: flex;
    gap: 6px;
    align-items: center;
    flex-wrap: wrap;
}
.single-product .product_meta span { display: inline-flex; align-items: center; gap: 4px; }
.single-product .product_meta a { color: #70b346; text-decoration: none; }

/* ── Product Title ── */
.single-product .product_title.entry-title {
    font-size: 30px;
    font-weight: 800;
    color: #1a2a3a;
    line-height: 1.2;
    margin: 0 0 14px;
    letter-spacing: -0.4px;
}

/* ── Rating & sold count ── */
.single-product .pls-product-rating-info { display: none; }
.single-product .pls-visitor-count { display: none; }

/* ── Price ── */
.single-product .pls-product-price-info {
    margin-bottom: 14px;
    display: flex;
    align-items: baseline;
    gap: 8px;
}
.single-product .price.pls-product-price,
.single-product .price.pls-product-price .woocommerce-Price-amount,
.single-product .price.pls-product-price bdi {
    font-size: 32px !important;
    font-weight: 800 !important;
    color: #70b346 !important;
    display: inline !important;
}

/* ── Stock ── */
.single-product .pls-product-stock .stock {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 14px;
    border-radius: 20px;
    margin-bottom: 14px;
}
.single-product .pls-product-stock .in-stock {
    background: #eef7e6;
    color: #3d8a1e;
}
.single-product .pls-product-stock .in-stock::before {
    content: '';
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #70b346;
    flex-shrink: 0;
}
.single-product .pls-product-stock .out-of-stock {
    background: #fef2f2;
    color: #dc2626;
}

/* ── Short description ── */
.single-product .woocommerce-product-details__short-description {
    font-size: 14px;
    color: #555;
    line-height: 1.75;
    margin: 0 0 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ebebeb;
}

/* ── Separator ── */
.single-product .pls-product-summary-separator {
    border: none;
    border-top: 1px solid #ebebeb;
    margin: 16px 0;
}

/* ── Variations — attribute label ── */
.single-product .variations_form .variations {
    width: 100%;
    margin-bottom: 8px;
    border-collapse: separate;
    border-spacing: 0;
}
.single-product .variations_form .variations td,
.single-product .variations_form .variations th {
    padding: 4px 0;
    vertical-align: middle;
    border: none;
    background: none;
}
.single-product .variations_form .variations .label label {
    font-size: 13px;
    font-weight: 700;
    color: #1a2a3a;
    text-transform: capitalize;
    letter-spacing: 0;
    display: block;
    margin-bottom: 6px;
}

/* ── Pill-shaped select dropdowns (like reference) ── */
.single-product .variations_form .variations select {
    width: 100%;
    border: 1.5px solid #d0d5dd;
    border-radius: 30px;
    padding: 12px 44px 12px 20px;
    font-size: 14px;
    font-family: Montserrat, sans-serif;
    color: #1a1a1a;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23555' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 18px center;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    transition: border-color .2s;
    margin-bottom: 16px;
}
.single-product .variations_form .variations select:focus {
    outline: none;
    border-color: #70b346;
}

/* ── Add to Cart row ── */
.single-product form.cart {
    display: flex !important;
    align-items: stretch;
    gap: 10px;
    margin: 20px 0 16px;
    flex-wrap: nowrap;
}

/* Quantity stepper */
.single-product form.cart .quantity {
    display: flex;
    align-items: center;
    border: 1.5px solid #d0d5dd;
    border-radius: 30px;
    overflow: hidden;
    background: #fff;
    flex-shrink: 0;
    height: 52px;
}
.single-product form.cart .quantity input[type="number"] {
    width: 38px;
    text-align: center;
    border: none;
    font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    background: transparent;
    padding: 0;
    -moz-appearance: textfield;
}
.single-product form.cart .quantity input[type="number"]::-webkit-outer-spin-button,
.single-product form.cart .quantity input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; }
.single-product form.cart .qty-minus,
.single-product form.cart .qty-plus {
    width: 38px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #444;
    font-size: 18px;
    background: transparent;
    border: none;
    line-height: 1;
    transition: color .15s;
    flex-shrink: 0;
}
.single-product form.cart .qty-minus:hover,
.single-product form.cart .qty-plus:hover { color: #70b346; }

/* Add to Cart button — full green pill */
.single-product form.cart .single_add_to_cart_button {
    flex: 1 !important;
    min-width: 0 !important;
    background: #70b346 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 30px !important;
    height: 52px !important;
    padding: 0 28px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    font-family: Montserrat, sans-serif !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: background .2s !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.single-product form.cart .single_add_to_cart_button:hover {
    background: #5a9437 !important;
}

/* ── Ask a Question / share / trust badge ── */
.single-product .pls-ask-questions { display: none; }
.single-product .pls-product-trust-badge { margin-top: 12px; }
.single-product .pls-product-share {
    margin-top: 4px;
    padding-top: 14px;
    border-top: 1px solid #ebebeb;
}
.single-product .pls-product-share .share-label {
    font-size: 11px;
    font-weight: 700;
    color: #bbb;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* ── Delivery/Return info ── */
.single-product .pls-deliver-return,
.single-product .pls-estimated-delivery,
.single-product .pls-product-return,
.single-product .pls-product-store-location {
    border-top: 1px solid #ebebeb;
    padding: 12px 0;
    font-size: 13px;
    color: #555;
    display: flex;
    align-items: center;
    gap: 10px;
}
.single-product .pls-delivery-text,
.single-product .pls-product-return-text,
.single-product .pls-product-store-location-text {
    font-size: 13px;
    color: #444;
    line-height: 1.5;
}
.single-product .pls-delivery-text span,
.single-product .pls-product-return-text span {
    font-weight: 700;
    color: #1a1a1a;
}

/* ── TABS — clean accordion-style ── */
.single-product .woocommerce-tabs.wc-tabs-wrapper,
.single-product .pls-single-products-tabs {
    margin: 0 0 48px;
    border-top: 2px solid #ebebeb;
}
.single-product .woocommerce-tabs ul.tabs.wc-tabs,
.single-product .pls-tabs-nav {
    display: flex;
    gap: 0;
    list-style: none;
    padding: 0;
    margin: 0;
    border-bottom: 2px solid #ebebeb;
    background: #fff;
    overflow-x: auto;
}
.single-product .woocommerce-tabs ul.tabs.wc-tabs li,
.single-product .pls-tabs-nav li {
    border: none;
    background: none;
    padding: 0;
    margin: 0;
}
.single-product .woocommerce-tabs ul.tabs.wc-tabs li a,
.single-product .pls-tabs-nav li a {
    display: block;
    padding: 16px 28px;
    font-size: 14px;
    font-weight: 600;
    color: #888;
    text-decoration: none;
    font-family: Montserrat, sans-serif;
    white-space: nowrap;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    transition: color .2s, border-color .2s;
}
.single-product .woocommerce-tabs ul.tabs.wc-tabs li.active a,
.single-product .woocommerce-tabs ul.tabs.wc-tabs li a:hover,
.single-product .pls-tabs-nav li.active a,
.single-product .pls-tabs-nav li a:hover {
    color: #1a2a3a;
    border-bottom-color: #70b346;
}
.single-product .tab-content-wrap {
    padding: 32px 0;
    border-bottom: 1px solid #f0f0f0;
}
.single-product .tab-content-wrap .accordion-title {
    display: none;
}
.single-product .woocommerce-Tabs-panel {
    font-size: 14px;
    color: #555;
    line-height: 1.8;
}
.single-product .woocommerce-Tabs-panel h2 { display: none; }
.single-product .woocommerce-Tabs-panel ul {
    padding-left: 20px;
    margin: 12px 0;
}
.single-product .woocommerce-Tabs-panel li { margin-bottom: 6px; }
.single-product .woocommerce-product-attributes {
    width: 100%;
    border-collapse: collapse;
}
.single-product .woocommerce-product-attributes-item__label {
    font-size: 12px;
    font-weight: 700;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 10px 16px 10px 0;
    width: 140px;
}
.single-product .woocommerce-product-attributes-item__value {
    font-size: 13px;
    color: #444;
    padding: 10px 0;
}
.single-product .woocommerce-product-attributes-item {
    border-bottom: 1px solid #f5f5f5;
}

/* ── Related Products ── */
.single-product .pls-related-products,
.single-product section.related {
    margin-bottom: 60px;
}
.single-product .pls-related-products h2,
.single-product section.related h2 {
    font-size: 20px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 24px;
    letter-spacing: -0.2px;
}
.single-product .pls-related-products h2 span,
.single-product section.related h2 span {
    color: #70b346;
}
.single-product .pls-related-products .products,
.single-product section.related .products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.single-product .pls-related-products .product,
.single-product section.related .product {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 16px;
    overflow: hidden;
    transition: box-shadow .2s, transform .2s;
}
.single-product .pls-related-products .product:hover,
.single-product section.related .product:hover {
    box-shadow: 0 8px 28px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
.single-product .pls-related-products .product .pls-product-image-box,
.single-product section.related .product .pls-product-image-box {
    background: #f8faf5;
    aspect-ratio: 1;
    overflow: hidden;
}
.single-product .pls-related-products .product img,
.single-product section.related .product img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s;
}
.single-product .pls-related-products .product:hover img,
.single-product section.related .product:hover img {
    transform: scale(1.04);
}
.single-product .pls-related-products .product .pls-product-content-box,
.single-product section.related .product .pls-product-content-box {
    padding: 14px 16px 16px;
}
.single-product .pls-related-products .product .woocommerce-loop-product__title,
.single-product section.related .product .woocommerce-loop-product__title {
    font-size: 13px;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 6px;
    line-height: 1.4;
}
.single-product .pls-related-products .product .price,
.single-product section.related .product .price {
    font-size: 14px;
    font-weight: 800;
    color: #70b346;
}

/* ── Responsive ── */
@media(max-width: 960px) {
    .single-product .pls-product-gallery-summary {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .single-product .pls-product-gallery { position: static; }
    .single-product .summary.entry-summary { position: static; }
    .single-product .pls-related-products .products,
    .single-product section.related .products { grid-template-columns: repeat(2, 1fr); }
}
@media(max-width: 600px) {
    .single-product .product_title.entry-title { font-size: 22px; }
    .single-product .price.pls-product-price,
    .single-product .price.pls-product-price .woocommerce-Price-amount,
    .single-product .price.pls-product-price bdi { font-size: 24px !important; }
    .single-product .woocommerce-tabs ul.tabs.wc-tabs li a { padding: 12px 16px; }
    .single-product form.cart .single_add_to_cart_button { font-size: 13px !important; }
    .single-product .pls-related-products .products,
    .single-product section.related .products { grid-template-columns: 1fr 1fr; }
}

/* ════════════════════════════════════════════════════════════
   OUR COMPANY — FOUNDATION, VALUES & CLOSING SECTIONS
   ════════════════════════════════════════════════════════════ */

/* ── Foundation & Core Values ── */
.moc-fcv-banner {
    background: #fff;
    padding: 44px 24px;
    font-family: Montserrat, sans-serif;
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
}
.moc-fcv-inner { max-width: 1100px; margin: 0 auto; }
.moc-fcv-label {
    display: block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #70b346;
    margin-bottom: 10px;
}
.moc-fcv-title {
    font-size: 28px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 12px;
    line-height: 1.2;
    letter-spacing: -0.3px;
}
.moc-fcv-title span { color: #70b346; }
.moc-fcv-sub {
    font-size: 14px;
    color: #666;
    line-height: 1.7;
    margin: 0 0 18px;
    max-width: 600px;
}
.moc-fcv-line { width: 40px; height: 3px; background: #70b346; border-radius: 2px; }
@media(max-width: 700px) { .moc-fcv-title { font-size: 22px; } }

/* ── Dual-Pillar Ecosystem ── */
.moc-pillar-wrap {
    background: #fff;
    padding: 44px 24px;
    font-family: Montserrat, sans-serif;
    border-bottom: 1px solid #ececec;
}
.moc-pillar-inner { max-width: 1100px; margin: 0 auto; }
.moc-pillar-label {
    display: block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #70b346;
    margin-bottom: 10px;
}
.moc-pillar-title {
    font-size: 28px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 24px;
    letter-spacing: -0.3px;
}
.moc-pillar-title span { color: #70b346; }
.moc-pillar-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.moc-pillar-card {
    background: #f7f9fc;
    border-radius: 14px;
    padding: 24px 28px;
    position: relative;
    overflow: hidden;
}
.moc-pillar-accent {
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
}
.moc-pillar-accent--blue { background: linear-gradient(90deg, #1a73e8, #4facf7); }
.moc-pillar-accent--green { background: linear-gradient(90deg, #70b346, #a3d977); }
/* No icons */
.moc-pillar-icon { display: none; }
.moc-pillar-card-title {
    font-size: 15px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 10px 0 8px;
}
.moc-pillar-card-desc { font-size: 13px; color: #666; line-height: 1.7; margin: 0; }
@media(max-width: 700px) {
    .moc-pillar-grid { grid-template-columns: 1fr; }
    .moc-pillar-title { font-size: 22px; }
}

/* ── Core Values ── */
.moc-values-wrap {
    background: #f8faf5;
    padding: 44px 24px;
    font-family: Montserrat, sans-serif;
    border-bottom: 1px solid #ececec;
}
.moc-values-inner { max-width: 1100px; margin: 0 auto; }
.moc-values-label {
    display: block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #70b346;
    margin-bottom: 10px;
}
.moc-values-title {
    font-size: 28px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 24px;
    letter-spacing: -0.3px;
}
.moc-values-title span { color: #70b346; }
.moc-values-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.moc-values-card {
    background: #fff;
    border-radius: 12px;
    padding: 20px 22px;
    border: 1px solid #ececec;
}
/* No icons */
.moc-values-icon { display: none; }
.moc-values-card-title {
    font-size: 14px;
    font-weight: 800;
    color: #1a1a1a;
    margin: 0 0 6px;
}
.moc-values-card-desc { font-size: 13px; color: #666; line-height: 1.65; margin: 0; }
@media(max-width: 700px) {
    .moc-values-grid { grid-template-columns: 1fr; }
    .moc-values-title { font-size: 22px; }
}

/* ── Closing CTA — light, theme-consistent ── */
.moc-closing-banner {
    background: #f8faf5;
    padding: 80px 24px;
    text-align: center;
    font-family: Montserrat, sans-serif;
    border-top: 1px solid #ececec;
}
.moc-closing-inner {
    max-width: 700px;
    margin: 0 auto;
}
.moc-closing-label {
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #70b346;
    margin-bottom: 16px;
}
.moc-closing-title {
    font-size: 34px;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.25;
    margin: 0 0 16px;
    letter-spacing: -0.4px;
}
.moc-closing-sub {
    font-size: 15px;
    color: #666;
    margin: 0 0 36px;
}
.moc-closing-btn {
    display: inline-block;
    background: #70b346;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    font-family: Montserrat, sans-serif;
    padding: 14px 36px;
    border-radius: 30px;
    text-decoration: none;
    letter-spacing: 0.5px;
    transition: background .2s;
}
.moc-closing-btn:hover { background: #5a9437; }
@media(max-width: 700px) {
    .moc-closing-title { font-size: 24px; }
}

/* ── Product card equal-height fix ── */
.woocommerce ul.products li.product,
.woocommerce ul.products .product {
    height: 100% !important;
}
.pls-product-inner {
    height: 100% !important;
}


/* ── Product card equal-height fix v2 ── */
.woocommerce ul.products li.product,
.woocommerce ul.products .product {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
}
.pls-product-inner {
    flex: 1 !important;
    height: auto !important;
}

/* ── Product card equal-height fix v3 (final) ── */
.woocommerce ul.products li.product,
.woocommerce ul.products .product {
    display: flex !important;
    flex-direction: column !important;
    height: unset !important;
}
.pls-product-inner {
    flex: 1 1 auto !important;
    height: unset !important;
    display: flex !important;
    flex-direction: column !important;
}

/* ── Contact page: space between header and HQ box ── */
.page-id-633 .msm-contact-wrap {
    padding-top: 48px;
}


/* === Our Company Elementor Page (ID 1353) === */
/* Our Company Elementor page CSS - page 1353 */
:root {
  --navy:  #1a1a1a;
  --navy2: #1a1a1a;
  --green: #70b346;
  --green-dk: #5a9437;
  --light: #f4f6f9;
  --border: rgba(112,179,70,.2);
  --muted: #777;
  --container: 1160px;
}

@keyframes kenburns {
  0%   { transform: scale(1.15) translate(0, 0); }
  100% { transform: scale(1.30) translate(-2%, 2%); }
@keyframes cert-scroll { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)}
@keyframes hero-in { from { opacity:0; transform:translateY(28px); } to { opacity:1; transform:none; }

.page-id-1353 *, .page-id-1353 *::before, .page-id-1353 *::after {
 box-sizing: border-box; margin: 0; padding: 0; }
.page-id-1353 img {
 display: block; max-width: 100%; }
.page-id-1353 a {
 color: inherit; text-decoration: none; }
.page-id-1353 /* ── Break out of WordPress / Gearo theme container ── */
#main-content, .page-id-1353 .pls-site-content {
 padding: 0 !important; margin: 0 !important; }
.page-id-1353 .pls-site-container, .page-id-1353 .pls-site-container.container {
 max-width: 100% !important; padding: 0 !important; width: 100% !important; }
.page-id-1353 .pls-site-container > .row {
 margin: 0 !important; }
.page-id-1353 .pls-site-container > .row > div {
 padding: 0 !important; width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }
.page-id-1353 .pls-page-title, .page-id-1353 .page-header, .page-id-1353 .entry-header {
 display: none !important; }
.page-id-1353 .entry-content, .page-id-1353 .post-content, .page-id-1353 .page-content {
 padding: 0 !important; margin: 0 !important; }
.page-id-1353 /* Cover all common theme content wrappers */
.site-content .container, .page-id-1353 .content-area .container, .page-id-1353 #content .container {
 max-width: 100% !important; padding: 0 !important; }
.page-id-1353 .msm-co {
 display: block; width: 100%; overflow-x: hidden; }
.page-id-1353 /* ─── Design system (exact from live our-company page) ─── */
.msm-co *, .page-id-1353 .msm-co *::before, .page-id-1353 .msm-co *::after {
 box-sizing: border-box; margin: 0; padding: 0; }
.page-id-1353 .msm-co {
 font-family: Montserrat, Arial, sans-serif; color: #1a1a1a; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
.page-id-1353 .msm-co img {
 display: block; max-width: 100%; }
.page-id-1353 .msm-co a {
 color: inherit; text-decoration: none; }
.page-id-1353 .container {
 max-width: var(--container); margin: 0 auto; padding: 0 60px; }
.page-id-1353 .tag-row {
 display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.page-id-1353 .tag-bar {
 width: 22px; height: 2px; background: var(--green); flex-shrink: 0; }
.page-id-1353 .tag-row span {
 font-size: 9px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--green); }
.page-id-1353 h2.sh {
 font-size: clamp(24px,2.6vw,36px); font-weight: 800; color: var(--navy2); letter-spacing: -.8px; line-height: 1.18; }
.page-id-1353 h2.sh .g {
 color: var(--green); }
.page-id-1353 h2.sh.w {
 color: #fff; }
.page-id-1353 .sh-sub {
 font-size: 14px; color: var(--muted); line-height: 1.8; margin-top: 12px; max-width: 560px; }
.page-id-1353 /* HERO */
.hero {
 position: relative; height: 88vh; min-height: 600px; display: flex; align-items: center; overflow: hidden; }
.page-id-1353 .hero-photo {
 position: absolute; inset: 0; }
.page-id-1353 .hero-photo img {
 width: 100%; height: 100%; object-fit: cover; object-position: center top; animation: kenburns 18s ease-in-out infinite alternate; transform-origin: center top; }
.page-id-1353 .hero-photo::after {
 content: ''; position: absolute; inset: 0; background: linear-gradient(100deg, rgba(0,0,0,.60) 0%, rgba(0,0,0,.75) 52%, rgba(0,0,0,.30) 100%); }
.page-id-1353 .hero-inner {
 position: relative; display: grid; grid-template-columns: 1fr 420px; align-items: center; gap: 60px; }
.page-id-1353 .hero-label {
 font-size: 9px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--green); display: flex; align-items: center; gap: 10px; margin-bottom: 20px; }
.page-id-1353 .hero-label::before {
 content:''; width:24px; height:2px; background:var(--green); }
.page-id-1353 .hero h1 {
 font-size: clamp(36px, 5.5vw, 68px); font-weight: 900; color: #fff; letter-spacing: -2.5px; line-height: 1.0; margin-bottom: 22px; }
.page-id-1353 .hero h1 .g {
 color: var(--green); display: block; }
.page-id-1353 .hero-desc {
 font-size: 14px; color: rgba(255,255,255,.6); line-height: 1.82; max-width: 480px; margin-bottom: 12px; }
.page-id-1353 .hero-trusted {
 font-size: 11px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: rgba(255,255,255,.45); margin-bottom: 38px; }
.page-id-1353 .hero-cta {
 display: inline-flex; align-items: center; gap: 10px; background: var(--green); color: #fff; padding: 15px 30px; font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; border-radius: 30px; transition: background .2s; }
.page-id-1353 .hero-cta:hover {
 background: var(--green-dk); }
.page-id-1353 .hero-panel {
 background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); backdrop-filter: blur(8px); border-radius: 20px; overflow: hidden; }
.page-id-1353 .hero-panel-head {
 background: var(--green); padding: 16px 24px; font-size: 9px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; color: rgba(255,255,255,.85); }
.page-id-1353 .hero-stats {
 display: grid; grid-template-columns: 1fr 1fr; }
.page-id-1353 .hstat {
 padding: 28px 24px; border-right: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.08); }
.page-id-1353 .hstat:nth-child(even) {
 border-right: none; }
.page-id-1353 .hstat:nth-last-child(-n+2) {
 border-bottom: none; }
.page-id-1353 .hstat-num {
 font-size: 30px; font-weight: 900; color: #fff; letter-spacing: -1.5px; line-height: 1; margin-bottom: 5px; }
.page-id-1353 .hstat-num span {
 font-size: .55em; }
.page-id-1353 .hstat-lbl {
 font-size: 9px; font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; color: rgba(255,255,255,.45); }
.page-id-1353 /* STATS BAND */
.stats-band {
 background: var(--green); display: grid; grid-template-columns: repeat(6,1fr); }
.page-id-1353 .sstat {
 padding: 36px 12px; border-right: 1px solid rgba(255,255,255,.12); text-align: center; display: flex; flex-direction: column; align-items: center; gap: 8px; }
.page-id-1353 .sstat:last-child {
 border-right: none; }
.page-id-1353 .sstat-icon {
 display: flex; align-items: center; justify-content: center; }
.page-id-1353 .sstat-icon svg {
 width: 32px; height: 32px; stroke: rgba(255,255,255,.8); fill: none; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.page-id-1353 .sstat-num {
 font-size: clamp(26px, 2.8vw, 42px); font-weight: 700; color: #fff; letter-spacing: -1px; line-height: 1; margin-bottom: 0; }
.page-id-1353 .sstat-num em {
 font-style: normal; font-size: .75em; font-weight: 700; letter-spacing: 0; padding-left: 3px; }
.page-id-1353 .sstat-lbl {
 font-size: 8.5px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: rgba(255,255,255,.55); line-height: 1.4; }
.page-id-1353 /* ABOUT */
.about-section {
 padding: 72px 0; background: var(--light); }
.page-id-1353 .about-grid {
 display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.page-id-1353 .about-collage {
 position: relative; }
.page-id-1353 .collage-main {
 width: 100%; height: 420px; object-fit: cover; object-position: center center; border-radius: 20px; }
.page-id-1353 .collage-row {
 display: none; }
.page-id-1353 .collage-badge {
 position: absolute; top: 24px; right: -20px; background: var(--green); color: #fff; padding: 18px 22px; border-radius: 20px; text-align: center; box-shadow: 0 12px 36px rgba(112,179,70,.45); }
.page-id-1353 .collage-badge-num {
 font-size: 28px; font-weight: 900; line-height: 1; }
.page-id-1353 .collage-badge-lbl {
 font-size: 8px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; opacity: .85; margin-top: 4px; line-height: 1.35; }
.page-id-1353 .about-chks {
 display: flex; flex-direction: column; gap: 10px; }
.page-id-1353 .about-chk {
 display: flex; align-items: flex-start; gap: 11px; font-size: 13px; color: var(--navy2); line-height: 1.65; }
.page-id-1353 .chk-dot {
 width: 18px; height: 18px; background: var(--green); border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 2px; }
.page-id-1353 .chk-dot svg {
 width: 9px; height: 9px; stroke: #fff; fill: none; stroke-width: 2.5; stroke-linecap: round; }
.page-id-1353 .about-title-mobile-row {
 display: none; }
.page-id-1353 /* FACILITIES */
.facilities {
 display: grid; grid-template-columns: 45% 55%; border-bottom: 4px solid var(--green); }
.page-id-1353 .fac-
.fac-photo {
 position: relative; overflow: hidden; min-height: 400px; }
.page-id-1353 .fac-photo img {
 width: 100%; height: 100%; object-fit: cover; object-position: center center; }
.page-id-1353 .fac-grid {
 display: grid; grid-template-columns: 1fr 1fr; gap: 20px 24px; margin-top: 32px; }
.page-id-1353 .fac-point {
 display: flex; align-items: center; gap: 12px; }
.page-id-1353 .fac-point-icon {
 width: 34px; height: 34px; background: rgba(112,179,70,.12); border: 1px solid rgba(112,179,70,.3); border-radius: 10px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 2px; }
.page-id-1353 .fac-point-icon svg {
 width: 14px; height: 14px; stroke: var(--green); fill: none; stroke-width: 1.8; stroke-linecap: round; }
.page-id-1353 .fac-point-title {
 font-size: 12.5px; font-weight: 800; color: #fff; margin-bottom: 3px; letter-spacing: -.1px; }
.page-id-1353 .fac-point-sub {
 font-size: 11.5px; color: rgba(255,255,255,.55); line-height: 1.6; }
.page-id-1353 /* SECTION DIVIDER */
.sec-divider {
 background: var(--green); padding: 18px 60px; display: flex; align-items: center; gap: 18px; }
.page-id-1353 .sec-divider h3 {
 font-size: 10px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #fff; white-space: nowrap; }
.page-id-1353 .sec-divider span {
 flex: 1; height: 1px; background: rgba(255,255,255,.3); }
.page-id-1353 /* MISSION */
.profile-section {
 padding: 64px 0; background: var(--light); }
.page-id-1353 .mission-quote {
 position: relative; padding-left: 14px; }
.page-id-1353 .mission-quote::before {
 content: '\201C'; position: absolute; top: -20px; left: -8px; font-size: 80px; color: var(--green); line-height: 1; font-family: Georgia,serif; opacity: .25; }
.page-id-1353 .mission-quote p {
 font-size: 16px; color: #333; line-height: 2; font-style: italic; position: relative; z-index: 1; }
.page-id-1353 .mission-attr {
 display: flex; align-items: center; gap: 12px; margin-top: 24px; }
.page-id-1353 .mission-attr-line {
 width: 24px; height: 2px; background: var(--green); flex-shrink: 0; }
.page-id-1353 .mission-attr-name {
 font-size: 10px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--muted); }
.page-id-1353 /* CORE VALUES */
.values-section {
 display: grid; grid-template-columns: 55% 45%; background: #393F41; align-items: stretch; }
.page-id-1353 .values-photo {
 position: relative; overflow: hidden; padding: 36px 28px 36px 48px; background: #fff; }
.page-id-1353 .values-photo img {
 width: 100%; height: 380px; object-fit: cover; object-position: center 20%; border-radius: 12px; display: block; }
.page-id-1353 .values-photo-overlay {
 display: none; }
.page-id-1353 .values-
.values-list {
 margin-top: 20px; display: flex; flex-direction: column; gap: 28px; }
.page-id-1353 .val-item {
 display: flex; gap: 14px; align-items: flex-start; }
.page-id-1353 .val-num {
 width: 52px; height: 52px; border-radius: 50%; background: transparent; border: none; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.page-id-1353 .val-num img {
 width: 52px; height: 52px; object-fit: contain; }
.page-id-1353 .val-text h4 {
 font-size: 12.5px; font-weight: 800; color: #fff; margin-bottom: 2px; letter-spacing: -.2px; }
.page-id-1353 .val-text p {
 font-size: 11.5px; color: rgba(255,255,255,.6); line-height: 1.55; }
.page-id-1353 /* PILLARS */
.pillars {
 display: grid; grid-template-columns: 1fr 1fr; }
.page-id-1353 .pillar {
 position: relative; overflow: hidden; min-height: 520px; display: flex; flex-direction: column; justify-content: flex-end; }
.page-id-1353 .pillar-bg-img {
 position: absolute; inset: 0; background-size: cover; background-position: center; transition: transform .8s ease; }
.page-id-1353 .pillar:hover .pillar-bg-img {
 transform: scale(1.04); }
.page-id-1353 .pillar--b2b .pillar-bg-img {
 background-image: url('https://marksam.com.hk/wp-content/uploads/2026/09/marksam-robot-welding.jpg'); }
.page-id-1353 .pillar--retail .pillar-bg-img {
 background-image: url('https://marksam.com.hk/wp-content/uploads/2026/09/marksam-distribution-warehouse.jpg'); }
.page-id-1353 .pillar-mask {
 position: absolute; inset: 0; }
.page-id-1353 .pillar--b2b .pillar-mask {
 background: linear-gradient(to top, rgba(0,0,0,.69) 0%, rgba(0,0,0,.70) 50%, rgba(0,0,0,.20) 100%); }
.page-id-1353 .pillar--retail .pillar-mask {
 background: linear-gradient(to top, rgba(0,0,0,.69) 0%, rgba(0,0,0,.70) 50%, rgba(0,0,0,.20) 100%); }
.page-id-1353 .pillar-
.pillar-tag {
 font-size: 9px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--green); margin-bottom: 16px; display: flex; align-items: center; gap: 10px; }
.page-id-1353 .pillar--retail .pillar-tag {
 color: var(--green); }
.page-id-1353 .pillar-tag::before {
 content:''; width:20px; height:2px; background:currentColor; }
.page-id-1353 .pillar h3 {
 font-size: clamp(22px,2.5vw,34px); font-weight: 900; color: #fff; letter-spacing: -1px; line-height: 1.15; margin-bottom: 14px; }
.page-id-1353 .pillar-desc {
 font-size: 13.5px; color: rgba(255,255,255,.92); line-height: 1.8; max-width: 400px; }
.page-id-1353 /* EXPERTISE GRID */
.expertise {
 padding: 56px 0; background: var(--light); }
.page-id-1353 .exp-grid {
 display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-top: 48px; }
.page-id-1353 .exp-card {
 background: #e8f5dc; border-radius: 20px; overflow: hidden; border: 1px solid rgba(112,179,70,.25); display: flex; flex-direction: column; transition: transform .25s, box-shadow .25s, background .25s; }
.page-id-1353 .exp-card:hover {
 transform: translateY(-4px); box-shadow: 0 16px 40px rgba(112,179,70,.15); background: var(--green); border-color: var(--green); }
.page-id-1353 .exp-card-
.exp-card-head {
 display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.page-id-1353 .exp-icon {
 width: 40px; height: 40px; border-radius: 50%; flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.page-id-1353 .exp-icon svg {
 width: 20px; height: 20px; stroke: var(--green); fill: none; stroke-width: 1.8; stroke-linecap: round; }
.page-id-1353 .exp-card:hover .exp-icon {
 background: #fff; }
.page-id-1353 .exp-card:hover .exp-icon svg {
 stroke: var(--green); }
.page-id-1353 .exp-title {
 font-size: 14px; font-weight: 800; color: var(--navy2); line-height: 1.25; letter-spacing: -.2px; }
.page-id-1353 .exp-card:hover .exp-title {
 color: #fff; }
.page-id-1353 .exp-card-img {
 margin: 0 14px 14px; border-radius: 14px; overflow: hidden; height: 160px; }
.page-id-1353 .exp-card-img img {
 width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.page-id-1353 .exp-card:hover .exp-card-img img {
 transform: scale(1.05); }
.page-id-1353 /* CTA */
.cta-section {
 display: grid; grid-template-columns: 48% 52%; min-height: 480px; }
.page-id-1353 .cta-left {
 background: var(--green); padding: 72px 64px; display: flex; flex-direction: column; justify-content: center; }
.page-id-1353 .cta-right {
 position: relative; overflow: hidden; }
.page-id-1353 .cta-right img {
 width: 100%; height: 100%; object-fit: cover; object-position: center top; transform: scale(1.25); transform-origin: center top; }
.page-id-1353 .cta-right-overlay {
 position: absolute; inset: 0; background: linear-gradient(to right, var(--green) 0%, rgba(112,179,70,.1) 45%, transparent 100%); }
.page-id-1353 .cta-heading {
 font-size: clamp(30px,3.5vw,52px); font-weight: 900; color: #fff; letter-spacing: -1.5px; line-height: 1.05; margin-bottom: 18px; }
.page-id-1353 .cta-heading span {
 color: rgba(255,255,255,.6); }
.page-id-1353 .cta-sub {
 font-size: 13.5px; color: rgba(255,255,255,.65); line-height: 1.85; margin-bottom: 36px; max-width: 380px; }
.page-id-1353 .cta-contacts {
 display: flex; flex-direction: column; gap: 18px; margin-bottom: 40px; }
.page-id-1353 .cta-contact-item {
 display: flex; align-items: center; gap: 14px; }
.page-id-1353 .cta-contact-icon {
 width: 38px; height: 38px; border-radius: 50%; background: rgba(255,255,255,.15); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.page-id-1353 .cta-contact-icon svg {
 width: 16px; height: 16px; stroke: #fff; }
.page-id-1353 .cta-contact-label {
 font-size: 8.5px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: rgba(255,255,255,.5); margin-bottom: 2px; }
.page-id-1353 .cta-contact-val {
 font-size: 13px; font-weight: 600; color: #fff; }
.page-id-1353 .cta-btn {
 display: inline-flex; align-items: center; gap: 10px; background: #fff; color: var(--green); padding: 14px 30px; border-radius: 30px; width: fit-content; font-size: 10px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; transition: background .2s, color .2s; }
.page-id-1353 .cta-btn:hover {
 background: var(--green-dk); color: #fff; }
.page-id-1353 /* CERT STRIP + MARQUEE */
.cert-strip {
 margin-top: 52px; padding-top: 36px; border-top: 1px solid var(--border); }
.page-id-1353 .cert-strip-lbl {
 text-align: center; font-size: 8px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; color: var(--muted); margin-bottom: 28px; }
.page-id-1353 .cert-marquee-wrap {
 overflow: hidden; width: 100%; position: relative; }
.page-id-1353 .cert-marquee-wrap::before, .page-id-1353 .cert-marquee-wrap::after {
 content:''; position:absolute; top:0; bottom:0; width:80px; z-index:2; pointer-events:none; }
.page-id-1353 .cert-marquee-wrap::before {
 left:0; background:linear-gradient(90deg,#f4f6f9,transparent); }
.page-id-1353 .cert-marquee-wrap::after {
 right:0; background:linear-gradient(270deg,#f4f6f9,transparent); }
.page-id-1353 .cert-marquee-track {
 display:flex; align-items:center; gap:56px; width:max-content; animation:cert-scroll 24s linear infinite; }
.page-id-1353 .cert-marquee-wrap:hover .cert-marquee-track {
 animation-play-state:paused; }
.page-id-1353 .cert-logo-item {
 flex-shrink:0; }
.page-id-1353 .cert-logo-item img {
 height:50px; width:auto; object-fit:contain; opacity:.85; transition:opacity .3s; }
.page-id-1353 .cert-logo-item:hover img {
 opacity:1; }
.page-id-1353 /* RESPONSIVE — tablet */


/* RESPONSIVE — mobile */




/* ── SCROLL ANIMATIONS ── */
[data-anim] {
 opacity: 0; transition: opacity .75s cubic-bezier(.22,.61,.36,1), transform .75s cubic-bezier(.22,.61,.36,1); will-change: opacity, transform; }
.page-id-1353 [data-anim].is-visible {
 opacity: 1 !important; transform: none !important; }
.page-id-1353 [data-anim="fade-up"] {
 transform: translateY(40px); }
.page-id-1353 [data-anim="fade-left"] {
 transform: translateX(-48px); }
.page-id-1353 [data-anim="fade-right"] {
 transform: translateX(48px); }
.page-id-1353 [data-anim="fade-scale"] {
 transform: scale(0.93); }
.page-id-1353 .hero-label {
 animation: hero-in .7s .1s cubic-bezier(.22,.61,.36,1) both; }
.page-id-1353 .hero h1 {
 animation: hero-in .75s .25s cubic-bezier(.22,.61,.36,1) both; }
.page-id-1353 .hero-desc {
 animation: hero-in .7s .42s cubic-bezier(.22,.61,.36,1) both; }
.page-id-1353 .hero-trusted {
 animation: hero-in .7s .54s cubic-bezier(.22,.61,.36,1) both; }
.page-id-1353 .hero-cta {
 animation: hero-in .7s .66s cubic-bezier(.22,.61,.36,1) both; }
@media(max-width:1060px)  {
  .page-id-1353 .container {
  padding: 0 32px;
  }
  .page-id-1353 .hero-inner {
  grid-template-columns: 1fr;
  }
  .page-id-1353 .hero-panel {
  display: none;
  }
  .page-id-1353 .about-grid {
  grid-template-columns: 1fr; gap: 40px;
  }
  .page-id-1353 .collage-badge {
  right: 0;
  }
  .page-id-1353 .stats-band {
  grid-template-columns: repeat(3,1fr) !important;
  }
  .page-id-1353 .sstat:nth-child(-n+3) {
  border-bottom: 1px solid rgba(255,255,255,.1);
  }
  .page-id-1353 /* GLOCAL */
  .facilities {
  grid-template-columns: 1fr;
  }
  .page-id-1353 .fac-photo {
  min-height: 300px;
  }
  .page-id-1353 /* Pillars */
  .pillars {
  grid-template-columns: 1fr;
  }
  .page-id-1353 .pillar {
  min-height: 420px;
  }
  .page-id-1353 /* Services */
  .exp-grid {
  grid-template-columns: repeat(2,1fr) !important;
  }
  .page-id-1353 /* Core Values — stack, .page-id-1353 release fixed height */
  .values-section {
  grid-template-columns: 1fr; height: auto !important;
  }
  .page-id-1353 .msm-cv-photo {
  height: 280px;
  }
  .page-id-1353 .values-body {
  padding: 40px 32px;
  }
  .page-id-1353 /* Factory Tour — stack, .page-id-1353 release fixed height */
  .msm-factory-tour {
  grid-template-columns: 1fr !important; height: auto !important;
  }
  .page-id-1353 .msm-ft-photo {
  height: 280px;
  }
  .page-id-1353 /* CTA */
  .cta-section {
  grid-template-columns: 1fr;
  }
  .page-id-1353 .cta-right {
  display: none;
  }
}
@media(max-width:768px)  {
  .page-id-1353 /* Hero — keep it viewport-tall but not excessive */
  .hero {
  height: auto; min-height: 70vh; max-height: 640px;
  }
  .page-id-1353 .hero-inner {
  padding: 60px 0 52px;
  }
  .page-id-1353 .hero h1 {
  font-size: clamp(30px,7vw,44px); letter-spacing: -1.5px;
  }
  .page-id-1353 .hero-desc {
  font-size: 13px;
  }
  .page-id-1353 /* Stats band 2 columns */
  .stats-band {
  grid-template-columns: repeat(3,1fr) !important;
  }
  .page-id-1353 .sstat {
  padding: 28px 8px;
  }
  .page-id-1353 .sstat-num {
  font-size: clamp(22px,4vw,32px);
  }
  .page-id-1353 /* About */
  .about-section {
  padding: 48px 0;
  }
  .page-id-1353 .collage-main {
  height: 280px;
  }
  .page-id-1353 .collage-badge {
  display: none;
  }
  .page-id-1353 /* Mission */
  .profile-section {
  padding: 48px 0;
  }
  .page-id-1353 .mission-quote p {
  font-size: 14px; line-height: 1.9;
  }
  .page-id-1353 /* Core Values */
  .values-section {
  grid-template-columns: 1fr; height: auto !important;
  }
  .page-id-1353 .msm-cv-photo {
  height: 240px;
  }
  .page-id-1353 .values-body {
  padding: 36px 24px 40px;
  }
  .page-id-1353 .values-list {
  gap: 20px;
  }
  .page-id-1353 .val-text h4 {
  font-size: 12px;
  }
  .page-id-1353 .val-text p {
  font-size: 11px;
  }
  .page-id-1353 /* Dual pillar intro */
  .msm-pillar-intro {
  padding: 52px 0 48px !important;
  }
  .page-id-1353 /* Pillars */
  .pillars {
  grid-template-columns: 1fr;
  }
  .page-id-1353 .pillar {
  min-height: 360px;
  }
  .page-id-1353 .pillar-body {
  padding: 36px 24px;
  }
  .page-id-1353 .pillar h3 {
  font-size: clamp(20px,5vw,28px);
  }
  .page-id-1353 /* Cornerstone green block */
  .msm-cornerstone {
  padding: 44px 0 !important;
  }
  .page-id-1353 /* Services */
  .expertise {
  padding: 44px 0;
  }
  .page-id-1353 .exp-grid {
  grid-template-columns: 1fr !important;
  }
  .page-id-1353 .exp-card-img {
  height: 180px;
  }
  .page-id-1353 /* Factory Tour */
  .msm-factory-tour {
  grid-template-columns: 1fr !important; height: auto !important;
  }
  .page-id-1353 .msm-factory-tour > div:first-child {
  padding: 36px 24px 32px;
  }
  .page-id-1353 .msm-ft-photo {
  height: 240px;
  }
  .page-id-1353 /* GLOCAL */
  .facilities {
  grid-template-columns: 1fr;
  }
  .page-id-1353 .fac-body {
  padding: 36px 24px;
  }
  .page-id-1353 .fac-grid {
  grid-template-columns: 1fr; gap: 16px;
  }
  .page-id-1353 .fac-photo {
  min-height: 260px;
  }
  .page-id-1353 /* Cert */
  /* CTA */
  .cta-left {
  padding: 44px 24px;
  }
  .page-id-1353 .cta-heading {
  font-size: clamp(26px,6vw,40px);
  }
  .page-id-1353 /* Misc */
  .container {
  padding: 0 20px;
  }
  .page-id-1353 .about-title-desktop {
  display: none;
  }
  .page-id-1353 .about-title-mobile-row {
  display: flex;
  }
  .page-id-1353 .about-grid {
  gap: 32px;
  }
  .page-id-1353 .sec-divider {
  padding: 14px 20px;
  }
}
@media(max-width:480px)  {
  .page-id-1353 /* Hero very small screen */
  .hero {
  min-height: 520px; max-height: none;
  }
  .page-id-1353 .hero h1 {
  font-size: 30px; letter-spacing: -1px;
  }
  .page-id-1353 /* Stats 2 col */
  .stats-band {
  grid-template-columns: repeat(2,1fr) !important;
  }
  .page-id-1353 .sstat:nth-child(-n+4) {
  border-bottom: 1px solid rgba(255,255,255,.1);
  }
  .page-id-1353 .sstat {
  padding: 22px 6px;
  }
  .page-id-1353 .sstat-num {
  font-size: 24px;
  }
  .page-id-1353 .sstat-icon svg {
  width: 26px; height: 26px;
  }
  .page-id-1353 /* Reduce section padding further */
  .about-section {
  padding: 40px 0;
  }
  .page-id-1353 .profile-section {
  padding: 40px 0;
  }
  .page-id-1353 .expertise {
  padding: 36px 0;
  }
  .page-id-1353 .container {
  padding: 0 16px;
  }
  .page-id-1353 /* Pillars */
  .pillar {
  min-height: 320px;
  }
  .page-id-1353 /* Values */
  .msm-cv-photo {
  height: 200px;
  }
  .page-id-1353 .values-body {
  padding: 28px 20px 32px;
  }
  .page-id-1353 /* Factory tour */
  .msm-ft-photo {
  height: 200px;
  }
  .page-id-1353 /* GLOCAL */
  .fac-photo {
  min-height: 220px;
  }
}

/* ===== Nav underline — green on hover & active ===== */
.pls-main-navigation ul.menu > li:hover > a .pls-menu-text:after,
.pls-main-navigation ul.menu > li.current-menu-item > a .pls-menu-text:after,
.pls-main-navigation ul.menu > li.current-menu-ancestor > a .pls-menu-text:after {
  border-color: #70b346 !important;
}

/* ===== Search icon — ensure visible ===== */
.pls-search-icon,
.pls-header-icon .pls-search-icon svg,
.pls-header-icon .pls-search-icon i {
  color: #1a1a1a !important;
  fill: #1a1a1a !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* ===== Nav text — always darkest gray, all states ===== */
/* Top-level items */
.pls-header-navigation .pls-navigation ul.menu > li > a,
.pls-header-navigation .pls-navigation ul.menu > li > a:hover,
.pls-header-navigation .pls-navigation ul.menu > li.current-menu-item > a,
.pls-header-navigation .pls-navigation ul.menu > li.current-menu-ancestor > a,
.pls-header-navigation .pls-main-navigation ul.menu > li > a,
.pls-header-navigation .pls-main-navigation ul.menu > li:hover > a,
.pls-header-navigation .pls-main-navigation ul.menu > li.current-menu-item > a,
.pls-header-navigation .pls-main-navigation ul.menu > li.current-menu-ancestor > a {
  color: #1a1a1a !important;
}
/* Dropdown sub-menu items */
.pls-navigation ul.menu ul.sub-menu li > a,
.pls-navigation ul.menu ul.sub-menu li > a:hover,
.pls-navigation ul.menu ul.sub-menu li.current-menu-item > a,
.pls-navigation ul.menu ul.sub-menu li.current-menu-ancestor > a {
  color: #1a1a1a !important;
}

/* ===== Nav underline — green on hover & active (top-level + sub-menu) ===== */
.pls-navigation ul.menu > li > a .pls-menu-text:after,
.pls-navigation ul.menu > li:hover > a .pls-menu-text:after,
.pls-navigation ul.menu > li.current-menu-item > a .pls-menu-text:after,
.pls-navigation ul.menu > li.current-menu-ancestor > a .pls-menu-text:after,
.pls-navigation ul.menu ul.sub-menu li > a .pls-menu-text:after,
.pls-navigation ul.menu ul.sub-menu li > a:hover .pls-menu-text:after {
  border-color: #70b346 !important;
}

/* ===== Scroll offset for sticky header (anchor jump targets) ===== */
#company-profile,
#our-vision,
#our-services,
#our-capabilities {
  scroll-margin-top: 110px;
}