/* ==========================================
   INIVOY WEBSHOP
   Teljes alap stílus
========================================== */

:root {
    --gold: #d4af37;
    --gold-dark: #b99220;
    --black: #101010;
    --dark: #1a1a1a;
    --white: #ffffff;
    --gray: #f5f5f5;
    --light-gray: #eeeeee;
    --text: #262626;
    --muted: #777777;
    --danger: #e63946;

    --container: 1280px;
    --radius: 10px;
    --shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

/* ==========================================
   ALAPBEÁLLÍTÁSOK
========================================== */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;
    font-family: "Poppins", Arial, sans-serif;
    background: var(--gray);
    color: var(--text);
    line-height: 1.6;
}

img {
    max-width: 100%;
    display: block;
}

button,
input,
select {
    font: inherit;
}

button,
a {
    -webkit-tap-highlight-color: transparent;
}

a {
    color: inherit;
}

.container {
    width: 100%;
    max-width: var(--container);
    margin: 0 auto;
    padding: 0 24px;
}

/* ==========================================
   FELSŐ INFORMÁCIÓS SÁV
========================================== */

.topbar {
    min-height: 42px;
    background: var(--black);
    color: var(--white);
    font-size: 13px;
}

.topbar-content {
    min-height: 42px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
}

.topbar-left,
.topbar-right {
    display: flex;
    align-items: center;
    gap: 22px;
}

.topbar a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--white);
    text-decoration: none;
    transition: color 0.2s ease;
}

.topbar a:hover {
    color: var(--gold);
}

.topbar i {
    color: var(--gold);
}

.topbar .cart-count {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 19px;
    height: 19px;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--gold);
    color: var(--black);
    font-size: 11px;
    font-weight: 700;
}

/* ==========================================
   FŐ FEJLÉC
========================================== */

.main-header {
    position: relative;
    z-index: 10;
    background: var(--white);
    border-bottom: 1px solid var(--light-gray);
}

.header-content {
    min-height: 112px;
    display: grid;
    grid-template-columns: 230px minmax(300px, 1fr) 265px;
    align-items: center;
    gap: 35px;
}

/* ==========================================
   LOGÓ
========================================== */

.logo {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    width: fit-content;
    color: var(--black);
    text-decoration: none;
}

.logo-icon {
    width: 55px;
    height: 55px;
    flex-shrink: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: var(--gold);
    color: var(--white);
    font-size: 24px;
    box-shadow: 0 8px 22px rgba(212, 175, 55, 0.25);
}

.logo-name {
    font-size: 30px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: 1px;
}

.logo-name span {
    color: var(--gold);
}

/* ==========================================
   KERESŐ
========================================== */

.search-box {
    width: 100%;
    height: 52px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 175px 58px;
    border: 2px solid var(--gold);
    border-radius: 7px;
    overflow: hidden;
    background: var(--white);
}

.search-box input {
    width: 100%;
    min-width: 0;
    padding: 0 17px;
    border: none;
    outline: none;
    color: var(--text);
    background: transparent;
}

.search-box input::placeholder {
    color: #999999;
}

.search-box select {
    min-width: 0;
    padding: 0 13px;
    border: none;
    border-left: 1px solid #dedede;
    outline: none;
    background: var(--white);
    color: var(--text);
    cursor: pointer;
}

.search-box button {
    border: none;
    background: var(--gold);
    color: var(--black);
    font-size: 17px;
    cursor: pointer;
    transition:
        background 0.2s ease,
        color 0.2s ease;
}

.search-box button:hover {
    background: var(--gold-dark);
    color: var(--white);
}

/* ==========================================
   FEJLÉC MŰVELETEK
========================================== */

.header-actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 25px;
}

.header-action {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--text);
    text-decoration: none;
    white-space: nowrap;
    transition: color 0.2s ease;
}

.header-action:hover {
    color: var(--gold-dark);
}

.header-action > i {
    font-size: 24px;
}

.points-action {
    position: relative;
    padding: 6px 11px;
    border: 1px solid rgba(191, 157, 54, 0.28);
    background: linear-gradient(135deg, #fffdf5, #faf3d7);
}

.points-icon {
    width: 34px;
    height: 34px;
    display: inline-grid;
    place-items: center;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--gold), #ead785);
    color: #221d0d;
    font-size: 16px;
}

.points-text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.points-text strong {
    font-size: 14px;
    font-weight: 800;
}

.points-text small {
    color: var(--muted);
    font-size: 10px;
}

.cart-action {
    position: relative;
}

.cart-icon {
    position: relative;
    display: inline-flex;
    font-size: 27px;
}

.cart-count {
    position: absolute;
    top: -12px;
    right: -13px;
    min-width: 21px;
    height: 21px;
    padding: 0 5px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 999px;
    background: var(--gold);
    color: var(--black);
    font-size: 11px;
    font-weight: 700;
    border: 2px solid var(--white);
}

.cart-text {
    display: flex;
    flex-direction: column;
    line-height: 1.25;
}

.cart-text strong {
    font-size: 14px;
}

.cart-text small {
    color: var(--muted);
    font-size: 12px;
}

/* ==========================================
   FŐ MENÜ
========================================== */

.main-menu {
    position: relative;
    z-index: 9;
    background: var(--black);
    color: var(--white);
}

.menu-content {
    min-height: 58px;
    display: flex;
    align-items: stretch;
}

.category-button {
    width: 235px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 0 20px;
    border: none;
    background: var(--gold);
    color: var(--black);
    text-transform: uppercase;
    font-weight: 700;
    cursor: pointer;
}

.category-arrow {
    margin-left: auto;
    font-size: 12px;
}

.menu-links {
    display: flex;
    align-items: stretch;
    margin-left: 18px;
}

.menu-links a {
    position: relative;
    display: flex;
    align-items: center;
    padding: 0 17px;
    color: var(--white);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
    transition:
        color 0.2s ease,
        background 0.2s ease;
}

.menu-links a:hover,
.menu-links a.active {
    color: var(--gold);
}

.menu-links a::after {
    content: "";
    position: absolute;
    left: 17px;
    right: 17px;
    bottom: 0;
    height: 3px;
    background: var(--gold);
    transform: scaleX(0);
    transition: transform 0.2s ease;
}

.menu-links a:hover::after,
.menu-links a.active::after {
    transform: scaleX(1);
}

/* ==========================================
   HERO
========================================== */

.hero {
    min-height: 650px;
    background-image: url("../images/hero.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    color: var(--white);
}

.hero-overlay {
    min-height: 650px;
    width: 100%;
    display: flex;
    align-items: center;
    background:
        linear-gradient(
            90deg,
            rgba(5, 5, 5, 0.88) 0%,
            rgba(5, 5, 5, 0.69) 40%,
            rgba(5, 5, 5, 0.18) 72%,
            rgba(5, 5, 5, 0.05) 100%
        );
}

.hero-content {
    color: var(--white);
}

.hero-tag {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 16px;
    margin-bottom: 24px;
    border-radius: 999px;
    background: var(--gold);
    color: var(--black);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.4px;
}

.hero h1 {
    max-width: 720px;
    margin-bottom: 25px;
    color: var(--white);
    font-size: clamp(48px, 5.5vw, 78px);
    line-height: 1.06;
    letter-spacing: -2px;
}

.hero p {
    max-width: 650px;
    margin-bottom: 34px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 19px;
}

.hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.btn-primary,
.btn-secondary {
    min-width: 145px;
    min-height: 52px;
    padding: 14px 28px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 7px;
    text-decoration: none;
    font-weight: 700;
    transition:
        transform 0.2s ease,
        background 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease;
}

.btn-primary {
    background: var(--gold);
    color: var(--black);
}

.btn-primary:hover {
    background: var(--gold-dark);
    color: var(--white);
    transform: translateY(-2px);
}

.btn-secondary {
    border: 2px solid var(--white);
    color: var(--white);
}

.btn-secondary:hover {
    background: var(--white);
    color: var(--black);
    transform: translateY(-2px);
}

/* ==========================================
   SZOLGÁLTATÁSOK
========================================== */

.services {
    padding: 42px 0;
    background: var(--white);
    border-bottom: 1px solid var(--light-gray);
}

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

.service {
    min-height: 130px;
    padding: 25px 18px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border: 1px solid #eeeeee;
    border-radius: var(--radius);
    background: var(--white);
    text-align: center;
    box-shadow: var(--shadow);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.service:hover {
    transform: translateY(-5px);
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.11);
}

.service > i,
.service > div:first-child {
    color: var(--gold);
    font-size: 27px;
}

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

/* ==========================================
   KIEMELT TERMÉKEK
========================================== */

.featured {
    min-height: 350px;
    padding: 70px 0;
    background: var(--gray);
}

.featured h2 {
    margin-bottom: 12px;
    color: var(--black);
    font-size: 30px;
}

.featured p {
    color: var(--muted);
}

/* ==========================================
   LÁBLÉC
========================================== */

footer {
    padding: 35px 20px;
    background: var(--black);
    color: var(--white);
    text-align: center;
}

/* ==========================================
   TABLET
========================================== */

@media (max-width: 1100px) {
    .header-content {
        grid-template-columns: 190px minmax(280px, 1fr);
    }

    .header-actions {
        grid-column: 1 / -1;
        justify-content: flex-end;
        padding-bottom: 20px;
    }

    .menu-content {
        overflow-x: auto;
    }

    .menu-links {
        min-width: max-content;
    }

    .services .container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ==========================================
   MOBIL
========================================== */

@media (max-width: 760px) {
    .container {
        padding: 0 16px;
    }

    .topbar-content {
        justify-content: center;
        text-align: center;
    }

    .topbar-right {
        display: none;
    }

    .header-content {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 20px;
        padding-top: 22px;
        padding-bottom: 22px;
    }

    .logo {
        align-self: center;
    }

    .search-box {
        height: auto;
        grid-template-columns: 1fr 55px;
    }

    .search-box input {
        height: 50px;
    }

    .search-box select {
        display: none;
    }

    .header-actions {
        justify-content: center;
        padding-bottom: 0;
    }

    .menu-content {
        min-height: auto;
        display: block;
        padding: 0;
    }

    .category-button {
        width: 100%;
        min-height: 54px;
    }

    .menu-links {
        margin-left: 0;
        overflow-x: auto;
    }

    .menu-links a {
        min-height: 52px;
        padding: 0 14px;
    }

    .hero,
    .hero-overlay {
        min-height: 570px;
    }

    .hero-overlay {
        background: rgba(5, 5, 5, 0.7);
    }

    .hero h1 {
        font-size: 47px;
        letter-spacing: -1px;
    }

    .hero p {
        font-size: 16px;
    }

    .services .container {
        grid-template-columns: 1fr;
    }
}

/* ==========================================
   KIS MOBIL
========================================== */

@media (max-width: 430px) {
    .header-actions {
        gap: 17px;
    }

    .header-action > span:not(.cart-icon) {
        display: none;
    }

    .cart-text {
        display: none;
    }

    .hero h1 {
        font-size: 40px;
    }

    .btn-primary,
    .btn-secondary {
        width: 100%;
    }
}/* ==================================================
   PRODUCT CARDS
================================================== */

.section-heading{

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

    margin-bottom:40px;

}

.section-label{

    display:inline-block;

    background:var(--gold);

    color:black;

    padding:6px 15px;

    border-radius:25px;

    font-size:13px;

    font-weight:600;

    margin-bottom:15px;

}

.section-heading h2{

    font-size:36px;

    margin-bottom:10px;

}

.view-all-link{

    text-decoration:none;

    color:var(--gold);

    font-weight:600;

}

.product-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.product-card{

    background:white;

    border-radius:15px;

    overflow:hidden;

    box-shadow:var(--shadow);

    transition:.3s;

}

.product-card:hover{

    transform:translateY(-8px);

}

.product-image{

    position:relative;

    height:260px;

    background:#fafafa;

    display:flex;

    justify-content:center;

    align-items:center;

}

.product-image img{

    max-width:80%;

    max-height:80%;

    transition:.4s;

}

.product-card:hover img{

    transform:scale(1.05);

}

.product-badge{

    position:absolute;

    left:15px;

    top:15px;

    padding:6px 12px;

    border-radius:20px;

    color:white;

    font-size:12px;

    font-weight:600;

}

.sale{

    background:#e53935;

}

.new{

    background:#2e7d32;

}

.wishlist-button{

    position:absolute;

    right:15px;

    top:15px;

    width:40px;

    height:40px;

    border:none;

    border-radius:50%;

    background:white;

    cursor:pointer;

    box-shadow:0 5px 15px rgba(0,0,0,.1);

}

.product-content{

    padding:25px;

}

.product-category{

    color:#999;

    font-size:13px;

}

.product-content h3{

    margin:10px 0;

}

.product-rating{

    color:#f8b400;

    margin-bottom:20px;

}

.product-rating span{

    color:#777;

    margin-left:10px;

}

.product-footer{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.product-price del{

    display:block;

    color:#999;

    font-size:14px;

}

.product-price strong{

    font-size:24px;

}

.add-to-cart{

    width:50px;

    height:50px;

    border:none;

    border-radius:10px;

    background:var(--gold);

    cursor:pointer;

    transition:.3s;

}

.add-to-cart:hover {
    background: var(--gold-dark);
    color: white;
}

.account-page {
    background:
        radial-gradient(
            circle at top right,
            rgba(212, 175, 55, 0.12),
            transparent 35%
        ),
        var(--gray);
}

.account-hero {
    padding: 75px 0;
    color: var(--white);
    background:
        linear-gradient(
            110deg,
            rgba(10, 10, 10, 0.97),
            rgba(35, 30, 15, 0.9)
        );
}

.account-hero p {
    max-width: 690px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 17px;
}

.account-section {
    padding: 70px 0 90px;
}

.account-layout {
    display: grid;
    grid-template-columns: 285px minmax(0, 1fr);
    align-items: start;
    gap: 32px;
}

/* ==========================================
   FIÓK OLDALSÁV
========================================== */

.account-sidebar {
    position: sticky;
    top: 24px;
    overflow: hidden;
    border: 1px solid rgba(212, 175, 55, 0.17);
    border-radius: 18px;
    background: var(--white);
    box-shadow: var(--shadow);
}

.account-user-card {
    padding: 28px 22px;
    display: flex;
    align-items: center;
    gap: 15px;
    color: var(--white);
    background:
        linear-gradient(
            135deg,
            var(--black),
            #2c250f
        );
}

.account-avatar {
    width: 58px;
    height: 58px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid rgba(255, 255, 255, 0.7);
    border-radius: 50%;
    background: var(--gold);
    color: var(--black);
    font-size: 23px;
    box-shadow: 0 8px 20px rgba(212, 175, 55, 0.25);
}

.account-user-card div:last-child {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.account-user-card strong {
    overflow: hidden;
    font-size: 15px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.account-user-card span {
    overflow: hidden;
    color: rgba(255, 255, 255, 0.66);
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.account-menu {
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.account-menu-item {
    width: 100%;
    min-height: 48px;
    padding: 0 15px;
    display: flex;
    align-items: center;
    gap: 12px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: var(--text);
    font-weight: 600;
    text-align: left;
    cursor: pointer;
    transition:
        color 0.2s ease,
        background 0.2s ease,
        transform 0.2s ease;
}

.account-menu-item i {
    width: 20px;
    color: var(--gold-dark);
    text-align: center;
}

.account-menu-item:hover {
    background: rgba(212, 175, 55, 0.1);
    color: var(--black);
    transform: translateX(3px);
}

.account-menu-item.active {
    color: var(--black);
    background:
        linear-gradient(
            90deg,
            var(--gold),
            #e5ca6c
        );
    box-shadow: 0 8px 18px rgba(212, 175, 55, 0.2);
}

.account-menu-item.active i {
    color: var(--black);
}

.logout-button {
    margin-top: 8px;
    color: #b42318;
    border-top: 1px solid #eeeeee;
    border-radius: 0 0 10px 10px;
}

.logout-button i {
    color: #b42318;
}

/* ==========================================
   FIÓK TARTALOM
========================================== */

.account-content {
    min-width: 0;
}

.account-panel {
    display: none;
    animation: accountFade 0.25s ease;
}

.account-panel.active {
    display: block;
}

@keyframes accountFade {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.account-heading {
    margin-bottom: 24px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
}

.account-heading h2 {
    margin-top: 8px;
    color: var(--black);
    font-size: 31px;
}

.account-action-button,
.account-info-heading button {
    min-height: 42px;
    padding: 0 17px;
    border: 1px solid var(--gold);
    border-radius: 8px;
    background: transparent;
    color: var(--gold-dark);
    font-weight: 700;
    cursor: pointer;
    transition:
        color 0.2s ease,
        background 0.2s ease;
}

.account-action-button:hover,
.account-info-heading button:hover {
    background: var(--gold);
    color: var(--black);
}

/* ==========================================
   STATISZTIKAI KÁRTYÁK
========================================== */

.account-stat-grid {
    margin-bottom: 28px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.account-stat-card {
    min-height: 125px;
    padding: 22px;
    display: flex;
    align-items: center;
    gap: 17px;
    overflow: hidden;
    position: relative;
    border: 1px solid rgba(212, 175, 55, 0.16);
    border-radius: 15px;
    background: var(--white);
    box-shadow: var(--shadow);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.account-stat-card::after {
    content: "";
    width: 80px;
    height: 80px;
    position: absolute;
    top: -28px;
    right: -25px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.12);
}

.account-stat-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.11);
}

.account-stat-card > i {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 13px;
    background: var(--gold);
    color: var(--black);
    font-size: 21px;
}

.account-stat-card div {
    display: flex;
    flex-direction: column;
}

.account-stat-card strong {
    color: var(--black);
    font-size: 27px;
    line-height: 1.1;
}

.account-stat-card span {
    color: var(--muted);
    font-size: 13px;
}

/* ==========================================
   INFORMÁCIÓS KÁRTYA
========================================== */

.account-info-card,
.account-form,
.account-empty-state {
    border: 1px solid rgba(212, 175, 55, 0.14);
    border-radius: 16px;
    background: var(--white);
    box-shadow: var(--shadow);
}

.account-info-card {
    padding: 28px;
}

.account-info-heading {
    margin-bottom: 24px;
    padding-bottom: 18px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #eeeeee;
}

.account-info-heading h3 {
    color: var(--black);
    font-size: 20px;
}

.account-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.account-info-grid div {
    min-width: 0;
    padding: 16px;
    border-radius: 10px;
    background: #fafafa;
}

.account-info-grid span {
    display: block;
    margin-bottom: 5px;
    color: var(--muted);
    font-size: 12px;
}

.account-info-grid strong {
    display: block;
    overflow: hidden;
    color: var(--black);
    font-size: 14px;
    text-overflow: ellipsis;
}

/* ==========================================
   ÜRES ÁLLAPOT
========================================== */

.account-empty-state {
    min-height: 360px;
    padding: 50px 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 14px;
    text-align: center;
}

.account-empty-state > i {
    width: 82px;
    height: 82px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.14);
    color: var(--gold-dark);
    font-size: 34px;
}

.account-empty-state h3 {
    color: var(--black);
    font-size: 23px;
}

.account-empty-state p {
    max-width: 460px;
    color: var(--muted);
}

/* ==========================================
   FIÓK ŰRLAP
========================================== */

.account-form {
    max-width: 760px;
    padding: 30px;
}

.account-form .form-group {
    margin-bottom: 20px;
}

.account-form label {
    display: block;
    margin-bottom: 8px;
    color: var(--black);
    font-size: 13px;
    font-weight: 700;
}

.account-form input {
    width: 100%;
    min-height: 50px;
    padding: 0 15px;
    border: 1px solid #dddddd;
    border-radius: 9px;
    outline: none;
    background: #fafafa;
    color: var(--text);
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}

.account-form input:focus {
    border-color: var(--gold);
    background: var(--white);
    box-shadow: 0 0 0 4px rgba(212, 175, 55, 0.12);
}

.account-form input[readonly] {
    color: #777777;
    background: #f0f0f0;
    cursor: not-allowed;
}

.form-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

/* ==========================================
   TABLET ÉS MOBIL
========================================== */

@media (max-width: 950px) {
    .account-layout {
        grid-template-columns: 1fr;
    }

    .account-sidebar {
        position: static;
    }

    .account-menu {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .account-menu-item {
        justify-content: center;
    }

    .account-stat-grid,
    .account-info-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 620px) {
    .account-hero {
        padding: 55px 0;
    }

    .account-section {
        padding: 45px 0 70px;
    }

    .account-menu {
        grid-template-columns: 1fr 1fr;
    }

    .account-menu-item {
        justify-content: flex-start;
        font-size: 12px;
    }

    .account-stat-grid {
        grid-template-columns: 1fr;
    }

    .account-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .account-info-card,
    .account-form {
        padding: 21px;
    }

    .form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }
}/* ==========================================
   BEJELENTKEZÉS ÉS REGISZTRÁCIÓ
========================================== */

.auth-page {
    min-height: 700px;
    background:
        radial-gradient(
            circle at top left,
            rgba(212, 175, 55, 0.14),
            transparent 32%
        ),
        var(--gray);
}

.auth-section {
    padding: 75px 0 95px;
}

.auth-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 520px;
    align-items: center;
    gap: 70px;
}

.auth-intro {
    padding: 50px 0;
}

.auth-intro h1 {
    max-width: 650px;
    margin: 15px 0 22px;
    color: var(--black);
    font-size: clamp(44px, 5vw, 70px);
    line-height: 1.04;
    letter-spacing: -2px;
}

.auth-intro > p {
    max-width: 620px;
    margin-bottom: 34px;
    color: var(--muted);
    font-size: 17px;
}

.auth-benefits {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.auth-benefits div {
    display: flex;
    align-items: center;
    gap: 13px;
    color: var(--text);
    font-weight: 600;
}

.auth-benefits i {
    width: 42px;
    height: 42px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 11px;
    background: var(--gold);
    color: var(--black);
}

/* ==========================================
   AUTH KÁRTYA
========================================== */

.auth-card {
    padding: 38px;
    border: 1px solid rgba(212, 175, 55, 0.2);
    border-radius: 20px;
    background: var(--white);
    box-shadow: 0 22px 55px rgba(0, 0, 0, 0.11);
}

.auth-card-heading {
    margin-bottom: 28px;
}

.auth-card-heading h2 {
    margin-bottom: 8px;
    color: var(--black);
    font-size: 31px;
}

.auth-card-heading p {
    color: var(--muted);
    font-size: 14px;
}

.auth-card-heading a,
.label-row a,
.checkbox-field a {
    color: var(--gold-dark);
    font-weight: 700;
    text-decoration: none;
}

.auth-card-heading a:hover,
.label-row a:hover,
.checkbox-field a:hover {
    text-decoration: underline;
}

/* ==========================================
   AUTH ŰRLAP
========================================== */

.auth-form {
    display: flex;
    flex-direction: column;
    gap: 19px;
}

.auth-form .form-group {
    margin: 0;
}

.auth-form label {
    display: block;
    margin-bottom: 8px;
    color: var(--black);
    font-size: 13px;
    font-weight: 700;
}

.auth-form input {
    width: 100%;
    min-height: 52px;
    padding: 0 15px;
    border: 1px solid #dddddd;
    border-radius: 10px;
    outline: none;
    background: #fafafa;
    color: var(--text);
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}

.auth-form input:focus {
    border-color: var(--gold);
    background: var(--white);
    box-shadow: 0 0 0 4px rgba(212, 175, 55, 0.13);
}

.input-with-icon,
.password-input {
    position: relative;
}

.input-with-icon > i,
.password-input > i {
    position: absolute;
    top: 50%;
    left: 16px;
    z-index: 2;
    color: var(--gold-dark);
    transform: translateY(-50%);
}

.input-with-icon input,
.password-input input {
    padding-left: 45px;
}

.password-input input {
    padding-right: 52px;
}

.toggle-password {
    width: 44px;
    height: 44px;
    position: absolute;
    top: 4px;
    right: 5px;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
}

.toggle-password:hover {
    color: var(--gold-dark);
    background: rgba(212, 175, 55, 0.1);
}

.label-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
}

.label-row a {
    font-size: 12px;
}

/* ==========================================
   CHECKBOX
========================================== */

.checkbox-field {
    display: flex !important;
    align-items: flex-start;
    gap: 10px;
    color: var(--muted) !important;
    font-weight: 400 !important;
    line-height: 1.5;
    cursor: pointer;
}

.checkbox-field input {
    width: 18px;
    min-height: 18px;
    height: 18px;
    flex-shrink: 0;
    margin-top: 2px;
    accent-color: var(--gold);
}

/* ==========================================
   AUTH GOMB
========================================== */

.auth-submit-button {
    width: 100%;
    min-height: 54px;
    padding: 0 24px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border: none;
    border-radius: 10px;
    background:
        linear-gradient(
            90deg,
            var(--gold),
            #e5ca6c
        );
    color: var(--black);
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 12px 25px rgba(212, 175, 55, 0.25);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}

.auth-submit-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 30px rgba(212, 175, 55, 0.32);
}

.auth-security {
    margin-top: 24px;
    padding-top: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    border-top: 1px solid #eeeeee;
    color: var(--muted);
    font-size: 12px;
}

.auth-security i {
    color: var(--gold-dark);
}

/* ==========================================
   ÜZENETEK ÉS HIBÁK
========================================== */

.auth-message {
    margin-bottom: 20px;
    padding: 13px 15px;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 600;
}

.auth-message.success {
    border: 1px solid #a7d8ae;
    background: #edf9ef;
    color: #23622d;
}

.auth-message.error {
    border: 1px solid #f2b3b3;
    background: #fff0f0;
    color: #a32626;
}

.field-error {
    display: block;
    min-height: 18px;
    margin-top: 6px;
    color: var(--danger);
    font-size: 11px;
}

.has-error input {
    border-color: var(--danger);
    background: #fff7f7;
}

.password-help {
    display: block;
    margin-top: 7px;
    color: var(--muted);
    font-size: 11px;
}

.password-strength {
    margin-top: 9px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
}

.password-strength span {
    height: 4px;
    border-radius: 999px;
    background: #e4e4e4;
}

/* ==========================================
   AUTH RESZPONZÍV
========================================== */

@media (max-width: 980px) {
    .auth-layout {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .auth-intro {
        padding: 0;
        text-align: center;
    }

    .auth-intro > p {
        margin-left: auto;
        margin-right: auto;
    }

    .auth-benefits {
        max-width: 360px;
        margin: 0 auto;
        align-items: stretch;
        text-align: left;
    }

    .auth-card {
        max-width: 620px;
        width: 100%;
        margin: 0 auto;
    }
}

@media (max-width: 620px) {
    .auth-section {
        padding: 45px 0 70px;
    }

    .auth-intro h1 {
        font-size: 42px;
        letter-spacing: -1px;
    }

    .auth-card {
        padding: 24px;
        border-radius: 15px;
    }

    .form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .label-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 3px;
    }
}.topbar-logout-button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--white);
    cursor: pointer;
    transition: color 0.2s ease;
}

.topbar-logout-button:hover {
    color: var(--gold);
}

.topbar-logout-button i {
    color: var(--gold);
}

.topbar-logout-button[hidden] {
    display: none;
}/* ==========================================
   INIVOY KOSÁR OLDAL
========================================== */

.cart-page {
    min-height: 700px;
    background:
        radial-gradient(
            circle at top right,
            rgba(212, 175, 55, 0.1),
            transparent 30%
        ),
        var(--gray);
}

/* ==========================================
   KOSÁR HERO
========================================== */

.cart-hero {
    padding: 58px 0;
    color: var(--white);
    background:
        linear-gradient(
            110deg,
            rgba(10, 10, 10, 0.98),
            rgba(45, 37, 15, 0.93)
        );
}

.cart-hero .shop-label {
    display: inline-flex;
    margin-bottom: 13px;
    padding: 6px 14px;
    border-radius: 999px;
    background: var(--gold);
    color: var(--black);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.8px;
}

.cart-hero h1 {
    margin-bottom: 8px;
    color: var(--white);
    font-size: clamp(38px, 5vw, 56px);
    line-height: 1.1;
}

.cart-hero p {
    max-width: 620px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 16px;
}

/* ==========================================
   KOSÁR ELRENDEZÉS
========================================== */

.cart-section {
    padding: 55px 0 85px;
}

.cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 365px;
    align-items: start;
    gap: 28px;
}

.cart-content {
    min-width: 0;
}

.cart-title-row {
    min-height: 78px;
    margin-bottom: 18px;
    padding: 15px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    border: 1px solid rgba(212, 175, 55, 0.14);
    border-radius: 14px;
    background: var(--white);
    box-shadow: var(--shadow);
}

.cart-title-row .section-label {
    margin-bottom: 4px;
    padding: 4px 11px;
    font-size: 10px;
}

.cart-title-row h2 {
    color: var(--black);
    font-size: 22px;
    line-height: 1.3;
}

#cart-page-count {
    color: var(--gold-dark);
    font-size: 15px;
}

