/* ========================================
   THEME TOKENS / TYPOGRAPHY
======================================== */
@font-face {
    font-family: "Garamond Premier Pro";
    src: url("../fonts/GaramondPremrPro-Smbd.woff") format("woff");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face { font-family:"Ford Antenna"; src:url("../fonts/ford-antenna-italic-588ce13ac85a5.otf") format("opentype"); font-weight:400; font-style:italic; font-display:swap; }
@font-face { font-family:"Ford Antenna"; src:url("../fonts/ford-antenna-medium-58955836e60d2.otf") format("opentype"); font-weight:500; font-style:normal; font-display:swap; }
@font-face { font-family:"Ford Antenna"; src:url("../fonts/ford-antenna-semibold-italic-588ce16abbe89.otf") format("opentype"); font-weight:600; font-style:italic; font-display:swap; }

@font-face { font-family:"Ford Antenna Condensed"; src:url("../fonts/ford-antenna-medium-cnd-587bd97171cbd.otf") format("opentype"); font-weight:500; font-style:normal; font-display:swap; }
@font-face { font-family:"Ford Antenna Condensed"; src:url("../fonts/ford-antenna-bold-italic-cnd-58894aad940e0.otf") format("opentype"); font-weight:700; font-style:italic; font-display:swap; }

@font-face { font-family:"Ford Antenna Compressed"; src:url("../fonts/ford-antenna-medium-italic-cmp-588e52bbb4e9f.otf") format("opentype"); font-weight:500; font-style:italic; font-display:swap; }
@font-face { font-family:"Ford Antenna Compressed"; src:url("../fonts/ford-antenna-bold-italic-cmp-587bd989c0b2d.otf") format("opentype"); font-weight:700; font-style:italic; font-display:swap; }
@font-face { font-family:"Ford Antenna Compressed"; src:url("../fonts/ford-antenna-black-cmp-587eb6f0d9e46.otf") format("opentype"); font-weight:900; font-style:normal; font-display:swap; }

@font-face { font-family:"Ford Antenna Extra Condensed"; src:url("../fonts/ford-antenna-thin-italic-xcnd-58894adb8be4f.otf") format("opentype"); font-weight:250; font-style:italic; font-display:swap; }
@font-face { font-family:"Ford Antenna Extra Condensed"; src:url("../fonts/ford-antenna-regular-xcnd-589558121012a.otf") format("opentype"); font-weight:400; font-style:normal; font-display:swap; }

:root {
    --font-display: "Playfair Display", serif;
    --font-display-weight: 400;
    --font-display-style: normal;
    --font-footer-heading: Inter, Arial, sans-serif;
    --font-footer-heading-weight: 300;
    --font-footer-heading-style: normal;
    --font-news-heading: "Playfair Display", serif;
    --font-news-heading-weight: 400;
    --font-news-heading-style: normal;
    --font-news-article-title: "Playfair Display", serif;
    --font-news-article-title-weight: 400;
    --font-news-article-title-style: normal;
    --font-news-card-title: Inter, Arial, sans-serif;
    --font-news-card-title-weight: 600;
    --font-news-card-title-style: normal;

    /* Global / header fallbacks. */
    --limar-white: #ffffff;
    --limar-black-soft: #111111;
    --limar-text-primary: #171715;
    --limar-sticky-bg: #f6f4f0;
    --limar-sticky-text: #171715;
    --limar-body-bg: #f2efea;
    --limar-header-search-icon: #222222;
    --limar-button-border: #3b332a;
    --limar-button-dark: #2c241c;

    /* Homepage fallbacks. */
    --limar-home-bg: #e8e3dc;
    --limar-home-brand-start: #172626;
    --limar-home-brand-end: #172626;
    --limar-home-brand-text: #f7f5f1;
    --limar-home-brand-edge: #1b1815;
    --limar-home-brand-hover-text: #f0f0ee;
    --limar-home-section-bg: #eee9e2;
    --limar-home-product-card-bg: #e9e4de;
    --limar-home-product-card-hover-bg: #f5f2ee;
    --limar-home-product-image-bg: #f7f5f1;
    --limar-home-muted-text: #65625e;
    --limar-home-service-description: #666666;
    --limar-home-feature-divider-bg: #181613;

    /* Footer fallbacks. */
    --limar-footer-start: #232724;
    --limar-footer-end: #171a18;
    --limar-footer-text: #d9d6d0;
    --limar-footer-muted: #aaa8a3;
    --limar-footer-heading: #d7d5cf;
    --limar-footer-border: #686c68;
    --limar-footer-button-text: #e2dfd8;

    /* News archive fallbacks. */
    --limar-news-archive-page-bg: #f2efea;
    --limar-news-archive-text: #171715;
    --limar-news-archive-hero-text: #ffffff;
    --limar-news-archive-hero-muted: #d9d7d2;
    --limar-news-archive-card-bg: #e9e4de;
    --limar-news-archive-card-hover-bg: #f5f2ee;
    --limar-news-archive-card-border: #b9b2aa;
    --limar-news-archive-date-text: #777777;
    --limar-news-archive-excerpt-text: #65625e;
    --limar-news-archive-pagination-text: #171715;
    --limar-news-archive-pagination-active-bg: #171715;
    --limar-news-archive-pagination-active-text: #ffffff;

    /* Single news fallbacks. */
    --limar-news-single-page-bg: #f2efea;
    --limar-news-single-text: #171715;
    --limar-news-single-hero-text: #ffffff;
    --limar-news-single-hero-muted: #d9d7d2;
    --limar-news-single-button-border: #3b332a;
    --limar-news-single-button-text: #171715;
    --limar-news-single-button-hover-bg: #2c241c;
    --limar-news-single-button-hover-text: #ffffff;

    /* Standard page fallbacks. */
    --limar-standard-page-bg: #f2efea;
    --limar-standard-page-text: #171715;
    --limar-standard-page-hero-text: #ffffff;
    --limar-standard-page-hero-muted: #d9d7d2;

    /* Search page fallbacks. */
    --limar-search-page-bg: #f2efea;
    --limar-search-page-text: #171715;
    --limar-search-hero-text: #ffffff;
    --limar-search-hero-muted: #d9d7d2;
    --limar-search-card-bg: #e9e4de;
    --limar-search-card-hover-bg: #f5f2ee;
    --limar-search-card-border: #b9b2aa;
    --limar-search-date-text: #777777;
    --limar-search-excerpt-text: #65625e;
    --limar-search-type-border: #b9b2aa;
    --limar-search-type-text: #171715;
    --limar-search-cta-text: #171715;
    --limar-search-pagination-text: #171715;
    --limar-search-pagination-active-bg: #171715;
    --limar-search-pagination-active-text: #ffffff;

    /* Shop / Termékek fallbacks. */
    --limar-shop-page-bg: #f2efea;
    --limar-shop-page-text: #171715;
    --limar-shop-hero-text: #ffffff;
    --limar-shop-hero-muted: #d9d7d2;
    --limar-shop-card-bg: #e9e4de;
    --limar-shop-card-hover-bg: #f5f2ee;
    --limar-shop-card-border: #b9b2aa;
    --limar-shop-brand-text: #777777;
    --limar-shop-price-text: #171715;
    --limar-shop-filter-border: #b9b2aa;
    --limar-shop-filter-text: #171715;
    --limar-shop-filter-active-bg: #172626;
    --limar-shop-filter-active-text: #ffffff;
    --limar-shop-pagination-text: #171715;
    --limar-shop-pagination-active-bg: #171715;
    --limar-shop-pagination-active-text: #ffffff;

    /* Brands / Márkáink page fallbacks. */
    --limar-brands-page-bg: #f2efea;
    --limar-brands-page-text: #171715;
    --limar-brands-hero-text: #ffffff;
    --limar-brands-hero-muted: #d9d7d2;
    --limar-brands-card-bg: #e9e4de;
    --limar-brands-card-hover-bg: #f5f2ee;
    --limar-brands-card-border: #b9b2aa;
    --limar-brands-logo-bg: #f7f5f1;
    --limar-brands-count-text: #777777;

    /* Contact page fallbacks. */
    --limar-contact-page-bg: #f2efea;
    --limar-contact-text: #171715;
    --limar-contact-muted: #65625e;
    --limar-contact-hero-text: #ffffff;
    --limar-contact-hero-muted: #d9d7d2;
    --limar-contact-card-bg: #e9e4de;
    --limar-contact-partner-card-bg: #e9e4de;
    --limar-contact-partner-card-hover-bg: #f5f2ee;
    --limar-contact-partner-card-border: #b9b2aa;
    --limar-contact-border: #b9b2aa;
    --limar-contact-accent: #172626;
    --limar-contact-accent-text: #ffffff;

    /* Product page fallbacks. */
    --limar-product-page-bg: #f7f5f1;
    --limar-product-header-text: #171715;
    --limar-product-text: #171715;
    --limar-product-muted: #666666;
    --limar-product-soft-muted: #777777;
    --limar-product-border: #dddddd;
    --limar-product-control-border: #bbbbbb;
    --limar-product-button-border: #3b332a;
    --limar-product-button-bg: #2c241c;
    --limar-product-button-text: #ffffff;
    --limar-product-zoom-bg: #ffffff;
    --limar-product-related-bg: #f5f2ee;
    --limar-product-lightbox-bg: #0d0d0d;
    --limar-product-thumb-bg: #ece9e5;
    --limar-product-thumb-active: #4f4c48;
    --limar-product-gallery-bg: #eeeae6;
    --limar-product-subtitle-text: #333333;
    --limar-product-stock: #698767;
    --limar-product-tabs-border: #dedbd6;
    --limar-product-tabs-bg: #faf9f6;
    --limar-product-tabs-text: #171715;
    --limar-product-tabs-active: #111111;
    --limar-product-footer-bg: #172626;
    --limar-product-footer-text: #e6e3dc;
    --limar-product-footer-muted: #aaaaaa;
    --limar-list-marker-image: none;

    /* Compatibility aliases. */
    --limar-gray-light: var(--limar-home-brand-text);
    --limar-charcoal: var(--limar-header-search-icon);
    --limar-brand-start: var(--limar-home-brand-start);
    --limar-brand-end: var(--limar-home-brand-end);
    --limar-section-warm: var(--limar-home-section-bg);
    --limar-surface-hover: var(--limar-home-product-card-hover-bg);
    --limar-gray-666: var(--limar-home-service-description);
    --limar-gray-555: #555555;
    --limar-gray-777: #777777;
    --limar-gray-bbb: #bbbbbb;
    --limar-brand-edge: var(--limar-home-brand-edge);
    --limar-brand-hover-text: var(--limar-home-brand-hover-text);
    --limar-card-bg: var(--limar-home-product-card-bg);
    --limar-muted: var(--limar-home-muted-text);
    --limar-feature-bg: var(--limar-home-feature-divider-bg);
    --limar-gallery-bg: #eeeae6;
    --limar-thumb-bg: var(--limar-product-thumb-bg);
    --limar-thumb-active: var(--limar-product-thumb-active);
    --limar-stock: var(--limar-product-stock);
    --limar-tabs-border: var(--limar-product-tabs-border);
    --limar-tabs-bg: var(--limar-product-tabs-bg);
    --limar-gray-aaa: var(--limar-product-footer-muted);
}

.hero h1,
.section-head h2,
.feature-banner h2,
.product-info h1,
.product-info h2,
.tab-panel h2 {
    font-family: var(--font-display);
}

/* ========================================
   GLOBAL / RESET
======================================== */
* {
    box-sizing:border-box
}

html {
    scroll-behavior:smooth
}

body {
    margin:0;
    background:var(--limar-body-bg);
    color:var(--limar-text-primary);
    font-family:Inter,Arial,sans-serif;
    font-size:14px
}

.home {
    background:var(--limar-home-bg)
}

a {
    color:inherit;
    text-decoration:none
}

button,input {
    font:inherit
}

/* ========================================
   HEADER / NAVIGATION
======================================== */
.site-header {
    position:fixed;
    z-index:50;
    top:0;
    left:0;
    width:100%;
    height:74px;
    padding:0 4.2vw;
    display:flex;
    align-items:center;
    gap:44px;
    color:var(--limar-white);
    transition:.45s cubic-bezier(.2,.7,.2,1);
    border-bottom:1px solid transparent
}

.site-header.scrolled {
    height:66px;
    color: var(--limar-sticky-text);
    background: color-mix(in srgb, var(--limar-sticky-bg) 88%, transparent);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    border-bottom-color:rgba(0,0,0,.07);
    box-shadow:0 8px 30px rgba(0,0,0,.035)
}

.brand {
    display:flex;
    width:150px;
    align-items:center
}

.brand-logo-stack {
    position:relative;
    display:block;
    width:100%;
    height:38px;
}

.brand-logo {
    position:absolute;
    inset:0 auto auto 0;
    width:100%;
    height:38px;
    object-fit:contain;
    object-position:left center;
    transition:opacity .38s ease;
}

.brand-logo-dark {
    opacity:1;
}

.brand-logo-light {
    opacity:0;
}

.site-header.scrolled .brand-logo-dark {
    opacity:0;
}

.site-header.scrolled .brand-logo-light {
    opacity:1;
}

.main-nav {
    display:flex;
    justify-content:center;
    gap:29px;
    flex:1
}

.main-nav a {
    font-size: 12px;
    letter-spacing:.08em;
    opacity:.86;
    position:relative
}

.main-nav a:after {
    content:"";
    position:absolute;
    left:0;
    right:100%;
    bottom:-8px;
    height:1px;
    background:currentColor;
    transition:.3s
}

.main-nav a:hover:after {
    right:0
}

.header-actions {
    display:flex;
    gap:13px;
    align-items:center
}

.icon-btn {
    border:0;
    background:none;
    color:inherit;
    font-size:21px;
    font-weight:300;
    cursor:pointer;
    opacity:.82;
    transition:.25s
}

.icon-btn:hover {
    opacity:1;
    transform:translateY(-1px)
}

.header-dot {
    width:7px;
    height:7px;
    border:1px solid currentColor;
    border-radius:50%
}

.search-popover {
    position:absolute;
    right:4vw;
    top:78px;
    width:390px;
    height:54px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:0 15px;
    background:rgba(252,250,247,.98);
    color:var(--limar-black-soft);
    box-shadow:0 18px 55px rgba(0,0,0,.16);
    opacity:0;
    transform:translateY(-8px) scale(.98);
    pointer-events:none;
    transition:.3s
}

.search-popover.open {
    opacity:1;
    transform:none;
    pointer-events:auto
}

.search-popover input {
    border:0;
    outline:0;
    background:transparent;
    flex:1
}

.search-popover button {
    border:0;
    background:none;
    font-size:22px;
    cursor:pointer
}

/* ========================================
   HERO SLIDER
======================================== */
.hero {
    height:90vh;
    position:relative;
    overflow:hidden;
    background:var(--limar-black-soft)
}

.hero-slide {
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    opacity:0;
    transform:scale(1.025);
    transition:opacity 1s ease,transform 6s ease
}

.hero-slide.active {
    opacity:1;
    transform:scale(1)
}

.hero-copy {
    position:absolute;
    left:7.2vw;
    top:50%;
    transform:translateY(-45%);
    width:430px;
    color:var(--limar-white);
    opacity:0;
    animation:heroIn .9s .15s forwards
}

.hero-slide:not(.active) .hero-copy {
    animation:none;
    opacity:0
}

.eyebrow {
    font-size:9px;
    letter-spacing:.28em;
    margin:0 0 16px;
    opacity:.7
}

.hero h1 {
    font-family:"Playfair Display",serif;
    font-weight:400;
    font-size:66px;
    line-height:1.07;
    margin:0 0 18px
}

.hero-copy>p:not(.eyebrow) {
    font-size:13px;
    line-height:1.75;
    max-width:320px;
    opacity:.88
}

.btn-outline {
    display:inline-flex;
    align-items:center;
    gap:20px;
    border:1px solid rgba(255,255,255,.58);
    padding:14px 18px;
    margin-top:9px;
    font-size:9px;
    letter-spacing:.08em;
    transition:.3s
}

.btn-outline:hover {
    background:var(--limar-white);
    color:var(--limar-black-soft)
}

.slider-arrow {
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:42px;
    height:62px;
    border:0;
    background:rgba(0,0,0,.08);
    color:var(--limar-white);
    font-size:34px;
    cursor:pointer;
    opacity:.22;
    transition:.3s
}

.slider-arrow:hover {
    opacity:1;
    background:rgba(0,0,0,.28)
}

.slider-arrow.prev {
    left:18px
}

.slider-arrow.next {
    right:18px
}

.hero-dots {
    position:absolute;
    left:50%;
    bottom:28px;
    display:flex;
    gap:9px;
    transform:translateX(-50%)
}

.hero-dots button {
    width:26px;
    height:2px;
    border:0;
    padding:0;
    background:rgba(255,255,255,.32);
    cursor:pointer;
    transition:.3s
}

.hero-dots button.active {
    background:var(--limar-white);
    width:42px
}

.scroll-hint {
    position:absolute;
    right:5vw;
    bottom:18px;
    display:flex;
    align-items:center;
    gap:9px;
    color:var(--limar-white);
    font-size:10px;
    letter-spacing:.16em;
    opacity:.58
}

.scroll-hint i {
    display: inline-block;
    font-style: normal;
	margin-top:-3px;

    animation:
        bounce 2s ease-in-out infinite;
}

/* ========================================
   BRAND STRIP
======================================== */

.brand-strip {
    position: relative;

    height: 10vh;
    min-height: 78px;

    overflow: hidden;

    background: linear-gradient(
        90deg,
        var(--limar-home-brand-start),
        var(--limar-home-brand-end)
    );

    color: var(--limar-home-brand-text);

    text-align: center;

    border-top: 0;
    border-bottom: 0;
}

.brand-strip::before,
.brand-strip::after {right: 0;background: linear-gradient(270deg,var(--limar-home-brand-end) 0%,rgba(32, 37, 32, 0.92) 34%,rgba(32, 37, 32, 0) 100%);
}

.brand-strip::before {left: 0;background: linear-gradient(90deg,var(--limar-home-brand-start) 0%,rgba(27, 32, 28, 0.92) 34%,rgba(27, 32, 28, 0) 100%);
}

.brand-strip::after {
    right: 0;

    background: linear-gradient(
        270deg,
        var(--limar-home-brand-edge) 0%,
        rgba(27, 24, 21, 0.92) 34%,
        rgba(27, 24, 21, 0) 100%
    );
}

.brand-marquee {
    width: 100%;
    height: 100%;

    overflow: hidden;
}

.brand-track {
    width: max-content;
    height: 100%;

    display: flex;
    align-items: center;

    animation:
        limarBrandMarquee 180s linear infinite;

    will-change: transform;
}

.brand-strip:hover .brand-track {
    animation-play-state: paused;
}

.brand-group {
    display: flex;
    align-items: center;

    height: 100%;

    flex-shrink: 0;
}

.brand-item {
    position: relative;

    width: 250px;
    height: 100%;

    flex: 0 0 250px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0 34px;

    text-align: center;

    font-size: 20px;
    letter-spacing: 0.02em;
}

.brand-item::after {
    content: "";

    position: absolute;
    top: 50%;
    right: 0;

    width: 1px;
    height: 34px;

    transform: translateY(-50%);

    background: rgba(255, 255, 255, 0.16);
}

.brand-item a {
    width: 100%;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: inherit;

    transition:
        transform 0.9s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.5s ease,
        filter 0.7s ease;
}

.brand-item:hover a {
    transform: scale(1.2);
}

.brand-item img {
    display: block;

    max-width: 145px;
    max-height: 34px;

    width: auto;
    height: auto;

    object-fit: contain;

    filter:
        grayscale(1)
        sepia(0.45)
        saturate(0.85)
        brightness(1.18);

    opacity: 0.88;

    transition:
        opacity 0.35s ease,
        transform 0.35s ease,
        filter 0.35s ease;
}

.brand-item:hover img {
    opacity: 1;

    transform: translateY(-2px);

    filter:
        grayscale(1)
        sepia(0.65)
        saturate(1.15)
        brightness(1.35);
}

.brand-name {
    display: block;

    color: var(--limar-home-brand-text);

    opacity: 0.92;

    transition:
        color 0.35s ease,
        opacity 0.35s ease,
        text-shadow 0.35s ease;
}

.brand-item:hover .brand-name {
    color: var(--limar-home-brand-hover-text);

    opacity: 1;

    text-shadow:
        0 0 16px rgba(255, 255, 255, 0.08);
}

@keyframes limarBrandMarquee {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        transform: translate3d(-16.6666667%, 0, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .brand-track {
        animation: none;

        transform: none;
    }
}

/* ========================================
   SECTIONS / PRODUCTS
======================================== */
.section {
    padding:90px 5.2vw 100px
}

.products-section {
    background:var(--limar-home-section-bg)
}

.section-head {
    display:flex;
    justify-content:space-between;
    align-items:end;
    margin-bottom:24px
}

.section-head h2 {
    font-family:"Playfair Display",serif;
    font-weight:500;
    font-size:26px;
    margin:0
}

.section-head a {
    font-size:11px;
    letter-spacing:.08em
}

.product-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px
}

.product-card {
    background:var(--limar-home-product-card-bg);
    border:1px solid var(--limar-shop-card-border);
    overflow:hidden;
    transition:
        transform .5s cubic-bezier(.16,1,.3,1),
        background-color .4s ease,
        border-color .4s ease,
        box-shadow .5s ease
}

.product-card.reveal {
    transition:
        opacity .75s ease,
        transform .5s cubic-bezier(.16,1,.3,1),
        background-color .4s ease,
        border-color .4s ease,
        box-shadow .5s ease
}

.product-card:hover {
    transform:translateY(-4px);
    border-color:color-mix(in srgb,var(--limar-shop-card-border) 65%,#000);
    box-shadow:0 18px 42px rgba(0,0,0,.05);
    background:var(--limar-home-product-card-hover-bg)
}

.product-card.reveal.visible:hover {
    transform:translateY(-4px)
}

.product-image {
    height:180px;
    background:var(--limar-home-product-image-bg);
    overflow:hidden
}

.product-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transform: scale(1);

    transition:
        transform 3.2s cubic-bezier(0.16, 1, 0.3, 1);

    will-change: transform;
}

.product-card:hover .product-image img {
    transform: scale(1.045);
}

.product-meta {
    padding:17px 14px 20px
}

.product-meta h3 {
    font-size:13px;
    font-weight:500;
    margin:0 0 9px
}

.product-meta p {
    font-size:13px;
    color:var(--limar-home-muted-text);
    margin:0 0 18px
}

.product-meta strong {
    font-size:13px;
    font-weight:600
}

/* ========================================
   FEATURE BANNERS
======================================== */

.feature-banners {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    height: 375px;
    gap: 1px;
    background: var(--limar-home-feature-divider-bg);
}

.feature-banner {
    position: relative;
    display: block;
    height: 375px;
    overflow: hidden;
    color: var(--limar-white);
    cursor: pointer;
    isolation: isolate;
}

.feature-banner-bg {
    position: absolute;
    inset: 0;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    transform: scale(1);

    transition:
        transform 3.2s cubic-bezier(0.16, 1, 0.3, 1);

    will-change: transform;
}

.feature-banner:hover .feature-banner-bg {
    transform: scale(1.045);
}

.feature-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;

    background: linear-gradient(
        90deg,
        rgba(8, 8, 8, 0.78) 0%,
        rgba(8, 8, 8, 0.48) 36%,
        rgba(8, 8, 8, 0.10) 76%,
        rgba(8, 8, 8, 0.03) 100%
    );

    transition:
        background 1.1s ease;

    pointer-events: none;
}

