/* =========================================
   SINGLE PRODUCT – ALAPOK
   ========================================= */

.single-product {
    --product-dark: #142b3c;
    --product-darker: #0e2231;
    --product-teal: #22adb2;
    --product-teal-dark: #137f84;
    --product-light: #f4f8f9;
    --product-border: #dce7ea;
    --product-text: #213648;
    --product-muted: #6c7f8d;

    overflow: hidden;
    color: var(--product-text);
    background: #ffffff;
}

.product-container,
.product-hero__container {
    width: calc(100% - 48px);
    max-width: 1680px;
    margin-right: auto;
    margin-left: auto;
}


/* =========================================
   TERMÉKFEJLÉC
   ========================================= */

.product-hero {
    position: relative;
    overflow: hidden;
    padding: 32px 0 clamp(65px, 8vw, 110px);
    background:
        radial-gradient(
            circle at 86% 15%,
            rgba(70, 206, 208, 0.14),
            transparent 29%
        ),
        linear-gradient(
            145deg,
            #f7fafb 0%,
            #edf4f5 100%
        );
}

.product-hero::before {
    position: absolute;
    top: -270px;
    right: -190px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(34, 173, 178, 0.1);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.product-hero::after {
    position: absolute;
    right: 7%;
    bottom: -210px;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    background: rgba(34, 173, 178, 0.045);
    content: "";
    pointer-events: none;
}

.product-hero__container {
    position: relative;
    z-index: 1;
}


/* Morzsamenü */

.product-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    align-items: center;
    margin-bottom: 32px;
    color: #7c8d98;
    font-size: 0.73rem;
    font-weight: 600;
}

.product-breadcrumb a {
    color: #536b79;
    text-decoration: none;
    transition: color 0.2s ease;
}

.product-breadcrumb a:hover {
    color: var(--product-teal-dark);
}

.product-breadcrumb > span[aria-hidden="true"] {
    color: #b4c0c7;
}

.product-breadcrumb > span:last-child {
    color: #263d4d;
}


/* Kéthasábos fejléc */

.product-hero__grid {
    display: grid;
    grid-template-columns:
        minmax(0, 1.08fr)
        minmax(440px, 0.92fr);
    gap: clamp(48px, 7vw, 110px);
    align-items: center;
}


/* =========================================
   TERMÉKVIZUÁL
   ========================================= */

.product-hero__visual {
    position: relative;
    min-height: clamp(520px, 54vw, 660px);
    overflow: hidden;
    border: 1px solid rgba(198, 219, 224, 0.95);
    border-radius: 32px;
    background:
        radial-gradient(
            circle at 68% 25%,
            rgba(73, 220, 220, 0.24),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            #eef8f8 0%,
            #dcebed 100%
        );
    box-shadow:
        0 34px 75px rgba(20, 51, 68, 0.13),
        0 1px 0 rgba(255, 255, 255, 0.9) inset;
}

.product-hero__visual::before {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    left: 0;
    height: 5px;
    background:
        linear-gradient(
            90deg,
            var(--product-dark),
            #31586b,
            var(--product-teal)
        );
    content: "";
}

.product-hero__visual::after {
    position: absolute;
    right: -110px;
    bottom: -150px;
    width: 390px;
    height: 390px;
    border: 1px solid rgba(31, 164, 169, 0.11);
    border-radius: 50%;
    content: "";
}

.product-hero__tag {
    position: absolute;
    z-index: 5;
    top: 27px;
    left: 27px;
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    padding: 0 13px;
    border: 1px solid rgba(221, 231, 120, 0.48);
    border-radius: 999px;
    color: #485112;
    background: rgba(249, 255, 193, 0.94);
    box-shadow: 0 7px 20px rgba(79, 91, 20, 0.08);
    font-size: 0.68rem;
    font-weight: 800;
}

.product-hero__visual-power {
    position: absolute;
    z-index: 5;
    right: 27px;
    bottom: 27px;
    display: inline-flex;
    min-height: 43px;
    align-items: center;
    padding: 0 17px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 11px;
    color: #ffffff;
    background: rgba(26, 56, 72, 0.88);
    box-shadow: 0 10px 24px rgba(14, 41, 55, 0.22);
    backdrop-filter: blur(10px);
    font-size: 0.8rem;
    font-weight: 800;
}


/* Rajzolt napelem */

.product-panel-visual {
    position: absolute;
    inset: 0;
}

.product-panel-visual__glow {
    position: absolute;
    top: 13%;
    left: 50%;
    width: 70%;
    height: 55%;
    border-radius: 50%;
    background: rgba(79, 215, 216, 0.19);
    filter: blur(55px);
    transform: translateX(-50%);
}

.product-panel-visual__panel {
    position: absolute;
    z-index: 3;
    top: 29%;
    left: 14%;
    width: 72%;
    aspect-ratio: 1.62;
    overflow: hidden;
    border: 8px solid #132a38;
    border-radius: 7px;
    background:
        linear-gradient(
            145deg,
            #102e46,
            #061c2d
        );
    box-shadow:
        0 45px 65px rgba(14, 42, 57, 0.3),
        0 3px 0 rgba(255, 255, 255, 0.15) inset;
    transform:
        perspective(900px)
        rotateX(54deg)
        rotateZ(-7deg);
    transform-origin: center;
    transition:
        transform 0.55s ease,
        box-shadow 0.55s ease;
}

.product-panel-visual__panel::before {
    position: absolute;
    inset: 0;
    background:
        repeating-linear-gradient(
            90deg,
            transparent 0,
            transparent calc(12.5% - 1px),
            rgba(144, 206, 225, 0.33)
                calc(12.5% - 1px),
            rgba(144, 206, 225, 0.33) 12.5%
        ),
        repeating-linear-gradient(
            0deg,
            transparent 0,
            transparent calc(20% - 1px),
            rgba(144, 206, 225, 0.27)
                calc(20% - 1px),
            rgba(144, 206, 225, 0.27) 20%
        );
    content: "";
}

.product-panel-visual__panel::after {
    position: absolute;
    inset: -50%;
    background:
        linear-gradient(
            110deg,
            transparent 39%,
            rgba(255, 255, 255, 0.22) 49%,
            transparent 59%
        );
    content: "";
    transform: translateX(-72%);
    transition: transform 0.8s ease;
}

.product-panel-visual__panel i {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(125, 213, 229, 0.18);
}