/* ==========================================
   KOSÁR ÜRÍTÉSE
========================================== */

.clear-cart-button {
    min-height: 40px;
    padding: 0 14px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border: 1px solid #e1bcbc;
    border-radius: 8px;
    background: #fff8f8;
    color: #a32929;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition:
        color 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease;
}

.clear-cart-button:hover {
    border-color: #b42318;
    background: #b42318;
    color: var(--white);
}

.clear-cart-button[hidden] {
    display: none;
}

/* ==========================================
   KOSÁR ÜZENET
========================================== */

.cart-message {
    margin-bottom: 14px;
    padding: 12px 16px;
    border: 1px solid rgba(212, 175, 55, 0.35);
    border-radius: 9px;
    background: #fffaf0;
    color: #725800;
    font-size: 13px;
    font-weight: 600;
}

.cart-message[hidden] {
    display: none;
}

/* ==========================================
   TERMÉKLISTA
========================================== */

.cart-items-container {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Egy termék kompakt sora */

.cart-item {
    position: relative;
    min-height: 132px;
    padding: 14px;
    display: grid;
    grid-template-columns:
        105px
        minmax(160px, 1fr)
        125px
        120px
        38px;
    align-items: center;
    gap: 16px;
    overflow: hidden;
    border: 1px solid #e7e7e7;
    border-radius: 13px;
    background: var(--white);
    box-shadow: 0 7px 22px rgba(0, 0, 0, 0.06);
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease;
}

.cart-item:hover {
    border-color: rgba(212, 175, 55, 0.5);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.09);
    transform: translateY(-2px);
}

/* ==========================================
   KOSÁR TERMÉKKÉP
========================================== */

.cart-item-image {
    width: 105px;
    height: 105px;
    min-width: 105px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #eeeeee;
    border-radius: 10px;
    background: #fafafa;
}

/*
   Ez akadályozza meg, hogy a kép óriási legyen.
   A !important felülírja az esetleges más képszabályokat.
*/

.cart-item-image img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    display: block;
    object-fit: contain;
    object-position: center;
}

.cart-item-image-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--gold-dark);
    font-size: 26px;
    background: #fafafa;
}

/* ==========================================
   TERMÉK INFORMÁCIÓ
========================================== */

.cart-item-info {
    min-width: 0;
}

.cart-item-category {
    display: block;
    margin-bottom: 5px;
    overflow: hidden;
    color: var(--gold-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.7px;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.cart-item-info h3 {
    max-width: 100%;
    margin: 0 0 9px;
    overflow: hidden;
    color: var(--black);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cart-item-unit-price {
    display: block;
    color: var(--muted);
    font-size: 11px;
}

.cart-item-unit-price strong {
    color: var(--text);
    font-size: 12px;
}

/* ==========================================
   MENNYISÉG
========================================== */

.cart-item-quantity,
.cart-item-price {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 7px;
}

.cart-item-label {
    color: #999999;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.7px;
    text-transform: uppercase;
}

.quantity-control {
    height: 36px;
    display: inline-grid;
    grid-template-columns: 34px 36px 34px;
    align-items: center;
    overflow: hidden;
    border: 1px solid #dddddd;
    border-radius: 8px;
    background: #fafafa;
}

.quantity-control button {
    width: 34px;
    height: 34px;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    background: transparent;
    color: var(--black);
    font-size: 10px;
    cursor: pointer;
    transition:
        color 0.2s ease,
        background 0.2s ease;
}

.quantity-control button:hover {
    background: var(--gold);
    color: var(--black);
}

.quantity-value {
    min-width: 36px;
    color: var(--black);
    font-size: 13px;
    font-weight: 800;
    text-align: center;
}

/* ==========================================
   TERMÉK ÁRA
========================================== */

.cart-item-total {
    color: var(--black);
    font-size: 15px;
    font-weight: 800;
    white-space: nowrap;
}

/* ==========================================
   TERMÉK TÖRLÉSE
========================================== */

.remove-cart-item {
    width: 36px;
    height: 36px;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #e1e1e1;
    border-radius: 8px;
    background: transparent;
    color: #999999;
    font-size: 13px;
    cursor: pointer;
    transition:
        color 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease;
}

.remove-cart-item:hover {
    border-color: #b42318;
    background: #b42318;
    color: var(--white);
}

/* ==========================================
   ÜRES KOSÁR
========================================== */

.empty-cart {
    min-height: 380px;
    padding: 45px 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 13px;
    border: 1px solid rgba(212, 175, 55, 0.15);
    border-radius: 15px;
    background: var(--white);
    text-align: center;
    box-shadow: var(--shadow);
}

.empty-cart-icon {
    width: 78px;
    height: 78px;
    margin-bottom: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.15);
    color: var(--gold-dark);
    font-size: 31px;
}

.empty-cart h3 {
    color: var(--black);
    font-size: 22px;
}

.empty-cart p {
    max-width: 430px;
    color: var(--muted);
    font-size: 14px;
}

.empty-cart .btn-primary {
    min-height: 47px;
    margin-top: 8px;
    gap: 9px;
}

/* ==========================================
   KOSÁR ÖSSZESÍTÉS
========================================== */

.cart-summary {
    position: sticky;
    top: 22px;
    overflow: hidden;
    border: 1px solid rgba(212, 175, 55, 0.24);
    border-radius: 16px;
    background: var(--white);
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.1);
}

.cart-summary-header {
    min-height: 95px;
    padding: 20px 22px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--white);
    background:
        linear-gradient(
            135deg,
            var(--black),
            #332a10
        );
}

.cart-summary-header .section-label {
    margin-bottom: 5px;
    padding: 4px 10px;
    font-size: 9px;
}

.cart-summary-header h2 {
    color: var(--white);
    font-size: 22px;
}

.cart-summary-header > i {
    color: var(--gold);
    font-size: 28px;
}

.cart-summary-content {
    padding: 22px 22px 14px;
}

.summary-row {
    min-height: 38px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    color: var(--muted);
    font-size: 13px;
}

.summary-row strong {
    color: var(--black);
    font-size: 13px;
}

.discount-row strong {
    color: #21813b;
}

.summary-divider {
    height: 1px;
    margin: 12px 0;
    background: #e7e7e7;
}

.summary-total {
    min-height: 54px;
    color: var(--black);
    font-size: 16px;
    font-weight: 800;
}

.summary-total strong {
    color: var(--gold-dark);
    font-size: 22px;
}

.cart-tax-note {
    margin-top: 2px;
    color: #999999;
    font-size: 10px;
    text-align: right;
}

/* ==========================================
   KUPON
========================================== */

.coupon-box {
    margin: 5px 22px 20px;
    padding: 15px;
    border: 1px dashed rgba(212, 175, 55, 0.55);
    border-radius: 10px;
    background: #fffdf6;
}

.coupon-box label {
    display: block;
    margin-bottom: 8px;
    color: var(--black);
    font-size: 11px;
    font-weight: 800;
}

.coupon-input-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 7px;
}

.coupon-input-row input {
    width: 100%;
    min-width: 0;
    height: 40px;
    padding: 0 11px;
    border: 1px solid #dddddd;
    border-radius: 7px;
    outline: none;
    background: var(--white);
    font-size: 11px;
}

.coupon-input-row input:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.12);
}

.coupon-input-row button {
    min-width: 78px;
    padding: 0 10px;
    border: none;
    border-radius: 7px;
    background: var(--gold);
    color: var(--black);
    font-size: 10px;
    font-weight: 800;
    cursor: pointer;
}

.coupon-input-row button:hover {
    background: var(--gold-dark);
    color: var(--white);
}

.coupon-message {
    margin-top: 8px;
    font-size: 10px;
    font-weight: 700;
}

.coupon-message.success {
    color: #247538;
}

.coupon-message.error {
    color: #b42318;
}

.coupon-message[hidden] {
    display: none;
}

/* ==========================================
   PÉNZTÁR GOMB
========================================== */

.checkout-button {
    min-height: 50px;
    margin: 0 22px 12px;
    padding: 0 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 9px;
    background:
        linear-gradient(
            90deg,
            var(--gold),
            #e5ca6c
        );
    color: var(--black);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 9px 20px rgba(212, 175, 55, 0.23);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.checkout-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 13px 25px rgba(212, 175, 55, 0.32);
}

.checkout-button.disabled {
    background: #dddddd;
    color: #929292;
    box-shadow: none;
    cursor: not-allowed;
    pointer-events: auto;
}

.continue-shopping {
    min-height: 40px;
    margin: 0 22px 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}

.continue-shopping:hover {
    color: var(--gold-dark);
}

/* ==========================================
   BIZTONSÁG ÉS SZÁLLÍTÁS
========================================== */

.cart-security {
    margin: 0 22px 17px;
    padding: 14px;
    display: flex;
    align-items: center;
    gap: 11px;
    border-radius: 9px;
    background: #f7f7f7;
}

.cart-security > i {
    color: var(--gold-dark);
    font-size: 20px;
}

.cart-security div {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.cart-security strong {
    color: var(--black);
    font-size: 11px;
}

.cart-security span {
    color: var(--muted);
    font-size: 9px;
}

.cart-delivery-info {
    border-top: 1px solid #eeeeee;
}

.cart-delivery-info > div {
    padding: 13px 22px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    border-bottom: 1px solid #eeeeee;
}

.cart-delivery-info > div:last-child {
    border-bottom: none;
}

.cart-delivery-info i {
    width: 20px;
    padding-top: 2px;
    color: var(--gold-dark);
    text-align: center;
}

.cart-delivery-info span {
    display: flex;
    flex-direction: column;
    color: var(--muted);
    font-size: 9px;
    line-height: 1.5;
}

.cart-delivery-info strong {
    color: var(--black);
    font-size: 10px;
}

/* ==========================================
   KOSÁR TABLET
========================================== */

@media (max-width: 1050px) {
    .cart-layout {
        grid-template-columns: 1fr;
    }

    .cart-summary {
        position: static;
    }

    .cart-item {
        grid-template-columns:
            100px
            minmax(150px, 1fr)
            115px
            110px
            38px;
    }
}

/* ==========================================
   KOSÁR KISEBB TABLET
========================================== */

@media (max-width: 760px) {
    .cart-section {
        padding: 35px 0 65px;
    }

    .cart-title-row {
        align-items: flex-start;
    }

    .cart-item {
        min-height: auto;
        grid-template-columns: 88px minmax(0, 1fr) 36px;
        grid-template-areas:
            "image info remove"
            "image quantity quantity"
            "image price price";
        align-items: start;
        gap: 9px 12px;
        padding: 12px;
    }

    .cart-item-image {
        grid-area: image;
        width: 88px;
        height: 88px;
        min-width: 88px;
    }

    .cart-item-info {
        grid-area: info;
        padding-top: 1px;
    }

    .cart-item-info h3 {
        margin-bottom: 5px;
        font-size: 13px;
    }

    .cart-item-unit-price {
        font-size: 10px;
    }

    .cart-item-quantity {
        grid-area: quantity;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .cart-item-price {
        grid-area: price;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .remove-cart-item {
        grid-area: remove;
        width: 34px;
        height: 34px;
    }

    .quantity-control {
        height: 32px;
        grid-template-columns: 30px 32px 30px;
    }

    .quantity-control button {
        width: 30px;
        height: 30px;
    }

    .quantity-value {
        min-width: 32px;
        font-size: 12px;
    }

    .cart-item-total {
        font-size: 14px;
    }
}

/* ==========================================
   KOSÁR MOBIL
========================================== */

@media (max-width: 480px) {
    .cart-hero {
        padding: 43px 0;
    }

    .cart-hero h1 {
        font-size: 37px;
    }

    .cart-title-row {
        padding: 13px;
    }

    .cart-title-row h2 {
        font-size: 18px;
    }

    .clear-cart-button {
        width: 38px;
        min-width: 38px;
        height: 38px;
        padding: 0;
        font-size: 0;
    }

    .clear-cart-button i {
        font-size: 13px;
    }

    .cart-item {
        grid-template-columns: 76px minmax(0, 1fr) 31px;
        gap: 8px 10px;
    }

    .cart-item-image {
        width: 76px;
        height: 76px;
        min-width: 76px;
    }

    .cart-item-category {
        font-size: 8px;
    }

    .cart-item-info h3 {
        font-size: 12px;
    }

    .remove-cart-item {
        width: 30px;
        height: 30px;
        font-size: 11px;
    }

    .cart-item-label {
        font-size: 8px;
    }

    .cart-summary-header,
    .cart-summary-content {
        padding-left: 17px;
        padding-right: 17px;
    }

    .coupon-box,
    .checkout-button,
    .continue-shopping,
    .cart-security {
        margin-left: 17px;
        margin-right: 17px;
    }

    .cart-delivery-info > div {
        padding-left: 17px;
        padding-right: 17px;
    }
}
/* ==========================================
   TERMÉKLISTA OLDAL – KIZÁRÓLAG .catalog-page
   A bejelentkezési és regisztrációs oldalt nem érinti.
========================================== */

.catalog-page {
    min-height: 650px;
    background: #f7f7f7;
}

.catalog-heading {
    padding: 34px 0 24px;
    background: #ffffff;
    border-bottom: 1px solid #ededed;
}

.catalog-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    color: #777777;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.02em;
}

.catalog-breadcrumb i {
    color: var(--gold);
    font-size: 9px;
}

.catalog-heading h1 {
    margin: 0 0 4px;
    color: var(--black);
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.15;
}

.catalog-heading p {
    margin: 0;
    color: #777777;
    font-size: 15px;
}

.catalog-section {
    padding: 34px 0 80px;
}

.catalog-layout {
    display: grid;
    grid-template-columns: 270px minmax(0, 1fr);
    align-items: start;
    gap: 24px;
}

.catalog-sidebar {
    position: sticky;
    top: 20px;
}

.catalog-filter {
    overflow: hidden;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 7px 24px rgba(0, 0, 0, 0.05);
}

.catalog-filter-block {
    padding: 22px 20px;
    border-bottom: 1px solid #ededed;
}

.catalog-filter-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 18px;
}

.catalog-filter-title h2 {
    margin: 0;
    color: var(--black);
    font-size: 16px;
    font-weight: 700;
}

.catalog-filter-title i {
    color: #222222;
    font-size: 11px;
}

.catalog-radio-list {
    display: grid;
    gap: 12px;
}

.catalog-radio,
.catalog-checkbox {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #555555;
    font-size: 13px;
    cursor: pointer;
    user-select: none;
}

.catalog-radio input,
.catalog-checkbox input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.catalog-radio-mark {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    border: 1px solid #c9c9c9;
    border-radius: 50%;
    background: #ffffff;
    transition: 0.2s ease;
}

.catalog-radio input:checked + .catalog-radio-mark {
    border: 5px solid var(--gold);
}

.catalog-filter-label {
    min-width: 0;
    flex: 1;
}

.catalog-filter-count {
    min-width: 24px;
    padding: 2px 7px;
    border-radius: 999px;
    background: #f1f1f1;
    color: #777777;
    text-align: center;
    font-size: 11px;
    font-weight: 600;
}

.catalog-price-inputs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    margin-bottom: 12px;
}