.feature-banner::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;

    background: linear-gradient(
        120deg,
        transparent 0%,
        rgba(255, 255, 255, 0.055) 55%,
        transparent 100%
    );

    opacity: 0;

    transition:
        opacity 1.2s ease;

    pointer-events: none;
}

.feature-banner:hover::after {
    opacity: 1;
}

.feature-banner-content {
    position: absolute;
    z-index: 2;

    left: 34px;
    bottom: 43px;

    width: 230px;

    pointer-events: none;

    transition:
        transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}

.feature-banner:hover .feature-banner-content {
    transform: translateY(-2px);
}

.feature-banner h2 {
    margin: 0 0 14px;

    font-family: "Playfair Display", serif;
    font-size: 25px;
    font-weight: 400;
}

.feature-banner p {
    max-width: 210px;
    margin: 0;

    font-size: 12px;
    line-height: 1.65;

    opacity: 0.82;
}

.feature-banner-link {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-top: 16px;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.11em;
    transition:
        transform 0.8s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.5s ease;
}

.feature-banner-link > span {
    display: inline-block;
    font-size: 15px;
    transition:
        transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}

.feature-banner:hover .feature-banner-link {
    transform: translateX(2px);
}

.feature-banner:hover .feature-banner-link > span {
    transform: translateX(7px);
}

/* ========================================
   SERVICES
======================================== */
.service-strip {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    background:var(--limar-home-section-bg);
    padding:55px 4.5vw
}

.service {
    display:flex;
    gap:16px;
    padding:8px 22px;
    border-right:1px solid rgba(0,0,0,.09)
}

.service:last-child {
    border-right:0
}

.service>span {
    font-size:28px
}

.service b {
    font-size:15px;
    font-weight:500
}

.service p {
    font-size:13px;
    line-height:1.55;
    margin:6px 0 0;
    color:var(--limar-home-service-description)
}

/* ========================================
   FOOTER
======================================== */
.footer {
    display:grid;
    grid-template-columns:1.4fr repeat(3,1fr);
    gap:42px;
    background:linear-gradient(120deg,var(--limar-footer-start),var(--limar-footer-end));
    color:var(--limar-footer-text);
    padding:46px 5.2vw 52px
}

.footer-brand img {
    width:160px;
    margin-bottom:5px
}

.footer p,.footer a {
    display:block;
    font-size:12px;
    line-height:1.8;
    color:var(--limar-footer-muted)
}

.footer-brand p {
	font-family: var(--font-display);
	font-size:13px;
	margin:0px;
}

.footer h4 {
    font-family: var(--font-footer-heading);
    font-size: 14px;
    font-weight: var(--font-footer-heading-weight);
    font-style: var(--font-footer-heading-style);
    font-synthesis: none;
    margin: 3px 0 3px;
    padding-bottom: 5px;
    color: var(--limar-footer-heading);
    border-bottom: 1.5px solid color-mix(in srgb, var(--limar-footer-heading) 50%, transparent);
}

.footer-btn {
    display:inline-block!important;
    border:1px solid var(--limar-footer-border);
    padding:9px 13px!important;
    color:var(--limar-footer-button-text)!important;
    margin-top:7px
}

@media (min-width:769px) {
    .footer {
        padding:82px 5.2vw 88px;
    }
}

.reveal {
    opacity:0;
    transform:translateY(22px);
    transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)
}

.reveal.visible {
    opacity:1;
    transform:none
}

 /* ========================================
   PRODUCT PAGE
======================================== */
.product-page {
    background:var(--limar-product-page-bg);
    color:var(--limar-product-text)
}

.product-page .site-header:not(.scrolled) {
    color:var(--limar-product-header-text);
    background:transparent;
    border-bottom-color:transparent;
    box-shadow:none;
    backdrop-filter:none;
    -webkit-backdrop-filter:none
}

.product-page .site-header:not(.scrolled) .brand-logo-dark {
    opacity:0
}

.product-page .site-header:not(.scrolled) .brand-logo-light {
    opacity:1
}

.product-main {
    padding-top:35px
}

.breadcrumbs {
    max-width:1420px;
    margin:0 auto;
    padding:35px 3.2vw 14px;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    font-size:13px;
    color:var(--limar-product-muted)
}

.breadcrumbs a {
    color:inherit;
    transition:opacity .25s ease
}

.breadcrumbs a:hover {
    opacity:.62
}

.breadcrumbs b {
    font-weight:500;
    color:var(--limar-product-text)
}

.product-hero-grid {
    max-width:1420px;
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(330px,1fr);
    align-items:start;
    gap:52px;
    padding:10px 3.2vw;
    min-height:80vh
}

.gallery {
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:14px
}

.thumbs-carousel {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-width:0
}

.thumbs-viewport {
    width:max-content;
    max-width:482px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-behavior:smooth;
    scrollbar-width:none;
    -ms-overflow-style:none
}

.thumbs-viewport::-webkit-scrollbar {
    display:none
}

.thumbs {
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    gap:10px;
    width:max-content
}

.thumbs-nav {
    flex:0 0 28px;
    width:28px;
    height:72px;
    border:0;
    padding:0;
    background:transparent;
    color:var(--limar-product-text);
    font-size:24px;
    line-height:1;
    cursor:pointer;
    opacity:.72;
    transition:opacity .25s ease,transform .25s ease
}

.thumbs-nav:hover {
    opacity:1;
    transform:scale(1.06)
}

.thumbs-nav:disabled {
    opacity:.25;
    cursor:default;
    transform:none
}

.thumbs-nav[hidden] {
    display:none
}

.thumb {
    flex:0 0 72px;
    width:72px;
    height:72px;
    border:1px solid transparent;
    background:var(--limar-product-thumb-bg);
    padding:0;
    cursor:pointer;
    overflow:hidden;
    transition:border-color .25s ease,transform .25s ease
}

.thumb:hover {
    transform:translateY(-2px)
}

.thumb.active {
    border-color:var(--limar-product-thumb-active)
}

.thumb img {
    width:100%;
    height:100%;
    object-fit:cover
}

.main-gallery-image {
    position:relative;
    width:100%;
    aspect-ratio:1 / 1;
    min-height:0;
    border:0;
    padding:0;
    background:var(--limar-product-gallery-bg);
    overflow:hidden;
    cursor:zoom-in
}

.main-gallery-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:opacity .35s ease,transform .6s ease
}

.main-gallery-image:hover img {
    transform:scale(1.018)
}

.main-gallery-image.switching img {
    opacity:.2
}

.zoom-cue {
    position:absolute;
    left:15px;
    bottom:15px;
    background:var(--limar-product-zoom-bg);
    color:var(--limar-product-text);
    padding:8px 9px;
    font-size:12px;
    box-shadow:0 5px 20px rgba(0,0,0,.08)
}

.product-info {
    padding-top:5px;
    color:var(--limar-product-text)
}

.product-info h1 {
    font-family:"Playfair Display",serif;
    font-size:38px;
    font-weight:400;
    color:var(--limar-product-text);
    margin:10px 0 3px
}

.limar-product-availability-dot {
    display:inline-block;
    width:8px;
    height:8px;
    margin-left:9px;
    border-radius:50%;
    background:var(--limar-product-stock);
    vertical-align:super;
    transform:translateY(-.1em);
    box-shadow:0 0 0 3px color-mix(in srgb, var(--limar-product-stock) 14%, transparent)
}

.intro {
    font-size:11px;
    line-height:1.8;
    margin:23px 0;
    color:var(--limar-product-subtitle-text)
}

.intro > :first-child {
    margin-top:0
}

.intro > :last-child {
    margin-bottom:0
}

.price {
    font-family:"Playfair Display",serif;
    font-size:29px;
    color:var(--limar-product-text);
    margin-top:28px
}

.tax {
    font-size:9px;
    color:var(--limar-product-soft-muted)
}

.stock {
    font-size:10px;
    color:var(--limar-product-text);
    margin:25px 0 20px
}

.stock i {
    display:inline-block;
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--limar-product-stock);
    margin-right:7px
}

.demo-actions {
    display:grid;
    grid-template-columns:96px 1fr;
    gap:12px;
    margin:25px 0 29px
}

.demo-actions>* {
    height:46px
}

.limar-product-quantity {
    display:grid;
    grid-template-columns:29px minmax(30px,1fr) 29px;
    align-items:center;
    border:1px solid var(--limar-product-control-border);
    background:transparent
}

.limar-product-quantity .quantity {
    display:flex;
    width:100%;
    height:100%;
    align-items:center;
    justify-content:center
}

.limar-product-quantity input.qty {
    width:100%;
    height:100%;
    min-width:0;
    padding:0;
    border:0;
    outline:0;
    background:transparent;
    color:var(--limar-product-text);
    text-align:center;
    font-size:11px;
    -moz-appearance:textfield;
    pointer-events:none;
    user-select:none;
    caret-color:transparent;
    cursor:default
}

.limar-product-quantity input.qty::-webkit-inner-spin-button,
.limar-product-quantity input.qty::-webkit-outer-spin-button {
    margin:0;
    -webkit-appearance:none
}

.limar-qty-button {
    width:100%;
    height:100%;
    padding:0;
    border:0 !important;
    background:transparent !important;
    color:var(--limar-product-text) !important;
    cursor:pointer;
    font-size:15px !important;
    letter-spacing:0 !important;
    transition:opacity .2s ease
}

.limar-qty-button:hover {
    opacity:.55
}

.limar-qty-button:disabled {
    opacity:.25;
    cursor:default
}

.demo-actions button {
    border:1px solid var(--limar-product-button-border);
    background:var(--limar-product-button-bg);
    color:var(--limar-product-button-text);
    font-size:9px;
    letter-spacing:.1em
}

.demo-actions .limar-cart-button {
    font-weight:600;
    cursor:pointer;
    transition:transform .25s ease,filter .25s ease,box-shadow .25s ease
}

.demo-actions .limar-cart-button:hover {
    transform:translateY(-1px);
    filter:brightness(1.05);
    box-shadow:0 5px 14px rgba(0,0,0,.08)
}

.product-benefits {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    border-top:1px solid var(--limar-product-border);
    padding-top:26px
}

.product-benefits div {
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:6px;
    font-size:9px
}

.product-benefits b {
    font-size:18px;
    font-weight:400
}

.product-benefits small {
    display:block;
    margin-top:3px;
    color:var(--limar-product-soft-muted);
    font-size:8px
}

.product-footer-strip {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    background:var(--limar-product-footer-bg);
    color:var(--limar-product-footer-text);
    padding:28px 4vw
}

.product-footer-strip>div {
    display:flex;
    align-items:center;
    gap:13px;
    justify-content:center
}

.product-footer-strip b {
    font-size:22px;
    font-weight:400
}

.product-footer-strip span {
    font-size:9px
}

.product-footer-strip small {
    display:block;
    color:var(--limar-product-footer-muted);
    font-size:8px;
    margin-top:5px
}

.product-tabs-wrap {
    border-top:1px solid var(--limar-product-tabs-border);
    background:var(--limar-product-tabs-bg);
    color:var(--limar-product-tabs-text);
    min-height:40vh
}

.tabs {
    max-width:1420px;
    margin:auto;
    padding:0 3.2vw;
    display:flex;
    gap:48px;
    height:62px;
    align-items:end
}

.tab {
    height:auto;
    position:relative;
    border:0;
    padding:0;
    background:none;
    color:var(--limar-product-tabs-text);
    font-size:13px;
    font-weight:600;
    line-height:1.8;
    letter-spacing:.05em;
    cursor:pointer
}

.tab:after {
    content:"";
    position:absolute;
    left:0;
    right:100%;
    bottom:0;
    height:1px;
    background:var(--limar-product-tabs-active);
    transition:.3s
}

.tab.active:after,.tab:hover:after {
    right:0
}

.tab-panel {
    display:none;
    max-width:1420px;
    margin:auto;
    padding:20px 3.2vw 42px
}

.tab-panel.active {
    display:block;
    animation:fadePanel .45s
}

.tab-panel > div {
    width:100%;
    max-width: none;
}

.tab-panel h2 {
    font-family:"Playfair Display",serif;
    font-weight:400;
    font-size:25px;
    color:var(--limar-product-tabs-text)
}

.tab-panel p {
    font-size:11px;
    line-height:1.9;
    max-width:none
}

.tab-panel img {
    width:100%;
    height:auto
}

.related {
    background:var(--limar-product-related-bg)
}

.related .product-image {
    height:145px
}

.limar-product-native-cart .cart {
    margin:25px 0 29px
}

@media (min-width:901px) {
    .product-hero-grid {
        max-width:1340px;
        grid-template-columns:minmax(0,600px) minmax(360px,1fr);
        gap:48px;
        padding-top:10px;
        padding-bottom:10px;
        min-height:80vh
    }

    .gallery {
        width:100%;
        max-width:600px;
        justify-self:center
    }

    .main-gallery-image {
        width:550px;
        max-width:100%;
        align-self:center
    }
}

@media (max-width:900px) {
    .product-hero-grid {
        grid-template-columns:1fr;
        gap:32px
    }

    .main-gallery-image {
        aspect-ratio:1 / 1
    }

    .product-info {
        padding-top:0
    }
}

@media (max-width:767px) {
    .product-main {
        padding-top:35px
    }

    .breadcrumbs {
        padding-top:35px;
        gap:8px;
        line-height:1.6
    }

    .product-hero-grid {
        padding-top:10px;
        padding-bottom:10px;
        min-height:80vh
    }

    .thumbs-viewport {
        max-width:206px
    }

    .thumbs-nav {
        height:62px
    }

    .thumb {
        flex-basis:62px;
        width:62px;
        height:62px
    }

    .product-info h1 {
        font-size:34px
    }

    .product-footer-strip {
        grid-template-columns:repeat(2,1fr);
        gap:22px 12px
    }

    .tabs {
        gap:24px;
        overflow-x:auto;
        align-items:end
    }

    .tab {
        flex:0 0 auto
    }

    .tab-panel.active {
        display:block
    }
}