.product-panel-visual__shadow {
    position: absolute;
    z-index: 2;
    right: 16%;
    bottom: 21%;
    left: 16%;
    height: 38px;
    border-radius: 50%;
    background: rgba(13, 43, 57, 0.25);
    filter: blur(18px);
}

.product-hero__visual:hover
.product-panel-visual__panel {
    box-shadow:
        0 55px 80px rgba(14, 42, 57, 0.37),
        0 3px 0 rgba(255, 255, 255, 0.2) inset;
    transform:
        perspective(900px)
        rotateX(49deg)
        rotateZ(-5deg)
        translateY(-8px);
}

.product-hero__visual:hover
.product-panel-visual__panel::after {
    transform: translateX(65%);
}


/* =========================================
   TERMÉKFEJLÉC TARTALOM
   ========================================= */

.product-hero__content {
    max-width: 680px;
}

.product-hero__manufacturer {
    display: inline-flex;
    align-items: center;
    margin-bottom: 18px;
    color: var(--product-teal-dark);
    font-size: 0.73rem;
    font-weight: 850;
    letter-spacing: 0.12em;
    text-decoration: none;
    text-transform: uppercase;
}

.product-hero__manufacturer::before {
    width: 26px;
    height: 2px;
    margin-right: 10px;
    background: var(--product-teal);
    content: "";
}

.product-hero__content h1 {
    max-width: 720px;
    margin: 0;
    color: #182b3e;
	font-size: clamp(1.3rem, 2.5vw, 2.4rem);
    font-weight: 500;
    letter-spacing: -0.055em;
    line-height: 0.97;
}

.product-hero__description {
    max-width: 610px;
    margin: 25px 0 0;
    color: #647986;
    font-size: clamp(1rem, 1.35vw, 1.16rem);
    line-height: 1.75;
}


/* Kiemelt adatok */

.product-key-specs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 34px;
}

.product-key-spec {
    display: flex;
    min-height: 88px;
    justify-content: center;
    flex-direction: column;
    padding: 15px 18px;
    border: 1px solid var(--product-border);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 8px 25px rgba(19, 48, 65, 0.035);
}

.product-key-spec small {
    display: block;
    margin-bottom: 7px;
    color: #81919c;
    font-size: 0.64rem;
    font-weight: 750;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.product-key-spec strong {
    color: #1c3446;
    font-size: 1.04rem;
    line-height: 1.2;
}

.product-key-spec strong span {
    color: #748792;
    font-size: 0.72em;
    font-weight: 700;
}


/* Műveletek */

.product-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.product-hero__actions .button {
    min-height: 52px;
}

.product-action {
    display: inline-flex;
    min-height: 52px;
    gap: 9px;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    border: 1px solid #d4e2e6;
    border-radius: 14px;
    color: #526b79;
    background: rgba(255, 255, 255, 0.86);
    cursor: pointer;
    font: inherit;
    font-size: 0.75rem;
    font-weight: 750;
    transition:
        color 0.2s ease,
        border-color 0.2s ease,
        background-color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease;
}

.product-action svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.product-action:hover {
    color: #18394a;
    border-color: #bcd3d9;
    background: #ffffff;
    box-shadow: 0 8px 20px rgba(19, 48, 65, 0.08);
    transform: translateY(-2px);
}

.product-action[data-save-product].is-active {
    color: #c8495b;
    border-color: rgba(200, 73, 91, 0.28);
    background: #fff1f3;
}

.product-action[data-save-product].is-active svg {
    fill: currentColor;
}

.product-action[data-compare-product].is-active {
    color: #147f84;
    border-color: rgba(20, 127, 132, 0.3);
    background: #ecf9f9;
}

.product-hero__support {
    display: flex;
    gap: 11px;
    align-items: flex-start;
    margin-top: 24px;
    padding-top: 21px;
    border-top: 1px solid #dce6e9;
}

.product-hero__support > span {
    display: inline-flex;
    flex: 0 0 auto;
    width: 25px;
    height: 25px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background: var(--product-teal);
    font-size: 0.7rem;
    font-weight: 900;
}

.product-hero__support p {
    max-width: 490px;
    margin: 2px 0 0;
    color: #788a95;
    font-size: 0.74rem;
    line-height: 1.55;
}


/* =========================================
   TERMÉKBEMUTATÁS
   ========================================= */

.product-overview {
    padding:
        clamp(72px, 8vw, 110px)
        0;
    background: #ffffff;
}

.product-overview__heading {
    display: block;
    max-width: 1040px;
    margin: 0 auto;
}

.product-overview__heading h2,
.product-section-heading h2 {
    margin: 13px 0 0;
    color: #172d40;
    font-size: clamp(2.1rem, 4vw, 3.8rem);
    letter-spacing: -0.045em;
    line-height: 1.07;
}

.product-overview__description {
    max-width: 960px;
    margin-top: clamp(32px, 4vw, 48px);
    padding: clamp(28px, 4vw, 48px);
    border: 1px solid #e3e9ec;
    border-radius: 24px;
    background: linear-gradient(145deg, #ffffff, #fafcfc);
    box-shadow: 0 18px 48px rgba(23, 45, 64, 0.055);
}

.product-overview__heading > div:first-child {
    max-width: 720px;
}

.product-overview__heading > div:first-child h2 {
    font-size: clamp(2.1rem, 4vw, 3.25rem);
}

.product-overview__description p {
    margin: 0 0 18px;
    color: #657985;
    font-size: clamp(0.95rem, 1.1vw, 1.04rem);
    line-height: 1.78;
}

.product-overview__description p:last-child {
    margin-bottom: 0;
}

.product-overview__description h3 {
    margin: 34px 0 14px;
    padding-top: 32px;
    border-top: 1px solid #e3e9ec;
    color: #172d40;
    font-size: clamp(1.22rem, 1.8vw, 1.55rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.3;
}

.product-overview__description h3:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.product-overview__description ul {
    display: grid;
    gap: 10px;
    margin: 0 0 25px;
    padding: 0;
    list-style: none;
}

.product-overview__description li {
    position: relative;
    padding-left: 24px;
    color: #657985;
    font-size: clamp(0.96rem, 1.2vw, 1.08rem);
    line-height: 1.72;
}

.product-overview__description li::before {
    position: absolute;
    top: 0.72em;
    left: 2px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--product-accent, #29a5ab);
    content: "";
    transform: translateY(-50%);
}

/* Előnykártyák */

.product-feature-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: clamp(48px, 6vw, 82px);
}

.product-feature {
    position: relative;
    min-height: 250px;
    overflow: hidden;
    padding: 26px;
    border: 1px solid var(--product-border);
    border-radius: 19px;
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f6fafa
        );
    transition:
        border-color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.product-feature::after {
    position: absolute;
    right: -38px;
    bottom: -45px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: rgba(34, 173, 178, 0.055);
    content: "";
}

.product-feature:hover {
    border-color: rgba(34, 173, 178, 0.34);
    box-shadow: 0 20px 45px rgba(18, 49, 66, 0.09);
    transform: translateY(-5px);
}

.product-feature__number {
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    margin-bottom: 45px;
    border-radius: 11px;
    color: #ffffff;
    background: var(--product-dark);
    font-size: 0.73rem;
    font-weight: 800;
}

.product-feature h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 10px;
    color: #1a3345;
    font-size: 1.1rem;
}

.product-feature p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #71838e;
    font-size: 0.82rem;
    line-height: 1.68;
}