.catalog-price-inputs input,
.catalog-sort-form select {
    width: 100%;
    height: 42px;
    border: 1px solid #dddddd;
    border-radius: 6px;
    outline: none;
    background: #ffffff;
    color: #444444;
    font-size: 12px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.catalog-price-inputs input {
    min-width: 0;
    padding: 0 10px;
}

.catalog-price-inputs input:focus,
.catalog-sort-form select:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.14);
}

.catalog-outline-button {
    width: 100%;
    min-height: 42px;
    border: 1px solid var(--gold);
    border-radius: 6px;
    background: #ffffff;
    color: var(--gold-dark);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.2s ease;
}

.catalog-outline-button:hover {
    background: var(--gold);
    color: var(--black);
}

.catalog-checkbox-mark {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #c9c9c9;
    border-radius: 3px;
    background: #ffffff;
    color: #ffffff;
    font-size: 10px;
    transition: 0.2s ease;
}

.catalog-checkbox input:checked + .catalog-checkbox-mark {
    border-color: var(--gold);
    background: var(--gold);
    color: var(--black);
}

.catalog-reset-button {
    min-height: 48px;
    margin: 18px 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    border-radius: 6px;
    background: var(--gold);
    color: var(--black);
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    transition: 0.2s ease;
}

.catalog-reset-button:hover {
    background: var(--gold-dark);
    color: #ffffff;
}

.catalog-results {
    min-width: 0;
}

.catalog-toolbar {
    min-height: 68px;
    margin-bottom: 20px;
    padding: 12px 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 7px 24px rgba(0, 0, 0, 0.05);
}

.catalog-toolbar-left {
    display: flex;
    align-items: center;
    gap: 13px;
}

.catalog-view-button {
    width: 36px;
    height: 36px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #e2e2e2;
    border-radius: 6px;
    color: #777777;
}

.catalog-view-button.active {
    border-color: var(--gold);
    background: rgba(212, 175, 55, 0.12);
    color: var(--gold-dark);
}

.catalog-result-count {
    color: #666666;
    font-size: 13px;
}

.catalog-sort-form {
    width: min(230px, 100%);
}

.catalog-sort-form select {
    padding: 0 38px 0 13px;
    cursor: pointer;
}

.catalog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.catalog-product-card {
    min-width: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    border: 1px solid #e9e9e9;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.045);
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.catalog-product-card:hover {
    transform: translateY(-4px);
    border-color: rgba(212, 175, 55, 0.55);
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.09);
}

.catalog-product-image {
    position: relative;
    height: 235px;
    padding: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fbfbfb;
    border-bottom: 1px solid #f0f0f0;
}

.catalog-product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.25s ease;
}

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

.catalog-badge {
    position: absolute;
    z-index: 2;
    top: 15px;
    left: 15px;
    padding: 5px 10px;
    border-radius: 999px;
    color: #ffffff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.catalog-badge-sale {
    background: #d93838;
}

.catalog-badge-featured {
    background: #2d7b45;
}

.catalog-wishlist {
    position: absolute;
    z-index: 2;
    top: 14px;
    right: 14px;
    width: 36px;
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #eeeeee;
    border-radius: 50%;
    background: #ffffff;
    color: #222222;
    cursor: pointer;
    box-shadow: 0 5px 14px rgba(0, 0, 0, 0.08);
    transition: 0.2s ease;
}

.catalog-wishlist:hover {
    border-color: var(--gold);
    color: var(--gold-dark);
    transform: translateY(-1px);
}

.catalog-product-content {
    flex: 1;
    padding: 18px;
    display: flex;
    flex-direction: column;
}

.catalog-product-category {
    display: block;
    margin-bottom: 7px;
    color: #8a8a8a;
    font-size: 11px;
}

.catalog-product-content h2 {
    min-height: 44px;
    margin: 0 0 8px;
    color: var(--black);
    font-size: 16px;
    line-height: 1.35;
    font-weight: 700;
}

.catalog-rating {
    display: flex;
    gap: 2px;
    margin-bottom: 17px;
    color: #f5ad00;
    font-size: 12px;
}