@media (max-width:425px) {
    .demo-actions {
        grid-template-columns:92px 1fr 42px;
        gap:8px
    }

    .product-benefits {
        grid-template-columns:1fr;
        gap:18px
    }

    .product-footer-strip {
        grid-template-columns:1fr
    }
}

/* ========================================
   LIGHTBOX
======================================== */
.lightbox {
    position:fixed;
    z-index:100;
    inset:0;
    background:color-mix(in srgb,var(--limar-product-lightbox-bg) 94%,transparent);
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    pointer-events:none;
    transition:.35s
}

.lightbox.open {
    opacity:1;
    pointer-events:auto
}

.lightbox img {
    max-width:82vw;
    max-height:86vh;
    object-fit:contain;
    box-shadow:0 20px 70px rgba(0,0,0,.45);
    transform:scale(.97);
    transition:.35s
}

.lightbox.open img {
    transform:scale(1)
}

.lightbox-close,.lightbox-nav {
    position:absolute;
    border:0;
    background:none;
    color:var(--limar-white);
    cursor:pointer
}

.lightbox-close {
    right:30px;
    top:22px;
    font-size:38px
}

.lightbox-nav {
    top:50%;
    font-size:54px;
    opacity:.65
}

.lightbox-nav:hover {
    opacity:1
}

.lightbox-nav.prev {
    left:34px
}

.lightbox-nav.next {
    right:34px
}

/* ========================================
   WORDPRESS / WOOCOMMERCE INTEGRATION
======================================== */

.custom-logo-link {
    display: flex;
    align-items: center;
}

.custom-logo {
    max-width: 150px;
    height: 38px;
    object-fit: contain;
}

.main-nav .limar-menu {
    display: flex;
    gap: 29px;
    align-items: center;

    list-style: none;

    margin: 0;
    padding: 0;
}

.main-nav .limar-menu li {
    margin: 0;
    padding: 0;
}

.main-nav .limar-menu a {
    font-size: 11px;
    letter-spacing: 0.08em;
    opacity: 0.86;
}

.search-popover form {
    display: flex;
    flex: 1;
}

.search-popover form input[type="search"] {
    width: 100%;

    border: 0;
    outline: 0;

    background: transparent;
}

.limar-cart-button {
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid var(--limar-product-button-border);

    background: var(--limar-product-button-bg);
    color: var(--limar-product-button-text);

    font-size: 9px;
    letter-spacing: 0.1em;
}

.product-info .price {
    line-height:1;
}

.product-info .price .woocommerce-Price-amount,
.product-info .price .woocommerce-Price-amount.amount,
.product-info .price .woocommerce-Price-amount bdi,
.product-info .price .woocommerce-Price-currencySymbol {
    font-family:inherit !important;
    font-size:29px !important;
    font-weight:inherit !important;
    line-height:1 !important;
    vertical-align:baseline !important;
}

.product-info .stock .stock {
    display: inline;
    margin: 0;
}

.woocommerce-product-attributes {
    width: 100%;

    border-collapse: collapse;
}

.woocommerce-product-attributes th,
.woocommerce-product-attributes td {
    padding: 10px;

    border-bottom: 1px solid var(--limar-product-border);

    text-align: left;
    font-size: 11px;
}

.product-image .woocommerce-placeholder,
.product-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

/* ========================================
   HEADER ICONS
======================================== */

.icon-btn {
    width: 31px;
    height: 31px;

    padding: 0;

    display: grid;
    place-items: center;

    border-radius: 50%;
}

.icon-btn svg {
    width: 17px;
    height: 17px;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.35;

    stroke-linecap: round;
    stroke-linejoin: round;
}

.icon-btn:hover {
    background: rgba(255, 255, 255, 0.10);

    transform: translateY(-1px);
}

.site-header.scrolled .icon-btn:hover,
.product-header .icon-btn:hover {
    background: rgba(0, 0, 0, 0.045);
}

.search-btn svg {
    transform: scaleX(-1);
}

.search-popover > span {
    font-size: 0;
}

.search-popover > span::before {
    content: "";

    width: 16px;
    height: 16px;

    display: block;

    border: 1.4px solid var(--limar-header-search-icon);
    border-radius: 50%;

    box-sizing: border-box;
}

.search-popover > span::after {
    content: "";

    position: absolute;

    width: 6px;
    height: 1.4px;

    background: var(--limar-header-search-icon);

    transform: translate(11px, -1px) rotate(45deg);
    transform-origin: left center;
}

/* ========================================
   HERO / SCROLL ANIMATIONS
======================================== */

@keyframes heroIn {
    from {
        opacity: 0;
        transform: translateY(calc(-45% + 18px));
    }

    to {
        opacity: 1;
        transform: translateY(-45%);
    }
}

@keyframes bounce {
    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(7px);
    }
}

/* ========================================
   HERO CLICK / SWIPE
======================================== */

.hero {
    touch-action: pan-y;
    user-select: none;
}

.hero-slide {
    display: block;
    color: inherit;
    text-decoration: none;
    -webkit-user-drag: none;
}

.hero-slide .btn-outline {
    pointer-events: none;
}

.hero-slide img {
    -webkit-user-drag: none;
}

/* ========================================
   HERO LINK INTERACTION
======================================== */

.hero-slide {
    pointer-events: none;
}

.hero-slide.active {
    pointer-events: auto;
}

/* ========================================
   FOOTER CONTACT SPACING
======================================== */

.footer .footer-contact-lines {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.footer .footer-contact-lines p {
    margin: 0;
    line-height: 1.5;
}

.footer .footer-contact-lines a {
    display: inline-block;
    line-height: 1.8;
}

.footer .footer-contact-address {
    margin-bottom: 2px;
}

.footer a:not(.footer-btn) {
    position: relative;
    width: fit-content;
    text-decoration: none;
}
.footer a:not(.footer-btn)::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}
.footer a:not(.footer-btn):hover::after {
    transform: scaleX(1);
    transform-origin: left center;
}

/* ========================================
   DISPLAY FONT OVERRIDE
======================================== */

.hero h1,
.section-head h2,
.feature-banner h2,
.feature-banner-content h2,
.product-info h1,
.product-info h2,
.product-tabs-wrap h2,
.tab-panel h2,
.related .section-head h2 {
    font-family: var(--font-display) !important;
    font-weight: var(--font-display-weight) !important;
    font-style: var(--font-display-style) !important;
    font-synthesis: none;
}

.header-actions svg { width: 22.5px; height: 22.5px; }

/* ========================================
   HÍREK & TESZTEK - ARCHIVE / SINGLE
======================================== */

.news-archive {
    background: var(--limar-news-archive-page-bg);
    color: var(--limar-news-archive-text);
}

.news-single {
    background: var(--limar-news-single-page-bg);
    color: var(--limar-news-single-text);
}

.news-shell,
.news-article-shell {
    width: min(1180px, 90vw);
    margin: 0 auto;
}

.news-hero .news-shell {
    width: min(1440px, 90vw);
}

.news-hero {
    height:50vh;
	padding: 220px 0 130px;
    background: none;
    border-bottom: 1px solid rgba(0,0,0,.06);
}

.news-kicker {
    margin: 0 0 18px;
    font-size: 10px;
    letter-spacing: .16em;
    font-weight: 600;
    color: var(--limar-news-archive-hero-muted);
}

.news-hero h1 {
    max-width: 860px;
    margin: 0 0 18px;
    font-size: 66px;
    line-height: 1.07;
}

.news-hero-copy {
    max-width: 620px;
    margin: 25px 0 0;
    font-size: 14px;
    line-height: 1.8;
    color: var(--limar-news-archive-hero-muted);
}

.news-list-section {
    padding: 68px 0 88px;
}

.news-list {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.news-list-item {
    margin: 0;
}

.news-list-link {
    position: relative;
    display: grid;
    grid-template-columns: minmax(250px, 30%) 1fr;
    min-height: 210px;
    background: var(--limar-news-archive-card-bg);
    border: 1px solid var(--limar-news-archive-card-border);
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    transition:
        transform .5s cubic-bezier(.16,1,.3,1),
        background-color .4s ease,
        border-color .4s ease,
        box-shadow .5s ease;
}

.news-list-image {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    align-self: center;
    margin: 12px 0 12px 12px;
}

.news-list-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1.001);
    transition: transform 3.2s cubic-bezier(.16,1,.3,1);
}

.news-list-content {
    min-width: 0;
    padding: 25px 72px 23px 32px;
    display: flex;
    flex-direction: column;
}

.news-list-content time,
.news-article-header time {
    display: block;
    margin-bottom: 11px;
    font-size: 12px;
    letter-spacing: .03em;
    color: var(--limar-news-archive-date-text);
}

.news-list-excerpt {
    max-width: 790px;
    margin-top: 12px;
    color: var(--limar-news-archive-excerpt-text);
    font-size: 14px;
    line-height: 1.72;
}

.news-list-excerpt p {
    margin: 0;
}

.news-read-more {
    position: absolute;
    right: 15px;
    top: 50%;
    margin: 0;
    padding: 0;
    transform: translateY(-50%);
    width: 34px;
    height: 48px;
    font-size: 0;
    letter-spacing: 0;
}

.news-read-more::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 7px;
    width: 15px;
    height: 15px;
    border-top: 3px solid currentColor;
    border-right: 3px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
    transition: transform .35s cubic-bezier(.16,1,.3,1);
}
.news-list-link:hover {
    transform: translateY(-3px);
    background: var(--limar-news-archive-card-hover-bg);
    border-color: rgba(0,0,0,.10);
    box-shadow: 0 15px 40px rgba(0,0,0,.045);
}

.news-list-link:hover .news-list-image img {
    transform: scale(1.045);
}

.news-list-link:hover .news-read-more::before {
    transform: translate(5px, -50%) rotate(45deg);
}

.news-pagination {
    margin-top: 54px;
    display: flex;
    justify-content: center;
}

.news-pagination .page-numbers {
    list-style: none;
    display: flex;
    gap: 7px;
    margin: 0;
    padding: 0;
}

.news-pagination a,
.news-pagination span {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0,0,0,.10);
    text-decoration: none;
    color: var(--limar-news-archive-pagination-text);
    font-size: 11px;
    transition: .3s ease;
}

.news-pagination .current,
.news-pagination a:hover {
    background: var(--limar-news-archive-pagination-active-bg);
    border-color: var(--limar-news-archive-pagination-active-bg);
    color: var(--limar-news-archive-pagination-active-text);
}

.news-empty {
    padding: 80px 0;
    text-align: center;
}

.news-article-header {
    padding: 132px 0 48px;
}

.news-breadcrumbs {
    display: flex;
    gap: 9px;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 38px;
    font-size: 10px;
    color: var(--limar-news-single-hero-muted);
}

.news-breadcrumbs a {
    color: inherit;
    text-decoration: none;
}

.news-article-header h1 {
    max-width: 980px;
    font-size: clamp(42px, 5.3vw, 72px);
}

.news-article-lead {
    max-width: 860px;
    margin: 24px 0 0;
    font-size: 16px;
    line-height: 1.72;
    color: color-mix(in srgb, var(--limar-news-single-text) 68%, transparent);
}

.news-article-featured {
    width: min(980px, 100%);
    aspect-ratio: 4 / 3;
    margin: 8px 0 58px;
    overflow: hidden;
    background: var(--limar-gallery-bg);
}

.news-article-featured img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.news-article-layout {
    display: grid;
    grid-template-columns: minmax(0, 860px) minmax(220px, 1fr);
    gap: 70px;
    align-items: start;
}

.news-article-content {
    width: min(860px, 100%);
    margin: 0 auto;
    color: var(--limar-news-single-text);
    font-size: 15px;
    line-height: 1.85;
}

.news-article-content > :first-child {
    margin-top: 0;
}

.news-article-content h2,
.news-article-content h3 {
    font-family: var(--font-display) !important;
    font-weight: var(--font-display-weight) !important;
    font-style: var(--font-display-style) !important;
    font-synthesis: none;
    line-height: 1.15;
}

.news-article-content h2 {
    margin: 46px 0 18px;
    font-size: 34px;
}

.news-article-content h3 {
    margin: 34px 0 15px;
    font-size: 25px;
}

.news-article-content img {
    max-width: 100%;
    height: auto;
}

.news-article-aside {
    position: sticky;
    top: 110px;
    padding-top: 16px;
    border-top: 1px solid color-mix(in srgb, var(--limar-news-single-text) 24%, transparent);
    font-size: 12px;
    line-height: 1.7;
    color: color-mix(in srgb, var(--limar-news-single-text) 68%, transparent);
}

.news-aside-label {
    margin: 0 0 14px;
    font-size: 9px;
    font-weight: 600;
    letter-spacing: .12em;
    color: var(--limar-text-primary);
}

.news-article-aside a {
    display: inline-block;
    margin-top: 14px;
    color: var(--limar-text-primary);
    text-decoration: none;
    font-size: 10px;
    letter-spacing: .06em;
}

.news-post-nav {
    margin-top: 82px;
    padding: 34px 0 80px;
    border-top: 1px solid rgba(0,0,0,.10);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.news-post-nav > div {
    min-width: 0;
}

.news-post-next {
    text-align: right;
}

.news-post-nav span {
    display: block;
    margin-bottom: 8px;
    font-size: 9px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--limar-news-single-hero-muted);
}

.news-post-nav a {
    color: var(--limar-news-single-text);
    text-decoration: none;
    font-family: var(--font-display);
    font-size: 19px;
    line-height: 1.25;
}

@media (max-width: 900px) {
    .news-list-link {
        grid-template-columns: 220px 1fr;
    }

    .news-list-content {
        padding: 24px;
    }

    .news-article-layout {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .news-article-aside {
        position: static;
    }
}

.news-list-content time {
    font-weight: 600;
}

/* ========================================
   WORDPRESS PRIMARY MENU
======================================== */

.main-nav {
    display: flex;
    justify-content: center;
    flex: 1;
}

.main-nav-list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 29px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.main-nav-list > li {
    position: relative;
}

.main-nav-list a {
    display: block;
    font-size: 12px;
    letter-spacing: .08em;
    opacity: .86;
    position: relative;
    text-decoration: none;
    color: inherit;
    white-space: nowrap;
}

.main-nav-list > li > a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 100%;
    bottom: -8px;
    height: 1px;
    background: currentColor;
    transition: right .3s ease;
}

.main-nav-list > li > a:hover::after,
.main-nav-list > .current-menu-item > a::after,
.main-nav-list > .current-menu-parent > a::after {
    right: 0;
}

.main-nav-list .sub-menu {
    position: absolute;
    left: 50%;
    top: calc(100% + 18px);
    min-width: 210px;
    transform: translate(-50%, 8px);
    margin: 0;
    padding: 10px 0;
    list-style: none;
    background: color-mix(in srgb, var(--limar-sticky-bg) 96%, transparent);
    color: var(--limar-sticky-text);
    border: 1px solid rgba(0,0,0,.07);
    box-shadow: 0 18px 45px rgba(0,0,0,.10);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity .25s ease,
        transform .35s cubic-bezier(.16,1,.3,1),
        visibility 0s linear .35s;
}

.main-nav-list li:hover > .sub-menu,
.main-nav-list li:focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
    transition-delay: 0s;
}

.main-nav-list .sub-menu a {
    padding: 10px 16px;
    font-size: 10px;
}

/* ========================================
   HÍR / TESZT - SINGLE HERO LAYOUT
======================================== */

.news-article-hero {
    height:50vh;
    
    background: none;
    color: var(--limar-news-single-hero-text);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.news-article-hero-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
	padding: 220px 0 130px;
}

.news-article-hero h1 {
    max-width: 940px;
    margin: 0;
    font-size: clamp(34px, 3.7vw, 54px);
    line-height: 1.02;
    color: var(--limar-news-single-hero-text);
    text-shadow: 0 2px 20px rgba(0,0,0,.18);
}

.news-article-hero-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-top: 20px;
    font-size: 12px;
    line-height: 1.5;
    color: var(--limar-news-single-hero-muted);
}

.news-article-hero-breadcrumbs a,
.news-article-hero-breadcrumbs span {
    color: inherit;
    text-decoration: none;
}

.news-article-body-wrap {
    padding-top: 64px;
    padding-bottom: 84px;
}

.news-back-wrap {
    display: flex;
    justify-content: center;
    margin-top: 68px;
}

.news-back-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 22px;
    border: 1.5px solid var(--limar-news-single-button-border);
    color: var(--limar-news-single-button-text);
    text-decoration: none;
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    transition:
        background-color .3s ease,
        color .3s ease,
        transform .3s ease;
}

.news-back-button:hover {
    background: var(--limar-news-single-button-hover-bg);
    color: var(--limar-news-single-button-hover-text);
    transform: translateY(-1px);
}

.news-article-featured,
.news-article-aside,
.news-post-nav {
    display: none;
}

/* ========================================
   HÍREK LISTA - CÍM TIPOGRÁFIA
======================================== */

.news-hero {
    color: var(--limar-news-archive-hero-text);
}

.news-hero .news-kicker,
.news-hero .news-hero-copy {
    color: var(--limar-news-archive-hero-muted);
}

.news-hero h1 {
    color: var(--limar-news-archive-hero-text);
    text-shadow: 0 2px 20px rgba(0,0,0,.18);
}

/* ========================================
   FŐMENÜ - EGYSÉGES TIPOGRÁFIA
======================================== */

.site-header .main-nav a,
.site-header .main-nav-list a {
    font-size: 12px;
    font-weight: 600;
}

.site-header.scrolled .main-nav a,
.site-header.scrolled .main-nav-list a {
    font-size: 12px;
    font-weight: 600;
    color: var(--limar-sticky-text);
}

/* ========================================
   OLDALVÁLTÁS - FAVICON LOADER
======================================== */

.limar-page-loader {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--limar-body-bg);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity .22s ease,
        visibility 0s linear .22s;
}

.limar-page-loader.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
}