/* =========================================
   KÖZÖS SZEKCIÓFEJLÉC
   ========================================= */

.product-section-heading {
    max-width: 760px;
    margin-bottom: clamp(38px, 5vw, 64px);
}

.product-section-heading > p {
    max-width: 690px;
    margin: 20px 0 0;
    color: #70828e;
    font-size: 0.94rem;
    line-height: 1.75;
}


/* =========================================
   MŰSZAKI ADATOK
   ========================================= */

.product-technical {
    padding:
        clamp(80px, 9vw, 130px)
        0;
    border-top: 1px solid #e7ecef;
    background: #ffffff;
}

.product-technical .product-container {
    display: grid;
    grid-template-columns:
        minmax(300px, 0.65fr)
        minmax(520px, 1fr);
    gap: clamp(55px, 8vw, 130px);
    align-items: start;
}

.product-technical .section-eyebrow {
    color: var(--product-teal-dark);
}

.product-technical
.product-section-heading h2 {
    color: #172d40;
}

.product-technical
.product-section-heading > p {
    color: #657985;
}

.product-technical__table-wrap {
    overflow: hidden;
    border: 1px solid #dfe6e9;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 18px 45px rgba(23, 45, 64, 0.07);
}

.product-technical__table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    background: #ffffff;
}

.product-technical__table tr:nth-child(odd) {
    background: #f2f4f5;
}

.product-technical__table tr:nth-child(even) {
    background: #ffffff;
}

.product-technical__table th,
.product-technical__table td {
    width: 50%;
    padding: 17px 22px;
    border-bottom: 1px solid #dfe6e9;
    color: #263f51;
    font-size: 0.86rem;
    line-height: 1.55;
    text-align: left;
    vertical-align: top;
}

.product-technical__table th {
    color: #172d40;
    font-weight: 700;
}

.product-technical__table td {
    color: #5d707c;
    font-weight: 500;
}

.product-technical__table tr:last-child th,
.product-technical__table tr:last-child td {
    border-bottom: 0;
}


/* =========================================
   KOMPATIBILITÁS
   ========================================= */

.product-compatibility {
    padding:
        clamp(80px, 9vw, 135px)
        0;
    background: #f5f8f9;
}

.product-system-flow {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        auto
        minmax(0, 1fr)
        auto
        minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    margin-bottom: 32px;
    padding: 21px;
    border: 1px solid var(--product-border);
    border-radius: 21px;
    background: #ffffff;
    box-shadow: 0 16px 45px rgba(18, 49, 66, 0.055);
}

.product-system-flow > span {
    display: inline-flex;
    width: 37px;
    height: 37px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background: var(--product-teal);
    font-size: 1rem;
}

.product-system-flow__item {
    min-height: 82px;
    padding: 17px 19px;
    border-radius: 14px;
    background: #f4f8f9;
}