.catalog-product-bottom {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.catalog-price {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 8px;
}

.catalog-price del {
    color: #999999;
    font-size: 12px;
}

.catalog-price strong {
    color: var(--black);
    font-size: 21px;
    line-height: 1.2;
}

.catalog-cart-button {
    width: 100%;
    min-height: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    border: 0;
    border-radius: 6px;
    background: var(--gold);
    color: var(--black);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.2s ease;
}

.catalog-cart-button:hover:not(:disabled) {
    background: var(--gold-dark);
    color: #ffffff;
}

.catalog-cart-disabled {
    background: #e5e5e5;
    color: #8b8b8b;
    cursor: not-allowed;
}

.catalog-empty-state {
    padding: 70px 24px;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    background: #ffffff;
    text-align: center;
    box-shadow: 0 7px 24px rgba(0, 0, 0, 0.05);
}

.catalog-empty-state > i {
    margin-bottom: 16px;
    color: var(--gold);
    font-size: 42px;
}

.catalog-empty-state h2 {
    margin-bottom: 6px;
    font-size: 23px;
}

.catalog-empty-state p {
    margin-bottom: 20px;
    color: #777777;
}

.catalog-empty-state a {
    display: inline-flex;
    padding: 11px 18px;
    border-radius: 6px;
    background: var(--gold);
    color: var(--black);
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
}

@media (min-width: 1420px) {
    .catalog-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 1050px) {
    .catalog-layout {
        grid-template-columns: 240px minmax(0, 1fr);
    }

    .catalog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .catalog-heading {
        padding: 26px 0 20px;
    }

    .catalog-section {
        padding-top: 22px;
    }

    .catalog-layout {
        grid-template-columns: 1fr;
    }

    .catalog-sidebar {
        position: static;
    }

    .catalog-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .catalog-sort-form {
        width: 100%;
    }
}

@media (max-width: 520px) {
    .catalog-grid {
        grid-template-columns: 1fr;
    }

    .catalog-product-image {
        height: 265px;
    }

    .catalog-price-inputs {
        grid-template-columns: 1fr;
    }
}

/* ==========================================
   INIVOY PÉNZTÁR
========================================== */
.checkout-page { background: #f7f7f5; min-height: 70vh; }
.checkout-hero { padding: 52px 0 32px; background: linear-gradient(135deg, #fffaf0, #f7f7f5 55%); }
.checkout-hero h1 { margin: 8px 0 8px; font-size: clamp(34px, 4vw, 52px); }
.checkout-hero p { margin: 0; color: #777; }
.checkout-section { padding: 36px 0 70px; }
.checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 28px; align-items: start; }
.checkout-form-column { display: grid; gap: 22px; }
.checkout-card, .checkout-summary-card, .checkout-success-card { background: #fff; border: 1px solid #ece8dc; border-radius: 18px; box-shadow: 0 15px 40px rgba(0,0,0,.07); }
.checkout-card { padding: 26px; }
.checkout-card-heading { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; }
.checkout-card-heading h2 { margin: 3px 0 0; font-size: 22px; }
.checkout-card-heading > i { margin-left: auto; color: #d4af37; font-size: 25px; }
.checkout-step { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; background: #d4af37; color: #111; font-weight: 900; }
.checkout-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.checkout-full { grid-column: 1 / -1; }
.checkout-card .form-group { display: grid; gap: 8px; }
.checkout-card .form-group label { font-weight: 700; color: #222; }
.checkout-card input, .checkout-card textarea { width: 100%; border: 1px solid #dedede; border-radius: 10px; padding: 13px 14px; background: #fafafa; font: inherit; transition: border-color .2s, box-shadow .2s; }
.checkout-card input:focus, .checkout-card textarea:focus { outline: 0; border-color: #d4af37; box-shadow: 0 0 0 3px rgba(212,175,55,.14); }
.checkout-payment-option { display: block; cursor: pointer; }
.checkout-payment-option + .checkout-payment-option { margin-top: 12px; }
.checkout-payment-option > input { position: absolute; opacity: 0; pointer-events: none; }
.checkout-payment-option > span { display: flex; gap: 14px; align-items: center; border: 1px solid #e3e3e3; border-radius: 12px; padding: 16px; transition: .2s; }
.checkout-payment-option > input:checked + span { border-color: #d4af37; background: #fffaf0; box-shadow: 0 0 0 3px rgba(212,175,55,.1); }
.checkout-payment-option i { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 10px; background: #d4af37; color: #111; }
.checkout-payment-option strong, .checkout-payment-option small { display: block; }
.checkout-payment-option small { margin-top: 3px; color: #777; }
.checkout-summary-card { position: sticky; top: 24px; padding: 24px; }
.checkout-items { display: grid; gap: 14px; max-height: 360px; overflow: auto; padding-right: 4px; }
.checkout-item { display: grid; grid-template-columns: 58px minmax(0,1fr) auto; gap: 12px; align-items: center; padding-bottom: 14px; border-bottom: 1px solid #eee; }
.checkout-item-image { position: relative; width: 58px; height: 58px; display: grid; place-items: center; border-radius: 10px; background: #f5f5f5; overflow: visible; }
.checkout-item-image img { width: 100%; height: 100%; object-fit: contain; border-radius: 10px; }
.checkout-item-image > span { position: absolute; top: -7px; right: -7px; min-width: 22px; height: 22px; padding: 0 5px; display: grid; place-items: center; border-radius: 999px; background: #111; color: #fff; font-size: 11px; font-weight: 800; }
.checkout-item strong, .checkout-item small { display: block; }
.checkout-item small { margin-top: 3px; color: #888; }
.checkout-item b { white-space: nowrap; }
.checkout-summary-lines { margin-top: 20px; display: grid; gap: 12px; }
.checkout-summary-lines > div { display: flex; justify-content: space-between; gap: 15px; }
.checkout-summary-total { margin-top: 6px; padding-top: 16px; border-top: 1px solid #ddd; font-size: 20px; }
.checkout-submit { width: 100%; margin-top: 22px; border: 0; border-radius: 11px; padding: 15px; background: linear-gradient(90deg, #d4af37, #ead77f); color: #111; font-weight: 900; font-size: 15px; cursor: pointer; }
.checkout-submit:disabled { opacity: .55; cursor: not-allowed; }
.checkout-security-note { margin: 14px 0 0; color: #888; text-align: center; font-size: 12px; }
.checkout-security-note i { color: #d4af37; }
.checkout-empty-cart { padding: 28px 10px; display: grid; justify-items: center; gap: 9px; color: #777; text-align: center; }
.checkout-empty-cart i { font-size: 34px; color: #d4af37; }
.checkout-empty-cart a { color: #b89220; font-weight: 800; }
.checkout-alert { margin-bottom: 24px; padding: 18px 20px; border: 1px solid #efb1b1; border-radius: 12px; background: #fff1f1; color: #8b2323; }
.checkout-alert ul { margin: 8px 0 0 20px; }
.checkout-success-card { max-width: 680px; margin: 20px auto; padding: 48px; text-align: center; }
.checkout-success-icon { width: 74px; height: 74px; margin: 0 auto 18px; display: grid; place-items: center; border-radius: 50%; background: #d4af37; color: #111; font-size: 31px; }
.checkout-success-card h2 { margin: 10px 0; font-size: 34px; }
.checkout-order-number { display: inline-block; margin: 12px 0; padding: 11px 18px; border-radius: 9px; background: #111; color: #fff; letter-spacing: 1px; }
.checkout-success-total { font-size: 19px; }
.checkout-success-card .btn-primary { display: inline-flex; margin-top: 16px; }
@media (max-width: 980px) { .checkout-layout { grid-template-columns: 1fr; } .checkout-summary-card { position: static; } }
@media (max-width: 620px) { .checkout-form-grid { grid-template-columns: 1fr; } .checkout-full { grid-column: auto; } .checkout-card, .checkout-summary-card { padding: 18px; } .checkout-success-card { padding: 30px 20px; } }

/* ==========================================
   INIVOY TERMÉK RÉSZLETEZŐ OLDAL
========================================== */
.product-detail-page { min-height: 70vh; background: #f7f7f5; }
.product-detail-breadcrumb-section { padding: 22px 0; background: #fff; border-bottom: 1px solid #ececec; }
.product-detail-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; color: #888; font-size: 13px; }
.product-detail-breadcrumb a { color: #555; text-decoration: none; }
.product-detail-breadcrumb a:hover { color: #bd9418; }
.product-detail-breadcrumb i { font-size: 9px; color: #c7c7c7; }
.product-detail-main-section { padding: 54px 0 66px; }
.product-detail-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(420px, .88fr); gap: 58px; align-items: start; }
.product-detail-gallery, .product-detail-info { min-width: 0; }
.product-detail-main-image { position: relative; min-height: 570px; display: grid; place-items: center; padding: 45px; overflow: hidden; background: #fff; border: 1px solid #ece9df; border-radius: 22px; box-shadow: 0 18px 50px rgba(0,0,0,.07); }
.product-detail-main-image img { width: 100%; height: 480px; object-fit: contain; transition: transform .35s ease; }
.product-detail-main-image:hover img { transform: scale(1.035); }
.product-detail-badge { position: absolute; z-index: 2; top: 22px; left: 22px; padding: 8px 13px; border-radius: 999px; background: #d8ae25; color: #111; font-size: 12px; font-weight: 800; }
.product-detail-category { display: inline-block; margin-bottom: 10px; color: #b48b12; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; font-size: 12px; }
.product-detail-info h1 { margin: 0; color: #111; font-size: clamp(34px, 4vw, 52px); line-height: 1.08; }
.product-detail-rating-row { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin: 18px 0 24px; color: #888; font-size: 13px; }
.product-detail-rating { display: flex; gap: 4px; color: #e9ae00; }
.product-detail-price-block { display: flex; align-items: baseline; flex-wrap: wrap; gap: 14px; margin-bottom: 20px; }
.product-detail-price-block del { color: #999; font-size: 19px; }
.product-detail-price-block strong { color: #111; font-size: 35px; }
.product-detail-stock { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 24px; padding: 9px 13px; border-radius: 9px; font-weight: 700; font-size: 13px; }
.product-detail-stock.is-in-stock { color: #24783b; background: #edf8ef; }
.product-detail-stock.is-out-of-stock { color: #a12e2e; background: #fff0f0; }
.product-detail-description { padding: 22px 0; border-top: 1px solid #e1e1dd; border-bottom: 1px solid #e1e1dd; color: #666; line-height: 1.8; }
.product-detail-purchase-row { display: grid; grid-template-columns: 126px minmax(190px, 1fr) 52px; gap: 12px; margin-top: 26px; }
.product-detail-quantity { height: 52px; display: grid; grid-template-columns: 38px 1fr 38px; overflow: hidden; border: 1px solid #dcdcdc; border-radius: 11px; background: #fff; }
.product-detail-quantity button { border: 0; background: transparent; color: #333; cursor: pointer; font-size: 20px; }
.product-detail-quantity button:hover { background: #f2f2f2; }
.product-detail-quantity input { width: 100%; min-width: 0; border: 0; outline: 0; text-align: center; font: inherit; font-weight: 800; appearance: textfield; }
.product-detail-quantity input::-webkit-inner-spin-button, .product-detail-quantity input::-webkit-outer-spin-button { appearance: none; margin: 0; }
.product-detail-primary-button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 0 22px; border: 0; border-radius: 11px; background: linear-gradient(90deg, #d5a91f, #ead574); color: #111; text-decoration: none; font: inherit; font-weight: 900; cursor: pointer; box-shadow: 0 9px 24px rgba(196,151,16,.2); }
.product-detail-primary-button:hover { transform: translateY(-1px); filter: brightness(.98); }
.product-detail-wishlist-button { width: 52px; height: 52px; display: grid; place-items: center; border: 1px solid #dedede; border-radius: 11px; background: #fff; color: #222; cursor: pointer; font-size: 18px; }
.product-detail-wishlist-button:hover { color: #c79d1f; border-color: #d6b247; }
.product-detail-benefits { display: grid; gap: 12px; margin-top: 30px; }
.product-detail-benefits > div { display: flex; align-items: center; gap: 13px; padding: 12px 0; }
.product-detail-benefits i { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 11px; background: #e1b72f; color: #111; }
.product-detail-benefits strong, .product-detail-benefits small { display: block; }
.product-detail-benefits small { margin-top: 2px; color: #888; }
.product-related-section { padding: 62px 0 78px; background: #fff; border-top: 1px solid #ececec; }
.product-related-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.product-related-heading span { color: #b48b12; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.product-related-heading h2 { margin: 5px 0 0; font-size: 32px; }
.product-related-heading a { color: #111; text-decoration: none; font-weight: 800; }
.product-related-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
.product-not-found { padding: 100px 20px; text-align: center; }
.product-not-found i { color: #d4af37; font-size: 62px; }
.product-not-found h1 { margin: 20px 0 8px; font-size: 38px; }
.product-not-found p { margin-bottom: 24px; color: #777; }
.product-card-link { display: block; color: inherit; text-decoration: none; }
.catalog-product-image > .product-card-link { width: 100%; height: 100%; display: grid; place-items: center; }
.catalog-product-content h2 a, .product-content h3 a { color: inherit; text-decoration: none; }
.catalog-product-content h2 a:hover, .product-content h3 a:hover { color: #b58b10; }
@media (max-width: 1050px) { .product-detail-layout { grid-template-columns: 1fr 1fr; gap: 34px; } .product-detail-main-image { min-height: 480px; } .product-detail-main-image img { height: 390px; } .product-related-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 760px) { .product-detail-main-section { padding-top: 30px; } .product-detail-layout { grid-template-columns: 1fr; } .product-detail-main-image { min-height: 390px; padding: 28px; } .product-detail-main-image img { height: 320px; } .product-detail-info h1 { font-size: 36px; } .product-detail-purchase-row { grid-template-columns: 120px 1fr 52px; } }
@media (max-width: 520px) { .product-detail-purchase-row { grid-template-columns: 1fr 52px; } .product-detail-quantity { grid-column: 1 / -1; } .product-related-grid { grid-template-columns: 1fr; } .product-related-heading { align-items: start; flex-direction: column; } }

/* ==========================================
   FIÓK - RENDELÉSEIM
========================================== */
.account-orders-list {
    display: grid;
    gap: 16px;
}

.account-order-card,
.account-order-detail {
    border: 1px solid rgba(212, 175, 55, 0.18);
    border-radius: 16px;
    background: var(--white);
    box-shadow: var(--shadow);
}

.account-order-card {
    padding: 22px 24px;
}

.account-order-card-main,
.account-order-card-footer,
.account-order-detail-header,
.account-order-item,
.account-order-summary > div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
}

.account-order-card-main {
    padding-bottom: 18px;
    border-bottom: 1px solid #eeeeee;
}

.account-order-card-main > div,
.account-order-card-footer > div,
.account-order-detail-header > div {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.account-order-number,
.account-order-detail-header h3 {
    color: var(--black);
    font-size: 18px;
    font-weight: 800;
}

.account-order-card small,
.account-order-detail-header span,
.account-order-item-info span,
.account-order-item-info small {
    color: var(--muted);
    font-size: 12px;
}

.account-order-card-footer {
    padding-top: 18px;
}

.account-order-card-footer span {
    color: var(--muted);
    font-size: 12px;
}

.account-order-card-footer strong {
    color: var(--black);
    font-size: 18px;
}

.account-order-open,
.account-order-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--gold-dark);
    font-weight: 700;
}

.account-order-open:hover,
.account-order-back:hover {
    color: var(--black);
}

.account-order-status {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 6px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

.account-order-status.status-pending { background: #fff4cc; color: #7a5900; }
.account-order-status.status-processing { background: #e8f1ff; color: #1757a6; }
.account-order-status.status-shipped { background: #eee9ff; color: #5e42a6; }
.account-order-status.status-completed { background: #e7f7ed; color: #18743a; }
.account-order-status.status-cancelled { background: #fdeaea; color: #a52a2a; }

.account-order-alert {
    margin-bottom: 20px;
    padding: 16px 18px;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #f1b7b7;
    border-radius: 10px;
    background: #fff1f1;
    color: #9d1c1c;
    font-weight: 600;
}

.account-order-detail {
    overflow: hidden;
}

.account-order-detail-header {
    padding: 24px 26px;
    background: linear-gradient(135deg, #171717, #302812);
    color: var(--white);
}

.account-order-detail-header h3 {
    color: var(--white);
}

.account-order-back {
    margin-bottom: 8px;
    color: var(--gold);
    font-size: 13px;
}

.account-order-meta-grid {
    padding: 24px 26px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    border-bottom: 1px solid #eeeeee;
}

.account-order-meta-grid > div {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    border-radius: 10px;
    background: #fafafa;
}

.account-order-meta-grid span {
    color: var(--muted);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.account-order-meta-grid strong {
    color: var(--black);
    font-size: 13px;
    line-height: 1.6;
}

.account-order-meta-grid small {
    color: var(--muted);
    font-size: 12px;
}

.account-order-items {
    padding: 8px 26px;
}

.account-order-item {
    padding: 18px 0;
    border-bottom: 1px solid #eeeeee;
}

.account-order-item:last-child {
    border-bottom: 0;
}

.account-order-item-image {
    width: 64px;
    height: 64px;
    flex: 0 0 64px;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    border-radius: 10px;
    background: #f2f2f2;
    color: var(--gold-dark);
}

.account-order-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.account-order-item-info {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.account-order-item-info strong {
    color: var(--black);
}

.account-order-item-total {
    color: var(--black);
    white-space: nowrap;
}

.account-order-summary {
    margin-left: auto;
    padding: 22px 26px 26px;
    width: min(100%, 430px);
}

.account-order-summary > div {
    padding: 8px 0;
}

.account-order-summary span {
    color: var(--muted);
}

.account-order-grand-total {
    margin-top: 8px;
    padding-top: 16px !important;
    border-top: 2px solid var(--gold);
    color: var(--black);
    font-size: 18px;
}

@media (max-width: 760px) {
    .account-order-meta-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 620px) {
    .account-order-card-main,
    .account-order-card-footer,
    .account-order-detail-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .account-order-card,
    .account-order-detail-header,
    .account-order-meta-grid,
    .account-order-items,
    .account-order-summary {
        padding-left: 18px;
        padding-right: 18px;
    }

    .account-order-item {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .account-order-item-info {
        min-width: calc(100% - 82px);
    }

    .account-order-item-total {
        margin-left: 82px;
    }
}

/* Modern header and wishlist */
.main-header { position: sticky; top: 0; z-index: 1000; box-shadow: 0 8px 30px rgba(20,20,20,.055); }
.header-content { min-height: 92px; grid-template-columns: 190px minmax(280px,1fr) auto; gap: 26px; }
.logo-icon { width: 48px; height: 48px; font-size: 21px; }
.search-box { height: 50px; border-width: 1px; border-radius: 14px; box-shadow: 0 8px 24px rgba(0,0,0,.04); }
.header-actions { gap: 12px; }
.header-action { min-height: 48px; padding: 6px 10px; border-radius: 12px; }
.header-action:hover { background: #faf7ed; }
.header-icon-wrap { position: relative; display: inline-flex; font-size: 23px; }
.wishlist-count { position:absolute; top:-11px; right:-13px; min-width:20px; height:20px; display:grid; place-items:center; padding:0 5px; border-radius:99px; background:var(--gold); color:#111; border:2px solid #fff; font-size:10px; font-weight:800; }
.user-menu { position: relative; }
.user-menu-toggle { min-height: 54px; display:flex; align-items:center; gap:10px; padding:5px 10px 5px 6px; border:1px solid #ececec; border-radius:15px; background:#fff; cursor:pointer; color:var(--text); transition:.2s ease; }
.user-menu-toggle:hover,.user-menu.is-open .user-menu-toggle { border-color:#d8bd68; box-shadow:0 10px 25px rgba(0,0,0,.08); }
.profile-icon { width:40px; height:40px; display:grid; place-items:center; border-radius:12px; background:linear-gradient(135deg,var(--gold),#ead785); color:#111; font-size:17px; }
.user-menu-copy { display:flex; flex-direction:column; align-items:flex-start; line-height:1.2; max-width:105px; }
.user-menu-copy strong { font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:100%; }
.user-menu-copy small { font-size:11px; color:var(--muted); }
.user-menu-toggle > .fa-chevron-down { font-size:11px; transition:transform .2s; }
.user-menu.is-open .user-menu-toggle > .fa-chevron-down { transform:rotate(180deg); }
.user-menu-dropdown { position:absolute; top:calc(100% + 10px); right:0; width:220px; padding:9px; border:1px solid #ececec; border-radius:16px; background:#fff; box-shadow:0 20px 45px rgba(0,0,0,.13); opacity:0; visibility:hidden; transform:translateY(-6px); transition:.18s ease; }
.user-menu.is-open .user-menu-dropdown { opacity:1; visibility:visible; transform:none; }
.user-menu-dropdown a { display:flex; align-items:center; gap:11px; padding:11px 12px; border-radius:10px; color:#222; text-decoration:none; font-size:13px; font-weight:600; }
.user-menu-dropdown a:hover { background:#faf7ed; color:#9b7810; }
.user-menu-dropdown i { width:18px; text-align:center; }
.user-menu-separator { display:block; height:1px; margin:6px; background:#eee; }
.wishlist-toggle { transition:transform .18s ease,color .18s ease,background .18s ease,border-color .18s ease; }
.wishlist-toggle.is-active { color:#c79d1f !important; border-color:#d6b247 !important; background:#fffaf0 !important; }
.wishlist-toggle:active { transform:scale(.88); }
.wishlist-page { background:#fafafa; min-height:65vh; }
.wishlist-hero { padding:58px 0 44px; background:linear-gradient(135deg,#151515,#292929); color:#fff; }
.wishlist-hero h1 { margin:8px 0; font-size:42px; }
.wishlist-hero p { color:#d0d0d0; }
.wishlist-section { padding:55px 0 75px; }
.wishlist-grid { align-items:stretch; }
.wishlist-empty { max-width:600px; margin:0 auto; padding:65px 25px; text-align:center; background:#fff; border:1px solid #eee; border-radius:20px; box-shadow:0 15px 40px rgba(0,0,0,.05); }
.wishlist-empty > i { width:76px; height:76px; display:grid; place-items:center; margin:0 auto 20px; border-radius:50%; background:#fff8df; color:#c79d1f; font-size:30px; }
.wishlist-empty h2 { margin-bottom:8px; }
.wishlist-empty p { margin-bottom:24px; color:var(--muted); }
@media (max-width: 1050px) { .header-content { grid-template-columns:150px 1fr auto; } .header-wishlist > span:last-child,.cart-text,.user-menu-copy { display:none; } }
@media (max-width: 760px) { .main-header { position:relative; } .header-content { grid-template-columns:1fr auto; padding:14px 0; } .search-box { grid-column:1/-1; grid-row:2; } .search-box select { display:none; } .search-box { grid-template-columns:1fr 52px; } .header-actions { gap:5px; } .header-action { padding:5px; } }

/* INIVOY v5 – működő főmenü és tartalmi oldalak */
.category-menu{position:relative;align-self:stretch;display:flex}.category-dropdown{position:absolute;left:0;top:100%;z-index:80;width:265px;padding:10px;background:#fff;border:1px solid #ece5d3;border-top:3px solid #d9b62f;border-radius:0 0 14px 14px;box-shadow:0 18px 45px rgba(20,20,20,.16);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease}.category-menu.is-open .category-dropdown{opacity:1;visibility:visible;transform:none}.category-menu.is-open .category-arrow{transform:rotate(180deg)}.category-dropdown a{display:flex;align-items:center;gap:10px;padding:11px 12px;color:#171717;text-decoration:none;border-radius:8px;font-weight:600;font-size:14px}.category-dropdown a:hover{background:#f7f2df;color:#9b7900}.category-arrow{transition:transform .2s ease}
.content-page{background:#f7f7f7;min-height:65vh}.content-hero{padding:62px 0;background:linear-gradient(120deg,#111 0%,#242424 100%);color:#fff}.content-hero span{display:inline-block;color:#e2bd32;font-weight:800;font-size:12px;letter-spacing:2px;margin-bottom:12px}.content-hero h1{font-size:clamp(30px,4vw,52px);line-height:1.1;margin:0 0 14px}.content-hero p{max-width:680px;color:#d3d3d3;font-size:16px;margin:0}.content-section{padding:58px 0 75px}.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.brand-card{position:relative;display:flex;flex-direction:column;min-height:210px;padding:28px;background:#fff;border:1px solid #ebebeb;border-radius:18px;color:#151515;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.05);transition:.22s ease}.brand-card:hover{transform:translateY(-5px);border-color:#d9b62f;box-shadow:0 16px 38px rgba(0,0,0,.09)}.brand-monogram{display:grid;place-items:center;width:58px;height:58px;margin-bottom:25px;border-radius:15px;background:#f4df83;color:#111;font-size:25px;font-weight:800}.brand-card strong{font-size:20px}.brand-card small{margin-top:5px;color:#777}.brand-card>i{position:absolute;right:25px;bottom:25px;color:#c29b0b}.content-empty{grid-column:1/-1;text-align:center;background:#fff;border-radius:18px;padding:55px}.content-empty>i{font-size:35px;color:#d1ab21}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.blog-card{overflow:hidden;background:#fff;border-radius:18px;border:1px solid #eaeaea;box-shadow:0 10px 30px rgba(0,0,0,.05)}.blog-card-visual{height:170px;display:grid;place-items:center;background:linear-gradient(135deg,#ead06a,#b99105)}.blog-card-visual i{font-size:52px;color:#fff}.blog-card-body{padding:25px}.blog-card-body>span{font-size:11px;font-weight:800;letter-spacing:1.3px;color:#aa8200}.blog-card-body h2{font-size:19px;line-height:1.4;margin:10px 0}.blog-card-body p{color:#666;font-size:14px;line-height:1.7}.blog-card-body a{display:inline-flex;gap:8px;align-items:center;margin-top:8px;color:#111;font-weight:700;text-decoration:none}.contact-layout{display:grid;grid-template-columns:330px 1fr;gap:30px;align-items:start}.contact-info{display:grid;gap:16px}.contact-info-card{display:flex;gap:16px;align-items:center;padding:22px;background:#fff;border-radius:15px;border:1px solid #e9e9e9}.contact-info-card>i{display:grid;place-items:center;width:45px;height:45px;border-radius:12px;background:#f3d96f;color:#111}.contact-info-card div{display:flex;flex-direction:column}.contact-info-card span{color:#6d6d6d;font-size:14px;margin-top:3px}.contact-form{padding:32px;background:#fff;border-radius:18px;border:1px solid #e9e9e9;box-shadow:0 10px 30px rgba(0,0,0,.04)}.contact-form h2{margin-top:0}.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;font-weight:700;font-size:13px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #ddd;border-radius:10px;padding:13px 14px;font:inherit;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:#cba51b;box-shadow:0 0 0 3px rgba(203,165,27,.14)}.contact-form button{border:0;border-radius:10px;background:#111;color:#fff;padding:14px 22px;font-weight:800;cursor:pointer}.contact-form button:hover{background:#c39b09}.form-success,.form-errors{padding:14px 16px;border-radius:10px;margin-bottom:20px}.form-success{background:#e8f8ee;color:#19723c}.form-errors{background:#fff0f0;color:#a72c2c}.form-errors p{margin:3px 0}
@media(max-width:1050px){.brand-grid{grid-template-columns:repeat(3,1fr)}.blog-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.category-dropdown{position:fixed;left:15px;right:15px;top:auto;width:auto}.brand-grid,.blog-grid{grid-template-columns:1fr}.contact-layout{grid-template-columns:1fr}.contact-form-row{grid-template-columns:1fr}.content-hero{padding:42px 0}.content-section{padding:35px 0 55px}}

/* INIVOY Pontok */
.checkout-points-box,.checkout-points-login{margin:18px 0;padding:16px;border:1px solid #eadfbd;border-radius:14px;background:#fffaf0}.checkout-points-box>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.checkout-points-box strong{color:#9b7415}.checkout-points-box label{display:block;font-weight:700;margin-bottom:6px}.checkout-points-box input{width:100%;padding:11px 12px;border:1px solid #d8d2c4;border-radius:10px}.checkout-points-box small{display:block;margin-top:7px;color:#777}.checkout-points-login{display:flex;gap:10px;align-items:center}.checkout-points-login i{color:#b78a22}.account-points-card i{color:#b78a22!important}

@media (max-width: 1100px) {
    .points-text small { display: none; }
}

@media (max-width: 760px) {
    .points-action { padding: 5px; border: 0; background: transparent; }
    .points-text { display: none; }
    .points-icon { width: 38px; height: 38px; }
}


/* INIVOY Pontok felhasználása a kosárban */
.cart-points-box,.cart-points-login{margin:0 16px 16px;padding:14px;border:1px solid #eadfbd;border-radius:12px;background:#fffaf0}.cart-points-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:13px}.cart-points-heading span{font-weight:700}.cart-points-heading i,.cart-points-login i{color:#b78a22;margin-right:6px}.cart-points-heading strong{color:#9b7415;white-space:nowrap}.cart-points-toggle{display:flex!important;align-items:center;gap:10px;cursor:pointer;font-size:12px!important;font-weight:600!important}.cart-points-toggle input{position:absolute;opacity:0;pointer-events:none}.cart-points-switch{position:relative;width:38px;height:22px;border-radius:999px;background:#d7d2c7;transition:.2s;flex:0 0 auto}.cart-points-switch:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:.2s}.cart-points-toggle input:checked+.cart-points-switch{background:#d5aa27}.cart-points-toggle input:checked+.cart-points-switch:after{transform:translateX(16px)}.cart-points-toggle input:disabled+.cart-points-switch{opacity:.5}.cart-points-box p{margin:9px 0 0;color:#777;font-size:10px;line-height:1.45}.cart-points-login{display:flex;align-items:center;gap:8px;font-size:11px}.cart-points-login a{font-weight:700;color:#9b7415}.summary-row[hidden]{display:none!important}@media(max-width:700px){.cart-points-heading{align-items:flex-start;flex-direction:column;gap:4px}}


/* INIVOY Jogi Központ és cookie-kezelés */
.site-footer{background:#101114;color:#fff;padding:56px 0 20px;margin-top:70px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:38px}.site-footer h3{font-size:15px;margin:0 0 16px}.site-footer a{display:block;color:#c8c9cf;text-decoration:none;margin:9px 0}.site-footer a:hover{color:#d7a817}.footer-brand strong{font-size:31px}.footer-brand p{color:#aaa;max-width:260px}.footer-bottom{border-top:1px solid #292b31;margin-top:36px;padding-top:20px;display:flex;justify-content:space-between;color:#999}.footer-bottom a{margin:0}.legal-page{padding:56px 0 10px;background:#f6f6f7}.legal-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:34px;align-items:start}.legal-sidebar{position:sticky;top:24px;background:#fff;border:1px solid #e8e4da;border-radius:22px;padding:25px;box-shadow:0 12px 35px rgba(20,20,20,.06)}.legal-sidebar h2{margin:10px 0 18px}.legal-sidebar nav a{display:block;padding:11px 12px;border-radius:10px;color:#34343a;text-decoration:none}.legal-sidebar nav a:hover{background:#f6f2e8;color:#9c7400}.legal-content{background:#fff;border:1px solid #e8e4da;border-radius:24px;padding:42px;box-shadow:0 18px 45px rgba(20,20,20,.06)}.legal-heading h1{font-size:38px;margin:8px 0}.legal-heading>p{color:#777}.legal-warning{display:flex;gap:15px;background:#fff8dd;border:1px solid #edd783;border-radius:15px;padding:18px;margin:28px 0}.legal-warning i{color:#a77b00;font-size:22px}.legal-warning p{margin:5px 0 0}.legal-section{padding:23px 0;border-top:1px solid #ececec}.legal-section h2{font-size:22px;margin:0 0 12px}.legal-section p,.legal-section li{line-height:1.75;color:#494950}.legal-section a{color:#9b7100}.legal-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.legal-card-grid a{display:flex;flex-direction:column;gap:7px;padding:20px;border:1px solid #e5e5e5;border-radius:16px;text-decoration:none;color:#242428}.legal-card-grid i{font-size:25px;color:#b48705}.legal-card-grid span{color:#666}.withdrawal-template{background:#f7f7f7;border:1px dashed #b9b9b9;border-radius:14px;padding:20px}.cookie-banner{position:fixed;z-index:9999;left:24px;right:24px;bottom:22px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:#17181b;color:#fff;border:1px solid #383a40;border-radius:18px;padding:21px 24px;box-shadow:0 20px 60px rgba(0,0,0,.32)}.cookie-banner[hidden]{display:none}.cookie-banner strong{font-size:17px}.cookie-banner p{margin:7px 0;color:#d0d0d3}.cookie-banner a{color:#efc94b}.cookie-actions{display:flex;gap:10px;flex-shrink:0}.cookie-actions button{border:1px solid #555;background:transparent;color:#fff;border-radius:10px;padding:12px 16px;font-weight:700;cursor:pointer}.cookie-actions .primary{background:#d2a21a;border-color:#d2a21a;color:#151515}@media(max-width:900px){.footer-grid,.legal-layout{grid-template-columns:1fr}.legal-sidebar{position:static}.legal-card-grid{grid-template-columns:1fr}.cookie-banner{left:12px;right:12px;bottom:12px;display:block}.cookie-actions{margin-top:16px}.legal-content{padding:25px}.legal-heading h1{font-size:30px}}@media(max-width:600px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.cookie-actions{flex-direction:column}.footer-bottom{gap:10px;flex-direction:column}}

.checkout-legal-accept{display:flex;align-items:flex-start;gap:10px;margin:18px 0;font-size:13px;line-height:1.5;color:#555}.checkout-legal-accept input{margin-top:3px}.checkout-legal-accept a{color:#8d6800;font-weight:700}

/* Vásárlói rendeléskövetési idővonal */
.account-order-tracking{margin:24px 0;padding:22px;border:1px solid #eadfbd;border-radius:18px;background:#fffaf0}.account-order-tracking-heading h4{margin:0 0 18px;font-size:20px}.account-tracking-package{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:center;padding:16px;margin-bottom:22px;background:#fff;border:1px solid #eee3c6;border-radius:12px}.account-tracking-package div span,.account-tracking-package div strong{display:block}.account-tracking-package div span{font-size:12px;color:#777;margin-bottom:4px}.account-tracking-package a{padding:11px 14px;border-radius:9px;background:#d7ad24;color:#111;text-decoration:none;font-weight:800}.account-order-timeline{position:relative;display:grid;gap:0}.account-order-timeline article{position:relative;display:grid;grid-template-columns:30px 1fr;gap:12px;padding-bottom:22px}.account-order-timeline article:not(:last-child):before{content:"";position:absolute;left:7px;top:15px;bottom:-3px;width:2px;background:#d7ad24}.timeline-dot{width:16px;height:16px;border-radius:50%;background:#d7ad24;box-shadow:0 0 0 5px #fff2c2}.account-order-timeline strong,.account-order-timeline small{display:block}.account-order-timeline small{margin-top:4px;color:#777}.account-order-timeline p{margin:8px 0 0;color:#555}@media(max-width:700px){.account-tracking-package{grid-template-columns:1fr}.account-tracking-package a{text-align:center}}


/* =========================================================
   INIVOY FŐOLDAL – PRÉMIUM VIZUÁLIS FRISSÍTÉS v21
   ========================================================= */

body.home-page,
body {
    background: #f5f5f3;
}

.hero {
    position: relative;
    min-height: 610px;
    overflow: hidden;
    isolation: isolate;
    background-position: center 46%;
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        radial-gradient(circle at 66% 48%, rgba(215,173,43,.12), transparent 30%),
        linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.68) 32%, rgba(0,0,0,.12) 67%, rgba(0,0,0,.36) 100%);
}

.hero::after {
    content: "INIVOY";
    position: absolute;
    right: -38px;
    bottom: 50px;
    z-index: 2;
    color: rgba(255,255,255,.035);
    font-size: clamp(120px, 15vw, 270px);
    line-height: .8;
    font-weight: 900;
    letter-spacing: -12px;
    pointer-events: none;
}

.hero-overlay {
    position: relative;
    z-index: 3;
    min-height: 610px;
    background: transparent !important;
}

.hero-content {
    min-height: 610px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding-top: 40px;
    padding-bottom: 78px;
}

.hero-copy-card {
    position: relative;
    width: min(620px, 100%);
    padding: 34px 38px 36px;
    border: 1px solid rgba(255,255,255,.16);
    border-left: 4px solid #d5ad2f;
    border-radius: 0 24px 24px 0;
    background: linear-gradient(135deg, rgba(8,8,8,.74), rgba(8,8,8,.34));
    box-shadow: 0 28px 70px rgba(0,0,0,.34);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.hero-copy-card::before {
    content: "";
    position: absolute;
    width: 84px;
    height: 2px;
    top: -1px;
    left: 0;
    background: #d5ad2f;
}

.hero h1 {
    margin-top: 18px;
    font-size: clamp(46px, 4vw, 72px);
    line-height: .99;
    letter-spacing: -2.8px;
    text-shadow: 0 8px 30px rgba(0,0,0,.28);
}

.hero h1 span {
    color: #e2bb3a;
}

.hero p {
    max-width: 500px;
    margin-top: 22px;
    font-size: 17px;
    line-height: 1.75;
    color: rgba(255,255,255,.82);
}

.hero-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 8px 13px;
    border: 1px solid rgba(224,185,53,.45);
    background: rgba(212,175,55,.12);
    color: #f0ca49;
    letter-spacing: .08em;
}

.hero-tag::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #e0b938;
    box-shadow: 0 0 0 5px rgba(224,185,56,.13);
}

.hero-buttons {
    margin-top: 28px;
}

.hero-buttons a {
    min-width: 124px;
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-weight: 700;
}

.hero-side-note {
    align-self: flex-end;
    margin-bottom: 78px;
    display: flex;
    align-items: center;
    gap: 14px;
    transform: rotate(-90deg) translateY(22px);
    transform-origin: right bottom;
    color: rgba(255,255,255,.72);
    font-size: 11px;
    letter-spacing: .24em;
    white-space: nowrap;
}

.hero-side-note-number {
    color: #ddb537;
    font-weight: 800;
}

.hero-side-note-line {
    width: 70px;
    height: 1px;
    background: linear-gradient(90deg, #ddb537, rgba(255,255,255,.18));
}

.hero-curve {
    position: absolute;
    z-index: 5;
    left: -2%;
    right: -2%;
    bottom: -48px;
    height: 92px;
    background: #fff;
    border-radius: 50% 50% 0 0 / 100% 100% 0 0;
    box-shadow: 0 -10px 30px rgba(0,0,0,.05);
}

.services {
    position: relative;
    z-index: 8;
    padding: 0 0 34px;
    background: #fff;
}

.services .container {
    position: relative;
    transform: translateY(-24px);
}

.service {
    min-height: 118px;
    border: 1px solid rgba(18,18,18,.07);
    border-radius: 18px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 16px 40px rgba(20,20,20,.09);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.service:hover {
    transform: translateY(-7px);
    border-color: rgba(213,173,47,.40);
    box-shadow: 0 24px 48px rgba(20,20,20,.13);
}

.service > i,
.service > div:first-child {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    margin: 0 auto 9px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(213,173,47,.18), rgba(213,173,47,.05));
    color: #bc941d;
}

.featured {
    position: relative;
    overflow: hidden;
    padding-top: 66px;
    background:
        radial-gradient(circle at 88% 8%, rgba(213,173,47,.09), transparent 24%),
        linear-gradient(180deg, #f7f7f5 0%, #fff 100%);
}

.featured::after {
    content: "";
    position: absolute;
    width: 340px;
    height: 340px;
    right: -140px;
    top: -120px;
    border: 1px solid rgba(213,173,47,.13);
    border-radius: 50%;
    box-shadow:
        0 0 0 42px rgba(213,173,47,.025),
        0 0 0 84px rgba(213,173,47,.018);
}

.section-heading {
    position: relative;
    padding-left: 20px;
}

.section-heading::before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    bottom: 5px;
    width: 4px;
    border-radius: 8px;
    background: linear-gradient(180deg, #e1bb3a, #9d7610);
}

@media (max-width: 980px) {
    .hero,
    .hero-overlay,
    .hero-content { min-height: 570px; }
    .hero-copy-card { width: min(590px, 100%); }
    .hero-side-note { display: none; }
}

@media (max-width: 700px) {
    .hero,
    .hero-overlay,
    .hero-content { min-height: 560px; }
    .hero-content { padding-top: 24px; padding-bottom: 72px; }
    .hero-copy-card { padding: 26px 24px 28px; border-radius: 0 18px 18px 0; }
    .hero h1 { font-size: clamp(40px, 11vw, 56px); letter-spacing: -1.8px; }
    .hero p { font-size: 15px; }
    .hero-curve { bottom: -58px; height: 86px; }
    .services .container { transform: translateY(-10px); }
}

/* ==========================================================
   INIVOY HOME REDESIGN v30 — editorial / premium storefront
   ========================================================== */
:root {
    --nivo-ink: #0b0b0d;
    --nivo-ink-soft: #17171b;
    --nivo-gold: #e1ba28;
    --nivo-gold-light: #f4da6d;
    --nivo-cream: #f5f2e9;
}

body { background: #f5f5f3; }
.main-header { position: sticky; top: 0; z-index: 1000; background: rgba(255,255,255,.92); backdrop-filter: blur(18px); box-shadow: 0 1px 0 rgba(0,0,0,.08); }
.main-menu { position: sticky; top: 92px; z-index: 990; background: rgba(10,10,12,.96); backdrop-filter: blur(16px); box-shadow: 0 14px 30px rgba(0,0,0,.12); }

.nivo-home-hero {
    position: relative;
    min-height: 720px;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 74% 35%, rgba(225,186,40,.18), transparent 28%),
        linear-gradient(125deg, #08080a 0%, #111115 52%, #08080a 100%);
    isolation: isolate;
}
.nivo-home-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .22;
    background-image: linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: linear-gradient(to right, #000, transparent 75%);
}
.nivo-home-hero__ambient {
    position: absolute;
    width: 580px;
    height: 580px;
    left: -260px;
    bottom: -350px;
    border-radius: 50%;
    background: var(--nivo-gold);
    filter: blur(110px);
    opacity: .11;
}
.nivo-home-hero__layout {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(500px, 1.1fr);
    align-items: center;
    gap: 56px;
    min-height: 720px;
    padding-top: 54px;
    padding-bottom: 70px;
}
.nivo-home-hero__copy { position: relative; z-index: 3; }
.nivo-home-eyebrow { display: flex; align-items: center; gap: 12px; margin-bottom: 25px; color: #d9d9dc; font-size: 11px; font-weight: 700; letter-spacing: .19em; }
.nivo-home-eyebrow span { width: 42px; height: 1px; background: var(--nivo-gold); box-shadow: 0 0 18px rgba(225,186,40,.8); }
.nivo-home-hero h1 { margin: 0; max-width: 670px; font-size: clamp(62px, 6.2vw, 106px); line-height: .9; letter-spacing: -.065em; font-weight: 800; }
.nivo-home-hero h1 span { color: var(--nivo-gold); text-shadow: 0 12px 40px rgba(225,186,40,.14); }
.nivo-home-hero__copy > p { max-width: 585px; margin: 30px 0 0; color: #bdbdc4; font-size: 17px; line-height: 1.8; }
.nivo-home-hero__actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 34px; }
.nivo-home-btn { display: inline-flex; align-items: center; justify-content: center; gap: 13px; min-height: 56px; padding: 0 25px; border-radius: 999px; text-decoration: none; font-size: 13px; font-weight: 800; transition: transform .22s ease, box-shadow .22s ease, background .22s ease; }
.nivo-home-btn:hover { transform: translateY(-3px); }
.nivo-home-btn--gold { background: var(--nivo-gold); color: #090909; box-shadow: 0 16px 42px rgba(225,186,40,.18); }
.nivo-home-btn--gold:hover { background: var(--nivo-gold-light); box-shadow: 0 22px 48px rgba(225,186,40,.27); }
.nivo-home-btn--ghost { border: 1px solid rgba(255,255,255,.22); color: #fff; background: rgba(255,255,255,.035); }
.nivo-home-btn--ghost:hover { background: rgba(255,255,255,.09); }
.nivo-home-hero__meta { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 610px; margin-top: 58px; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.13); }
.nivo-home-hero__meta div { display: flex; flex-direction: column; gap: 5px; }
.nivo-home-hero__meta strong { color: var(--nivo-gold); font-size: 11px; letter-spacing: .16em; }
.nivo-home-hero__meta span { color: #9c9ca3; font-size: 12px; }
.nivo-home-hero__visual { position: relative; min-height: 580px; }
.nivo-home-product-stage { position: absolute; inset: 20px 0 0 45px; overflow: hidden; border-radius: 46% 46% 12% 12% / 34% 34% 12% 12%; background: #151519; box-shadow: 0 60px 120px rgba(0,0,0,.52); transform: rotate(1.5deg); }
.nivo-home-product-stage img { width: 100%; height: 100%; object-fit: cover; object-position: 58% center; transform: scale(1.32); filter: saturate(.78) contrast(1.08); }
.nivo-home-product-stage__shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,4,6,.35), transparent 38%), linear-gradient(0deg, rgba(5,5,7,.75), transparent 42%); }
.nivo-home-product-stage__glow { position: absolute; z-index: 2; width: 55%; height: 55%; right: -15%; top: 2%; border-radius: 50%; background: rgba(238,194,42,.3); filter: blur(85px); }
.nivo-home-orbit { position: absolute; border: 1px solid rgba(225,186,40,.23); border-radius: 50%; pointer-events: none; }
.nivo-home-orbit--one { width: 520px; height: 520px; right: -95px; top: -15px; }
.nivo-home-orbit--two { width: 650px; height: 650px; right: -155px; top: -80px; opacity: .45; }
.nivo-home-float-card { position: absolute; z-index: 5; backdrop-filter: blur(18px); border: 1px solid rgba(255,255,255,.16); background: rgba(16,16,20,.75); box-shadow: 0 24px 55px rgba(0,0,0,.35); }
.nivo-home-float-card--top { left: -12px; top: 72px; display: flex; align-items: center; gap: 14px; width: 285px; padding: 17px; border-radius: 18px; animation: nivoFloat 5s ease-in-out infinite; }
.nivo-home-float-card__icon { display: grid; place-items: center; flex: 0 0 45px; height: 45px; border-radius: 13px; background: var(--nivo-gold); color: #0b0b0c; }
.nivo-home-float-card small { display: block; margin-bottom: 4px; color: var(--nivo-gold); font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.nivo-home-float-card strong { display: block; font-size: 12px; line-height: 1.45; }
.nivo-home-float-card--bottom { right: -15px; bottom: 62px; width: 200px; padding: 18px 21px; border-radius: 18px; animation: nivoFloat 5.8s ease-in-out infinite reverse; }
.nivo-home-float-card--bottom span { color: #b8b8bf; font-size: 11px; }
.nivo-home-float-card--bottom strong { margin-top: 4px; color: #fff; font-size: 17px; }
.nivo-home-hero__monogram { position: absolute; right: -75px; bottom: -80px; color: rgba(255,255,255,.035); font-size: 310px; line-height: 1; font-weight: 800; }
.nivo-home-scroll { position: absolute; z-index: 6; left: 50%; bottom: 18px; display: flex; align-items: center; gap: 10px; transform: translateX(-50%); color: rgba(255,255,255,.48); font-size: 9px; font-weight: 700; letter-spacing: .18em; }
.nivo-home-scroll span { width: 42px; height: 1px; background: rgba(255,255,255,.3); }
@keyframes nivoFloat { 50% { transform: translateY(-11px); } }

.nivo-trust-strip { position: relative; z-index: 8; margin-top: -1px; background: #fff; border-bottom: 1px solid #e9e9e7; }
.nivo-trust-strip__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.nivo-trust-strip article { display: flex; align-items: center; gap: 14px; min-height: 116px; padding: 22px 26px; border-right: 1px solid #ededeb; }
.nivo-trust-strip article:last-child { border-right: 0; }
.nivo-trust-strip article > span { display: grid; place-items: center; flex: 0 0 45px; height: 45px; border-radius: 50%; background: #f4f0df; color: #b18a00; font-size: 16px; }
.nivo-trust-strip article div { display: flex; flex-direction: column; gap: 5px; }
.nivo-trust-strip article strong { color: #171719; font-size: 13px; }
.nivo-trust-strip article small { color: #8a8a90; font-size: 11px; line-height: 1.5; }

.nivo-home-story { position: relative; overflow: hidden; padding: 118px 0 122px; background: var(--nivo-cream); }
.nivo-home-story::after { content: "INIVOY"; position: absolute; right: -80px; top: 25px; color: rgba(18,18,20,.035); font-size: 260px; font-weight: 800; line-height: 1; }
.nivo-home-story__grid { position: relative; z-index: 2; display: grid; grid-template-columns: .78fr 1.22fr; gap: 84px; align-items: center; }
.nivo-home-section-kicker { display: inline-block; margin-bottom: 18px; color: #a27f00; font-size: 10px; font-weight: 800; letter-spacing: .22em; }
.nivo-home-story__intro h2 { margin: 0; color: #101012; font-size: clamp(48px, 5.4vw, 78px); line-height: .98; letter-spacing: -.055em; }
.nivo-home-story__intro h2 em { color: #b89008; font-style: normal; }
.nivo-home-story__intro p { max-width: 500px; margin: 27px 0 0; color: #66666c; font-size: 15px; line-height: 1.85; }
.nivo-home-text-link { display: inline-flex; align-items: center; gap: 11px; margin-top: 28px; color: #111; text-decoration: none; font-size: 13px; font-weight: 800; }
.nivo-home-text-link i { transition: transform .2s ease; }
.nivo-home-text-link:hover i { transform: translateX(5px); }
.nivo-home-story__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.nivo-home-story-card { position: relative; min-height: 235px; padding: 28px; border-radius: 24px; overflow: hidden; transition: transform .25s ease, box-shadow .25s ease; }
.nivo-home-story-card:hover { transform: translateY(-7px); box-shadow: 0 22px 45px rgba(25,25,25,.12); }
.nivo-home-story-card > span { position: absolute; right: 23px; top: 20px; font-size: 11px; font-weight: 800; opacity: .55; }
.nivo-home-story-card > i { margin-bottom: 38px; font-size: 24px; }
.nivo-home-story-card h3 { margin: 0 0 10px; font-size: 19px; }
.nivo-home-story-card p { margin: 0; font-size: 12px; line-height: 1.65; opacity: .72; }
.nivo-home-story-card--dark { background: #111114; color: #fff; }
.nivo-home-story-card--gold { background: var(--nivo-gold); color: #0c0c0d; }
.nivo-home-story-card--light { grid-column: 1 / -1; min-height: 180px; background: #fff; border: 1px solid rgba(0,0,0,.06); color: #161618; }
.nivo-home-story-card--light > i { margin-bottom: 25px; color: #b28a00; }

.featured { position: relative; padding: 110px 0 125px; background: #f7f7f5; }
.featured::before { content: "SELECTED"; position: absolute; left: -45px; top: 100px; color: rgba(0,0,0,.025); font-size: 160px; font-weight: 800; letter-spacing: -.06em; }
.featured .section-heading { position: relative; z-index: 2; align-items: flex-end; margin-bottom: 45px; }
.featured .section-label { padding: 0; background: transparent; color: #a47f00; letter-spacing: .2em; }
.featured h2 { margin-top: 12px; font-size: clamp(38px, 4vw, 58px); letter-spacing: -.045em; }
.featured .product-grid { position: relative; z-index: 2; gap: 22px; }
.featured .product-card { overflow: hidden; border: 0; border-radius: 22px; background: #fff; box-shadow: 0 14px 35px rgba(0,0,0,.055); transition: transform .28s ease, box-shadow .28s ease; }
.featured .product-card:hover { transform: translateY(-9px); box-shadow: 0 24px 55px rgba(0,0,0,.11); }
.featured .product-image { background: linear-gradient(145deg, #f2f2f0, #fff); }
.featured .product-content { padding: 22px 23px 24px; }
.featured .add-to-cart { border-radius: 50%; background: #111; }
.featured .add-to-cart:hover { background: var(--nivo-gold); color: #111; }

@media (max-width: 1180px) {
    .nivo-home-hero__layout { grid-template-columns: .95fr 1.05fr; gap: 25px; }
    .nivo-home-hero__visual { min-height: 520px; }
    .nivo-home-story__grid { gap: 45px; }
    .nivo-trust-strip article { padding: 20px 14px; }
}
@media (max-width: 900px) {
    .main-menu { top: auto; position: relative; }
    .nivo-home-hero { min-height: auto; }
    .nivo-home-hero__layout { grid-template-columns: 1fr; min-height: auto; padding-top: 75px; padding-bottom: 80px; }
    .nivo-home-hero__copy { text-align: center; }
    .nivo-home-eyebrow, .nivo-home-hero__actions { justify-content: center; }
    .nivo-home-hero__copy > p { margin-left: auto; margin-right: auto; }
    .nivo-home-hero__meta { margin-left: auto; margin-right: auto; text-align: left; }
    .nivo-home-hero__visual { min-height: 520px; }
    .nivo-home-product-stage { inset: 20px 5% 0; }
    .nivo-home-float-card--top { left: 2%; }
    .nivo-home-float-card--bottom { right: 2%; }
    .nivo-trust-strip__grid { grid-template-columns: 1fr 1fr; }
    .nivo-trust-strip article:nth-child(2) { border-right: 0; }
    .nivo-trust-strip article:nth-child(-n+2) { border-bottom: 1px solid #ededeb; }
    .nivo-home-story__grid { grid-template-columns: 1fr; }
    .nivo-home-story__intro { max-width: 650px; }
}
@media (max-width: 620px) {
    .nivo-home-hero__layout { padding-top: 55px; }
    .nivo-home-hero h1 { font-size: 54px; }
    .nivo-home-hero__meta { grid-template-columns: 1fr; gap: 14px; text-align: center; }
    .nivo-home-hero__visual { min-height: 390px; }
    .nivo-home-product-stage { inset: 30px 0 0; border-radius: 30px; }
    .nivo-home-float-card--top { top: 55px; width: 245px; }
    .nivo-home-float-card--bottom { bottom: 22px; width: 175px; }
    .nivo-home-orbit { display: none; }
    .nivo-trust-strip__grid { grid-template-columns: 1fr; }
    .nivo-trust-strip article { border-right: 0; border-bottom: 1px solid #ededeb; }
    .nivo-home-story { padding: 75px 0; }
    .nivo-home-story__cards { grid-template-columns: 1fr; }
    .nivo-home-story-card--light { grid-column: auto; }
    .featured { padding: 75px 0 90px; }
}

/* =========================================================
   INIVOY AI – vásárlói asszisztens v3
   ========================================================= */
.nivo-ai-assistant{position:fixed;right:24px;bottom:24px;z-index:9997;font-family:inherit}.nivo-ai-toggle{position:relative;display:flex;align-items:center;gap:10px;height:58px;padding:0 18px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:linear-gradient(135deg,#111 0%,#29220d 100%);color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.26),0 0 0 1px rgba(216,174,45,.22) inset;cursor:pointer;overflow:hidden;transition:.25s ease}.nivo-ai-toggle:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(0,0,0,.34),0 0 26px rgba(216,174,45,.18)}.nivo-ai-toggle>i{position:relative;z-index:2;color:#e3b92f;font-size:19px}.nivo-ai-toggle-label{position:relative;z-index:2;font-weight:800;letter-spacing:.02em}.nivo-ai-toggle-glow{position:absolute;width:70px;height:70px;left:-15px;top:-10px;border-radius:50%;background:rgba(226,184,47,.17);filter:blur(14px)}.nivo-ai-panel{position:absolute;right:0;bottom:72px;width:min(390px,calc(100vw - 32px));height:min(650px,calc(100vh - 120px));border:1px solid rgba(221,179,44,.25);border-radius:24px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.28);overflow:hidden;animation:nivoAiOpen .22s ease;transform-origin:right bottom}.nivo-ai-panel[hidden]{display:none!important}@keyframes nivoAiOpen{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}.nivo-ai-header{height:72px;display:flex;align-items:center;gap:12px;padding:0 17px;background:linear-gradient(135deg,#0d0d0d,#28200b);color:#fff}.nivo-ai-avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#edc94c,#a87d0b);color:#111;box-shadow:0 8px 24px rgba(218,175,43,.28)}.nivo-ai-header>div:nth-child(2){display:grid;gap:2px}.nivo-ai-header strong{font-size:15px}.nivo-ai-header span{font-size:11px;color:#d6d6d6}.nivo-ai-header span i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#48d27a;box-shadow:0 0 0 4px rgba(72,210,122,.12)}.nivo-ai-close{margin-left:auto;width:36px;height:36px;border:0;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.nivo-ai-intro{padding:18px 18px 12px;background:linear-gradient(180deg,#fffaf0,#fff)}.nivo-ai-eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#a37c0f}.nivo-ai-intro h3{margin:5px 0 7px;font-size:22px}.nivo-ai-intro p{margin:0;color:#696969;font-size:12.5px;line-height:1.55}.nivo-ai-quick-questions{display:flex;gap:7px;padding:0 18px 14px;overflow:auto;background:#fff}.nivo-ai-quick-questions button{flex:0 0 auto;padding:8px 10px;border:1px solid #e9dec2;border-radius:999px;background:#fffaf0;color:#72560d;font-size:11px;font-weight:700;cursor:pointer}.nivo-ai-messages{height:calc(100% - 282px);min-height:170px;padding:16px;overflow-y:auto;background:#f5f5f4}.nivo-ai-msg{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:11px}.nivo-ai-msg.user{align-items:flex-end}.nivo-ai-bubble{max-width:86%;padding:11px 13px;border-radius:16px 16px 16px 5px;background:#fff;color:#252525;font-size:13px;line-height:1.5;box-shadow:0 5px 18px rgba(0,0,0,.055);white-space:pre-wrap}.nivo-ai-msg.user .nivo-ai-bubble{border-radius:16px 16px 5px 16px;background:#111;color:#fff}.nivo-ai-products{width:100%;display:grid;gap:7px;margin-top:8px}.nivo-ai-product{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid #eee5cf;border-radius:12px;background:#fff;color:#111;text-decoration:none}.nivo-ai-product img{width:48px;height:48px;object-fit:cover;border-radius:9px;background:#f3f3f3}.nivo-ai-product span{min-width:0;display:grid}.nivo-ai-product strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nivo-ai-product small{margin-top:3px;color:#7b651c;font-size:10px}.nivo-ai-form{display:flex;gap:8px;padding:12px 13px 8px;background:#fff;border-top:1px solid #eee}.nivo-ai-form input{min-width:0;flex:1;height:44px;padding:0 14px;border:1px solid #dedede;border-radius:13px;font:inherit;font-size:13px;outline:none}.nivo-ai-form input:focus{border-color:#c99e21;box-shadow:0 0 0 3px rgba(201,158,33,.12)}.nivo-ai-form button{width:44px;height:44px;border:0;border-radius:13px;background:#111;color:#e5bb36;cursor:pointer}.nivo-ai-disclaimer{display:block;padding:0 14px 10px;background:#fff;color:#999;font-size:9.5px;text-align:center}@media(max-width:600px){.nivo-ai-assistant{right:14px;bottom:14px}.nivo-ai-toggle{width:56px;height:56px;padding:0;justify-content:center}.nivo-ai-toggle-label{display:none}.nivo-ai-panel{position:fixed;left:10px;right:10px;bottom:80px;width:auto;height:min(680px,calc(100vh - 100px));border-radius:20px}.nivo-ai-messages{height:calc(100% - 282px)}}

/* ===== INIVOY BLACK GOLD 2026 ===== */
:root{--nivo-black:#060606;--nivo-panel:#101010;--nivo-panel-2:#171717;--nivo-gold:#d8a928;--nivo-gold-light:#f2d06b;--nivo-line:rgba(216,169,40,.22);--nivo-text:#f7f4eb;--nivo-muted:#aaa69b}
html{background:var(--nivo-black)}body{background:var(--nivo-black)!important;color:var(--nivo-text)!important}.main-header{background:rgba(5,5,5,.96)!important;border-bottom:1px solid var(--nivo-line)!important}.topbar{background:#020202!important;color:#ddd!important;border-bottom:1px solid rgba(255,255,255,.06)!important}.logo,.logo-name{color:#fff!important}.logo-name span,.logo-icon,.section-label,.view-all-link{color:var(--nivo-gold)!important}.search-box{background:#111!important;border:1px solid #2a2a2a!important}.search-box input,.search-box select{background:transparent!important;color:#eee!important}.search-box select option{background:#111}.search-box button{background:linear-gradient(135deg,var(--nivo-gold-light),var(--nivo-gold))!important;color:#090909!important}.header-action,.user-menu-toggle{color:#eee!important}.header-action:hover,.user-menu-toggle:hover{color:var(--nivo-gold-light)!important}.main-menu{background:#0b0b0b!important;border-bottom:1px solid var(--nivo-line)!important}.menu-links a,.category-button{color:#eee!important}.menu-links a:hover,.category-button:hover{color:var(--nivo-gold-light)!important}.category-dropdown,.user-menu-dropdown{background:#111!important;border:1px solid var(--nivo-line)!important}.category-dropdown a,.user-menu-dropdown a{color:#eee!important}.nivo-home-hero{background:radial-gradient(circle at 70% 35%,rgba(216,169,40,.16),transparent 30%),linear-gradient(135deg,#030303,#101010 65%,#050505)!important}.nivo-home-hero__copy h1{color:#fff!important}.nivo-home-hero__copy h1 span{color:var(--nivo-gold-light)!important}.nivo-home-btn--gold{background:linear-gradient(135deg,var(--nivo-gold-light),var(--nivo-gold))!important;color:#070707!important}.nivo-home-btn--ghost{border-color:var(--nivo-gold)!important;color:#fff!important}.nivo-trust-strip,.featured,.nivo-home-story{background:#080808!important}.nivo-trust-strip article,.product-card,.nivo-home-story article{background:linear-gradient(145deg,#171717,#0e0e0e)!important;border:1px solid var(--nivo-line)!important;color:#fff!important}.product-image{background:#151515!important}.product-content h3 a,.section-heading h2{color:#fff!important}.product-category,.section-heading p,.product-content p{color:var(--nivo-muted)!important}.product-price strong{color:var(--nivo-gold-light)!important}.add-to-cart{background:var(--nivo-gold)!important;color:#080808!important}.site-footer{background:#030303!important;border-top:1px solid var(--nivo-line)!important;color:#ddd!important}.site-footer a{color:#aaa!important}.site-footer a:hover{color:var(--nivo-gold-light)!important}.container:not(.header-content):not(.menu-content){color:inherit}main{background:var(--nivo-black);color:var(--nivo-text)}input,select,textarea{accent-color:var(--nivo-gold)}
/* floating wheel */
.nivo-wheel-launcher{position:fixed;right:22px;top:47%;z-index:920;width:82px;height:82px;border-radius:50%;border:2px solid var(--nivo-gold);background:radial-gradient(circle at 35% 30%,#3b3015,#0b0b0b 62%);color:var(--nivo-gold-light);box-shadow:0 0 0 8px rgba(216,169,40,.08),0 12px 40px rgba(0,0,0,.55);display:grid;place-items:center;cursor:pointer;animation:nivoWheelPulse 2.4s infinite}.nivo-wheel-launcher i{font-size:25px}.nivo-wheel-launcher span{font-size:10px;font-weight:800;letter-spacing:.08em;margin-top:-12px}.nivo-wheel-modal{position:fixed;inset:0;z-index:1500;background:rgba(0,0,0,.74);backdrop-filter:blur(10px);display:grid;place-items:center;padding:18px;opacity:0;transition:.22s}.nivo-wheel-modal.is-open{opacity:1}.nivo-wheel-panel{position:relative;width:min(510px,96vw);background:radial-gradient(circle at 50% 32%,#2b210d,#101010 60%);border:1px solid rgba(240,198,84,.52);border-radius:30px;padding:28px;text-align:center;color:#fff;box-shadow:0 30px 100px #000}.nivo-wheel-close{position:absolute;right:16px;top:16px;width:38px;height:38px;border-radius:50%;border:1px solid var(--nivo-line);background:#0b0b0b;color:#fff;cursor:pointer}.wheel-kicker{color:var(--nivo-gold-light);font-size:12px;font-weight:800;letter-spacing:.18em}.nivo-wheel-copy h2{font-size:34px;margin:4px 0}.nivo-wheel-copy p{color:#c8c3b6;margin:0 auto 18px;max-width:390px}.nivo-wheel-stage{position:relative;width:330px;height:330px;margin:10px auto 18px}.nivo-wheel-disc{position:absolute;inset:0;border-radius:50%;border:10px solid #d9aa31;background:conic-gradient(#121212 0 12.5%,#2d2513 12.5% 25%,#0c0c0c 25% 37.5%,#342913 37.5% 50%,#111 50% 62.5%,#302713 62.5% 75%,#0d0d0d 75% 87.5%,#3a2c10 87.5% 100%);box-shadow:inset 0 0 0 4px #f2d06b,0 0 35px rgba(216,169,40,.35);transition:transform 4s cubic-bezier(.12,.72,.08,1)}.nivo-wheel-disc:after{content:"";position:absolute;inset:47%;border-radius:50%;background:#090909;border:4px solid var(--nivo-gold)}.nivo-wheel-disc span{position:absolute;left:50%;top:50%;width:86px;margin-left:-43px;margin-top:-10px;transform:rotate(calc(var(--i)*45deg + 22.5deg)) translateY(-125px) rotate(calc(var(--i)*-45deg - 22.5deg));font-size:12px;font-weight:800;color:#fff;text-shadow:0 1px 3px #000}.nivo-wheel-pointer{position:absolute;z-index:4;left:50%;top:-19px;transform:translateX(-50%);color:var(--nivo-gold-light);font-size:42px;filter:drop-shadow(0 3px 4px #000)}.nivo-wheel-spin{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);width:92px;height:92px;border-radius:50%;border:5px solid var(--nivo-gold);background:#080808;color:var(--nivo-gold-light);font-weight:900;cursor:pointer}.nivo-wheel-spin:disabled{opacity:.55;cursor:not-allowed}.nivo-wheel-result{font-size:18px;font-weight:700;color:#fff;min-height:28px}.nivo-wheel-code{display:inline-block;margin-top:8px;padding:9px 15px;border:1px dashed var(--nivo-gold);border-radius:10px;color:var(--nivo-gold-light);font-weight:800}.nivo-wheel-code:empty{display:none}.nivo-wheel-panel small{display:block;color:#8f8a80;margin-top:12px}.wheel-open{overflow:hidden}@keyframes nivoWheelPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06);box-shadow:0 0 0 14px rgba(216,169,40,0),0 12px 40px rgba(0,0,0,.55)}}@media(max-width:760px){.nivo-wheel-launcher{right:12px;top:auto;bottom:92px;width:66px;height:66px}.nivo-wheel-stage{width:280px;height:280px}.nivo-wheel-disc span{transform:rotate(calc(var(--i)*45deg + 22.5deg)) translateY(-103px) rotate(calc(var(--i)*-45deg - 22.5deg));font-size:10px}.nivo-wheel-panel{padding:24px 12px}.nivo-wheel-copy h2{font-size:28px}}

/* =========================================================
   INIVOY 5.1 — fekete/arany prémium főoldal és szerencsekerék
========================================================= */
:root{--container:1480px;--nivo-bg:#050505;--nivo-panel:#0d0d0d;--nivo-panel-2:#151515;--nivo-gold:#d8a928;--nivo-gold-light:#f6cf62;--nivo-gold-deep:#9f7211;--nivo-line:rgba(224,178,54,.24);--nivo-text:#f5f3ec;--nivo-muted:#aaa59a}
body{background:#050505!important;color:var(--nivo-text)!important}.container{max-width:1480px;padding-left:32px;padding-right:32px}
.topbar{min-height:38px;background:#020202!important;border-bottom:1px solid rgba(255,255,255,.06)!important}.topbar-content{min-height:38px}.topbar i{color:var(--nivo-gold)}
.main-header{background:#060606!important;border-bottom:1px solid rgba(224,178,54,.14)!important}.header-content{min-height:92px;gap:28px}.logo{min-width:150px}.logo-icon{width:46px;height:46px;border-radius:50%;background:linear-gradient(145deg,var(--nivo-gold-light),var(--nivo-gold-deep));color:#070707!important;display:grid;place-items:center;box-shadow:0 0 30px rgba(216,169,40,.28)}.logo-name{font-size:30px;letter-spacing:.02em}.search-box{height:52px;flex:1;max-width:650px;border-radius:12px;overflow:hidden;background:#101010!important;border:1px solid #2b2b2b!important}.search-box input{padding-left:20px}.search-box select{border-left:1px solid #303030!important}.search-box button{width:62px}.header-actions{gap:14px}.header-action,.user-menu-toggle{min-height:48px;border-radius:12px}.points-action,.user-menu-toggle{background:#f3efe2!important;color:#17120a!important;border:none!important}.points-action i,.user-menu-toggle i{color:#b4820c}.cart-action{padding-inline:10px}
.main-menu{background:#0b0b0b!important;border-bottom:1px solid rgba(224,178,54,.2)!important}.menu-content{min-height:58px}.category-button{height:58px;padding:0 24px;background:linear-gradient(135deg,var(--nivo-gold-light),var(--nivo-gold));color:#090909!important;border-radius:0;font-weight:800}.menu-links{gap:6px}.menu-links a{padding:19px 16px;position:relative;font-weight:600}.menu-links a:first-child{color:var(--nivo-gold-light)!important}.menu-links a:first-child:after{content:"";position:absolute;height:2px;background:var(--nivo-gold);left:16px;right:16px;bottom:0}
.nivo-showcase{position:relative;overflow:hidden;min-height:570px;background:radial-gradient(circle at 74% 42%,rgba(204,145,18,.17),transparent 34%),linear-gradient(105deg,#020202 0%,#070707 48%,#11100c 100%);border-bottom:1px solid rgba(224,178,54,.18)}.nivo-showcase:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.16),transparent 45%),radial-gradient(circle at 14% 115%,rgba(216,169,40,.13),transparent 30%);pointer-events:none}.nivo-showcase__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(430px,.85fr) minmax(650px,1.45fr);align-items:center;gap:42px;min-height:570px;padding-top:34px;padding-bottom:34px}.nivo-showcase__copy{padding:15px 0}.nivo-showcase__eyebrow{display:inline-flex;align-items:center;gap:9px;padding:9px 15px;border:1px solid rgba(224,178,54,.34);border-radius:999px;background:rgba(216,169,40,.08);color:var(--nivo-gold-light);font-size:12px;font-weight:800;letter-spacing:.08em}.nivo-showcase__copy h1{font-size:clamp(46px,4.5vw,76px);line-height:1.02;letter-spacing:-.045em;margin:24px 0 22px;color:#fff}.nivo-showcase__copy h1 span{color:var(--nivo-gold-light)}.nivo-showcase__copy>p{max-width:610px;color:#d2cec4;font-size:17px;line-height:1.75}.nivo-showcase__actions{display:flex;gap:16px;margin:30px 0}.nivo-showcase__actions a{min-height:52px;padding:0 25px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-weight:800}.nivo-showcase__primary{background:linear-gradient(135deg,var(--nivo-gold-light),var(--nivo-gold));color:#0a0804;box-shadow:0 12px 30px rgba(216,169,40,.19)}.nivo-showcase__secondary{border:1px solid var(--nivo-gold);color:#fff;background:rgba(0,0,0,.25)}.nivo-showcase__proof{display:flex;align-items:center;gap:20px;margin-top:22px}.nivo-showcase__avatars{display:flex}.nivo-showcase__avatars span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;margin-left:-7px;border:2px solid #0a0a0a;background:linear-gradient(145deg,#f5d67a,#9f7111);color:#171006;font-size:11px;font-weight:900}.nivo-showcase__avatars span:first-child{margin-left:0}.nivo-showcase__proof strong{display:block;color:var(--nivo-gold-light);letter-spacing:2px}.nivo-showcase__proof small{display:block;color:#b7b1a5;line-height:1.35}.nivo-showcase__secure{display:flex;align-items:center;gap:11px;padding-left:20px;border-left:1px solid rgba(255,255,255,.15)}.nivo-showcase__secure>i{font-size:30px;color:var(--nivo-gold)}.nivo-showcase__secure b{display:block}.nivo-showcase__visual{position:relative;height:500px;border-radius:34px;overflow:visible}.nivo-showcase__visual>img{width:100%;height:100%;object-fit:cover;border-radius:34px;filter:saturate(.86) contrast(1.07);box-shadow:0 40px 80px rgba(0,0,0,.5)}.nivo-showcase__visual:after{content:"";position:absolute;inset:0;border-radius:34px;background:linear-gradient(90deg,rgba(5,5,5,.28),transparent 35%),linear-gradient(0deg,rgba(0,0,0,.35),transparent 40%);pointer-events:none}.nivo-showcase__halo{position:absolute;width:530px;height:530px;border-radius:50%;right:-50px;top:-25px;border:1px solid rgba(224,178,54,.25);box-shadow:0 0 0 42px rgba(224,178,54,.035),0 0 0 86px rgba(224,178,54,.025);z-index:-1}.nivo-showcase__badge{position:absolute;z-index:3;background:rgba(10,10,12,.91);border:1px solid rgba(255,255,255,.14);border-radius:14px;color:#fff;box-shadow:0 15px 40px rgba(0,0,0,.45);backdrop-filter:blur(12px)}.nivo-showcase__badge--top{left:-28px;top:72px;padding:13px 16px;display:flex;gap:12px;align-items:center}.nivo-showcase__badge--top>i{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--nivo-gold);color:#080808}.nivo-showcase__badge small{display:block;color:var(--nivo-gold-light);font-size:9px;font-weight:800;letter-spacing:.12em}.nivo-showcase__badge b{display:block;font-size:12px}.nivo-showcase__badge--bottom{right:26px;bottom:30px;padding:15px 18px;min-width:170px}
.nivo-trust-strip{position:relative;z-index:3;margin-top:-1px;background:#080808!important;border-bottom:1px solid rgba(255,255,255,.08)}.nivo-trust-strip__grid{grid-template-columns:repeat(4,1fr);gap:0}.nivo-trust-strip article{border-radius:0!important;border-top:0!important;border-bottom:0!important;border-left:1px solid rgba(224,178,54,.2)!important;background:linear-gradient(180deg,#121212,#0b0b0b)!important;min-height:94px}.nivo-trust-strip article:last-child{border-right:1px solid rgba(224,178,54,.2)!important}.nivo-trust-strip article>span{background:#f3efe2!important;color:#a8770c!important}
.featured{padding-top:68px!important;background:#070707!important}.section-heading{margin-bottom:28px}.section-heading h2{font-size:36px!important}.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.product-card{border-radius:18px!important;overflow:hidden;background:linear-gradient(145deg,#191919,#0d0d0d)!important}.product-card:hover{transform:translateY(-6px);border-color:rgba(224,178,54,.5)!important}.product-image{height:260px!important}.product-image img{height:100%;width:100%;object-fit:contain;padding:16px}.product-content{padding:18px!important}.product-rating{color:var(--nivo-gold)!important}.add-to-cart{border:1px solid var(--nivo-gold)!important;background:transparent!important;color:var(--nivo-gold-light)!important}.add-to-cart:hover{background:var(--nivo-gold)!important;color:#080808!important}
.nivo-wheel-launcher{right:26px;top:53%;width:88px;height:88px;display:flex;flex-direction:column;justify-content:center;gap:13px;background:radial-gradient(circle at 36% 27%,#493817,#0a0a0a 64%);border:2px solid var(--nivo-gold-light);box-shadow:0 0 0 7px rgba(216,169,40,.08),0 16px 50px rgba(0,0,0,.65)}.nivo-wheel-launcher span{margin:0;font-size:9px}.nivo-wheel-modal{justify-items:end;padding:24px 32px;background:rgba(0,0,0,.6)}.nivo-wheel-panel{width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;border-radius:26px;padding:25px 24px;background:radial-gradient(circle at 50% 33%,#35260c,#111 57%,#070707);border:1px solid rgba(246,207,98,.65)}.nivo-wheel-copy h2{font-size:31px;color:var(--nivo-gold-light)}.nivo-wheel-stage{width:310px;height:310px}.nivo-wheel-disc{border:9px solid #e3b43d;background:conic-gradient(#17130b 0 12.5%,#322712 12.5% 25%,#0b0b0b 25% 37.5%,#3b2d12 37.5% 50%,#101010 50% 62.5%,#2d2413 62.5% 75%,#0b0b0b 75% 87.5%,#3a2a0e 87.5% 100%)}.nivo-wheel-disc:before{content:"";position:absolute;inset:-8px;border-radius:50%;background:repeating-conic-gradient(from 0deg,#f7d66f 0 2deg,transparent 2deg 11.25deg);filter:drop-shadow(0 0 7px #e9b62e);pointer-events:none}.nivo-wheel-disc span{font-size:11px;transform:rotate(calc(var(--i)*45deg + 22.5deg)) translateY(-116px) rotate(calc(var(--i)*-45deg - 22.5deg))}.nivo-wheel-spin{width:86px;height:86px}.nivo-wheel-code{font-size:17px;letter-spacing:.08em;background:rgba(216,169,40,.07)}
@media(max-width:1200px){.header-actions .header-wishlist>span:last-child,.points-text,.cart-text{display:none}.menu-links a{padding-inline:10px}.nivo-showcase__grid{grid-template-columns:1fr 1.25fr}.nivo-showcase__copy h1{font-size:55px}.nivo-showcase__proof{flex-wrap:wrap}.product-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.container{padding-left:18px;padding-right:18px}.header-content{flex-wrap:wrap;padding-top:14px;padding-bottom:14px}.logo{min-width:auto}.search-box{order:3;max-width:none;width:100%}.main-menu{overflow-x:auto}.menu-content{min-width:850px}.nivo-showcase__grid{grid-template-columns:1fr;padding-top:55px}.nivo-showcase__visual{height:410px}.nivo-showcase{min-height:auto}.nivo-trust-strip__grid{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}.nivo-wheel-modal{justify-items:center;padding:16px}}
@media(max-width:600px){.topbar-right a span{display:none}.nivo-showcase__copy h1{font-size:43px}.nivo-showcase__copy>p{font-size:15px}.nivo-showcase__actions{flex-direction:column}.nivo-showcase__actions a{width:100%}.nivo-showcase__proof{align-items:flex-start}.nivo-showcase__secure{border-left:0;padding-left:0}.nivo-showcase__visual{height:320px}.nivo-showcase__badge--top{left:8px;top:15px}.nivo-showcase__badge--bottom{right:8px;bottom:12px}.nivo-trust-strip__grid,.product-grid{grid-template-columns:1fr}.product-image{height:300px!important}.nivo-wheel-stage{width:270px;height:270px}.nivo-wheel-disc span{transform:rotate(calc(var(--i)*45deg + 22.5deg)) translateY(-98px) rotate(calc(var(--i)*-45deg - 22.5deg));font-size:9px}.nivo-wheel-launcher{right:12px;bottom:94px;top:auto;width:70px;height:70px}}

/* v52 – interaction hotfix: a hidden wheel overlay must never intercept clicks */
.nivo-wheel-modal[hidden] {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
.nivo-wheel-modal.is-open {
    visibility: visible;
    pointer-events: auto;
}
/* Keep admin pages isolated from storefront theme overrides. */
body.nivo-admin-page {
    background: #f4f1e8 !important;
    color: #222 !important;
}
body.nivo-admin-page main {
    background: transparent !important;
    color: inherit !important;
}


/* =========================================================
   INIVOY 5.4 — storefront pixel-match finomhangolás
   Csak a vásárlói felületet érinti, az admin változatlan.
========================================================= */
body.nivo-storefront-page{background:#050505!important;color:#fff!important}
body.nivo-storefront-page .container{max-width:1460px;padding-left:44px;padding-right:44px}
body.nivo-storefront-page .topbar{height:38px;min-height:38px;background:#020202!important}
body.nivo-storefront-page .topbar-content{min-height:38px;font-size:12px}
body.nivo-storefront-page .main-header{position:relative;top:auto;background:#070707!important}
body.nivo-storefront-page .header-content{display:grid;grid-template-columns:auto 170px minmax(430px,1fr) auto;align-items:center;gap:18px;min-height:70px;padding-top:10px;padding-bottom:10px}
body.nivo-storefront-page .logo{min-width:140px}
body.nivo-storefront-page .logo-icon{width:38px;height:38px;border-radius:10px;background:transparent;box-shadow:none;color:var(--nivo-gold-light)!important}
body.nivo-storefront-page .logo-name{font-size:31px;line-height:1}
body.nivo-storefront-page .category-menu--header{position:relative}
body.nivo-storefront-page .category-menu--header .category-button{height:48px;width:170px;border-radius:9px;border:1px solid #292929;background:#090909;color:#fff!important;padding:0 16px;justify-content:space-between}
body.nivo-storefront-page .category-menu--header .category-button:hover{border-color:var(--nivo-gold)}
body.nivo-storefront-page .category-menu--header .category-dropdown{top:56px;left:0;width:250px}
body.nivo-storefront-page .search-box{height:48px;max-width:none;border-radius:999px;background:#f6f6f6!important;border:0!important;overflow:hidden;box-shadow:none}
body.nivo-storefront-page .search-box input,body.nivo-storefront-page .search-box select{color:#222!important;background:#f6f6f6!important}
body.nivo-storefront-page .search-box input::placeholder{color:#777}
body.nivo-storefront-page .search-box select{border-left:1px solid #ddd!important}
body.nivo-storefront-page .search-box button{width:64px;background:linear-gradient(135deg,#f8d15c,#dca51d)!important}
body.nivo-storefront-page .header-actions{gap:8px;white-space:nowrap}
body.nivo-storefront-page .header-action,body.nivo-storefront-page .user-menu-toggle{min-height:44px;padding:6px 10px;border:1px solid transparent;background:transparent!important;color:#fff!important}
body.nivo-storefront-page .user-menu-toggle{border-color:#292929!important}
body.nivo-storefront-page .profile-icon{background:#d9a928!important;color:#080808!important}
body.nivo-storefront-page .points-action{border:1px solid #2c2c2c!important;border-radius:12px!important}
body.nivo-storefront-page .points-action .points-icon{color:var(--nivo-gold-light)!important}
body.nivo-storefront-page .main-menu{position:relative;top:auto;background:#101010!important;border-top:1px solid #171717!important}
body.nivo-storefront-page .menu-content{min-height:48px;justify-content:center}
body.nivo-storefront-page .menu-links{justify-content:center;gap:18px;width:100%}
body.nivo-storefront-page .menu-links a{padding:14px 9px;font-size:14px}
body.nivo-storefront-page .menu-links a:first-child:after{left:8px;right:8px}

body.nivo-storefront-page .nivo-showcase{min-height:470px;background:radial-gradient(circle at 68% 35%,rgba(218,168,36,.17),transparent 32%),linear-gradient(100deg,#020304 0%,#070809 56%,#11100d 100%)}
body.nivo-storefront-page .nivo-showcase__grid{grid-template-columns:390px minmax(650px,1fr);gap:18px;min-height:470px;padding-top:30px;padding-bottom:25px;padding-right:330px}
body.nivo-storefront-page .nivo-showcase__copy{z-index:3;padding:0}
body.nivo-storefront-page .nivo-showcase__eyebrow{font-size:11px;padding:8px 13px}
body.nivo-storefront-page .nivo-showcase__copy h1{font-size:55px;line-height:.95;letter-spacing:-.045em;margin:18px 0 18px}
body.nivo-storefront-page .nivo-showcase__copy>p{font-size:15px;line-height:1.55;max-width:390px;color:#ddd8cc}
body.nivo-storefront-page .nivo-showcase__actions{margin:22px 0 20px}
body.nivo-storefront-page .nivo-showcase__actions a{min-height:50px;padding:0 25px}
body.nivo-storefront-page .nivo-showcase__proof{gap:16px;margin-top:15px}
body.nivo-storefront-page .nivo-showcase__visual{height:430px;border-radius:0;overflow:visible}
body.nivo-storefront-page .nivo-showcase__visual>img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:0;box-shadow:none;filter:none;mask-image:linear-gradient(to right,transparent 0,#000 12%,#000 92%,transparent 100%)}
body.nivo-storefront-page .nivo-showcase__visual:after{border-radius:0;background:linear-gradient(90deg,#050607 0,transparent 18%,transparent 85%,rgba(5,5,5,.35) 100%)}
body.nivo-storefront-page .nivo-showcase__halo{right:10px;top:-20px;width:470px;height:470px}

body.nivo-storefront-page .nivo-trust-strip{background:#080808!important}
body.nivo-storefront-page .nivo-trust-strip__grid{max-width:1460px;padding-left:44px;padding-right:374px}
body.nivo-storefront-page .nivo-trust-strip article{min-height:78px;padding:14px 18px}
body.nivo-storefront-page .nivo-trust-strip article>span{width:42px;height:42px}
body.nivo-storefront-page .nivo-trust-strip strong{font-size:14px}
body.nivo-storefront-page .nivo-trust-strip small{font-size:11px}

body.nivo-storefront-page .featured{padding-top:36px!important;padding-bottom:70px!important}
body.nivo-storefront-page .featured>.container{padding-right:140px}
body.nivo-storefront-page .section-heading h2{font-size:31px!important}
body.nivo-storefront-page .product-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
body.nivo-storefront-page .product-card{min-width:0}
body.nivo-storefront-page .product-image{height:190px!important}
body.nivo-storefront-page .product-content{padding:14px!important}
body.nivo-storefront-page .product-content h3{font-size:14px}
body.nivo-storefront-page .product-category{display:none}
body.nivo-storefront-page .product-rating{font-size:12px}
body.nivo-storefront-page .product-price strong{font-size:18px}

/* Szerencsekerék: oldalsó panel, nincs kattintást blokkoló teljes képernyős réteg. */
body.nivo-storefront-page .nivo-wheel-modal{position:fixed;inset:118px 18px auto auto;width:318px;height:auto;display:block!important;background:transparent!important;backdrop-filter:none!important;padding:0;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(22px);transition:.25s ease;z-index:1250}
body.nivo-storefront-page .nivo-wheel-modal.is-open{opacity:1;visibility:visible;pointer-events:none;transform:none}
body.nivo-storefront-page .nivo-wheel-modal.is-open .nivo-wheel-panel{pointer-events:auto}
body.nivo-storefront-page .nivo-wheel-panel{width:318px;max-height:calc(100vh - 145px);padding:18px 16px;border-radius:24px;overflow:auto;background:radial-gradient(circle at 50% 30%,#30220a,#0d0d0d 58%,#070707);border:1px solid rgba(246,207,98,.62)}
body.nivo-storefront-page .nivo-wheel-copy h2{font-size:25px;margin:2px 0;color:var(--nivo-gold-light)}
body.nivo-storefront-page .nivo-wheel-copy p{font-size:13px;margin-bottom:10px}
body.nivo-storefront-page .nivo-wheel-stage{width:245px;height:245px;margin:5px auto 12px}
body.nivo-storefront-page .nivo-wheel-disc{border-width:7px}
body.nivo-storefront-page .nivo-wheel-disc span{width:72px;margin-left:-36px;font-size:9px;transform:rotate(calc(var(--i)*45deg + 22.5deg)) translateY(-88px) rotate(calc(var(--i)*-45deg - 22.5deg))}
body.nivo-storefront-page .nivo-wheel-spin{width:72px;height:72px;border-width:4px;font-size:12px}
body.nivo-storefront-page .nivo-wheel-pointer{font-size:32px;top:-14px}
body.nivo-storefront-page .nivo-wheel-result{font-size:14px;min-height:22px}
body.nivo-storefront-page .nivo-wheel-panel small{font-size:10px}
body.nivo-storefront-page .nivo-wheel-launcher{right:20px;top:50%;width:76px;height:76px;z-index:1200}
body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-launcher{display:none}
body.nivo-storefront-page.wheel-open{overflow:auto!important}

@media(max-width:1280px){
 body.nivo-storefront-page .header-content{grid-template-columns:auto 150px minmax(320px,1fr) auto}
 body.nivo-storefront-page .category-menu--header .category-button{width:150px}
 body.nivo-storefront-page .nivo-showcase__grid{grid-template-columns:360px 1fr;padding-right:300px}
 body.nivo-storefront-page .nivo-showcase__copy h1{font-size:49px}
 body.nivo-storefront-page .nivo-wheel-modal{width:280px}
 body.nivo-storefront-page .nivo-wheel-panel{width:280px}
 body.nivo-storefront-page .nivo-trust-strip__grid{padding-right:320px}
 body.nivo-storefront-page .product-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:1050px){
 body.nivo-storefront-page .header-content{grid-template-columns:auto 1fr auto}
 body.nivo-storefront-page .category-menu--header{display:none}
 body.nivo-storefront-page .nivo-showcase__grid{grid-template-columns:1fr 1.2fr;padding-right:32px}
 body.nivo-storefront-page .nivo-trust-strip__grid{padding-right:32px}
 body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-launcher{display:flex}
 body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-modal{inset:auto 14px 85px auto}
 body.nivo-storefront-page .product-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
 body.nivo-storefront-page .container{padding-left:16px;padding-right:16px}
 body.nivo-storefront-page .header-content{display:flex;flex-wrap:wrap}
 body.nivo-storefront-page .search-box{order:3;width:100%}
 body.nivo-storefront-page .menu-content{min-width:760px}
 body.nivo-storefront-page .nivo-showcase__grid{grid-template-columns:1fr;padding-right:16px}
 body.nivo-storefront-page .nivo-showcase__copy h1{font-size:42px}
 body.nivo-storefront-page .nivo-showcase__visual{height:300px}
 body.nivo-storefront-page .nivo-trust-strip__grid{padding-left:16px;padding-right:16px;grid-template-columns:1fr 1fr}
 body.nivo-storefront-page .featured>.container{padding-right:16px}
 body.nivo-storefront-page .product-grid{grid-template-columns:repeat(2,1fr)}
 body.nivo-storefront-page .nivo-wheel-modal{inset:auto 10px 82px 10px;width:auto}
 body.nivo-storefront-page .nivo-wheel-panel{width:100%;max-height:78vh}
}
@media(max-width:480px){body.nivo-storefront-page .product-grid{grid-template-columns:1fr}}

/* ==========================================================
   INIVOY storefront reference layout v55
   Scoped to the public shop: the admin design stays untouched.
   ========================================================== */
.nivo-storefront-page {
    --ref-gold:#e0ad2e;
    --ref-gold-light:#f2c85d;
    --ref-black:#050505;
    --ref-panel:#0d0d0e;
    background:#050505;
    color:#fff;
}
.nivo-storefront-page .container{width:min(1510px,calc(100% - 48px));max-width:none;margin-inline:auto}
.nivo-storefront-page .topbar{height:40px;min-height:40px;background:#020202!important;border-bottom:1px solid #171717!important;font-size:12px}
.nivo-storefront-page .topbar-content{height:40px;min-height:40px;padding:0 2px}
.nivo-storefront-page .topbar-left,.nivo-storefront-page .topbar-right{gap:24px}
.nivo-storefront-page .topbar a,.nivo-storefront-page .topbar span{color:#f2f2f2}
.nivo-storefront-page .topbar i{font-size:12px;color:var(--ref-gold-light)}

.nivo-storefront-page .main-header{position:relative;top:auto;z-index:1000;background:#070707!important;border-bottom:1px solid #1f1f1f!important;box-shadow:none!important;backdrop-filter:none!important}
.nivo-storefront-page .header-content{display:grid;grid-template-columns:150px 170px minmax(420px,1fr) auto;align-items:center;gap:20px;min-height:84px;padding-block:12px}
.nivo-storefront-page .logo{display:flex;align-items:center;gap:12px;min-width:0;color:#fff;text-decoration:none}
.nivo-storefront-page .logo-mark{position:relative;width:32px;height:38px;display:block;flex:0 0 32px}
.nivo-storefront-page .logo-mark i{position:absolute;width:13px;height:13px;background:linear-gradient(145deg,#f7d977,#c99116);transform:rotate(45deg);border-radius:2px;box-shadow:0 0 14px rgba(224,173,46,.15)}
.nivo-storefront-page .logo-mark i:nth-child(1){left:1px;top:12px}.nivo-storefront-page .logo-mark i:nth-child(2){left:10px;top:3px}.nivo-storefront-page .logo-mark i:nth-child(3){left:10px;top:21px}.nivo-storefront-page .logo-mark i:nth-child(4){left:19px;top:12px}
.nivo-storefront-page .logo-name{font-size:31px;line-height:1;font-weight:800;letter-spacing:.01em;color:#fff}.nivo-storefront-page .logo-name span{color:#fff}

.nivo-storefront-page .category-menu--header{height:52px;align-self:center}
.nivo-storefront-page .category-menu--header .category-button{width:170px;height:52px;padding:0 18px;border:1px solid #313131;border-radius:8px!important;background:#0a0a0b!important;color:#fff!important;display:flex;align-items:center;gap:12px;justify-content:flex-start;text-transform:uppercase;font-size:13px;font-weight:800;letter-spacing:.02em}
.nivo-storefront-page .category-menu--header .category-arrow{margin-left:auto;color:var(--ref-gold)}
.nivo-storefront-page .category-menu--header .fa-bars{color:var(--ref-gold);font-size:17px}
.nivo-storefront-page .category-dropdown{top:calc(100% + 4px);background:#0d0d0e;border-color:#2b2518;color:#fff}
.nivo-storefront-page .category-dropdown a{color:#eee}.nivo-storefront-page .category-dropdown a:hover{background:#19150c;color:var(--ref-gold-light)}

.nivo-storefront-page .search-box{max-width:none;width:100%;height:52px;border:0!important;border-radius:999px!important;overflow:hidden;background:#fff!important;box-shadow:none!important;display:grid;grid-template-columns:minmax(230px,1fr) 185px 62px}
.nivo-storefront-page .search-box input{min-width:0;background:#fff!important;color:#333!important;padding:0 22px;border:0!important;font-size:14px}
.nivo-storefront-page .search-box input::placeholder{color:#777}
.nivo-storefront-page .search-box select{height:52px;background:#fafafa!important;color:#151515!important;border:0!important;border-left:1px solid #e5e5e5!important;padding:0 34px 0 16px;font-size:13px}
.nivo-storefront-page .search-box button{width:62px;height:52px;border:0;border-radius:0 999px 999px 0;background:linear-gradient(135deg,#f2c85d,#d69b17)!important;color:#080808;font-size:18px}

.nivo-storefront-page .header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;white-space:nowrap}
.nivo-storefront-page .header-action,.nivo-storefront-page .user-menu-toggle{height:52px;min-height:52px;border:1px solid #292929!important;border-radius:12px!important;background:#0b0b0c!important;color:#fff!important;box-shadow:none!important}
.nivo-storefront-page .user-menu-toggle{padding:5px 12px 5px 7px;gap:10px}
.nivo-storefront-page .profile-icon{width:38px;height:38px;border-radius:10px;background:linear-gradient(145deg,#f0c554,#c89014);color:#070707;display:grid;place-items:center}
.nivo-storefront-page .user-menu-copy strong{font-size:12px;color:#fff}.nivo-storefront-page .user-menu-copy small{font-size:10px;color:#aaa}
.nivo-storefront-page .header-action{padding:0 12px;gap:8px;font-size:12px;font-weight:700;text-decoration:none}
.nivo-storefront-page .header-action i{font-size:20px;color:#fff}
.nivo-storefront-page .header-icon-wrap,.nivo-storefront-page .cart-icon{position:relative;display:grid;place-items:center}
.nivo-storefront-page .wishlist-count,.nivo-storefront-page .cart-count{position:absolute;right:-8px;top:-10px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:var(--ref-gold);color:#080808;font-size:10px;display:grid;place-items:center;font-weight:900}
.nivo-storefront-page .points-action{background:#111!important;color:var(--ref-gold-light)!important;border-color:#3b321e!important}.nivo-storefront-page .points-action i{color:var(--ref-gold-light)}
.nivo-storefront-page .points-text,.nivo-storefront-page .cart-text{display:flex;flex-direction:column;line-height:1.1}.nivo-storefront-page .points-text strong,.nivo-storefront-page .cart-text strong{font-size:12px}.nivo-storefront-page .points-text small,.nivo-storefront-page .cart-text small{font-size:10px;color:#aaa;margin-top:3px}
.nivo-storefront-page .user-menu-dropdown{background:#111;border-color:#333}.nivo-storefront-page .user-menu-dropdown a{color:#eee}.nivo-storefront-page .user-menu-dropdown a:hover{background:#1e1a10;color:var(--ref-gold-light)}

.nivo-storefront-page .main-menu{position:relative;top:auto;z-index:900;min-height:50px;background:#0b0b0c!important;border-bottom:1px solid rgba(224,173,46,.25)!important;box-shadow:none!important;backdrop-filter:none!important}
.nivo-storefront-page .menu-content{min-height:50px;justify-content:center}
.nivo-storefront-page .menu-links{width:100%;justify-content:center;gap:34px}
.nivo-storefront-page .menu-links a{padding:16px 0 14px;color:#f1f1f1;font-size:13px;font-weight:700}
.nivo-storefront-page .menu-links a::after{left:0;right:0;bottom:0;height:2px;background:var(--ref-gold)}
.nivo-storefront-page .menu-links a:first-child{color:var(--ref-gold-light)!important}

.nivo-storefront-page .nivo-showcase{min-height:550px;background:radial-gradient(circle at 72% 42%,rgba(203,143,17,.21),transparent 38%),linear-gradient(102deg,#030303 0%,#070707 55%,#11100c 100%)}
.nivo-storefront-page .nivo-showcase__grid{grid-template-columns:minmax(430px,.78fr) minmax(690px,1.42fr);gap:36px;min-height:550px;padding-block:28px}
.nivo-storefront-page .nivo-showcase__copy h1{font-size:clamp(50px,4.25vw,72px);margin:19px 0 18px}
.nivo-storefront-page .nivo-showcase__copy>p{font-size:15px;max-width:520px;line-height:1.6}
.nivo-storefront-page .nivo-showcase__actions{margin:24px 0}.nivo-storefront-page .nivo-showcase__actions a{min-height:48px;padding-inline:23px}
.nivo-storefront-page .nivo-showcase__visual{height:470px;border-radius:28px}.nivo-storefront-page .nivo-showcase__visual>img,.nivo-storefront-page .nivo-showcase__visual:after{border-radius:28px}

@media (max-width:1280px){
 .nivo-storefront-page .header-content{grid-template-columns:135px 150px minmax(300px,1fr) auto;gap:12px}
 .nivo-storefront-page .category-menu--header .category-button{width:150px;padding-inline:13px}.nivo-storefront-page .header-wishlist>span:last-child{display:none}.nivo-storefront-page .points-text{display:none}
 .nivo-storefront-page .menu-links{gap:22px}.nivo-storefront-page .nivo-showcase__grid{grid-template-columns:minmax(390px,.8fr) minmax(560px,1.2fr)}
}
@media (max-width:1050px){
 .nivo-storefront-page .header-content{grid-template-columns:140px 1fr auto}.nivo-storefront-page .category-menu--header{display:none}.nivo-storefront-page .user-menu-copy,.nivo-storefront-page .user-menu-toggle>.fa-chevron-down{display:none}
 .nivo-storefront-page .menu-links{overflow-x:auto;justify-content:flex-start;padding-inline:8px}.nivo-storefront-page .nivo-showcase__grid{grid-template-columns:1fr;min-height:auto}.nivo-storefront-page .nivo-showcase__visual{height:420px}
}
@media (max-width:720px){
 .nivo-storefront-page .container{width:min(100% - 24px,1510px)}.nivo-storefront-page .topbar-right a span{display:none}.nivo-storefront-page .header-content{grid-template-columns:1fr auto}.nivo-storefront-page .search-box{grid-column:1/-1;grid-row:2;grid-template-columns:1fr 54px;border-radius:12px!important}.nivo-storefront-page .search-box select{display:none}.nivo-storefront-page .search-box button{border-radius:0 12px 12px 0;width:54px}.nivo-storefront-page .header-wishlist,.nivo-storefront-page .points-action{display:none}.nivo-storefront-page .nivo-showcase__copy h1{font-size:45px}.nivo-storefront-page .nivo-showcase__visual{height:310px}
}

/* ======================================================================
   INIVOY STOREFRONT v56 — authoritative reference layout
   Only public storefront pages are affected. Admin remains untouched.
   ====================================================================== */
@media (min-width: 1101px) {
  body.nivo-storefront-page {
    --store-max: 1740px;
    background: #050505 !important;
  }
  body.nivo-storefront-page .container {
    width: min(calc(100% - 64px), var(--store-max)) !important;
    max-width: none !important;
    margin-inline: auto !important;
    padding-inline: 0 !important;
  }

  /* slim utility bar */
  body.nivo-storefront-page .topbar {
    height: 42px !important;
    min-height: 42px !important;
    background: #020202 !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
  }
  body.nivo-storefront-page .topbar-content {
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
  body.nivo-storefront-page .topbar-left,
  body.nivo-storefront-page .topbar-right,
  body.nivo-storefront-page .topbar-right a {
    display: flex !important;
    align-items: center !important;
  }
  body.nivo-storefront-page .topbar-left,
  body.nivo-storefront-page .topbar-right { gap: 20px !important; }
  body.nivo-storefront-page .topbar-left,
  body.nivo-storefront-page .topbar-right a {
    color: #efefef !important;
    font-size: 12px !important;
    font-weight: 500 !important;
  }
  body.nivo-storefront-page .topbar i { color: #e4b52e !important; }

  /* main header */
  body.nivo-storefront-page .main-header {
    position: relative !important;
    height: auto !important;
    background: #070707 !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
  }
  body.nivo-storefront-page .header-content {
    display: grid !important;
    grid-template-columns: 165px 200px minmax(460px, 1fr) auto !important;
    align-items: center !important;
    gap: 20px !important;
    min-height: 86px !important;
    padding-block: 14px !important;
  }
  body.nivo-storefront-page .logo {
    min-width: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
  }
  body.nivo-storefront-page .logo-mark {
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
  }
  body.nivo-storefront-page .logo-name {
    color: #fff !important;
    font-size: 31px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
  }
  body.nivo-storefront-page .logo-name span { color: #e7b836 !important; }

  body.nivo-storefront-page .category-menu--header { display: block !important; position: relative !important; }
  body.nivo-storefront-page .category-menu--header .category-button {
    width: 100% !important;
    height: 54px !important;
    padding: 0 17px !important;
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    align-items: center !important;
    gap: 12px !important;
    background: #0d0d0e !important;
    color: #fff !important;
    border: 1px solid #333 !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
  }
  body.nivo-storefront-page .category-menu--header .category-button > i:first-child,
  body.nivo-storefront-page .category-menu--header .category-arrow { color: #e2b22e !important; }

  body.nivo-storefront-page .search-box {
    display: grid !important;
    grid-template-columns: minmax(260px,1fr) 180px 62px !important;
    height: 54px !important;
    max-width: none !important;
    overflow: hidden !important;
    background: #f6f6f6 !important;
    border: 0 !important;
    border-radius: 28px !important;
    box-shadow: none !important;
  }
  body.nivo-storefront-page .search-box input,
  body.nivo-storefront-page .search-box select {
    height: 54px !important;
    color: #242424 !important;
    background: transparent !important;
    font-size: 13px !important;
    border: 0 !important;
  }
  body.nivo-storefront-page .search-box input { padding: 0 22px !important; }
  body.nivo-storefront-page .search-box select {
    padding: 0 14px !important;
    border-left: 1px solid #dedede !important;
  }
  body.nivo-storefront-page .search-box button {
    width: 62px !important;
    height: 54px !important;
    border: 0 !important;
    border-radius: 0 28px 28px 0 !important;
    background: linear-gradient(135deg,#f3ce62,#dba61e) !important;
    color: #0a0a0a !important;
    font-size: 18px !important;
  }

  body.nivo-storefront-page .header-actions {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    white-space: nowrap !important;
  }
  body.nivo-storefront-page .user-menu-toggle,
  body.nivo-storefront-page .header-action {
    min-height: 54px !important;
    padding: 6px 12px !important;
    border: 1px solid #343434 !important;
    border-radius: 12px !important;
    background: #0c0c0d !important;
    color: #fff !important;
  }
  body.nivo-storefront-page .profile-icon,
  body.nivo-storefront-page .points-icon {
    width: 34px !important;
    height: 34px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    color: #111 !important;
    background: linear-gradient(135deg,#f4d46f,#dca51e) !important;
  }
  body.nivo-storefront-page .user-menu-copy strong,
  body.nivo-storefront-page .cart-text strong,
  body.nivo-storefront-page .points-text strong { font-size: 12px !important; color: #fff !important; }
  body.nivo-storefront-page .user-menu-copy small,
  body.nivo-storefront-page .cart-text small,
  body.nivo-storefront-page .points-text small { font-size: 10px !important; color: #aaa !important; }
  body.nivo-storefront-page .header-wishlist { border-color: transparent !important; }
  body.nivo-storefront-page .header-icon-wrap > i,
  body.nivo-storefront-page .cart-icon > i { font-size: 23px !important; }

  /* nav row */
  body.nivo-storefront-page .main-menu {
    position: relative !important;
    top: auto !important;
    min-height: 54px !important;
    background: #0d0d0e !important;
    border-bottom: 1px solid rgba(228,177,45,.22) !important;
  }
  body.nivo-storefront-page .menu-content {
    min-height: 54px !important;
    display: flex !important;
    justify-content: center !important;
  }
  body.nivo-storefront-page .menu-links {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 14px !important;
  }
  body.nivo-storefront-page .menu-links a {
    display: flex !important;
    align-items: center !important;
    min-height: 54px !important;
    padding: 0 18px !important;
    color: #f4f4f4 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    position: relative !important;
  }
  body.nivo-storefront-page .menu-links a:first-child { color: #efbd35 !important; }
  body.nivo-storefront-page .menu-links a:first-child::after {
    content: "" !important;
    position: absolute !important;
    left: 18px !important;
    right: 18px !important;
    bottom: 0 !important;
    height: 2px !important;
    background: #e7b22a !important;
  }

  /* hero */
  body.nivo-storefront-page .nivo-showcase {
    min-height: 560px !important;
    overflow: visible !important;
    background:
      radial-gradient(circle at 69% 48%, rgba(214,155,25,.19), transparent 35%),
      linear-gradient(100deg,#030405 0%,#070707 54%,#12100b 100%) !important;
  }
  body.nivo-storefront-page .nivo-showcase__grid {
    display: grid !important;
    grid-template-columns: 500px minmax(620px, 1fr) !important;
    align-items: center !important;
    gap: 28px !important;
    min-height: 560px !important;
    padding: 28px 390px 28px 28px !important;
  }
  body.nivo-storefront-page .nivo-showcase__copy { padding: 0 !important; z-index: 3 !important; }
  body.nivo-storefront-page .nivo-showcase__eyebrow {
    display: inline-flex !important;
    align-items: center !important;
    padding: 9px 14px !important;
    border: 1px solid rgba(228,177,45,.32) !important;
    border-radius: 999px !important;
    background: rgba(221,165,28,.08) !important;
    color: #e9bd45 !important;
    font-size: 11px !important;
    letter-spacing: .07em !important;
    font-weight: 700 !important;
  }
  body.nivo-storefront-page .nivo-showcase__copy h1 {
    max-width: 520px !important;
    margin: 20px 0 18px !important;
    color: #fff !important;
    font-size: 58px !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    font-weight: 800 !important;
  }
  body.nivo-storefront-page .nivo-showcase__copy h1 span { color: #eabc43 !important; }
  body.nivo-storefront-page .nivo-showcase__copy > p {
    max-width: 500px !important;
    margin: 0 !important;
    color: #e1e1e1 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
  }
  body.nivo-storefront-page .nivo-showcase__actions { margin: 25px 0 25px !important; gap: 14px !important; }
  body.nivo-storefront-page .nivo-showcase__actions a {
    min-height: 52px !important;
    padding: 0 24px !important;
    border-radius: 28px !important;
    font-size: 14px !important;
  }
  body.nivo-storefront-page .nivo-showcase__primary {
    background: linear-gradient(135deg,#f1cc5c,#dca51e) !important;
    color: #0b0b0b !important;
  }
  body.nivo-storefront-page .nivo-showcase__secondary {
    background: rgba(0,0,0,.2) !important;
    color: #fff !important;
    border: 1px solid #e0ac27 !important;
  }
  body.nivo-storefront-page .nivo-showcase__proof {
    display: flex !important;
    align-items: center !important;
    gap: 18px !important;
    margin-top: 0 !important;
  }
  body.nivo-storefront-page .nivo-showcase__avatars span {
    width: 30px !important;
    height: 30px !important;
    font-size: 10px !important;
    border: 2px solid #080808 !important;
  }
  body.nivo-storefront-page .nivo-showcase__proof strong { color: #e9b72e !important; font-size: 15px !important; }
  body.nivo-storefront-page .nivo-showcase__proof small { color: #d2d2d2 !important; font-size: 11px !important; }
  body.nivo-storefront-page .nivo-showcase__secure {
    padding-left: 22px !important;
    border-left: 1px solid rgba(255,255,255,.17) !important;
  }
  body.nivo-storefront-page .nivo-showcase__secure > i { color: #e7b52f !important; font-size: 30px !important; }

  body.nivo-storefront-page .nivo-showcase__visual {
    position: relative !important;
    height: 480px !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: transparent !important;
  }
  body.nivo-storefront-page .nivo-showcase__visual > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 62% center !important;
    border-radius: 0 !important;
    filter: none !important;
    box-shadow: none !important;
    -webkit-mask-image: linear-gradient(90deg,transparent 0,#000 12%,#000 92%,transparent 100%) !important;
    mask-image: linear-gradient(90deg,transparent 0,#000 12%,#000 92%,transparent 100%) !important;
  }
  body.nivo-storefront-page .nivo-showcase__visual::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(90deg,#070707 0,transparent 14%,transparent 90%,rgba(9,8,5,.75) 100%) !important;
    pointer-events: none !important;
  }

  /* trust row */
  body.nivo-storefront-page .nivo-trust-strip {
    background: #080808 !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
    border-bottom: 1px solid rgba(255,255,255,.09) !important;
  }
  body.nivo-storefront-page .nivo-trust-strip__grid {
    display: grid !important;
    grid-template-columns: repeat(4,1fr) !important;
  }
  body.nivo-storefront-page .nivo-trust-strip article {
    min-height: 88px !important;
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    padding: 18px 26px !important;
    border: 0 !important;
    border-right: 1px solid rgba(225,174,42,.25) !important;
    border-radius: 0 !important;
    background: #111 !important;
  }
  body.nivo-storefront-page .nivo-trust-strip article:first-child { border-left: 1px solid rgba(225,174,42,.25) !important; }
  body.nivo-storefront-page .nivo-trust-strip article > span {
    width: 45px !important;
    height: 45px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    background: #f2eee2 !important;
    color: #c99514 !important;
    font-size: 18px !important;
  }
  body.nivo-storefront-page .nivo-trust-strip strong { color: #fff !important; font-size: 14px !important; }
  body.nivo-storefront-page .nivo-trust-strip small { color: #aaa !important; font-size: 11px !important; }

  /* featured begins immediately after trust row */
  body.nivo-storefront-page .featured {
    padding: 44px 0 70px !important;
    background: linear-gradient(180deg,#080909,#050505) !important;
  }
  body.nivo-storefront-page .section-heading { margin-bottom: 22px !important; }
  body.nivo-storefront-page .section-label { color: #e7b42d !important; font-size: 11px !important; }
  body.nivo-storefront-page .section-heading h2 { color: #fff !important; font-size: 30px !important; margin: 3px 0 !important; }
  body.nivo-storefront-page .section-heading p { color: #aaa !important; font-size: 13px !important; }
  body.nivo-storefront-page .product-grid {
    display: grid !important;
    grid-template-columns: repeat(5,minmax(0,1fr)) !important;
    gap: 16px !important;
  }
  body.nivo-storefront-page .product-card {
    overflow: hidden !important;
    border: 1px solid #2c2c2c !important;
    border-radius: 15px !important;
    background: linear-gradient(145deg,#1c1c1d,#111) !important;
  }
  body.nivo-storefront-page .product-image { height: 200px !important; background: #1a1a1b !important; }
  body.nivo-storefront-page .product-content { padding: 15px !important; }
  body.nivo-storefront-page .product-category { display: none !important; }
  body.nivo-storefront-page .product-content h3 { margin: 0 0 8px !important; }
  body.nivo-storefront-page .product-content h3 a { color: #fff !important; font-size: 13px !important; }
  body.nivo-storefront-page .product-rating { color: #f0bb31 !important; font-size: 11px !important; }
  body.nivo-storefront-page .product-price strong { color: #fff !important; font-size: 16px !important; }
  body.nivo-storefront-page .add-to-cart {
    width: 40px !important;
    height: 40px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(226,175,40,.48) !important;
    background: transparent !important;
    color: #e5b12c !important;
  }

  /* right wheel panel, as in reference */
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-launcher { display: none !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-modal,
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-modal[hidden] {
    position: absolute !important;
    top: 196px !important;
    right: max(32px, calc((100vw - var(--store-max))/2)) !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 1150 !important;
    width: 350px !important;
    height: auto !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    transform: none !important;
    padding: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
  }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-panel {
    width: 350px !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 22px 18px 18px !important;
    pointer-events: auto !important;
    border-radius: 25px !important;
    background: radial-gradient(circle at 50% 30%,#30220c,#12100b 55%,#090909) !important;
    border: 1px solid rgba(235,188,67,.58) !important;
    box-shadow: 0 28px 80px rgba(0,0,0,.65) !important;
  }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-close { display: none !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .wheel-kicker { font-size: 10px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-copy h2 { font-size: 26px !important; margin: 4px 0 !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-copy p { font-size: 12px !important; line-height: 1.45 !important; margin-bottom: 9px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-stage { width: 265px !important; height: 265px !important; margin: 4px auto 10px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-disc { border-width: 8px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-disc span {
    width: 72px !important;
    margin-left: -36px !important;
    font-size: 9px !important;
    transform: rotate(calc(var(--i)*45deg + 22.5deg)) translateY(-96px) rotate(calc(var(--i)*-45deg - 22.5deg)) !important;
  }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-spin { width: 75px !important; height: 75px !important; font-size: 11px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-result { min-height: 20px !important; font-size: 12px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-panel small { font-size: 9px !important; }
}

@media (min-width: 1101px) and (max-width: 1500px) {
  body.nivo-storefront-page .container { width: min(calc(100% - 40px), 1400px) !important; }
  body.nivo-storefront-page .header-content { grid-template-columns: 140px 155px minmax(360px,1fr) auto !important; gap: 12px !important; }
  body.nivo-storefront-page .logo-name { font-size: 27px !important; }
  body.nivo-storefront-page .search-box { grid-template-columns: minmax(220px,1fr) 150px 58px !important; }
  body.nivo-storefront-page .header-actions { gap: 6px !important; }
  body.nivo-storefront-page .header-action,
  body.nivo-storefront-page .user-menu-toggle { padding-inline: 8px !important; }
  body.nivo-storefront-page .header-wishlist > span:last-child { display: none !important; }
  body.nivo-storefront-page .nivo-showcase__grid { grid-template-columns: 430px minmax(500px,1fr) !important; padding-right: 330px !important; }
  body.nivo-storefront-page .nivo-showcase__copy h1 { font-size: 51px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-modal,
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-modal[hidden] { right: 18px !important; width: 300px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-panel { width: 300px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-stage { width: 225px !important; height: 225px !important; }
  body.nivo-storefront-page .nivo-wheel-widget--home .nivo-wheel-disc span { transform: rotate(calc(var(--i)*45deg + 22.5deg)) translateY(-79px) rotate(calc(var(--i)*-45deg - 22.5deg)) !important; font-size: 8px !important; }
}

/* v58 – jól olvasható fejlécműveletek */
@media (min-width: 1101px) {
  body.nivo-storefront-page .header-content {
    grid-template-columns: 165px 175px minmax(500px, 1fr) auto !important;
    gap: 14px !important;
  }
  body.nivo-storefront-page .search-box {
    min-width: 0 !important;
    height: 58px !important;
    grid-template-columns: minmax(300px,1fr) 180px 64px !important;
    border-radius: 30px !important;
  }
  body.nivo-storefront-page .search-box input,
  body.nivo-storefront-page .search-box select {
    font-size: 14px !important;
    color: #252525 !important;
  }
  body.nivo-storefront-page .header-actions {
    display: grid !important;
    grid-template-columns: 145px 142px 118px 120px !important;
    gap: 9px !important;
    align-items: stretch !important;
  }
  body.nivo-storefront-page .user-menu-toggle,
  body.nivo-storefront-page .header-action {
    min-width: 0 !important;
    height: 58px !important;
    padding: 0 12px !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 14px !important;
    background: linear-gradient(180deg,#121212,#0a0a0a) !important;
    color: #fff !important;
  }
  body.nivo-storefront-page .header-wishlist > span:last-child {
    display: inline !important;
    font-size: 13px !important;
    white-space: nowrap !important;
  }
  body.nivo-storefront-page .user-menu-copy,
  body.nivo-storefront-page .points-text,
  body.nivo-storefront-page .cart-text {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    line-height: 1.1 !important;
  }
  body.nivo-storefront-page .user-menu-copy strong,
  body.nivo-storefront-page .points-text strong,
  body.nivo-storefront-page .cart-text strong {
    color: #fff !important;
    font-size: 13px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  body.nivo-storefront-page .user-menu-copy small,
  body.nivo-storefront-page .points-text small,
  body.nivo-storefront-page .cart-text small {
    color: #bdbdbd !important;
    font-size: 10px !important;
    white-space: nowrap !important;
  }
  body.nivo-storefront-page .profile-icon,
  body.nivo-storefront-page .points-icon,
  body.nivo-storefront-page .header-icon-wrap,
  body.nivo-storefront-page .cart-icon {
    flex: 0 0 auto !important;
  }
}
@media (min-width: 1101px) and (max-width: 1450px) {
  body.nivo-storefront-page .header-content {
    grid-template-columns: 145px 155px minmax(390px,1fr) auto !important;
    gap: 8px !important;
  }
  body.nivo-storefront-page .search-box {
    grid-template-columns: minmax(230px,1fr) 150px 58px !important;
  }
  body.nivo-storefront-page .header-actions {
    grid-template-columns: 128px 122px 104px 106px !important;
    gap: 6px !important;
  }
  body.nivo-storefront-page .user-menu-toggle,
  body.nivo-storefront-page .header-action { padding: 0 8px !important; }
  body.nivo-storefront-page .header-wishlist > span:last-child { font-size: 12px !important; }
}

/* v59 – visszafogott, referencia szerinti fejlécműveletek */
@media (min-width: 1101px) {
  body.nivo-storefront-page .header-actions {
    grid-template-columns: 150px 150px 150px 128px !important;
    gap: 10px !important;
  }

  body.nivo-storefront-page .user-menu-toggle,
  body.nivo-storefront-page .header-action {
    height: 56px !important;
    padding: 0 14px !important;
    border: 1px solid rgba(255,255,255,.13) !important;
    border-radius: 13px !important;
    background: #0a0a0a !important;
    box-shadow: none !important;
    transition: border-color .18s ease, background-color .18s ease !important;
  }

  body.nivo-storefront-page .user-menu-toggle:hover,
  body.nivo-storefront-page .header-action:hover {
    background: #0f0f0f !important;
    border-color: rgba(231,179,41,.34) !important;
  }

  body.nivo-storefront-page .profile-icon,
  body.nivo-storefront-page .points-icon {
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    background: transparent !important;
    border: 1px solid rgba(231,179,41,.72) !important;
    color: #e7b329 !important;
    font-size: 14px !important;
  }

  body.nivo-storefront-page .header-icon-wrap,
  body.nivo-storefront-page .cart-icon {
    color: #fff !important;
    font-size: 22px !important;
  }

  body.nivo-storefront-page .header-wishlist > span:last-child,
  body.nivo-storefront-page .user-menu-copy strong,
  body.nivo-storefront-page .points-text strong,
  body.nivo-storefront-page .cart-text strong {
    color: #f5f5f5 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
  }

  body.nivo-storefront-page .user-menu-copy small,
  body.nivo-storefront-page .points-text small,
  body.nivo-storefront-page .cart-text small {
    color: #a6a6a6 !important;
    font-size: 10px !important;
    font-weight: 400 !important;
  }

  body.nivo-storefront-page .wishlist-count,
  body.nivo-storefront-page .cart-count {
    min-width: 17px !important;
    height: 17px !important;
    top: -8px !important;
    right: -9px !important;
    background: #e7b329 !important;
    color: #090909 !important;
    border: 2px solid #0a0a0a !important;
    font-size: 9px !important;
    font-weight: 800 !important;
  }

  body.nivo-storefront-page .points-action {
    gap: 10px !important;
  }

  body.nivo-storefront-page .user-menu-toggle > .fa-chevron-down {
    margin-left: auto !important;
    color: #d8aa2a !important;
    font-size: 10px !important;
  }
}

@media (min-width: 1101px) and (max-width: 1450px) {
  body.nivo-storefront-page .header-actions {
    grid-template-columns: 136px 132px 132px 116px !important;
    gap: 7px !important;
  }
  body.nivo-storefront-page .user-menu-toggle,
  body.nivo-storefront-page .header-action {
    padding-inline: 10px !important;
  }
}

/* INIVOY kupon ellenőrzés – pénztár */
.checkout-coupon-box .checkout-coupon-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin-bottom:0}
.checkout-coupon-box .checkout-coupon-row input{margin:0}
.checkout-coupon-box .checkout-coupon-row button{height:42px;padding:0 16px;border:0;border-radius:10px;background:#5b9a42;color:#fff;font-weight:800;cursor:pointer;white-space:nowrap}
.checkout-coupon-box .checkout-coupon-row button:disabled{opacity:.6;cursor:wait}
#checkout-coupon-message{min-height:18px}
@media(max-width:520px){.checkout-coupon-box .checkout-coupon-row{grid-template-columns:1fr}.checkout-coupon-box .checkout-coupon-row button{width:100%}}
/* Admin belépési mód választó */
.portal-choice-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at top right,rgba(91,154,66,.16),transparent 38%),#f4f7f3}.portal-choice-card{width:min(880px,100%);padding:46px;border:1px solid #dfe7dc;border-radius:28px;background:#fff;box-shadow:0 24px 70px rgba(28,48,24,.12);text-align:center}.portal-choice-logo{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 18px;border-radius:18px;background:#5b9a42;color:#fff;font-size:25px;box-shadow:0 12px 28px rgba(91,154,66,.3)}.portal-choice-card h1{margin:9px 0 10px;color:#111827;font-size:clamp(28px,5vw,42px)}.portal-choice-card>p{max-width:620px;margin:0 auto;color:#6b7280;line-height:1.65}.portal-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:32px 0 24px}.portal-choice-grid form{margin:0}.portal-choice-option{width:100%;height:100%;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:26px;border:1px solid #dce5d9;border-radius:20px;background:#fff;text-align:left;cursor:pointer;transition:.2s;font:inherit}.portal-choice-option:hover{transform:translateY(-4px);border-color:#5b9a42;box-shadow:0 14px 30px rgba(38,65,32,.12)}.portal-choice-option>i{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#edf6ea;color:#5b9a42;font-size:20px}.portal-choice-option strong{font-size:21px;color:#111827}.portal-choice-option span{min-height:48px;color:#6b7280;line-height:1.5}.portal-choice-option em{margin-top:7px;color:#4a8235;font-style:normal;font-weight:800}.portal-choice-logout{display:inline-flex;gap:8px;align-items:center;color:#6b7280;text-decoration:none;font-weight:700}@media(max-width:680px){.portal-choice-page{padding:16px}.portal-choice-card{padding:30px 18px;border-radius:22px}.portal-choice-grid{grid-template-columns:1fr}.portal-choice-option span{min-height:0}}