.limar-page-loader-mark {
    position: relative;
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.limar-page-loader-mark img {
    width: 38px;
    height: 38px;
    object-fit: contain;
    display: block;
}

.limar-page-loader-ring {
    position: absolute;
    inset: 0;
    border: 2px solid rgba(0,0,0,.10);
    border-top-color: var(--limar-text-primary);
    border-right-color: transparent;
    border-radius: 50%;
    animation: limarLoaderSpin .82s linear infinite;
}

@keyframes limarLoaderSpin {
    to {
        transform: rotate(360deg);
    }
}

@media (prefers-reduced-motion: reduce) {
    .limar-page-loader,
    .limar-page-loader-ring {
        transition: none;
        animation: none;
    }
}

/* ========================================
   HÍREK TIPOGRÁFIA - KANONIKUS SZABÁLYOK
======================================== */

.news-hero h1 {
    font-family: var(--font-news-heading) !important;
    font-weight: var(--font-news-heading-weight) !important;
    font-style: var(--font-news-heading-style) !important;
    font-synthesis: none;
}

.news-article-hero h1 {
    font-family: var(--font-news-article-title) !important;
    font-weight: var(--font-news-article-title-weight) !important;
    font-style: var(--font-news-article-title-style) !important;
    font-synthesis: none;
}

.news-list-content h2 {
    margin: 0;
    max-width: 790px;
    font-family: var(--font-news-card-title) !important;
    font-weight: var(--font-news-card-title-weight) !important;
    font-style: var(--font-news-card-title-style) !important;
    font-synthesis: none;
    font-size: clamp(18px, 1.35vw, 22px);
    line-height: 1.25;
}

/* ========================================
   EGYSZERŰ WORDPRESS OLDALAK
======================================== */
.standard-page {
    background: var(--limar-standard-page-bg);
    color: var(--limar-standard-page-text);
}

.standard-page-shell {
    width: min(1180px, 90vw);
    margin: 0 auto;
}

.standard-page-hero .standard-page-shell {
    width: min(1440px, 90vw);
}

.standard-page-hero {
    height: 50vh;
    background: none;
    color: var(--limar-standard-page-hero-text);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.standard-page-hero-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 220px 0 130px;
}

.standard-page-hero h1 {
    max-width: 940px;
    margin: 0;
    font-family: var(--font-news-article-title) !important;
    font-weight: var(--font-news-article-title-weight) !important;
    font-style: var(--font-news-article-title-style) !important;
    font-synthesis: none;
    font-size: clamp(34px, 3.7vw, 54px);
    line-height: 1.02;
    color: var(--limar-standard-page-hero-text);
    text-shadow: 0 2px 20px rgba(0,0,0,.18);
}

.standard-page-hero-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-top: 20px;
    font-size: 12px;
    line-height: 1.5;
    color: var(--limar-standard-page-hero-muted);
}

.standard-page-hero-breadcrumbs a,
.standard-page-hero-breadcrumbs span {
    color: inherit;
    text-decoration: none;
}

.standard-page-body-wrap {
    padding-top: 64px;
    padding-bottom: 84px;
}

.standard-page-content {
    width: min(860px, 100%);
    color: var(--limar-standard-page-text);
    margin: 0 auto;
    font-size: 15px;
    line-height: 1.85;
}

.standard-page-content > :first-child {
    margin-top: 0;
}

.standard-page-content h2,
.standard-page-content h3 {
    font-family: var(--font-display) !important;
    font-weight: var(--font-display-weight) !important;
    font-style: var(--font-display-style) !important;
    font-synthesis: none;
    line-height: 1.15;
}

.standard-page-content h2 {
    margin: 46px 0 18px;
    font-size: 34px;
}

.standard-page-content h3 {
    margin: 34px 0 15px;
    font-size: 25px;
}

.standard-page-content img {
    max-width: 100%;
    height: auto;
}

/* ========================================
   HÍREK ARCHÍVUM HERO - FŐOLDALI SLIDER ARÁNYOK
======================================== */
.news-hero .news-kicker,
.news-hero .eyebrow {
    font-size: 9px;
    line-height: 1.2;
    margin: 0 0 16px;
    letter-spacing: .16em;
}

.news-hero p,
.news-hero .news-hero-description {
    font-size: 13px;
    line-height: 1.75;
    margin: 0;
}

/* ========================================
   HERO HÁTTÉRKÉP - SMOOTH 1.1 HOVER ZOOM
======================================== */
.news-hero,
.news-article-hero,
.standard-page-hero {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: none;
}

.news-hero::before,
.news-article-hero::before,
.standard-page-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image:
        linear-gradient(90deg, rgba(18,18,16,.72) 0%, rgba(18,18,16,.54) 52%, rgba(18,18,16,.38) 100%),
        var(--limar-hero-image, url("../images/banner-news.jpg"));
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    transform: scale(1);
    transform-origin: center center;
    transition: transform 3.2s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform;
}

.news-hero:hover::before,
.news-article-hero:hover::before,
.standard-page-hero:hover::before {
    transform: scale(1.1);
}

.news-hero > *,
.news-article-hero > *,
.standard-page-hero > * {
    position: relative;
    z-index: 1;
}

@media (prefers-reduced-motion: reduce) {
    .news-hero::before,
    .news-article-hero::before,
    .standard-page-hero::before {
        transition: none;
        transform: none;
    }
}

.standard-page-kicker {
    margin: 0 0 16px;
    font-size: 9px;
    line-height: 1.2;
    letter-spacing: .16em;
    font-weight: 600;
    color: var(--limar-standard-page-hero-muted);
}

.featured-products-all-arrow {
    display: inline-block;
    transition: transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}

.featured-products-all-link:hover .featured-products-all-arrow {
    transform: translateX(7px);
}

/* ========================================
   RESZPONZÍV FEJLÉC / MOBIL MENÜ / FOOTER
======================================== */

.mobile-menu-toggle {
    display: none;
    width: 34px;
    height: 34px;
    padding: 7px 5px;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
    flex: 0 0 auto;
}

.mobile-menu-toggle span {
    display: block;
    width: 100%;
    height: 1.5px;
    margin: 5px 0;
    background: currentColor;
    transform-origin: center;
    transition:
        transform .35s cubic-bezier(.16,1,.3,1),
        opacity .22s ease;
}

@media (max-width: 1024px) and (min-width: 768px) {
    .site-header {
        gap: 24px;
    }

    .main-nav {
        gap: 16px;
    }

    .main-nav a,
    .site-header .main-nav a,
    .site-header .main-nav-list a {
        font-size: 10px;
        letter-spacing: .06em;
    }

    .site-header.scrolled .main-nav a,
    .site-header.scrolled .main-nav-list a {
        font-size: 10px;
    }
}

@media (max-width: 767px) {
    .site-header {
        height: 66px;
        padding: 0 18px;
        gap: 14px;
    }

    .site-header.scrolled {
        height: 62px;
    }

    .brand {
        width: 132px;
        margin-right: auto;
    }

    .brand-logo-stack,
    .brand-logo {
        height: 34px;
    }
    .mobile-menu-toggle {
        display: block;
    }

    .header-actions {
        gap: 9px;
    }

    .header-actions svg {
        width: 22.5px;
        height: 22.5px;
    }

    .main-nav {
        position: absolute;
        top: 100%;
        left: auto;
        right: 18px;
        width: 425px;
        max-width: calc(100vw - 36px);
        max-height: calc(100vh - 62px);
        overflow-y: auto;
        display: block;
        padding: 8px 18px 18px;
        background: var(--limar-sticky-bg);
        color: var(--limar-sticky-text);
        border-top: 1px solid color-mix(in srgb, var(--limar-sticky-text) 12%, transparent);
        border-bottom: 1px solid color-mix(in srgb, var(--limar-sticky-text) 12%, transparent);
        box-shadow: 0 18px 40px color-mix(in srgb, var(--limar-black-soft) 14%, transparent);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(-10px);
        transition:
            opacity .28s ease,
            transform .38s cubic-bezier(.16,1,.3,1),
            visibility 0s linear .38s;
    }

    .site-header.mobile-menu-open .main-nav {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
        transition-delay: 0s;
    }

    .main-nav .limar-menu,
    .main-nav .main-nav-list {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .main-nav li {
        width: 100%;
    }

    .main-nav a,
    .site-header .main-nav a,
    .site-header .main-nav-list a {
        display: block;
        width: 100%;
        padding: 13px 4px;
        font-size: 12px;
        line-height: 1.3;
        letter-spacing: .08em;
        color: var(--limar-sticky-text);
        opacity: 1;
        border-bottom: 1px solid color-mix(in srgb, var(--limar-sticky-text) 10%, transparent);
    }

    .main-nav a::after {
        display: none;
    }

    .main-nav .sub-menu {
        position: static;
        width: 100%;
        min-width: 0;
        margin: 0;
        padding: 0 0 4px 14px;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
        background: transparent;
        box-shadow: none;
        border: 0;
    }

    .main-nav .sub-menu a {
        padding: 10px 4px;
        font-size: 10px;
        opacity: .78;
    }

    .mobile-menu-toggle.is-open span:nth-child(1) {
        transform: translateY(6.5px) rotate(45deg);
    }

    .mobile-menu-toggle.is-open span:nth-child(2) {
        opacity: 0;
    }

    .mobile-menu-toggle.is-open span:nth-child(3) {
        transform: translateY(-6.5px) rotate(-45deg);
    }

    .search-popover {
        right: 14px;
        left: 14px;
        top: calc(100% + 8px);
        width: auto;
    }

    .footer {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 36px 28px;
        padding: 42px 7vw 48px;
    }
}

@media (max-width: 425px) {

    .site-header .main-nav {
        left: 0;
        right: 0;
        width: 100%;
        max-width: none;
    }

    .footer {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 38px 7vw 44px;
    }
}

/* ========================================
   MOBIL SZÉLESSÉG - INTRINSIC OVERFLOW FIX
======================================== */

.product-grid,
.feature-banners,
.service-strip,
.section,
.products-section,
.brand-strip,
.brand-marquee {
    min-width: 0;
    max-width: 100%;
}

.product-grid > *,
.feature-banners > *,
.service-strip > *,
.section-head > * {
    min-width: 0;
}

.home main,
.home .site-main {
    max-width: 100%;
    overflow-x: clip;
}

@supports not (overflow: clip) {
    .home main,
    .home .site-main {
        overflow-x: hidden;
    }
}

/* ========================================
   SERVICE STRIP - RESZPONZÍV ELRENDEZÉS
======================================== */

@media (max-width: 1100px) and (min-width: 768px) {
    .service-strip {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        padding-left: 3.2vw;
        padding-right: 3.2vw;
    }

    .service {
        min-width: 0;
        padding-left: 16px;
        padding-right: 16px;
    }
}

@media (max-width: 767px) {
    .service-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 0 7vw;
    }

    .service {
        min-width: 0;
        padding: 24px 18px;
        border-right: 0;
        border-bottom: 0;
    }

    .service:nth-child(odd) {
        border-right: 1px solid rgba(0,0,0,.09);
    }

    .service:nth-child(-n+2) {
        border-bottom: 1px solid rgba(0,0,0,.09);
    }
}

@media (max-width: 425px) {
    .service-strip {
        grid-template-columns: 1fr;
        padding: 0 7vw;
    }

    .service,
    .service:nth-child(odd),
    .service:nth-child(-n+2) {
        border-right: 0;
        border-bottom: 1px solid rgba(0,0,0,.09);
        padding: 22px 10px;
    }

    .service:last-child {
        border-bottom: 0;
    }
}

/* ========================================
   RESPONSIVE LAYOUT
======================================== */
@media (max-width: 1024px) {
    .service {
        flex-direction: column;
        align-items: stretch;
    }

    .service > span {
        align-self: center;
        margin-bottom: 8px;
    }
}

@media (max-width: 767px) {
    .service-strip {
        padding-top: 55px;
        padding-bottom: 55px;
    }

    .footer > div:nth-child(1) { order: 4; }
    .footer > div:nth-child(2) { order: 1; }
    .footer > div:nth-child(3) { order: 2; }
    .footer > div:nth-child(4) { order: 3; }

    .feature-banners {
        grid-template-columns: 1fr;
        height: auto;
    }

    .feature-banner {
        height: 375px;
    }

    .hero h1 {
        font-size: clamp(35px, 8vw, 62px);
        line-height: 1.06;
    }

    .slider-arrow {
        display: none;
    }
}

@media (max-width: 425px) {
    .hero h1 {
        font-size: 35px;
    }
}

/* ========================================
   FEATURED PRODUCTS
======================================== */
.featured-products-all-wrap {
    display: flex;
    justify-content: flex-end;
    margin-top: 24px;
}

.featured-products-all-arrow {
    animation: none;
}

.featured-products-carousel {
    position: relative;
}

.featured-products-nav {
    display: none;
}

@media (min-width: 768px) {
    .products-section .product-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
        width: 100%;
        padding: 0;
        overflow: visible;
    }

    .products-section .product-card {
        width: auto;
        min-width: 0;
        flex: initial;
    }

    .featured-products-nav {
        display: none !important;
    }
}

@media (max-width: 767px) and (min-width: 426px) {
    .products-section {
        padding-top: 90px;
        padding-bottom: 100px;
    }

    .products-section .product-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
        width: 100%;
        padding: 0;
        overflow: visible;
    }

    .products-section .product-card {
        width: auto;
        min-width: 0;
        flex: initial;
    }

    .featured-products-nav {
        display: none !important;
    }
}

@media (max-width: 425px) {
    .products-section {
        padding-top: 90px;
        padding-bottom: 100px;
    }

    .featured-products-carousel {
        position: relative;
        display: block;
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .products-section .product-grid {
        display: flex;
        flex-wrap: nowrap;
        align-items: stretch;
        width: 90%;
        margin: 0 auto;
        padding: 0;
        gap: 0;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        scrollbar-width: none;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
    }

    .products-section .product-grid::-webkit-scrollbar {
        display: none;
    }

    .products-section .product-card {
        flex: 0 0 100%;
        width: 100%;
        min-width: 100%;
        margin: 0;
        align-self: stretch;
        scroll-snap-align: start;
        scroll-snap-stop: always;
    }

    .featured-products-nav {
        position: absolute;
        z-index: 5;
        top: 50%;
        display: block;
        width: 5%;
        min-width: 18px;
        max-width: 28px;
        height: 48px;
        padding: 0;
        border: 0;
        background: transparent;
        color: var(--limar-text-primary);
        font-size: 25px;
        line-height: 1;
        cursor: pointer;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: opacity .25s ease;
    }

    .featured-products-nav.is-visible {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .featured-products-prev {
        left: -3px;
        right: auto;
        transform: translateY(-50%) scaleX(-1);
    }

    .featured-products-next {
        right: -3px;
        left: auto;
        transform: translateY(-50%);
    }

    .featured-products-next.is-visible.is-attention {
        animation: featuredProductsArrowHint 3.2s ease-in-out infinite;
    }
}

@keyframes featuredProductsArrowHint {
    0%, 100% {
        transform: translateY(-50%) translateX(0);
    }

    50% {
        transform: translateY(-50%) translateX(4px);
    }
}

/* ========================================
   NON-HOMEPAGE HERO SPACING
======================================== */
@media (max-width: 1440px) {
    .news-hero {
        padding-top: 75px;
        padding-bottom: 130px;
    }

    .news-article-hero-inner,
    .standard-page-hero-inner {
        padding-top: 75px;
        padding-bottom: 130px;
    }
}

/* ========================================
   HÍREK & TESZTEK - ARCHIVE RESZPONZÍV
======================================== */

@media (max-width: 767px) {
    .news-hero .news-shell,
    .standard-page-hero .standard-page-shell {
        width: min(92vw, 680px);
    }

    .news-list {
        display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .news-list-item {
        min-width: 0;
        height: 100%;
    }

    .news-list-link {
        display: flex;
        flex-direction: column;
        min-height: 100%;
    }

    .news-list-image {
        width: 100%;
        aspect-ratio: 16 / 9;
        align-self: stretch;
        margin: 0;
    }

    .news-list-content {
        flex: 1;
        padding: 22px 20px 20px;
        display: flex;
        flex-direction: column;
    }

    .news-list-content h2 {
        order: 1;
        margin-top: 0;
    }

    .news-list-excerpt {
        order: 2;
        margin-top: 12px;
    }

    .news-list-content time {
        order: 3;
        margin-top: 18px;
        margin-bottom: 0;
        text-align: left;
        font-weight: 600;
    }

    .news-read-more {
        order: 4;
        position: relative;
        top: auto;
        right: auto;
        width: auto;
        height: auto;
        margin-top: 14px;
        padding: 0 24px 0 0;
        transform: none;
        align-self: flex-end;
        font-size: 11px;
        line-height: 1.4;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .news-read-more > span {
        display: none;
    }

    .news-read-more::before {
        left: auto;
        right: 2px;
        width: 10px;
        height: 10px;
        border-top-width: 2px;
        border-right-width: 2px;
    }

    .news-list-link:hover .news-read-more::before {
        transform: translate(4px, -50%) rotate(45deg);
    }
}

@media (max-width: 425px) {
    .news-list {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .news-list-content {
        padding: 22px 20px 20px;
    }

    .news-list-image {
        aspect-ratio: 16 / 9;
    }
}

/* ========================================
   HÍREK & TESZTEK - MOBIL ARCHIVE
======================================== */

.news-back-arrow {
    position: relative;
    display: inline-block;
    width: 18px;
    height: 12px;
    margin-right: 3px;
    vertical-align: -1px;
}

.news-back-arrow::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 10px;
    height: 10px;
    border-left: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
    transition: transform .35s ease;
}

.news-back-button:hover .news-back-arrow::before {
    transform: translate(-4px, -50%) rotate(45deg);
}

@media (max-width: 767px) {
    .news-mobile-second-page {
        display: none;
    }

    .news-mobile-second-page.news-mobile-page-visible {
        display: block;
    }

    .news-list-item.news-mobile-first-page-hidden {
        display: none;
    }

    .news-mobile-pagination {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        margin-top: 34px;
    }

    .news-mobile-page {
        border: 0;
        background: transparent;
        color: var(--limar-text-primary);
        font: inherit;
        cursor: pointer;
        opacity: .55;
        padding: 6px 8px;
    }

    .news-mobile-page.is-active {
        opacity: 1;
        text-decoration: underline;
        text-underline-offset: 4px;
    }
}

@media (min-width: 768px) {
    .news-mobile-pagination {
        display: none;
    }
}

/* ========================================
   HÍREK LAPOZÁS - DESKTOP 10 / MOBIL 5
======================================== */

.news-pagination-mobile,
.news-mobile-pagination {
    display: none;
}

@media (max-width: 767px) {
    .news-pagination-desktop {
        display: none;
    }

    .news-pagination-mobile {
        display: flex;
    }
}

@media (min-width: 768px) {
    .news-pagination-desktop {
        display: flex;
    }

    .news-pagination-mobile {
        display: none;
    }
}

/* ========================================
   NEM FŐOLDALI HERO MAGASSÁG
======================================== */

.news-hero,
.news-article-hero,
.standard-page-hero {
    height: 50vh;
}

@media (max-width: 1024px) {
    .news-hero,
    .news-article-hero,
    .standard-page-hero {
        height: 42vh;
    }
}

@media (max-width: 767px) {
    .news-hero,
    .news-article-hero,
    .standard-page-hero {
        height: 35vh;
        min-height: 320px;
    }
}

/* ========================================
   BACK TO TOP
======================================== */
.back-to-top {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid color-mix(in srgb, var(--limar-sticky-text) 28%, transparent);
    border-radius: 50%;
    background: color-mix(in srgb, var(--limar-sticky-bg) 92%, transparent);
    color: var(--limar-sticky-text);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    font: inherit;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(10px);
    transition:
        opacity .45s ease,
        visibility 0s linear .45s,
        transform .75s cubic-bezier(.16,1,.3,1),
        background-color .6s ease,
        border-color .6s ease;
}

.back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
}

.back-to-top:hover {
    transform: translateY(-3px);
    background: var(--limar-sticky-bg);
}

.back-to-top-arrow {
    display: block;
    width: 9px;
    height: 9px;
    border-top: 1.5px solid currentColor;
    border-left: 1.5px solid currentColor;
    transform: translateY(2px) rotate(45deg);
}

@media (max-width: 767px) {
    .back-to-top {
        right: 16px;
        bottom: 16px;
        font-size: 18px;
    }
}

/* ========================================
   NEM FŐOLDALI HERO TIPOGRÁFIA
======================================== */

.news-hero h1,
.news-article-hero h1,
.standard-page-hero h1 {
    font-size: 66px;
    line-height: 1.06;
}

@media (max-width: 767px) {
    .news-hero h1,
    .news-article-hero h1,
    .standard-page-hero h1 {
        font-size: clamp(35px, 8vw, 62px);
        line-height: 1.06;
    }
}

@media (max-width: 425px) {
    .news-hero h1,
    .news-article-hero h1,
    .standard-page-hero h1 {
        font-size: 35px;
    }
}

/* ========================================
   KERESÉSI EREDMÉNYEK
======================================== */

.limar-search-page {
    background: var(--limar-search-page-bg);
    color: var(--limar-search-page-text);
}

.limar-search-shell {
    width: min(1180px, 90vw);
    margin: 0 auto;
}

.limar-search-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    height: 50vh;
    padding: 220px 0 130px;
    background: none;
    color: var(--limar-search-hero-text);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.limar-search-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image:
        linear-gradient(90deg, rgba(18,18,16,.72) 0%, rgba(18,18,16,.54) 52%, rgba(18,18,16,.38) 100%),
        var(--limar-search-hero-image, url("../images/limar_base_hero_img.jpg"));
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    transform: scale(1);
    transform-origin: center center;
    transition: transform 3.2s cubic-bezier(.16,1,.3,1);
    will-change: transform;
}

.limar-search-hero:hover::before {
    transform: scale(1.1);
}

.limar-search-hero > * {
    position: relative;
    z-index: 1;
}

.limar-search-kicker {
    margin: 0 0 16px;
    font-size: 9px;
    line-height: 1.2;
    letter-spacing: .16em;
    font-weight: 600;
    color: var(--limar-search-hero-muted);
}

.limar-search-hero h1 {
    max-width: 860px;
    margin: 0;
    font-family: var(--font-news-heading) !important;
    font-weight: var(--font-news-heading-weight) !important;
    font-style: var(--font-news-heading-style) !important;
    font-synthesis: none;
    font-size: 66px;
    line-height: 1.06;
    color: var(--limar-search-hero-text);
    text-shadow: 0 2px 20px rgba(0,0,0,.18);
}

.limar-search-list-section {
    padding: 68px 0 88px;
}

.limar-search-list {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.limar-search-card-item {
    margin: 0;
}

.limar-search-card-link {
    position: relative;
    display: grid;
    grid-template-columns: minmax(250px, 30%) 1fr;
    min-height: 210px;
    background: var(--limar-search-card-bg);
    border: 1px solid var(--limar-search-card-border);
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    transition:
        transform .5s cubic-bezier(.16,1,.3,1),
        background-color .4s ease,
        border-color .4s ease,
        box-shadow .5s ease;
}

.limar-search-card-image {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    align-self: center;
    margin: 12px 0 12px 12px;
}

.limar-search-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1.001);
    transition: transform 3.2s cubic-bezier(.16,1,.3,1);
}

.limar-search-card-content {
    min-width: 0;
    padding: 25px 32px 23px;
    display: flex;
    flex-direction: column;
}

.limar-search-card-content time {
    display: block;
    margin-bottom: 11px;
    font-size: 12px;
    letter-spacing: .03em;
    color: var(--limar-search-date-text);
}

.limar-search-card-content h2 {
    margin: 0;
    max-width: 790px;
    font-family: var(--font-news-card-title) !important;
    font-weight: var(--font-news-card-title-weight) !important;
    font-style: var(--font-news-card-title-style) !important;
    font-synthesis: none;
    font-size: clamp(18px, 1.35vw, 22px);
    line-height: 1.25;
}

.limar-search-card-excerpt {
    max-width: 790px;
    margin-top: 12px;
    color: var(--limar-search-excerpt-text);
    font-size: 14px;
    line-height: 1.72;
}

.limar-search-card-excerpt p {
    margin: 0;
}

.limar-search-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: auto;
    padding-top: 18px;
}