.product-system-flow__item small {
    display: block;
    margin-bottom: 7px;
    color: #84949e;
    font-size: 0.62rem;
    font-weight: 750;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.product-system-flow__item strong {
    color: #213a4b;
    font-size: 0.88rem;
}

.product-compatibility__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.compatibility-card {
    position: relative;
    display: flex;
    min-height: 270px;
    overflow: hidden;
    flex-direction: column;
    padding: 27px;
    border: 1px solid var(--product-border);
    border-radius: 20px;
    color: inherit;
    background: #ffffff;
    text-decoration: none;
    transition:
        border-color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.compatibility-card::after {
    position: absolute;
    top: -65px;
    right: -65px;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: rgba(34, 173, 178, 0.07);
    content: "";
}

.compatibility-card:hover {
    border-color: rgba(34, 173, 178, 0.38);
    box-shadow: 0 22px 50px rgba(18, 49, 66, 0.1);
    transform: translateY(-5px);
}

.compatibility-card__type {
    position: relative;
    z-index: 1;
    display: inline-flex;
    width: max-content;
    min-height: 28px;
    align-items: center;
    margin-bottom: 38px;
    padding: 0 10px;
    border: 1px solid rgba(34, 173, 178, 0.23);
    border-radius: 7px;
    color: #137f84;
    background: #effafa;
    font-size: 0.64rem;
    font-weight: 800;
}

.compatibility-card > small {
    position: relative;
    z-index: 1;
    color: var(--product-teal-dark);
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.compatibility-card h3 {
    position: relative;
    z-index: 1;
    margin: 8px 0 10px;
    color: #183246;
    font-size: 1.32rem;
}

.compatibility-card > p {
    position: relative;
    z-index: 1;
    max-width: 610px;
    margin: 0;
    color: #71838e;
    font-size: 0.82rem;
    line-height: 1.65;
}

.compatibility-card__bottom {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 23px;
    border-top: 1px solid #e4ebed;
}

.compatibility-card__bottom span {
    color: #536d79;
    font-size: 0.7rem;
    font-weight: 750;
}

.compatibility-card__bottom strong {
    color: var(--product-teal-dark);
    font-size: 1.1rem;
}

.product-compatibility__notice {
    display: grid;
    grid-template-columns: minmax(180px, 0.3fr) 1fr;
    gap: 30px;
    align-items: center;
    margin-top: 20px;
    padding: 23px 25px;
    border-left: 3px solid var(--product-teal);
    border-radius: 0 15px 15px 0;
    background: #eaf5f5;
}

.product-compatibility__notice strong {
    color: #1b4850;
    font-size: 0.8rem;
}

.product-compatibility__notice p {
    margin: 0;
    color: #657b85;
    font-size: 0.78rem;
    line-height: 1.65;
}


/* =========================================
   DOKUMENTUMOK
   ========================================= */

.product-documents {
    padding:
        clamp(75px, 8vw, 120px)
        0;
    background: #ffffff;
}

.product-documents__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.product-document {
    display: grid;
    grid-template-columns:
        auto
        minmax(0, 1fr)
        auto;
    gap: 16px;
    align-items: center;
    min-height: 92px;
    padding: 16px 18px;
    border: 1px solid var(--product-border);
    border-radius: 16px;
    background: #fafcfc;
}

.product-document__icon {
    display: inline-flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #ffffff;
    background: var(--product-dark);
    font-size: 0.61rem;
    font-weight: 850;
}

.product-document > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.product-document strong {
    color: #21394a;
    font-size: 0.83rem;
}

.product-document small {
    margin-top: 4px;
    color: #87969f;
    font-size: 0.67rem;
}

.product-document button {
    min-height: 38px;
    padding: 0 13px;
    border: 1px solid #dce5e8;
    border-radius: 9px;
    color: #8b9aa3;
    background: #ffffff;
    font: inherit;
    font-size: 0.66rem;
    font-weight: 750;
}


/* =========================================
   ÉRTESÍTÉS
   ========================================= */

.solar-product-toast {
    position: fixed;
    z-index: 1100;
    right: 22px;
    bottom: 24px;
    max-width: 360px;
    padding: 13px 16px;
    border-radius: 11px;
    color: #ffffff;
    background: #173548;
    box-shadow: 0 14px 35px rgba(9, 31, 44, 0.25);
    font-size: 0.78rem;
    font-weight: 650;
}

.solar-product-toast[hidden] {
    display: none;
}


/* =========================================
   RESZPONZÍV – KÖZEPES ASZTAL
   ========================================= */

@media (max-width: 1250px) {
    .product-hero__grid {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(390px, 0.85fr);
        gap: 45px;
    }

    .product-hero__visual {
        min-height: 540px;
    }

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

    .product-feature {
        min-height: 220px;
    }
}


/* =========================================
   RESZPONZÍV – TABLET
   ========================================= */

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

    .product-hero__visual {
        min-height: 540px;
    }

    .product-hero__content {
        max-width: 760px;
    }

    .product-overview__heading {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .product-technical .product-container {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .product-technical
    .product-section-heading {
        margin-bottom: 0;
    }

    .product-system-flow {
        grid-template-columns: 1fr;
    }

    .product-system-flow > span {
        margin: -3px auto;
        transform: rotate(90deg);
    }
}


/* =========================================
   RESZPONZÍV – MOBIL
   ========================================= */

@media (max-width: 700px) {
    .product-container,
    .product-hero__container {
        width: calc(100% - 30px);
    }

    .product-hero {
        padding-top: 20px;
    }

    .product-breadcrumb {
        margin-bottom: 22px;
    }

    .product-breadcrumb a:nth-of-type(2),
    .product-breadcrumb a:nth-of-type(3),
    .product-breadcrumb
        a:nth-of-type(2) + span,
    .product-breadcrumb
        a:nth-of-type(3) + span {
        display: none;
    }

    .product-hero__visual {
        min-height: 390px;
        border-radius: 22px;
    }

    .product-hero__tag {
        top: 18px;
        left: 18px;
    }

    .product-hero__visual-power {
        right: 18px;
        bottom: 18px;
    }

    .product-panel-visual__panel {
        top: 31%;
        left: 10%;
        width: 80%;
        border-width: 6px;
    }

    .product-hero__content h1 {
        font-size: clamp(2.4rem, 13vw, 3.7rem);
    }

    .product-key-specs {
        grid-template-columns: 1fr 1fr;
    }

    .product-key-spec {
        min-height: 82px;
        padding: 13px 14px;
    }

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

    .product-hero__actions .button {
        grid-column: 1 / -1;
        width: 100%;
        justify-content: center;
    }

    .product-action {
        width: 100%;
        padding: 0 10px;
    }

    .product-feature-grid,
    .product-compatibility__grid,
    .product-documents__grid {
        grid-template-columns: 1fr;
    }

    .product-feature {
        min-height: 0;
    }

    .product-feature__number {
        margin-bottom: 28px;
    }

    .product-technical__table th,
    .product-technical__table td {
        display: block;
        width: 100%;
        padding: 13px 17px;
        border-bottom: 0;
    }

    .product-technical__table th {
        padding-bottom: 4px;
    }

    .product-technical__table td {
        padding-top: 4px;
        border-bottom: 1px solid #dfe6e9;
    }

    .product-technical__table tr:last-child td {
        border-bottom: 0;
    }

    .product-compatibility__notice {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    .product-document {
        grid-template-columns:
            auto
            minmax(0, 1fr);
    }

    .product-document button {
        grid-column: 1 / -1;
        width: 100%;
    }

    .solar-product-toast {
        right: 15px;
        bottom: 15px;
        left: 15px;
        max-width: none;
        text-align: center;
    }
}


/* =========================================
   NAGYON KIS KIJELZŐ
   ========================================= */

@media (max-width: 430px) {
    .product-hero__visual {
        min-height: 330px;
    }

    .product-key-specs {
        grid-template-columns: 1fr;
    }

    .product-hero__actions {
        grid-template-columns: 1fr;
    }

    .product-hero__actions .button {
        grid-column: auto;
    }
}


/* =========================================
   MOZGÁSCSÖKKENTÉS
   ========================================= */

@media (prefers-reduced-motion: reduce) {
    .product-panel-visual__panel,
    .product-panel-visual__panel::after,
    .product-feature,
    .compatibility-card,
    .product-action {
        transition: none;
    }

    .product-feature:hover,
    .compatibility-card:hover,
    .product-action:hover {
        transform: none;
    }
}


/* =========================================
   EGYSÉGES TERMÉKMÉDIA-GALÉRIA
   ========================================= */

.product-hero__visual--gallery {
    display: flex;
    min-height: 660px;
    padding: 22px;
}

.product-hero__visual--gallery
.product-hero__visual-power {
    top: 27px;
    right: 27px;
    bottom: auto;
}

.product-media-gallery {
    position: relative;
    z-index: 3;
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: 14px;
    outline: 0;
}

.product-media-gallery:focus-visible {
    border-radius: 24px;
    box-shadow: 0 0 0 3px rgba(34, 173, 178, 0.24);
}

.product-media-gallery__stage {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    flex: 1 1 auto;
    border: 1px solid rgba(195, 217, 222, 0.8);
    border-radius: 24px;
    background:
        radial-gradient(
            circle at 70% 22%,
            rgba(70, 218, 219, 0.2),
            transparent 34%
        ),
        rgba(246, 251, 251, 0.76);
}

.product-media-gallery__slide {
    position: absolute;
    z-index: 1;
    inset: 0;
    display: grid;
    place-items: center;
    opacity: 0;
    pointer-events: none;
    transform: translateX(18px);
    transition:
        opacity 0.28s ease,
        transform 0.35s ease;
}

.product-media-gallery__slide.is-active {
    z-index: 2;
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
}

.product-media-gallery__image-button {
    display: grid;
    width: 100%;
    height: 100%;
    min-height: inherit;
    place-items: center;
    padding: clamp(52px, 6vw, 82px);
    border: 0;
    background: transparent;
    cursor: zoom-in;
}

.product-media-gallery__image-button > img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: 440px;
    object-fit: contain;
    filter: drop-shadow(0 28px 32px rgba(18, 48, 64, 0.18));
    transition: transform 0.35s ease;
}

.product-media-gallery__image-button:hover > img {
    transform: scale(1.018);
}

.product-media-gallery__zoom {
    position: absolute;
    right: 19px;
    bottom: 18px;
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(210, 226, 229, 0.9);
    border-radius: 50%;
    color: #315466;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 10px 24px rgba(21, 53, 69, 0.11);
    backdrop-filter: blur(10px);
}

.product-media-gallery__zoom svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
}

.product-media-gallery__arrow {
    position: absolute;
    z-index: 5;
    top: 50%;
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(203, 221, 225, 0.92);
    border-radius: 50%;
    color: #244657;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 13px 30px rgba(16, 48, 64, 0.13);
    cursor: pointer;
    font: inherit;
    font-size: 1rem;
    transform: translateY(-50%);
    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        transform 0.2s ease;
}

.product-media-gallery__arrow:hover {
    color: #ffffff;
    background: var(--product-teal-dark);
    transform: translateY(-50%) scale(1.05);
}

.product-media-gallery__arrow--previous {
    left: 17px;
}

.product-media-gallery__arrow--next {
    right: 17px;
}

.product-media-gallery__status {
    position: absolute;
    z-index: 5;
    bottom: 18px;
    left: 18px;
    display: inline-flex;
    min-height: 35px;
    gap: 10px;
    align-items: center;
    padding: 0 12px;
    border: 1px solid rgba(210, 226, 229, 0.9);
    border-radius: 999px;
    color: #5b727e;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 10px 24px rgba(21, 53, 69, 0.09);
    backdrop-filter: blur(10px);
    font-size: 0.64rem;
}

.product-media-gallery__status strong {
    color: #1f4050;
}

.product-media-gallery__thumbnails {
    display: flex;
    gap: 9px;
    min-height: 76px;
    overflow-x: auto;
    padding: 2px 2px 5px;
    scrollbar-color: rgba(34, 173, 178, 0.45) transparent;
    scrollbar-width: thin;
}

.product-media-gallery__thumbnail {
    position: relative;
    display: grid;
    flex: 0 0 74px;
    height: 74px;
    place-items: center;
    overflow: hidden;
    padding: 5px;
    border: 1px solid #cbdde1;
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.76);
    cursor: pointer;
    transition:
        border-color 0.2s ease,
        background-color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease;
}

.product-media-gallery__thumbnail:hover {
    transform: translateY(-2px);
}

.product-media-gallery__thumbnail.is-active {
    border-color: var(--product-teal);
    background: #ffffff;
    box-shadow:
        0 0 0 2px rgba(34, 173, 178, 0.14),
        0 10px 22px rgba(19, 54, 69, 0.1);
}

.product-media-gallery__thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-media-gallery__thumbnail-video {
    position: absolute;
    display: inline-flex;
    width: 28px;
    height: 28px;
    align-items: center;
    justify-content: center;
    padding-left: 2px;
    border: 2px solid rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    color: #ffffff;
    background: rgba(17, 45, 61, 0.86);
    box-shadow: 0 5px 14px rgba(10, 35, 49, 0.25);
    font-size: 0.58rem;
}


/* Videó – iframe csak kattintás után */

.product-media-gallery__slide[data-media-type="video"] {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 18px;
    background:
        radial-gradient(
            circle at 50% 45%,
            rgba(39, 128, 139, 0.22),
            transparent 56%
        ),
        #0b2635;
}

.product-media-video-frame {
    position: relative;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    border-radius: 18px;
    background: #000000;
}

.product-media-local-video {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: #000000;
    object-fit: contain;
}

.product-media-video {
    position: absolute;
    inset: 0;
    display: block;
    overflow: hidden;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    color: #ffffff;
    background: var(--product-darker);
    cursor: pointer;
    text-align: left;
}

.product-media-video[hidden] {
    display: none;
}

.product-media-video > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.82;
    transition: transform 0.55s ease;
}

.product-media-video:hover > img {
    transform: scale(1.035);
}

.product-media-video__shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(8, 28, 42, 0.82),
            rgba(8, 28, 42, 0.2) 64%,
            rgba(8, 28, 42, 0.36)
        );
}