.limar-search-card-type {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 4px 9px;
    border: 1px solid var(--limar-search-type-border);
    color: var(--limar-search-type-text);
    background: transparent;
    font-size: 10px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: .09em;
    text-transform: uppercase;
    white-space: nowrap;
}

.limar-search-card-more {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-left: auto;
    padding-right: 24px;
    color: var(--limar-search-cta-text);
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.limar-search-card-more > span {
    display: none;
}

.limar-search-card-more::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 2px;
    width: 10px;
    height: 10px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
    transition: transform .35s cubic-bezier(.16,1,.3,1);
}

.limar-search-card-link:hover {
    transform: translateY(-3px);
    background: var(--limar-search-card-hover-bg);
    border-color: rgba(0,0,0,.10);
    box-shadow: 0 15px 40px rgba(0,0,0,.045);
}

.limar-search-card-link:hover .limar-search-card-image img {
    transform: scale(1.045);
}

.limar-search-card-link:hover .limar-search-card-more::before {
    transform: translate(4px, -50%) rotate(45deg);
}

.limar-search-pagination {
    margin-top: 54px;
    display: flex;
    justify-content: center;
}

.limar-search-page-list {
    list-style: none;
    display: flex;
    gap: 7px;
    margin: 0;
    padding: 0;
}

.limar-search-page-link {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0,0,0,.10);
    text-decoration: none;
    color: var(--limar-search-pagination-text);
    font-size: 11px;
    transition: .3s ease;
}

.limar-search-page-current,
.limar-search-page-link:not(span):hover {
    background: var(--limar-search-pagination-active-bg);
    border-color: var(--limar-search-pagination-active-bg);
    color: var(--limar-search-pagination-active-text);
}

.limar-search-page-dots {
    border-color: transparent;
}

.limar-search-empty {
    padding: 80px 0;
    text-align: center;
}

.limar-search-pagination-mobile {
    display: none;
}

@media (max-width: 1024px) {
    .limar-search-hero {
        height: 42vh;
    }
}

@media (max-width: 767px) {
    .limar-search-hero {
        height: 35vh;
        min-height: 320px;
    }

    .limar-search-hero h1 {
        font-size: clamp(35px, 8vw, 62px);
        line-height: 1.06;
    }

    .limar-search-list {
        display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .limar-search-card-item {
        min-width: 0;
        height: 100%;
    }

    .limar-search-card-link {
        display: flex;
        flex-direction: column;
        min-height: 100%;
    }

    .limar-search-card-image {
        width: 100%;
        aspect-ratio: 16 / 9;
        align-self: stretch;
        margin: 0;
    }

    .limar-search-card-content {
        flex: 1;
        padding: 22px 20px 20px;
        display: flex;
        flex-direction: column;
    }

    .limar-search-card-content h2 {
        order: 1;
        margin-top: 0;
    }

    .limar-search-card-excerpt {
        order: 2;
        margin-top: 12px;
    }

    .limar-search-card-content time {
        order: 3;
        margin-top: 18px;
        margin-bottom: 0;
        text-align: left;
        font-weight: 600;
    }

    .limar-search-card-footer {
        order: 4;
        margin-top: 14px;
        padding-top: 0;
        gap: 12px;
        flex-wrap: wrap;
    }

    .limar-search-card-type {
        min-height: 25px;
        padding: 4px 8px;
        font-size: 9px;
    }

    .limar-search-card-more {
        margin-left: auto;
        font-size: 10px;
        white-space: normal;
        text-align: right;
    }

    .limar-search-pagination-desktop {
        display: none;
    }

    .limar-search-pagination-mobile {
        display: flex;
    }
}

@media (min-width: 768px) {
    .limar-search-pagination-desktop {
        display: flex;
    }

    .limar-search-pagination-mobile {
        display: none;
    }
}

@media (max-width: 425px) {
    .limar-search-hero h1 {
        font-size: 35px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .limar-search-hero::before {
        transition: none;
        transform: none;
    }
}

/* ========================================
   UHD / 4K OPTIMALIZÁLÁS
======================================== */
@media (min-width: 2200px) {
    .news-hero .news-shell,
    .standard-page-hero .standard-page-shell {
        width: min(2100px, 90vw);
    }

    .site-header {
        height: 88px;
        padding-left: 5vw;
        padding-right: 5vw;
        gap: clamp(48px, 1.8vw, 72px);
    }

    .site-header.scrolled {
        height: 78px;
    }

    .brand {
        width: 190px;
    }

    .brand-logo-stack,
    .brand-logo {
        height: 48px;
    }

    .main-nav {
        gap: clamp(32px, 1.15vw, 46px);
    }

    .site-header .main-nav a,
    .site-header .main-nav-list a,
    .site-header.scrolled .main-nav a,
    .site-header.scrolled .main-nav-list a {
        font-size: 14px;
    }

    .header-actions svg {
        width: 27px;
        height: 27px;
    }

    .search-popover {
        width: 500px;
        height: 66px;
        top: 94px;
        font-size: 16px;
    }

    .hero-copy {
        left: 8vw;
        width: 620px;
    }

    .hero h1 {
        font-size: clamp(78px, 2.55vw, 98px);
    }

    .hero-copy > p:not(.eyebrow) {
        max-width: 470px;
        font-size: 17px;
    }

    .eyebrow {
        font-size: 11px;
    }

    .btn-outline {
        padding: 17px 22px;
        font-size: 11px;
    }

    .brand-item {
        width: 320px;
        flex-basis: 320px;
        font-size: 24px;
    }

    .brand-item img {
        max-width: 190px;
        max-height: 44px;
    }

    .section {
        padding: 118px 6vw 128px;
    }

    .section-head {
        margin-bottom: 34px;
    }

    .section-head h2 {
        font-size: 34px;
    }

    .section-head a {
        font-size: 13px;
    }

    .product-grid {
        gap: 28px;
    }

    .product-image {
        height: clamp(260px, 8vw, 320px);
    }

    .product-meta {
        padding: 23px 20px 27px;
    }

    .product-meta h3,
    .product-meta p,
    .product-meta strong {
        font-size: 16px;
    }

    .feature-banners,
    .feature-banner {
        height: 500px;
    }

    .feature-banner-content {
        left: 48px;
        bottom: 58px;
        width: 330px;
    }

    .feature-banner h2 {
        font-size: 34px;
    }

    .feature-banner p {
        max-width: 290px;
        font-size: 15px;
    }

    .feature-banner-link {
        font-size: 13px;
    }

    .service-strip {
        padding: 72px 5.5vw;
    }

    .service {
        gap: 22px;
        padding: 10px 30px;
    }

    .service > span {
        font-size: 36px;
    }

    .service b {
        font-size: 18px;
    }

    .service p {
        font-size: 15px;
    }

    .news-shell,
    .news-article-shell,
    .standard-page-shell,
    .limar-search-shell {
        width: min(1680px, 84vw);
    }

    .news-hero h1,
    .limar-search-hero h1 {
        font-size: 86px;
    }

    .news-hero-copy {
        max-width: 820px;
        font-size: 17px;
    }

    .news-list-link,
    .limar-search-card-link {
        grid-template-columns: minmax(340px, 31%) 1fr;
        min-height: 275px;
    }

    .news-list-image,
    .limar-search-card-image {
        margin: 16px 0 16px 16px;
    }

    .news-list-content,
    .limar-search-card-content {
        padding-top: 36px;
        padding-bottom: 32px;
        padding-left: 44px;
    }

    .news-list-content h2,
    .limar-search-card-content h2 {
        font-size: 28px;
    }

    .news-list-content time,
    .limar-search-card-content time {
        font-size: 14px;
    }

    .news-list-excerpt,
    .limar-search-card-excerpt {
        font-size: 17px;
    }

    .news-article-hero h1,
    .standard-page-hero h1 {
        max-width: 1260px;
        font-size: 70px;
    }

    .news-article-content,
    .standard-page-content {
        width: min(1080px, 100%);
        font-size: 18px;
    }

    .breadcrumbs,
    .product-hero-grid,
    .tabs,
    .tab-panel {
        max-width: min(2800px, 88vw);
    }

    .breadcrumbs {
        font-size: 15px;
        gap: 16px;
    }

    .product-hero-grid {
        grid-template-columns: minmax(0, clamp(760px, 27vw, 1050px)) minmax(680px, 1fr);
        gap: clamp(80px, 4vw, 150px);
    }

    .gallery {
        max-width: 1050px;
    }

    .main-gallery-image {
        width: clamp(760px, 27vw, 1050px);
    }

    .thumbs-viewport {
        max-width: 760px;
    }

    .thumb {
        flex-basis: 108px;
        width: 108px;
        height: 108px;
    }

    .thumbs-nav {
        width: 36px;
        flex-basis: 36px;
        height: 108px;
        font-size: 30px;
    }

    .product-info {
        padding-top: 12px;
        max-width: 980px;
    }

    .product-info h1 {
        font-size: clamp(46px, 1.55vw, 60px);
        margin-top: 14px;
    }

    .product-info .intro {
        font-size: clamp(15px, .46vw, 18px);
        max-width: 900px;
    }

    .price {
        font-size: clamp(36px, 1.15vw, 44px);
    }

    .tax {
        font-size: 12px;
    }

    .stock {
        font-size: 13px;
    }

    .demo-actions {
        grid-template-columns: 130px minmax(0, 1fr);
        gap: 16px;
    }

    .demo-actions > * {
        height: 58px;
    }

    .limar-product-quantity input.qty {
        font-size: 14px;
    }

    .limar-qty-button {
        font-size: 19px !important;
    }

    .demo-actions button {
        font-size: 11px;
    }

    .product-benefits {
        gap: 18px;
        padding-top: 34px;
    }

    .product-benefits div {
        font-size: 12px;
    }

    .product-benefits b {
        font-size: 24px;
    }

    .product-benefits small {
        font-size: 10px;
    }

    .product-footer-strip {
        padding: 36px 5vw;
    }

    .product-footer-strip b {
        font-size: 28px;
    }

    .product-footer-strip span {
        font-size: 12px;
    }

    .product-footer-strip small {
        font-size: 10px;
    }

    .tabs {
        height: 76px;
        gap: 64px;
    }

    .tab {
        font-size: 15px;
    }

    .tab-panel {
        padding-top: 32px;
        padding-bottom: 58px;
        font-size: 18px;
    }

    .tab-panel > div {
        max-width: none;
    }

    .tab-panel h2 {
        font-size: 32px;
    }

    .related .product-image {
        height: 260px;
    }
}

/* ========================================
   SZÖVEGES TARTALMAK - VÁLASZTHATÓ FELSOROLÁSJEL
======================================== */
.standard-page-content ul,
.news-article-content ul,
.product-info .intro ul,
.product-tabs-wrap .tab-panel ul {
    list-style: none;
    padding-left: 10px;
}

.standard-page-content ul > li,
.news-article-content ul > li,
.product-info .intro ul > li,
.product-tabs-wrap .tab-panel ul > li {
    position: relative;
    padding-left: 15px;
    line-height: 1.8;
}

.standard-page-content ul > li::before,
.news-article-content ul > li::before,
.product-info .intro ul > li::before,
.product-tabs-wrap .tab-panel ul > li::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 12px;
    height: 1.8em;
    display: flex;
    align-items: center;
    justify-content: center;
    color: currentColor;
    font-size: 14px;
    line-height: 1;
}

body.limar-list-marker-hyphen .standard-page-content ul > li::before,
body.limar-list-marker-hyphen .news-article-content ul > li::before,
body.limar-list-marker-hyphen .product-info .intro ul > li::before,
body.limar-list-marker-hyphen .product-tabs-wrap .tab-panel ul > li::before {
    content: "-";
    font-size: 1em;
    top: 0.9em;
    height: auto;
    transform: translateY(-50%);
}

body.limar-list-marker-disc .standard-page-content ul > li::before,
body.limar-list-marker-disc .news-article-content ul > li::before,
body.limar-list-marker-disc .product-info .intro ul > li::before,
body.limar-list-marker-disc .product-tabs-wrap .tab-panel ul > li::before {
    content: "•";
    font-size: 13px;
    top: 0.9em;
    height: auto;
    transform: translateY(-50%);
}

body.limar-list-marker-favicon .standard-page-content ul > li::before,
body.limar-list-marker-favicon .news-article-content ul > li::before,
body.limar-list-marker-favicon .product-info .intro ul > li::before,
body.limar-list-marker-favicon .product-tabs-wrap .tab-panel ul > li::before {
    content: "";
    top: calc((1.8em - 12px) / 2);
    height: 12px;
    background-image: var(--limar-list-marker-image);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

body.limar-list-marker-none .standard-page-content ul > li,
body.limar-list-marker-none .news-article-content ul > li,
body.limar-list-marker-none .product-info .intro ul > li,
body.limar-list-marker-none .product-tabs-wrap .tab-panel ul > li {
    padding-left: 0;
}

body.limar-list-marker-none .standard-page-content ul > li::before,
body.limar-list-marker-none .news-article-content ul > li::before,
body.limar-list-marker-none .product-info .intro ul > li::before,
body.limar-list-marker-none .product-tabs-wrap .tab-panel ul > li::before {
    content: none;
}

.product-info .intro {
    font-size: 13px;
    line-height: 1.8;
}

.product-tabs-wrap .tab-panel {
    font-size: 16px;
    line-height: 1.8;
}

.product-tabs-wrap .tab-panel p {
    font-size: inherit;
    line-height: inherit;
}

.standard-page-content,
.news-article-content {
    font-size: 16px;
    line-height: 1.8;
}

.standard-page-content p,
.news-article-content p {
    font-size: inherit;
    line-height: inherit;
}

/* ========================================
   TRUE 4K / UHD FINOMHANGOLAS
======================================== */
@media (min-width: 2200px) and (max-width: 3199px) {
    
    .product-info .intro {
        font-size: 17px;
        line-height: 1.8;
    }

    .product-info .price,
    .product-info .price .woocommerce-Price-amount,
    .product-info .price .woocommerce-Price-amount.amount,
    .product-info .price .woocommerce-Price-amount bdi,
    .product-info .price .woocommerce-Price-currencySymbol {
        font-size: 42px !important;
        line-height: 1 !important;
    }

    .product-tabs-wrap .tab-panel,
    .product-tabs-wrap .tab-panel p {
        font-size: 18px;
        line-height: 1.8;
    }
}

@media (min-width: 3200px) {
    .news-hero .news-shell,
    .standard-page-hero .standard-page-shell {
        width: min(2800px, 88vw);
    }

    .site-header {
        height: 108px;
        padding-left: 6vw;
        padding-right: 6vw;
        gap: 72px;
    }

    .site-header.scrolled {
        height: 94px;
    }

    .brand {
        width: 225px;
    }

    .brand-logo-stack,
    .brand-logo {
        height: 56px;
    }

    .main-nav {
        gap: 48px;
    }

    .site-header .main-nav a,
    .site-header .main-nav-list a,
    .site-header.scrolled .main-nav a,
    .site-header.scrolled .main-nav-list a {
        font-size: 17px;
    }

    .header-actions {
        gap: 20px;
    }

    .header-actions svg {
        width: 32px;
        height: 32px;
    }

    .search-popover {
        width: 600px;
        height: 74px;
        top: 116px;
        font-size: 19px;
        padding-left: 22px;
        padding-right: 22px;
    }

    .hero-copy {
        left: 9vw;
        width: 820px;
    }

    .hero h1 {
        font-size: clamp(104px, 3vw, 122px);
    }

    .hero-copy > p:not(.eyebrow) {
        max-width: 660px;
        font-size: 22px;
        line-height: 1.75;
    }

    .eyebrow {
        font-size: 14px;
    }

    .btn-outline {
        padding: 20px 28px;
        font-size: 14px;
    }

    .brand-item {
        width: 390px;
        flex-basis: 390px;
        font-size: 28px;
    }

    .brand-item img {
        max-width: 235px;
        max-height: 54px;
    }

    .section {
        padding: 145px 7vw 155px;
    }

    .section-head {
        margin-bottom: 44px;
    }

    .section-head h2 {
        font-size: 44px;
    }

    .section-head a {
        font-size: 16px;
    }

    .product-grid {
        gap: 34px;
    }

    .product-image {
        height: clamp(340px, 9vw, 390px);
    }

    .product-meta {
        padding: 28px 25px 32px;
    }

    .product-meta h3,
    .product-meta p,
    .product-meta strong {
        font-size: 20px;
    }

    .feature-banners,
    .feature-banner {
        height: 620px;
    }

    .feature-banner-content {
        left: 62px;
        bottom: 70px;
        width: 430px;
    }

    .feature-banner h2 {
        font-size: 44px;
    }

    .feature-banner p {
        max-width: 390px;
        font-size: 19px;
        line-height: 1.7;
    }

    .feature-banner-link {
        font-size: 16px;
    }

    .service-strip {
        padding: 86px 6vw;
    }

    .service {
        gap: 26px;
        padding: 12px 38px;
    }

    .service > span {
        font-size: 44px;
    }

    .service b {
        font-size: 22px;
    }

    .service p {
        font-size: 18px;
    }

    .news-shell,
    .limar-search-shell {
        width: min(2480px, 82vw);
    }

    .news-hero h1,
    .limar-search-hero h1 {
        font-size: 108px;
    }

    .news-hero-copy {
        max-width: 1100px;
        font-size: 22px;
    }

    .news-list-link,
    .limar-search-card-link {
        grid-template-columns: minmax(480px, 32%) 1fr;
        min-height: 360px;
    }

    .news-list-image,
    .limar-search-card-image {
        margin: 22px 0 22px 22px;
    }

    .news-list-content,
    .limar-search-card-content {
        padding: 50px 58px 44px 58px;
    }

    .news-list-content h2,
    .limar-search-card-content h2 {
        font-size: 38px;
    }

    .news-list-content time,
    .limar-search-card-content time {
        font-size: 18px;
    }

    .news-list-excerpt,
    .limar-search-card-excerpt {
        font-size: 22px;
        line-height: 1.7;
    }

    .news-article-shell,
    .standard-page-shell {
        width: min(2480px, 82vw);
    }

    .news-article-hero h1,
    .standard-page-hero h1 {
        max-width: 1800px;
        font-size: 96px;
    }

    .news-article-content,
    .standard-page-content,
    .news-article-content p,
    .standard-page-content p {
        width: min(1560px, 100%);
        font-size: 28px;
        line-height: 1.8;
    }

    .product-main {
        padding-top: 52px;
    }

    .breadcrumbs {
        max-width: 2480px;
        padding: 46px 0 24px;
        gap: 20px;
        font-size: 17px;
    }

    .product-hero-grid {
        max-width: 2480px;
        grid-template-columns: minmax(0, 1080px) minmax(0, 1120px);
        gap: 160px;
        padding: 22px 0 54px;
        min-height: min(78vh, 1680px);
        align-items: start;
        align-content: start;
    }

    .gallery {
        width: 100%;
        max-width: 1080px;
        gap: 20px;
    }

    .main-gallery-image {
        width: 1080px;
        max-width: 100%;
    }

    .thumbs-carousel {
        gap: 12px;
    }

    .thumbs-viewport {
        max-width: 850px;
    }

    .thumb {
        flex-basis: 122px;
        width: 122px;
        height: 122px;
    }

    .thumbs-nav {
        width: 42px;
        flex-basis: 42px;
        height: 122px;
        font-size: 34px;
    }

    .zoom-cue {
        left: 22px;
        bottom: 22px;
        padding: 11px 12px;
        font-size: 16px;
    }

    .product-info {
        width: 100%;
        max-width: 1120px;
        padding-top: 10px;
    }

    .product-info h1 {
        font-size: clamp(68px, 1.95vw, 76px);
        margin: 18px 0 8px;
        line-height: 1.08;
    }

    .product-info .price,
    .product-info .price .woocommerce-Price-amount,
    .product-info .price .woocommerce-Price-amount.amount,
    .product-info .price .woocommerce-Price-amount bdi,
    .product-info .price .woocommerce-Price-currencySymbol {
        font-size: 56px !important;
        line-height: 1 !important;
        vertical-align: baseline !important;
    }

    .product-info .price {
        margin-top: 38px;
    }

    .tax {
        margin-top: 10px;
        font-size: 16px;
    }

    .product-info .intro {
        max-width: 1080px;
        margin: 32px 0;
        font-size: 22px;
        line-height: 1.8;
    }

    .product-info .intro ul > li {
        padding-left: 20px;
    }

    .product-info .intro ul > li::before {
        width: 16px;
    }

    .stock {
        margin: 32px 0 28px;
        font-size: 17px;
    }

    .stock i {
        width: 11px;
        height: 11px;
        margin-right: 10px;
    }

    .demo-actions {
        grid-template-columns: 170px minmax(0, 1fr);
        gap: 20px;
        margin: 34px 0 38px;
    }

    .demo-actions > * {
        height: 72px;
    }

    .limar-product-quantity {
        grid-template-columns: 52px minmax(58px, 1fr) 52px;
    }

    .limar-product-quantity input.qty {
        font-size: 18px;
    }

    .limar-qty-button {
        font-size: 24px !important;
    }

    .demo-actions button,
    .limar-cart-button {
        font-size: 15px;
        letter-spacing: .11em;
    }

    .product-benefits {
        gap: 30px;
        padding-top: 46px;
    }

    .product-benefits div {
        gap: 12px;
        font-size: 16px;
    }

    .product-benefits b {
        font-size: 31px;
    }

    .product-benefits small {
        margin-top: 6px;
        font-size: 13px;
    }

    .product-footer-strip {
        padding: 42px 6vw;
    }

    .product-footer-strip > div {
        gap: 18px;
    }

    .product-footer-strip b {
        font-size: 34px;
    }

    .product-footer-strip span {
        font-size: 16px;
    }

    .product-footer-strip small {
        margin-top: 6px;
        font-size: 12px;
    }

    .tabs,
    .tab-panel {
        max-width: 2480px;
    }

    .tab-panel > div {
        max-width: none;
    }

    .tabs {
        height: 92px;
        gap: 78px;
        padding-left: 0;
        padding-right: 0;
    }

    .tab {
        font-size: 18px;
    }

    .product-tabs-wrap .tab-panel,
    .product-tabs-wrap .tab-panel p {
        font-size: 26px;
        line-height: 1.8;
    }

    .tab-panel {
        padding: 44px 0 74px;
    }


    .tab-panel h2 {
        font-size: 46px;
    }

    .tab-panel p {
        max-width: none;
    }

    .related .product-image {
        height: 340px;
    }
}

/* ========================================
   PRODUCT HERO LAYOUT REFINEMENT
======================================== */
@media (min-width:901px) {
    .product-hero-grid {
        align-items:stretch;
    }

    .product-info {
        display:flex;
        flex-direction:column;
        align-self:stretch;
        height:100%;
        min-width:0;
    }

    .product-info-top,
    .product-info-bottom {
        width:100%;
        min-width:0;
    }

    .product-info-bottom {
        margin-top:auto;
        padding-top:clamp(28px, 2.1vw, 56px);
    }

    .product-info-bottom .demo-actions,
    .product-info-bottom .limar-product-native-cart,
    .product-info-bottom .limar-product-native-cart .cart {
        width:100%;
        max-width:100%;
        min-width:0;
    }

    .product-info-bottom .demo-actions,
    .product-info-bottom .limar-product-native-cart .cart {
        margin-top:0;
    }

    .demo-actions > *,
    .limar-cart-button,
    .single_add_to_cart_button {
        min-width:0;
        max-width:100%;
        box-sizing:border-box;
    }

    .limar-cart-button,
    .demo-actions .limar-cart-button {
        width:100%;
    }
}

@media (min-width:2200px) and (max-width:3199px) {
    .product-hero-grid {
        width:min(2300px, 88vw);
        max-width:2300px;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        gap:clamp(80px, 4vw, 120px);
    }

    .gallery {
        width:100%;
        max-width:920px;
        justify-self:end;
    }

    .main-gallery-image {
        width:100%;
        max-width:920px;
    }

    .product-info {
        width:100%;
        max-width:920px;
        justify-self:start;
    }
}

@media (min-width:3200px) {
    .breadcrumbs {
        width:min(2800px, 88vw);
        max-width:2800px;
    }

    .product-hero-grid {
        width:min(2800px, 88vw);
        max-width:2800px;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        gap:180px;
    }

    .gallery {
        width:100%;
        max-width:1180px;
        justify-self:end;
    }

    .main-gallery-image {
        width:1180px;
        max-width:100%;
    }

    .thumbs-viewport {
        max-width:930px;
    }

    .thumb {
        flex-basis:132px;
        width:132px;
        height:132px;
    }

    .thumbs-nav {
        width:44px;
        flex-basis:44px;
        height:132px;
        font-size:36px;
    }

    .product-info {
        width:100%;
        max-width:1180px;
        justify-self:start;
    }

    .product-info-bottom {
        padding-top:56px;
    }
}

/* ========================================
   TERMÉKEK / WOOCOMMERCE TERMÉKARCHÍVUM
======================================== */
.limar-shop-page {
    background: var(--limar-shop-page-bg);
    color: var(--limar-shop-page-text);
}

.limar-shop-shell {
    width: min(1440px, 90vw);
    margin: 0 auto;
}

.limar-shop-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    height: 50vh;
    padding: 220px 0 130px;
    color: var(--limar-shop-hero-text);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.limar-shop-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image:
        linear-gradient(90deg, rgba(18,18,16,.72) 0%, rgba(18,18,16,.54) 52%, rgba(18,18,16,.38) 100%),
        var(--limar-shop-hero-image, url("../images/limar_base_hero_img.jpg"));
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    transform: scale(1);
    transition: transform 3.2s cubic-bezier(.16,1,.3,1);
    will-change: transform;
}

.limar-shop-hero:hover::before {
    transform: scale(1.075);
}

.limar-shop-hero > * {
    position: relative;
    z-index: 1;
}

.limar-shop-kicker {
    margin: 0 0 16px;
    font-size: 10px;
    line-height: 1.2;
    letter-spacing: .16em;
    font-weight: 600;
    color: var(--limar-shop-hero-muted);
}

.limar-shop-hero h1 {
    max-width: 860px;
    margin: 0;
    font-family: var(--font-news-heading) !important;
    font-weight: var(--font-news-heading-weight) !important;
    font-style: var(--font-news-heading-style) !important;
    font-synthesis: none;
    font-size: 66px;
    line-height: 1.06;
    color: var(--limar-shop-hero-text);
    text-shadow: 0 2px 20px rgba(0,0,0,.18);
}

.limar-shop-hero-copy {
    max-width: 680px;
    margin: 24px 0 0;
    font-size: 14px;
    line-height: 1.8;
    color: var(--limar-shop-hero-muted);
}

.limar-shop-catalog-section {
    padding: 58px 0 96px;
}

.limar-shop-filter-panel {
    margin-bottom: 34px;
}

.limar-shop-category-desktop,
.limar-shop-subcategory-desktop {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.limar-shop-subcategory-desktop {
    margin-top: 13px;
    padding-top: 13px;
    border-top: 1px solid color-mix(in srgb, var(--limar-shop-filter-border) 55%, transparent);
}

.limar-shop-category-pill,
.limar-shop-subcategory-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 39px;
    padding: 9px 15px;
    border: 1px solid var(--limar-shop-filter-border);
    color: var(--limar-shop-filter-text);
    text-decoration: none;
    font-size: 11px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: .07em;
    text-transform: uppercase;
    transition: background-color .3s ease, color .3s ease, border-color .3s ease, transform .3s ease;
}

.limar-shop-subcategory-pill {
    min-height: 34px;
    padding: 7px 12px;
    font-size: 10px;
    font-weight: 500;
}

.limar-shop-category-pill:hover,
.limar-shop-subcategory-pill:hover {
    transform: translateY(-1px);
}

.limar-shop-category-pill.is-active,
.limar-shop-subcategory-pill.is-active {
    background: var(--limar-shop-filter-active-bg);
    border-color: var(--limar-shop-filter-active-bg);
    color: var(--limar-shop-filter-active-text);
}

.limar-shop-brand-filter {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid color-mix(in srgb, var(--limar-shop-filter-border) 55%, transparent);
}

.limar-shop-brand-desktop {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.limar-shop-brand-pill,
.limar-shop-brand-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 12px;
    border: 1px solid var(--limar-shop-filter-border);
    background: transparent;
    color: var(--limar-shop-filter-text);
    font: 500 10px/1.2 Inter, Arial, sans-serif;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: background-color .3s ease, color .3s ease, border-color .3s ease, transform .3s ease;
}

.limar-shop-brand-pill:hover,
.limar-shop-brand-toggle:hover {
    transform: translateY(-1px);
}

.limar-shop-brand-pill.is-active {
    background: var(--limar-shop-filter-active-bg);
    border-color: var(--limar-shop-filter-active-bg);
    color: var(--limar-shop-filter-active-text);
}

.limar-shop-brand-pill.is-extra {
    display: none;
}

.limar-shop-brand-desktop.is-expanded .limar-shop-brand-pill.is-extra {
    display: inline-flex;
}

.limar-shop-brand-toggle {
    border-style: dashed;
}

.limar-shop-brand-mobile {
    display: none;
}

.limar-shop-category-mobile {
    display: none;
}

.limar-shop-toolbar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid color-mix(in srgb, var(--limar-shop-filter-border) 55%, transparent);
}

.limar-shop-result-count {
    margin: 0;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: .04em;
    color: var(--limar-shop-brand-text);
}

.limar-shop-sort-form {
    margin: 0;
}

.limar-shop-sort-form label {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    color: var(--limar-shop-filter-text);
    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: .10em;
    text-transform: uppercase;
}

.limar-shop-category-mobile,
.limar-shop-brand-mobile {
    align-items: center;
    gap: 12px;
    margin: 0;
    color: var(--limar-shop-filter-text);
    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: .10em;
    text-transform: uppercase;
}

.limar-shop-sort-form select,
.limar-shop-category-mobile select,
.limar-shop-brand-mobile select {
    min-width: 235px;
    height: 42px;
    padding: 0 38px 0 13px;
    border: 1px solid var(--limar-shop-filter-border);
    border-radius: 0;
    background-color: transparent;
    color: var(--limar-shop-filter-text);
    font: 500 12px/1.2 Inter, Arial, sans-serif;
    cursor: pointer;
    outline: none;
}

.limar-shop-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.limar-shop-card {
    min-width: 0;
    height: 100%;
    margin: 0;
}

.limar-shop-card-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 100%;
    overflow: hidden;
    border: 1px solid var(--limar-shop-card-border);
    background: var(--limar-shop-card-bg);
    color: inherit;
    text-decoration: none;
    transition:
        transform .5s cubic-bezier(.16,1,.3,1),
        background-color .4s ease,
        border-color .4s ease,
        box-shadow .5s ease;
}

.limar-shop-card-image {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--limar-shop-card-bg);
}

.limar-shop-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    padding: 0;
    transform: scale(1.001);
    transition: transform 3.2s cubic-bezier(.16,1,.3,1);
}

.limar-shop-card-content {
    flex: 1;
    min-width: 0;
    padding: 24px 24px 22px;
    display: flex;
    flex-direction: column;
}