.product-media-video__play {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    display: inline-flex;
    width: 76px;
    height: 76px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.44);
    border-radius: 50%;
    color: #17384a;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 20px 45px rgba(6, 26, 38, 0.28);
    transform: translate(-50%, -50%);
    transition: transform 0.25s ease;
}

.product-media-video:hover
.product-media-video__play {
    transform: translate(-50%, -50%) scale(1.07);
}

.product-media-video__play svg {
    width: 31px;
    height: 31px;
    fill: currentColor;
}

.product-media-video__text {
    position: absolute;
    z-index: 2;
    right: 25px;
    bottom: 24px;
    left: 25px;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
}

.product-media-video__text small {
    margin-bottom: 6px;
    color: #66dddf;
    font-size: 0.62rem;
    font-weight: 850;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.product-media-video__text strong {
    max-width: 75%;
    font-size: clamp(1rem, 1.5vw, 1.3rem);
}

.product-media-video__text > span {
    margin-top: 7px;
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.68rem;
}

.product-media-gallery__slide iframe {
    position: absolute;
    z-index: 4;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: #000000;
}


/* Nagyított kép */

.product-media-lightbox {
    width: min(94vw, 1500px);
    max-width: none;
    height: min(92vh, 980px);
    height: min(92dvh, 980px);
    max-height: calc(100dvh - 24px);
    overflow: hidden;
    padding: 0;
    border: 0;
    border-radius: 24px;
    color: #ffffff;
    background: rgba(10, 29, 41, 0.98);
    box-shadow: 0 35px 100px rgba(0, 0, 0, 0.42);
}

.product-media-lightbox::backdrop {
    background: rgba(6, 18, 27, 0.82);
    backdrop-filter: blur(8px);
}

.product-media-lightbox[open] {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr) 76px;
    grid-template-rows: minmax(0, 1fr);
    align-items: stretch;
}