.limar-shop-card-brand {
    margin: 0 0 9px;
    color: var(--limar-shop-brand-text);
    font-size: 10px;
    line-height: 1.3;
    font-weight: 600;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.limar-shop-card-content h2 {
    margin: 0;
    font-family: Inter, Arial, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-synthesis: none;
    font-size: 16px;
    line-height: 1.35;
}

.limar-shop-card-excerpt {
    margin: 9px 0 0;
    color: var(--limar-shop-brand-text);
    font-family: Inter, Arial, sans-serif;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 400;
}

.limar-shop-card-price {
    margin-top: 16px;
    color: var(--limar-shop-price-text);
    font-size: 18px;
    line-height: 1.2;
    font-weight: 500;
}

.limar-shop-card-price del {
    margin-right: 6px;
    opacity: .5;
    font-size: .82em;
}

.limar-shop-card-price ins {
    text-decoration: none;
}

.limar-shop-card-more {
    position: relative;
    display: inline-flex;
    align-items: center;
    align-self: flex-end;
    margin-top: auto;
    padding: 24px 24px 0 0;
    color: var(--limar-shop-page-text);
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.limar-shop-card-more > span {
    display: none;
}

.limar-shop-card-more::before {
    content: "";
    position: absolute;
    top: calc(50% + 12px);
    right: 2px;
    width: 10px;
    height: 10px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
    transition: transform .35s cubic-bezier(.16,1,.3,1);
}

.limar-shop-card-link:hover {
    transform: translateY(-4px);
    background: var(--limar-shop-card-hover-bg);
    border-color: color-mix(in srgb, var(--limar-shop-card-border) 65%, #000);
    box-shadow: 0 18px 42px rgba(0,0,0,.05);
}

.limar-shop-card-link:hover .limar-shop-card-image img {
    transform: scale(1.045);
}

.limar-shop-card-link:hover .limar-shop-card-more::before {
    transform: translate(4px, -50%) rotate(45deg);
}

.limar-shop-pagination {
    margin-top: 58px;
    display: flex;
    justify-content: center;
}

.limar-shop-page-list {
    list-style: none;
    display: flex;
    gap: 7px;
    margin: 0;
    padding: 0;
}

.limar-shop-page-link {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid color-mix(in srgb, var(--limar-shop-pagination-text) 12%, transparent);
    color: var(--limar-shop-pagination-text);
    text-decoration: none;
    font-size: 11px;
    transition: .3s ease;
}

.limar-shop-page-current,
.limar-shop-page-link:not(span):hover {
    background: var(--limar-shop-pagination-active-bg);
    border-color: var(--limar-shop-pagination-active-bg);
    color: var(--limar-shop-pagination-active-text);
}

.limar-shop-page-dots {
    border-color: transparent;
}

.limar-shop-pagination-mobile {
    display: none;
}

.limar-shop-empty {
    padding: 90px 0;
    text-align: center;
}

.limar-shop-empty h2 {
    margin: 0 0 14px;
}

.limar-shop-empty p {
    margin: 0;
    color: var(--limar-shop-brand-text);
}

@media (max-width: 1024px) {
    .limar-shop-hero {
        height: 42vh;
        padding: 180px 0 100px;
    }

    .limar-shop-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .limar-shop-card-content {
        padding: 22px 21px 20px;
    }
}

@media (max-width: 767px) {
    .limar-shop-shell {
        width: min(92vw, 680px);
    }

    .limar-shop-hero {
        height: 35vh;
        min-height: 320px;
        padding: 145px 0 70px;
    }

    .limar-shop-hero h1 {
        font-size: clamp(35px, 8vw, 62px);
        line-height: 1.06;
    }

    .limar-shop-hero-copy {
        margin-top: 18px;
        font-size: 13px;
    }

    .limar-shop-catalog-section {
        padding: 42px 0 72px;
    }

    .limar-shop-category-desktop,
    .limar-shop-subcategory-desktop,
    .limar-shop-brand-desktop {
        display: none;
    }

    .limar-shop-category-mobile,
    .limar-shop-brand-mobile {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }

    .limar-shop-brand-filter {
        margin-top: 14px;
        padding-top: 14px;
    }

    .limar-shop-category-mobile select,
    .limar-shop-brand-mobile select,
    .limar-shop-sort-form select {
        width: 100%;
        min-width: 0;
    }

    .limar-shop-toolbar {
        align-items: stretch;
        flex-direction: column-reverse;
        gap: 14px;
        margin-top: 16px;
        padding-top: 16px;
    }

    .limar-shop-sort-form label {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }

    .limar-shop-result-count {
        text-align: right;
    }

    .limar-shop-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .limar-shop-card-content {
        padding: 22px 20px 20px;
    }

    .limar-shop-card-content h2 {
        font-size: 16px;
    }

    .limar-shop-card-excerpt {
        font-size: 13px;
    }

    .limar-shop-card-price {
        font-size: 17px;
    }

    .limar-shop-card-more {
        padding-top: 20px;
    }

    .limar-shop-pagination-desktop {
        display: none;
    }

    .limar-shop-pagination-mobile {
        display: flex;
    }
}

@media (max-width: 425px) {
    .limar-shop-hero h1 {
        font-size: 35px;
    }

    .limar-shop-card-brand {
        font-size: 9px;
    }

    .limar-shop-card-content h2 {
        font-size: 16px;
    }

    .limar-shop-card-excerpt {
        font-size: 13px;
    }
}

@media (min-width: 768px) {
    .limar-shop-pagination-desktop {
        display: flex;
    }

    .limar-shop-pagination-mobile {
        display: none;
    }
}

@media (min-width: 2200px) {
    .limar-shop-shell {
        width: min(2100px, 90vw);
    }

    .limar-shop-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 30px;
    }

    .limar-shop-card-content {
        padding: 30px 30px 27px;
    }

    .limar-shop-card-content h2 {
        font-size: 19px;
    }

    .limar-shop-card-excerpt {
        font-size: 16px;
    }

    .limar-shop-card-brand {
        font-size: 12px;
    }

    .limar-shop-card-price {
        font-size: 22px;
    }
}

@media (min-width: 3200px) {
    .limar-shop-shell {
        width: min(2800px, 88vw);
    }

    .limar-shop-hero h1 {
        font-size: 78px;
    }

    .limar-shop-hero-copy {
        max-width: 850px;
        font-size: 18px;
    }

    .limar-shop-category-pill {
        min-height: 46px;
        padding: 11px 19px;
        font-size: 13px;
    }

    .limar-shop-subcategory-pill {
        min-height: 40px;
        font-size: 12px;
    }

    .limar-shop-brand-pill,
    .limar-shop-brand-toggle {
        min-height: 40px;
        padding: 9px 15px;
        font-size: 12px;
    }

    .limar-shop-sort-form select {
        min-width: 300px;
        height: 50px;
        font-size: 14px;
    }

    .limar-shop-card-content {
        padding: 34px 34px 31px;
    }

    .limar-shop-card-content h2 {
        font-size: 23px;
    }

    .limar-shop-card-excerpt {
        font-size: 20px;
    }

    .limar-shop-card-brand {
        font-size: 13px;
    }

    .limar-shop-card-price {
        font-size: 25px;
    }

    .limar-shop-card-more {
        font-size: 13px;
    }
}

/* ========================================
   ERROR PAGES
======================================== */
.limar-error-page {
    background: var(--limar-black-soft);
}

.limar-error-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    isolation: isolate;
    padding: 120px 6vw 80px;
    color: var(--limar-white);
    text-align: center;
    background-image: var(--limar-error-image, url("../images/limar_blank_base_img.png"));
    background-position: center;
    background-size: cover;
}

.limar-error-overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(180deg, rgba(12,14,13,.36), rgba(12,14,13,.64));
}

.limar-error-content {
    width: min(880px, 92vw);
}

.limar-error-kicker {
    margin: 0 0 18px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .16em;
}

.limar-error-content h1 {
    margin: 0;
    font-family: var(--font-display);
    font-size: clamp(54px, 6vw, 96px);
    font-weight: var(--font-display-weight);
    font-style: var(--font-display-style);
    line-height: 1;
}

.limar-error-content h2 {
    max-width: 760px;
    margin: 24px auto 0;
    font-size: clamp(18px, 1.7vw, 28px);
    font-weight: 400;
    line-height: 1.45;
}

.limar-error-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    margin-top: 36px;
    padding: 0 24px;
    border: 1px solid rgba(255,255,255,.7);
    color: var(--limar-white);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-decoration: none;
    transition: background-color .35s ease, color .35s ease, border-color .35s ease;
}

.limar-error-button:hover {
    border-color: var(--limar-white);
    background: var(--limar-white);
    color: var(--limar-black-soft);
}

@media (max-width: 767px) {
    .limar-error-hero {
        padding: 110px 7vw 70px;
    }

    .limar-error-content h1 {
        font-size: clamp(46px, 14vw, 70px);
    }

    .limar-error-content h2 {
        font-size: 18px;
    }
}

/* ========================================
   MÁRKÁINK OLDAL
======================================== */
.limar-brands-page {
    background: var(--limar-brands-page-bg);
    color: var(--limar-brands-page-text);
}

.limar-brands-shell {
    width: min(1440px, 90vw);
    margin: 0 auto;
}

.limar-brands-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    height: 50vh;
    padding: 220px 0 130px;
    color: var(--limar-brands-hero-text);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.limar-brands-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image:
        linear-gradient(90deg, rgba(18,18,16,.72) 0%, rgba(18,18,16,.54) 52%, rgba(18,18,16,.38) 100%),
        var(--limar-brands-hero-image, url("../images/limar_base_hero_img.jpg"));
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    transform: scale(1);
    transition: transform 3.2s cubic-bezier(.16,1,.3,1);
}

.limar-brands-hero:hover::before {
    transform: scale(1.075);
}

.limar-brands-kicker {
    margin: 0 0 16px;
    color: var(--limar-brands-hero-muted);
    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: .16em;
}

.limar-brands-hero h1 {
    max-width: 860px;
    margin: 0;
    color: var(--limar-brands-hero-text);
    font-family: var(--font-news-heading) !important;
    font-weight: var(--font-news-heading-weight) !important;
    font-style: var(--font-news-heading-style) !important;
    font-synthesis: none;
    font-size: 66px;
    line-height: 1.06;
    text-shadow: 0 2px 20px rgba(0,0,0,.18);
}

.limar-brands-hero-copy {
    max-width: 720px;
    margin: 24px 0 0;
    color: var(--limar-brands-hero-muted);
    font-size: 14px;
    line-height: 1.8;
}

.limar-brands-content {
    padding: 72px 0 104px;
}

.limar-brands-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.limar-brands-card {
    min-width: 0;
    margin: 0;
}

.limar-brands-card-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--limar-brands-card-border);
    background: var(--limar-brands-card-bg);
    color: var(--limar-brands-page-text);
    text-decoration: none;
    transition: transform .5s cubic-bezier(.16,1,.3,1), background-color .4s ease, border-color .4s ease, box-shadow .5s ease;
}

.limar-brands-logo-stage {
    min-height: 190px;
    padding: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--limar-brands-logo-bg);
    overflow: hidden;
}

.limar-brands-logo-stage img {
    display: block;
    width: auto;
    height: auto;
    max-width: 76%;
    max-height: 100px;
    object-fit: contain;
    transition: transform 1.1s cubic-bezier(.16,1,.3,1);
}

.limar-brands-name-fallback {
    max-width: 88%;
    text-align: center;
    font-family: var(--font-news-heading) !important;
    font-weight: var(--font-news-heading-weight) !important;
    font-style: var(--font-news-heading-style) !important;
    font-synthesis: none;
    font-size: 30px;
    line-height: 1.1;
}

.limar-brands-card-copy {
    position: relative;
    flex: 1;
    padding: 24px 24px 22px;
    display: flex;
    flex-direction: column;
}

.limar-brands-card-copy h2 {
    margin: 0;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 600;
}

.limar-brands-card-copy p {
    margin: 8px 0 0;
    color: var(--limar-brands-count-text);
    font-size: 11px;
    line-height: 1.4;
}

.limar-brands-card-more {
    position: relative;
    align-self: flex-end;
    margin-top: auto;
    padding: 26px 24px 0 0;
    font-size: 10px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.limar-brands-card-more::before {
    content: "";
    position: absolute;
    top: calc(50% + 13px);
    right: 2px;
    width: 10px;
    height: 10px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
    transition: transform .35s cubic-bezier(.16,1,.3,1);
}

.limar-brands-card-link:hover {
    transform: translateY(-4px);
    background: var(--limar-brands-card-hover-bg);
    border-color: color-mix(in srgb, var(--limar-brands-card-border) 65%, #000);
    box-shadow: 0 18px 42px rgba(0,0,0,.05);
}

.limar-brands-card-link:hover .limar-brands-logo-stage img {
    transform: scale(1.05);
}

.limar-brands-card-link:hover .limar-brands-card-more::before {
    transform: translate(4px, -50%) rotate(45deg);
}

.limar-brands-empty {
    padding: 80px 0;
    text-align: center;
}

.limar-brands-empty h2 {
    margin: 0 0 14px;
}

.limar-brands-empty p {
    margin: 0;
    color: var(--limar-brands-count-text);
}

@media (max-width: 1200px) {
    .limar-brands-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    .limar-brands-hero {
        height: 42vh;
        padding: 180px 0 100px;
    }
}

@media (max-width: 767px) {
    .limar-brands-shell {
        width: min(92vw, 680px);
    }

    .limar-brands-hero {
        height: 35vh;
        min-height: 320px;
        padding: 145px 0 70px;
    }

    .limar-brands-hero h1 {
        font-size: clamp(35px, 8vw, 62px);
        line-height: 1.06;
    }

    .limar-brands-hero-copy {
        margin-top: 18px;
        font-size: 13px;
    }

    .limar-brands-content {
        padding: 50px 0 76px;
    }

    .limar-brands-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .limar-brands-logo-stage {
        min-height: 150px;
        padding: 24px 18px;
    }

    .limar-brands-logo-stage img {
        max-width: 82%;
        max-height: 78px;
    }

    .limar-brands-name-fallback {
        font-size: 23px;
    }

    .limar-brands-card-copy {
        padding: 18px 17px 17px;
    }

    .limar-brands-card-copy h2 {
        font-size: 17px;
    }

    .limar-brands-card-more {
        font-size: 9px;
        padding-top: 20px;
    }
}

@media (max-width: 425px) {
    .limar-brands-hero h1 {
        font-size: 35px;
    }

    .limar-brands-grid {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 2200px) {
    .limar-brands-shell {
        width: min(2100px, 90vw);
    }

    .limar-brands-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 28px;
    }

    .limar-brands-logo-stage {
        min-height: 220px;
    }
}

@media (min-width: 3200px) {
    .limar-brands-shell {
        width: min(2800px, 88vw);
    }

    .limar-brands-hero h1 {
        font-size: 78px;
    }

    .limar-brands-hero-copy {
        max-width: 900px;
        font-size: 18px;
    }

    .limar-brands-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 30px;
    }

    .limar-brands-logo-stage {
        min-height: 250px;
    }

    .limar-brands-card-copy h2 {
        font-size: 24px;
    }
}



/* ========================================
   CONTACT PAGE
======================================== */
.limar-contact-page {
    background:var(--limar-contact-page-bg);
    color:var(--limar-contact-text)
}

.limar-contact-shell {
    width:min(1440px,90vw);
    margin:0 auto
}

.limar-contact-hero {
    position:relative;
    isolation:isolate;
    overflow:hidden;
    height:50vh;
    padding:220px 0 130px;
    color:var(--limar-contact-hero-text);
    border-bottom:1px solid rgba(255,255,255,.1)
}

.limar-contact-hero::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background-image:linear-gradient(90deg,rgba(18,18,16,.72) 0%,rgba(18,18,16,.54) 52%,rgba(18,18,16,.38) 100%),var(--limar-contact-hero-image,url("../images/limar_base_hero_img.jpg"));
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    transform:scale(1);
    transition:transform 3.2s cubic-bezier(.16,1,.3,1)
}

.limar-contact-hero:hover::before {
    transform:scale(1.075)
}

.limar-contact-kicker,
.limar-contact-eyebrow {
    margin:0 0 16px;
    font-size:13px;
    line-height:1.2;
    font-weight:600;
    letter-spacing:.16em;
    text-transform:uppercase
}

.limar-contact-kicker {
    color:var(--limar-contact-hero-muted)
}

.limar-contact-hero h1 {
    max-width:860px;
    margin:0;
    color:var(--limar-contact-hero-text);
    font-family:var(--font-news-heading)!important;
    font-weight:var(--font-news-heading-weight)!important;
    font-style:var(--font-news-heading-style)!important;
    font-synthesis:none;
    font-size:66px;
    line-height:1.06;
    text-shadow:0 2px 20px rgba(0,0,0,.18)
}

.limar-contact-hero-copy {
    max-width:720px;
    margin:24px 0 0;
    color:var(--limar-contact-hero-muted);
    font-size:14px;
    line-height:1.8
}

.limar-contact-main-section {
    padding:76px 0 54px
}

.limar-contact-primary-grid {
    display:grid;
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
    gap:28px;
    align-items:stretch
}

.limar-contact-primary-card,
.limar-contact-map-card {
    min-height:560px;
    border:1px solid var(--limar-contact-border)
}

.limar-contact-primary-card {
    display:flex;
    min-width:0;
    flex-direction:column;
    padding:52px;
    font-size:16px;
    background:var(--limar-contact-card-bg)
}

.limar-contact-brand-logo {
    display:flex;
    width:180px;
    height:76px;
    align-items:center;
    justify-content:flex-start;
    margin:0 0 28px
}

.limar-contact-brand-logo img {
    display:block;
    max-width:100%;
    max-height:100%;
    object-fit:contain
}

.limar-contact-primary-card h2,
.limar-contact-section-head h2 {
    margin:0;
    font-family:var(--font-display);
    font-weight:var(--font-display-weight);
    font-style:var(--font-display-style);
    font-synthesis:none;
    color:var(--limar-contact-text)
}

.limar-contact-primary-card h2 {
    margin-bottom:38px;
    font-size:42px;
    line-height:1.08
}

.limar-contact-eyebrow {
    color:var(--limar-contact-muted)
}

.limar-contact-detail-group {
    min-width:0;
    margin:0 0 28px
}

.limar-contact-detail-label {
    display:block;
    margin:0 0 7px;
    color:var(--limar-contact-text);
    font-size:16px;
    line-height:1.4;
    font-weight:600
}

.limar-contact-detail-group a,
.limar-contact-detail-group span {
    color:var(--limar-contact-text);
    font-size:16px;
    line-height:1.8;
    overflow-wrap:anywhere;
    text-decoration:none
}

.limar-contact-detail-group a {
    position:relative
}

.limar-contact-detail-group a::after {
    content:"";
    position:absolute;
    left:0;
    right:100%;
    bottom:-2px;
    height:1px;
    background:currentColor;
    transition:right .45s cubic-bezier(.16,1,.3,1)
}

.limar-contact-detail-group a:hover::after {
    right:0
}

.limar-contact-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:28px
}

.limar-contact-company-data {
    display:grid;
    grid-template-columns:1fr;
    gap:13px;
    margin-top:auto;
    padding-top:28px;
    border-top:1px solid var(--limar-contact-border)
}

.limar-contact-company-data div {
    display:grid;
    grid-template-columns:max-content minmax(0,1fr);
    gap:16px;
    align-items:baseline
}

.limar-contact-company-data span {
    color:var(--limar-contact-text);
    font-size:16px;
    line-height:1.8;
    overflow-wrap:anywhere
}

.limar-contact-company-data strong {
    color:var(--limar-contact-text);
    font-size:16px;
    font-weight:600;
    overflow-wrap:anywhere
}

.limar-contact-map-card {
    overflow:hidden;
    background:var(--limar-contact-card-bg)
}

.limar-contact-map-card iframe {
    display:block;
    width:100%;
    height:100%;
    min-height:560px;
    border:0;
    filter:saturate(.68) contrast(.96)
}

.limar-contact-partners-section {
    padding:54px 0 110px
}

.limar-contact-section-head {
    width:100%;
    max-width:none;
    margin:0 0 38px
}

.limar-contact-section-head h2 {
    font-size:42px;
    line-height:1.1
}

.limar-contact-section-head > p:last-child {
    max-width:none;
    margin:18px 0 0;
    color:var(--limar-contact-muted);
    font-size:15px;
    line-height:1.8
}

.limar-contact-partners-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px
}

.limar-contact-partner-card {
    display:flex;
    min-width:0;
    min-height:350px;
    flex-direction:column;
    padding:30px;
    font-size:16px;
    background:var(--limar-contact-partner-card-bg);
    border:1px solid var(--limar-contact-partner-card-border);
    transition:
        transform .5s cubic-bezier(.16,1,.3,1),
        background-color .4s ease,
        border-color .4s ease,
        box-shadow .5s ease
}

.limar-contact-partner-card:hover {
    transform:translateY(-3px);
    background:var(--limar-contact-partner-card-hover-bg);
    border-color:var(--limar-contact-partner-card-border);
    box-shadow:0 15px 40px rgba(0,0,0,.045)
}

.limar-contact-partner-head {
    display:flex;
    min-width:0;
    align-items:center;
    gap:20px;
    padding-bottom:24px;
    border-bottom:1px solid var(--limar-contact-partner-card-border)
}

.limar-contact-partner-logo-stage {
    display:flex;
    width:130px;
    min-width:130px;
    height:62px;
    align-items:center;
    justify-content:center;
    overflow:hidden
}

.limar-contact-partner-logo-stage img {
    display:block;
    max-width:100%;
    max-height:100%;
    object-fit:contain
}

.limar-contact-partner-wordmark {
    width:100%;
    overflow-wrap:anywhere;
    color:var(--limar-contact-text);
    font-size:16px;
    line-height:1.25;
    font-weight:600;
    letter-spacing:.08em;
    text-align:center;
    text-transform:uppercase
}

.limar-contact-partner-head h3 {
    margin:0;
    min-width:0;
    color:var(--limar-contact-text);
    font-family:var(--font-display);
    font-size:25px;
    line-height:1.15;
    font-weight:var(--font-display-weight)
}

.limar-contact-partner-body {
    padding:24px 0 28px
}

.limar-contact-partner-address,
.limar-contact-partner-contact {
    display:grid;
    grid-template-columns:125px minmax(0,1fr);
    gap:12px;
    margin:0 0 10px;
    color:var(--limar-contact-muted);
    font-size:16px;
    line-height:1.7
}

.limar-contact-partner-label {
    color:var(--limar-contact-text);
    font-size:16px;
    font-weight:600
}

.limar-contact-partner-address span,
.limar-contact-partner-address a,
.limar-contact-partner-contact a {
    min-width:0;
    color:var(--limar-contact-text);
    overflow-wrap:anywhere;
    text-decoration:none
}

.limar-contact-partner-address a:hover,
.limar-contact-partner-contact a:hover {
    text-decoration:none
}

.limar-contact-partner-address a,
.limar-contact-partner-contact a {
    position:relative;
    justify-self:start;
    max-width:100%
}

.limar-contact-partner-address a::after,
.limar-contact-partner-contact a::after {
    content:"";
    position:absolute;
    left:0;
    right:100%;
    bottom:-2px;
    height:1px;
    background:currentColor;
    transition:right .45s cubic-bezier(.16,1,.3,1)
}

.limar-contact-partner-address a:hover::after,
.limar-contact-partner-contact a:hover::after,
.limar-contact-partner-address a:focus-visible::after,
.limar-contact-partner-contact a:focus-visible::after {
    right:0
}

.limar-contact-partner-actions {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:auto
}

.limar-contact-partner-actions a {
    display:inline-flex;
    min-height:40px;
    align-items:center;
    justify-content:center;
    padding:0 17px;
    color:var(--limar-product-button-text);
    background:var(--limar-product-button-bg);
    border:1px solid var(--limar-product-button-border);
    font-size:16px;
    line-height:1;
    font-weight:600;
    letter-spacing:.09em;
    text-transform:uppercase;
    text-decoration:none;
    transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .45s ease
}

.limar-contact-partner-actions a:hover {
    transform:translateY(-2px);
    opacity:.9
}

@media (max-width:1024px) {
    .limar-contact-primary-grid {
        grid-template-columns:1fr
    }

    .limar-contact-primary-card,
    .limar-contact-map-card,
    .limar-contact-map-card iframe {
        min-height:500px
    }
}

@media (max-width:767px) {
    .limar-contact-shell {
        width:min(100% - 36px,1440px)
    }

    .limar-contact-hero {
        height:35vh;
        min-height:320px;
        padding:145px 0 72px
    }

    .limar-contact-hero h1 {
        font-size:clamp(35px,8vw,62px);
        line-height:1.06
    }

    .limar-contact-hero-copy {
        margin-top:16px;
        font-size:13px
    }

    .limar-contact-main-section {
        padding:42px 0 30px
    }

    .limar-contact-primary-card {
        min-height:auto;
        padding:30px 24px
    }

    .limar-contact-primary-card h2,
    .limar-contact-section-head h2 {
        font-size:32px
    }

    .limar-contact-detail-grid,
    .limar-contact-company-data div {
        grid-template-columns:1fr;
        gap:5px
    }

    .limar-contact-map-card,
    .limar-contact-map-card iframe {
        min-height:360px
    }

    .limar-contact-partners-section {
        padding:38px 0 76px
    }

    .limar-contact-section-head {
        margin-bottom:28px
    }

    .limar-contact-partners-grid {
        grid-template-columns:1fr
    }

    .limar-contact-partner-card {
        min-height:0;
        padding:24px
    }
    .limar-contact-partner-address,
    .limar-contact-partner-contact {
        grid-template-columns:125px minmax(0,1fr)
    }
}


@media (max-width:425px) {
    .limar-contact-hero h1 {
        font-size:35px
    }

    .limar-contact-partner-head {
        align-items:flex-start;
        flex-direction:column;
        gap:12px
    }

    .limar-contact-partner-logo-stage {
        width:120px;
        min-width:0;
        height:50px;
        justify-content:flex-start
    }

    .limar-contact-partner-wordmark {
        text-align:left
    }

    .limar-contact-partner-address,
    .limar-contact-partner-contact {
        grid-template-columns:1fr;
        gap:2px
    }

    .limar-contact-partner-actions a {
        flex:1 1 auto
    }
}

@media (min-width:2200px) {
    .limar-contact-shell {
        width:min(1880px,88vw)
    }

    .limar-contact-primary-grid {
        gap:38px
    }

    .limar-contact-primary-card,
    .limar-contact-map-card,
    .limar-contact-map-card iframe {
        min-height:680px
    }

    .limar-contact-primary-card {
        padding:64px
    }

    .limar-contact-partners-grid {
        gap:30px
    }
}

@media (min-width:3200px) {
    .limar-contact-shell {
        width:min(2480px,86vw)
    }

    .limar-contact-primary-card,
    .limar-contact-map-card,
    .limar-contact-map-card iframe {
        min-height:790px
    }

    .limar-contact-primary-card {
        padding:82px
    }

    .limar-contact-primary-card h2,
    .limar-contact-section-head h2 {
        font-size:58px
    }

    .limar-contact-detail-group a,
    .limar-contact-detail-group span,
    .limar-contact-section-head > p:last-child {
        font-size:18px
    }

    .limar-contact-partner-card {
        min-height:430px;
        padding:42px
    }

    .limar-contact-partner-head h3 {
        font-size:32px
    }

    .limar-contact-partner-address,
    .limar-contact-partner-contact {
        font-size:16px
    }
}

/* Kosárjelzés - az összes darab száma. */
.limar-header-cart {
    position:relative;
    overflow:visible
}

.limar-header-cart .limar-cart-count {
    position:absolute;
    top:-3px;
    right:-5px;
    display:inline-flex;
    min-width:17px;
    height:17px;
    padding:0 4px;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#c83737;
    color:#fff;
    font:600 10px/1 Inter,Arial,sans-serif;
    font-variant-numeric:tabular-nums;
    letter-spacing:0;
    pointer-events:none;
    z-index:1
}

.limar-header-cart .limar-cart-count[hidden] {
    display:none
}

/* The contact buttons and cart checkout button share the same hover treatment. */
body.woocommerce-cart .wc-block-cart__submit-button {
    transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .45s ease
}

body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-cart .wc-block-cart__submit-button:focus-visible,
.limar-contact-partner-actions a:focus-visible {
    transform:translateY(-2px);
    opacity:.9
}


/* Homepage product collections: equal prices and explicit carousel sizing. */
.products-section .product-card { display: flex; flex-direction: column; }
.products-section .product-image { flex-shrink: 0; }
.products-section .product-meta { display: flex; flex-direction: column; flex: 1; }
.products-section .product-meta > strong { margin-top: auto; }
.products-section .featured-products-carousel {
    --limar-featured-product-gap: 20px;
    --limar-featured-product-four-gaps: 60px;
}
@media (min-width: 426px) {
    .products-section .featured-products-carousel { padding: 0 28px; }
    .products-section .has-overflow .product-grid {
        display: flex;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: var(--limar-featured-product-gap);
        width: 100%;
        margin: 0;
        padding: 8px 0 24px;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        overscroll-behavior-x: contain;
    }
    .products-section .has-overflow .product-card { flex: 0 0 calc((100% - var(--limar-featured-product-four-gaps)) / 4); width: calc((100% - var(--limar-featured-product-four-gaps)) / 4); min-width: 0; scroll-snap-align: start; }
    .has-overflow .product-grid::-webkit-scrollbar { display: none; }
    .products-section .has-overflow .featured-products-nav {
        display: block !important;
        position: absolute;
        top: 50%;
        z-index: 5;
        width: 26px;
        height: 48px;
        padding: 0;
        border: 0;
        background: transparent;
        color: var(--limar-text-primary);
        font-size: 25px;
        cursor: pointer;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: opacity .25s ease;
    }
    .products-section .has-overflow .featured-products-nav.is-visible { opacity: 1; visibility: visible; pointer-events: auto; }
    .has-overflow .featured-products-prev { left: 0; transform: translateY(-50%) scaleX(-1); }
    .has-overflow .featured-products-next { right: 0; transform: translateY(-50%); }
    .has-overflow .featured-products-next.is-visible.is-attention { animation: featuredProductsArrowHint 3.2s ease-in-out infinite; }
}
@media (min-width: 426px) and (max-width: 768px) {
    .products-section .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .products-section .has-overflow .product-card { flex-basis: calc((100% - var(--limar-featured-product-gap)) / 2); width: calc((100% - var(--limar-featured-product-gap)) / 2); }
}
@media (min-width: 2200px) {
    .products-section .featured-products-carousel {
        --limar-featured-product-gap: 28px;
        --limar-featured-product-four-gaps: 84px;
    }
}
@media (min-width: 3200px) {
    .products-section .featured-products-carousel {
        --limar-featured-product-gap: 34px;
        --limar-featured-product-four-gaps: 102px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .featured-products-next.is-visible.is-attention { animation: none !important; }
}

/* Consecutive product collections share one vertical gap. */
.products-section + .products-section {
    padding-top: 0;
    margin-top: 0;
}

/* Homepage news: one wide lead story, then three fixed compact cards. */
.home-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.home-news-grid > .news-list-item { min-width: 0; }
.home-news-grid > .news-list-item:first-child { grid-column: 1 / -1; }
.home-news-grid > .news-list-item:not(:first-child) .news-list-link { display: flex; flex-direction: column; height: 100%; min-height: 0; }
.home-news-grid > .news-list-item:not(:first-child) .news-list-image { width: 100%; aspect-ratio: 16 / 9; margin: 0; align-self: stretch; }
.home-news-grid > .news-list-item:not(:first-child) .news-list-content { flex: 1; padding: 22px 20px 20px; }
.home-news-grid > .news-list-item:not(:first-child) h2 { order: 1; margin-top: 0; overflow-wrap: anywhere; }
.home-news-grid > .news-list-item:not(:first-child) .news-list-excerpt { order: 2; margin-top: 12px; overflow-wrap: anywhere; }
.home-news-grid > .news-list-item:not(:first-child) time { order: 3; margin-top: 18px; margin-bottom: 0; text-align: left; font-weight: 600; }
.home-news-grid > .news-list-item:not(:first-child) .news-read-more { order: 4; position: relative; top: auto; right: auto; width: auto; height: auto; margin-top: 14px; padding: 0 24px 0 0; transform: none; align-self: flex-end; font-size: 11px; line-height: 1.4; letter-spacing: .08em; text-transform: uppercase; }
.home-news-grid > .news-list-item:not(:first-child) .news-read-more > span { display: none; }
.home-news-grid > .news-list-item:not(:first-child) .news-read-more::before { right: 2px; left: auto; width: 10px; height: 10px; border-width: 2px; }
.home-news-grid > .news-list-item:not(:first-child) .news-list-link:hover .news-read-more::before { transform: translate(4px, -50%) rotate(45deg); }
@media (max-width: 768px) {
    .home-news-grid { gap: 12px; }
    .home-news-grid > .news-list-item:not(:first-child) .news-list-content { padding: 14px 10px; }
    .home-news-grid > .news-list-item:not(:first-child) h2 { font-size: 16px; }
}
@media (max-width: 425px) {
    .home-news-grid { gap: 8px; }
    .home-news-grid > .news-list-item:not(:first-child) .news-list-content { padding: 12px 8px; }
    .home-news-grid > .news-list-item:not(:first-child) h2 { font-size: 14px; }
    .home-news-grid > .news-list-item:not(:first-child) .news-list-excerpt { font-size: 12px; line-height: 1.5; }
    .home-news-grid > .news-list-item:not(:first-child) time { font-size: 10px; overflow-wrap: anywhere; }
    .home-news-grid > .news-list-item:not(:first-child) .news-read-more { letter-spacing: 0; padding-right: 16px; overflow-wrap: anywhere; }
}

.news-forward-arrow { transform: scaleX(-1); }
.news-document-wrap + .news-back-wrap { margin-top: 16px; }

/* Homepage news has its own palette; archive colours remain independent. */
.home-news-section {
    padding-left: 0; padding-right: 0;
    background: var(--limar-home-news-bg, #f2efea);
    color: var(--limar-home-news-text, #171715);
    --limar-news-archive-card-bg: var(--limar-home-news-card-bg, #e9e4de);
    --limar-news-archive-card-hover-bg: var(--limar-home-news-card-hover-bg, #f5f2ee);
    --limar-news-archive-card-border: var(--limar-home-news-card-border, #b9b2aa);
    --limar-news-archive-date-text: var(--limar-home-news-date-text, #777777);
    --limar-news-archive-excerpt-text: var(--limar-home-news-excerpt-text, #65625e);
}
.home-news-section .section-head h2,
.home-news-section .news-list-content h2,
.home-news-section .featured-products-all-link { color: inherit; }
@media (min-width: 768px) {
    .home-news-grid > .news-list-item:first-child .news-list-image { aspect-ratio: 16 / 9; }
    .home-news-grid > .news-list-item:first-child .news-list-link { min-height: 0; }
    .home-news-grid > .news-list-item:first-child .news-list-content { justify-content: center; }
}
.news-article-actions { display: grid; width: max-content; max-width: 100%; margin: 68px auto 0; gap: 16px; }
.news-article-actions .news-back-wrap { margin: 0; }
.news-article-actions .news-back-button { width: 100%; box-sizing: border-box; }
.news-article-actions .news-forward-arrow { margin-right: 0; margin-left: 3px; }
.product-info .intro { font-size: 16px; line-height: 1.7; }
.product-info .intro p { font-size: inherit; line-height: inherit; margin: 0 0 1em; }
.product-info .intro p:last-child { margin-bottom: 0; }

/* Shared spacing for adjacent homepage collections. */
.products-section + .home-news-section,
.home-news-section + .products-section { padding-top: 0; margin-top: 0; }
.news-document-wrap .news-back-button { justify-content: space-between; }
.home-news-grid > .news-list-item:not(:first-child) .news-read-more { margin-top: auto; padding-top: 14px; }
.home-news-grid > .news-list-item:not(:first-child) .news-read-more::before { top: calc(50% + 7px); }
@media (max-width: 767px) {
    .home-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home-news-grid > .news-list-item:nth-child(n+4) { display: none; }
}

/* Product information tabs: readable, fluid type at every screen size. */
.product-tabs-wrap {
    --limar-product-tab-copy-size: clamp(16px, .625vw, 24px);
}

.product-tabs-wrap .tab {
    font-size: clamp(16px, .833333vw, 32px);
    line-height: 1.45;
}

.product-tabs-wrap .tab-panel,
.product-tabs-wrap .tab-panel > div,
.product-tabs-wrap .tab-panel :where(div, p, ul, ol, li, a, span, strong, b, em, i, small, sub, sup, table, thead, tbody, tfoot, tr, th, td, caption, blockquote, figure, figcaption, dl, dt, dd, pre, code) {
    font-size: var(--limar-product-tab-copy-size) !important;
    line-height: 1.8;
}

.product-tabs-wrap .tab-panel :is(h1, h2, h3, h4, h5, h6) {
    line-height: 1.3;
}

.product-tabs-wrap .tab-panel h1 { font-size: 2em !important; }
.product-tabs-wrap .tab-panel h2 { font-size: 1.65em !important; }
.product-tabs-wrap .tab-panel h3 { font-size: 1.4em !important; }
.product-tabs-wrap .tab-panel h4 { font-size: 1.25em !important; }
.product-tabs-wrap .tab-panel h5 { font-size: 1.125em !important; }
.product-tabs-wrap .tab-panel h6 { font-size: 1em !important; }
.product-tabs-wrap .tab-panel :is(h1, h2, h3, h4, h5, h6) * { font-size: inherit !important; }

/* The enlarged product image can be paged by dragging with a mouse or touch. */
.lightbox img {
    cursor: grab;
    touch-action: none;
    user-select: none;
    -webkit-user-drag: none;
    will-change: transform;
}

.lightbox img.is-dragging {
    cursor: grabbing;
    transition: none;
}