.product-media-lightbox figure {
    display: grid;
    min-width: 0;
    min-height: 0;
    height: auto;
    overflow: hidden;
    grid-template-rows: minmax(0, 1fr) auto;
    margin: 0;
    padding: 54px 0 20px;
}

.product-media-lightbox figure img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    min-height: 0;
    object-fit: contain;
    object-position: center;
}

.product-media-lightbox figcaption {
    display: flex;
    min-height: 42px;
    gap: 24px;
    align-items: center;
    justify-content: space-between;
    padding-top: 12px;
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.72rem;
}

.product-media-lightbox figcaption strong {
    flex: 0 0 auto;
    color: #ffffff;
}

.product-media-lightbox__close,
.product-media-lightbox__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #ffffff;
    background: rgba(255, 255, 255, 0.08);
    cursor: pointer;
    font: inherit;
    transition:
        border-color 0.2s ease,
        background-color 0.2s ease;
}

.product-media-lightbox__close:hover,
.product-media-lightbox__arrow:hover {
    border-color: rgba(102, 221, 223, 0.7);
    background: rgba(34, 173, 178, 0.28);
}

.product-media-lightbox__close {
    position: absolute;
    z-index: 3;
    top: 18px;
    right: 18px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    font-size: 1.5rem;
}

.product-media-lightbox__arrow {
    align-self: center;
    width: 48px;
    height: 48px;
    margin: auto;
    border-radius: 50%;
}


@media (max-width: 950px) {
    .product-hero__visual--gallery {
        min-height: 590px;
    }

    .product-media-gallery__stage {
        min-height: 450px;
    }
}

@media (max-width: 700px) {
    .product-hero__visual--gallery {
        min-height: 470px;
        padding: 13px;
    }

    .product-media-gallery__slide[data-media-type="video"] {
        padding: 8px;
    }

    .product-media-video-frame {
        border-radius: 14px;
    }

    .product-hero__visual--gallery
    .product-hero__tag {
        top: 20px;
        left: 20px;
    }

    .product-hero__visual--gallery
    .product-hero__visual-power {
        top: 20px;
        right: 20px;
        bottom: auto;
    }

    .product-media-gallery {
        gap: 10px;
    }

    .product-media-gallery__stage {
        min-height: 355px;
        border-radius: 18px;
    }

    .product-media-gallery__image-button {
        padding: 56px 34px 48px;
    }

    .product-media-gallery__arrow {
        width: 39px;
        height: 39px;
    }

    .product-media-gallery__arrow--previous {
        left: 10px;
    }

    .product-media-gallery__arrow--next {
        right: 10px;
    }

    .product-media-gallery__zoom {
        right: 12px;
        bottom: 12px;
        width: 38px;
        height: 38px;
    }

    .product-media-gallery__status {
        bottom: 12px;
        left: 12px;
    }

    .product-media-gallery__thumbnails {
        min-height: 65px;
    }

    .product-media-gallery__thumbnail {
        flex-basis: 62px;
        height: 62px;
        border-radius: 11px;
    }

    .product-media-video__play {
        width: 62px;
        height: 62px;
    }

    .product-media-video__text {
        right: 17px;
        bottom: 17px;
        left: 17px;
    }

    .product-media-video__text strong {
        max-width: 100%;
    }

    .product-media-lightbox {
        width: 100vw;
        height: 100vh;
        height: 100dvh;
        max-height: 100dvh;
        border-radius: 0;
    }

    .product-media-lightbox[open] {
        grid-template-columns: 54px minmax(0, 1fr) 54px;
    }

    .product-media-lightbox figure {
        padding: 65px 0 18px;
    }

    .product-media-lightbox figcaption {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }

    .product-media-lightbox__arrow {
        width: 40px;
        height: 40px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .product-media-gallery__slide,
    .product-media-gallery__image-button > img,
    .product-media-gallery__arrow,
    .product-media-gallery__thumbnail,
    .product-media-video > img,
    .product-media-video__play {
        transition: none;
    }

    .product-media-gallery__thumbnail:hover,
    .product-media-gallery__image-button:hover > img,
    .product-media-video:hover > img {
        transform: none;
    }
}

/* Letisztult, egységes termékadatlap — a globális fejlécet nem érinti. */
.single-product .product-container, .single-product .product-hero__container {max-width:1320px;}
.single-product .product-hero {padding:28px 0 42px;background:#fff;}
.single-product .product-hero::before, .single-product .product-hero::after,
.single-product .product-hero__visual::before, .single-product .product-hero__visual::after {display:none;}
.single-product .product-hero__grid {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start;}
.single-product .product-hero__visual {min-height:500px;border-radius:16px;background:#fff;box-shadow:none;}
.single-product .product-hero__visual--gallery {min-height:570px;padding:16px;}
.single-product .product-media-gallery__stage {min-height:450px;border:0;border-radius:12px;background:#fff;}
.single-product .product-media-gallery__image-button {padding:45px 45px 55px;}
.single-product .product-media-gallery__image-button>img {max-height:400px;filter:none;}
.single-product .product-media-gallery__thumbnails {gap:12px;justify-content:center;}
.single-product .product-media-gallery__thumbnail {flex-basis:82px;height:82px;background:#fff;border-radius:10px;}
.single-product .product-hero__content {max-width:none;min-width:0;padding-top:4px;}
.single-product .product-hero__manufacturer {font-size:.8rem;letter-spacing:.07em;margin-bottom:14px;}
.single-product .product-hero__content h1 {font-size:clamp(1.45rem,2.25vw,2.15rem);font-weight:750;letter-spacing:-.025em;line-height:1.25;overflow-wrap:anywhere;}
.single-product .product-hero__description {margin-top:14px;font-size:.96rem;line-height:1.65;}
.single-product .product-key-specs {margin-top:22px;gap:10px;}
.single-product .product-key-spec {min-height:72px;padding:12px 15px;border-radius:10px;box-shadow:none;background:#f7fafb;}
.single-product .product-key-spec small {font-size:.74rem;line-height:1.4;}
.single-product .product-key-spec strong {font-size:1.05rem;line-height:1.4;overflow-wrap:anywhere;}
.single-product .product-purchase-price {margin-top:24px;padding-top:20px;border-top:1px solid var(--product-border);}
.single-product .product-price-pending {margin:0;color:var(--product-dark);font-size:clamp(1.35rem,2vw,1.7rem);font-weight:750;line-height:1.35;}
.single-product .product-hero__actions {display:flex;gap:10px;flex-wrap:wrap;margin-top:20px;}
.single-product .product-hero__actions .button {min-height:46px;padding:12px 18px;border-radius:10px;font-size:.88rem;box-shadow:none;}
.single-product .product-hero__actions .product-quote-button {background:#fff;color:var(--product-dark);border:1px solid #b9cbd2;}
.single-product .product-hero__actions .product-quote-button:hover {background:#eff8f8;border-color:var(--product-teal);}
.single-product .product-action {min-height:38px;border-radius:9px;font-size:.76rem;}
.single-product .product-documents--inline {margin-top:24px;padding:18px;border:1px solid #e1e9ee;border-radius:12px;background:#f7fafb;scroll-margin-top:110px;}
.single-product .product-documents--inline h2 {font-size:1rem;font-weight:750;margin:0 0 12px;line-height:1.4;color:var(--product-dark);}
.single-product :is(.product-documents--inline, .product-documents--panel) .product-documents__grid {display:grid;grid-template-columns:1fr;gap:8px;}
.single-product :is(.product-documents--inline, .product-documents--panel) .product-document {display:grid;grid-template-columns:36px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:12px;border:1px solid #e3e9ee;border-radius:9px;background:#fff;text-decoration:none;box-shadow:none;min-width:0;}
.single-product :is(.product-documents--inline, .product-documents--panel) .product-document:hover {border-color:var(--product-teal);background:#fbfefe;}
.single-product :is(.product-documents--inline, .product-documents--panel) .product-document__icon {width:36px;height:40px;border-radius:6px;background:#eaf5f6;color:#167e85;font-size:.58rem;display:grid;place-items:center;}
.single-product .product-document__text {min-width:0;}
.single-product .product-document__text strong {display:block;font-size:.84rem;line-height:1.4;color:var(--product-dark);overflow-wrap:anywhere;}
.single-product .product-document__text small {display:block;margin-top:3px;font-size:.7rem;color:var(--product-muted);}
.single-product .product-document__download {width:20px;height:20px;color:#335469;}
.single-product .product-hero__support {margin-top:18px;padding-top:16px;}
.single-product .product-section-nav {border-top:1px solid #e8edf0;border-bottom:1px solid #e8edf0;background:#f8fafb;}
.single-product .product-section-nav .product-container {display:flex;gap:28px;flex-wrap:wrap;}
.single-product .product-section-nav a {display:inline-flex;padding:17px 0;color:#526575;font-size:.88rem;font-weight:650;text-decoration:none;border-bottom:2px solid transparent;}
.single-product .product-section-nav a:hover {color:var(--product-teal-dark);border-color:var(--product-teal);}
.single-product .product-section-nav a:focus-visible, .single-product .product-document:focus-visible {outline:3px solid #22adb2;outline-offset:3px;}
.single-product .product-technical, .single-product .product-overview {padding:44px 0;background:#fff;scroll-margin-top:110px;}
.single-product .product-section-heading h2, .single-product .product-overview__heading>div:first-child h2 {font-size:clamp(1.6rem,2.5vw,2.1rem);font-weight:750;line-height:1.25;margin:8px 0 0;}
.single-product .product-section-heading {margin-bottom:24px;}
.single-product .product-section-heading p {font-size:.9rem;line-height:1.65;max-width:none;margin:12px 0 0;}
.single-product .product-technical .product-container {display:block;}
.single-product .product-technical__grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;}
.single-product .product-technical__card {min-width:0;border:1px solid #dfe7ec;border-radius:12px;overflow:hidden;background:#fff;}
.single-product .product-technical__table {width:100%;border-collapse:collapse;table-layout:fixed;margin:0;}
.single-product .product-technical__table caption {caption-side:top;text-align:left;padding:17px 18px;background:#fff;color:var(--product-dark);font-weight:750;font-size:.95rem;border-bottom:1px solid #e3e9ee;}
.single-product .product-technical__table th, .single-product .product-technical__table td {display:table-cell;padding:13px 16px;border-bottom:1px solid #e4eaf0;vertical-align:top;font-size:.84rem;line-height:1.55;overflow-wrap:anywhere;width:50%;}
.single-product .product-technical__table th {text-align:left;font-weight:650;color:#263d4e;}
.single-product .product-technical__table td {text-align:right;color:#566b7b;}
.single-product .product-technical__table tr:nth-child(odd) {background:#f7f9fb;}
.single-product .product-technical__table tr:nth-child(even) {background:#fff;}
.single-product .product-technical__table tr:last-child th, .single-product .product-technical__table tr:last-child td {border-bottom:0;}
.single-product .product-overview {border-top:1px solid #edf1f3;}
.single-product .product-overview__heading {max-width:none;margin:0;}
.single-product .product-overview__description {max-width:none;margin-top:22px;padding:0;border:0;border-radius:0;background:#fff;box-shadow:none;}
@media(max-width:950px) {
 .single-product .product-hero__grid {gap:26px;}
 .single-product .product-hero__visual--gallery {min-height:480px;}
 .single-product .product-media-gallery__stage {min-height:360px;}
 .single-product .product-media-gallery__image-button {padding:40px 28px 50px;}
}
@media(max-width:760px) {
 .single-product .product-hero__grid, .single-product .product-technical__grid {grid-template-columns:1fr;}
 .single-product .product-hero {padding:20px 0 30px;}
 .single-product .product-hero__visual {min-height:350px;}
 .single-product .product-hero__visual--gallery {min-height:430px;padding:12px;}
 .single-product .product-media-gallery__stage {min-height:320px;}
 .single-product .product-media-gallery__image-button>img {max-height:290px;}
 .single-product .product-hero__content h1 {font-size:1.55rem;line-height:1.3;}
 .single-product .product-key-specs {grid-template-columns:repeat(2,minmax(0,1fr));}
 .single-product .product-hero__actions .button {flex:1 1 100%;justify-content:center;}
 .single-product .product-section-nav .product-container {gap:18px;}
 .single-product .product-section-nav a {font-size:.78rem;padding:14px 0;}
 .single-product .product-technical, .single-product .product-overview {padding:32px 0;}
 .single-product .product-technical__table th, .single-product .product-technical__table td {padding:12px;font-size:.82rem;}
}
@media(max-width:380px) {
 .single-product .product-technical__table th, .single-product .product-technical__table td {display:block;width:100%;text-align:left;}
 .single-product .product-technical__table th {padding-bottom:3px;border-bottom:0;}
 .single-product .product-technical__table td {padding-top:3px;}
}

/* Valódi, akadálymentes fülek és teljes szélességű panel. */
.single-product [data-product-tab-panel][hidden] {display:none !important;}
.single-product .product-section-nav a.is-active {color:var(--product-teal-dark);border-bottom-color:var(--product-teal);font-weight:750;}
.single-product .product-section-nav a:focus-visible {outline:2px solid var(--product-teal);outline-offset:-3px;border-radius:4px;}
.single-product .product-documents--panel {padding:44px 0;background:#fff;scroll-margin-top:110px;}
.single-product .product-documents--panel .product-documents__grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.single-product [data-product-tab-panel]:focus-visible {outline:2px solid var(--product-teal);outline-offset:-2px;}
@media(max-width:760px) {
 .single-product .product-documents--panel {padding:32px 0;}
 .single-product .product-documents--panel .product-documents__grid {grid-template-columns:1fr;}
}

/* Független oszlopok: nincs közös rácssormagasság a rövid/hosszú táblák között. */
.single-product .product-technical__column {display:flex;flex-direction:column;gap:18px;min-width:0;}
.single-product .product-technical__grid--single {grid-template-columns:1fr;}
.single-product .product-section-nav a.is-active {background:#eaf7f7;box-shadow:inset 0 -2px 0 var(--product-teal);padding-right:14px;padding-left:14px;}

/* Egységes zöld akciógombok; a főgombok egyforma méretben. */
.single-product .product-hero__actions {display:flex;flex-direction:column;align-items:stretch;gap:10px;}
.single-product .product-purchase-actions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.single-product .product-purchase-actions .button,
.single-product .product-purchase-actions [data-add-to-cart] {display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-width:0;min-height:48px;margin:0;padding:12px 14px;border:1px solid #168f81 !important;border-radius:10px;color:#fff !important;background:#168f81 !important;box-shadow:none;font:inherit;font-size:.88rem;font-weight:700;line-height:1.4;text-decoration:none;cursor:pointer;}
.single-product .product-purchase-actions .button:hover,
.single-product .product-purchase-actions [data-add-to-cart]:hover {background:#107468 !important;border-color:#107468 !important;transform:none;}
.single-product .product-secondary-actions {display:flex;flex-wrap:wrap;gap:8px;}
.single-product .product-secondary-actions .product-action {display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;margin:0;padding:7px 11px;border:1px solid #168f81;border-radius:8px;background:#168f81;color:#fff;font-size:.73rem;line-height:1.3;box-shadow:none;}
.single-product .product-secondary-actions .product-action svg {width:15px;height:15px;stroke:currentColor;}
.single-product .product-secondary-actions .product-action:hover {background:#107468;border-color:#107468;color:#fff;transform:none;}
.single-product .product-secondary-actions .product-action.is-active {background:#0c665b;border-color:#0c665b;color:#fff;box-shadow:0 0 0 2px #b7e4da;}
.single-product .product-purchase-actions :focus-visible,
.single-product .product-secondary-actions :focus-visible {outline:3px solid #80cdbf;outline-offset:3px;}
.single-product .product-warranty-badge {position:absolute;z-index:6;top:16px;right:16px;display:flex;align-items:center;gap:10px;max-width:min(280px,65%);padding:11px 13px;border:1px solid #c4e7df;border-radius:12px;color:#168f81;background:rgba(255,255,255,.96);box-shadow:0 4px 18px #143c3210;pointer-events:none;}
.single-product .product-warranty-badge>svg {flex:0 0 38px;width:38px;height:46px;}
.single-product .product-warranty-badge>div {min-width:0;}
.single-product .product-warranty-badge small {display:block;margin-bottom:3px;color:#168f81;font-size:.66rem;font-weight:750;text-transform:uppercase;letter-spacing:.07em;}
.single-product .product-warranty-badge strong {display:block;color:#23483f;font-size:.75rem;font-weight:650;line-height:1.45;overflow-wrap:anywhere;}
.single-product .product-hero__visual--has-warranty .product-hero__visual-power {display:none;}
@media(max-width:500px) {
 .single-product .product-purchase-actions {grid-template-columns:1fr;}
 .single-product .product-warranty-badge {top:12px;right:12px;padding:8px;gap:7px;max-width:65%;}
 .single-product .product-warranty-badge>svg {flex-basis:30px;width:30px;height:36px;}
 .single-product .product-warranty-badge strong {font-size:.68rem;}
}

/* Látványos, kör alakú garanciapecsét — tiszta SVG, éles minden kijelzőn. */
.single-product .product-warranty-badge--seal {top:18px;left:18px;right:auto;display:block;width:160px;height:160px;max-width:none;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;filter:drop-shadow(0 5px 7px rgba(14,34,49,.2));transform:rotate(-5deg);}
.single-product .product-warranty-badge--seal>.product-warranty-seal {display:block;width:100%;height:100%;}
.single-product .product-warranty-seal text {font-family:Manrope,Arial,sans-serif;}
.single-product .product-warranty-seal__arc {fill:#142b3c;font-size:15px;font-weight:800;letter-spacing:2px;}
.single-product .product-warranty-seal__number {fill:#137f84;font-size:32px;font-weight:850;letter-spacing:-1px;}
.single-product .product-warranty-seal__unit {fill:#142b3c;font-size:13px;font-weight:800;letter-spacing:2px;}
.single-product .product-warranty-seal__detail {fill:#234556;font-size:8px;font-weight:750;}
.single-product .product-warranty-seal__generic {fill:#137f84;font-size:18px;font-weight:850;}
.single-product .product-hero__visual--has-warranty .product-hero__tag {left:auto;right:18px;max-width:calc(100% - 195px);}
@media(max-width:700px) {
 .single-product .product-warranty-badge--seal {width:125px;height:125px;top:12px;left:12px;}
 .single-product .product-hero__visual--has-warranty .product-hero__tag {right:12px;max-width:calc(100% - 155px);}
}
