/* 3D Magnetic Grid v1.0.0 - Serkan | minalidya.com */
.mdna-3d-magnetic-grid-wrapper {
    position: relative;
    width: 100%;
    height: 100vh;
    background: #DCDCDC;
    isolation: isolate;
    overflow: hidden;
    --color-text: #000;
    --color-text-alt: #848484;
    --color-title: #d3d3d3;
    --color-bg: #DCDCDC;
    --color-link: #E3154D;
    --color-link-hover: #000;
    --cursor-stroke: #E3154D;
    --cursor-fill: none;
    --cursor-stroke-width: 1px;
    --cursor-text: #000;
    font-family: Arial, sans-serif;
}

.mdna-3d-magnetic-grid-wrapper *,
.mdna-3d-magnetic-grid-wrapper *::after,
.mdna-3d-magnetic-grid-wrapper *::before {
    box-sizing: border-box;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-unbutton {
    background: none;
    border: 0;
    padding: 0;
    margin: 0;
    font: inherit;
    cursor: pointer;
    touch-action: manipulation;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-unbutton:focus {
    outline: 2px solid var(--color-link);
    outline-offset: 2px;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-unbutton:focus:not(:focus-visible) {
    outline: none;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-content {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    justify-content: center;
    position: relative;
    align-items: center;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-grid {
    position: absolute;
    width: 120%;
    height: 120%;
    top: -10%;
    left: -10%;
    display: grid;
    grid-template-columns: repeat(50, 2%);
    grid-template-rows: repeat(50, 2%);
    perspective: 1000px;
    touch-action: pan-x pan-y;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-grid--inactive {
    pointer-events: none;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-grid__item {
    position: relative;
    will-change: transform;
    grid-area: var(--grid-row) / var(--grid-column) / span 12 / span 5;
    touch-action: manipulation;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-grid__item:focus {
    outline: 2px solid var(--color-link);
    outline-offset: 2px;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-grid__item-img {
    position: relative;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: 50% 50%;
    border-radius: 10px;
    will-change: transform;
    display: block;
    aspect-ratio: 3 / 4;
}

.mdna-3d-magnetic-grid-wrapper .char {
    will-change: transform;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-1 { --grid-row: 10; --grid-column: 1; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-2 { --grid-row: 1; --grid-column: 18; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-3 { --grid-row: 1; --grid-column: 29; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-4 { --grid-row: 15; --grid-column: 12; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-5 { --grid-row: 17; --grid-column: 25; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-6 { --grid-row: 20; --grid-column: 43; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-7 { --grid-row: 35; --grid-column: 5; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-8 { --grid-row: 40; --grid-column: 14; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-9 { --grid-row: 37; --grid-column: 29; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-10 { --grid-row: 35; --grid-column: 42; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-11 { --grid-row: 1; --grid-column: 44; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-12 { --grid-row: 32; --grid-column: 20; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-13 { --grid-row: 22; --grid-column: 2; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-14 { --grid-row: 9; --grid-column: 38; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-15 { --grid-row: 4; --grid-column: 7; }
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-pos-16 { --grid-row: 28; --grid-column: 36; }

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-content__title {
    font-size: 12vw;
    margin: 0;
    line-height: 1.2;
    position: relative;
    color: var(--color-title);
    text-transform: uppercase;
    pointer-events: none;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-content__title-line {
    display: block;
    position: relative;
    overflow: hidden;
    line-height: 1;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-content__title-line--1 {
    margin-left: -5vw;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-content__title-line--2 {
    margin-right: -5vw;
    text-align: right;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview {
    position: relative;
    pointer-events: none;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item {
    position: relative;
    margin: 0 auto;
    padding: 0 5vw;
    display: grid;
    grid-template-rows: auto auto auto;
    grid-template-columns: 50% 50%;
    grid-template-areas: 'preview-back preview-back' 'preview-img preview-title' 'preview-content preview-content';
    perspective: 1000px;
    align-items: start;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item:not(.mdna-3d-magnetic-grid-preview__item--open) {
    position: absolute;
    overflow: hidden;
    height: 0;
    opacity: 0;
    visibility: hidden;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item--open {
    pointer-events: auto;
    visibility: visible;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-back {
    grid-area: preview-back;
    justify-self: start;
    font-size: 0.857rem;
    text-transform: uppercase;
    font-weight: 500;
    padding-left: 20px;
    margin-bottom: 1rem;
    color: var(--color-link);
    cursor: pointer;
    position: relative;
    z-index: 100;
    touch-action: manipulation;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-back:hover,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-back:focus {
    color: var(--color-link-hover);
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-back:focus {
    outline: 2px solid var(--color-link);
    outline-offset: 2px;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-title {
    grid-area: preview-title;
    font-size: 12vw;
    font-size: clamp(1.5rem, 12vw, 20vh);
    margin: 0;
    grid-column-start: 1;
    align-self: start;
    padding-left: 1rem;
    position: relative;
    overflow: hidden;
    pointer-events: none;
    color: var(--color-text);
    z-index: 100;
    width: 100%;
    text-align: left;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-imgwrap {
    width: 100px;
    height: auto;
    border-radius: 10px;
    overflow: hidden;
    grid-area: preview-img;
    transform-origin: 50% 100%;
    position: relative;
    z-index: 50;
    cursor: pointer;
    touch-action: manipulation;
    aspect-ratio: 3 / 4;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: 50% 50%;
    display: block;
    aspect-ratio: 3 / 4;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-content {
    grid-area: preview-content;
    min-height: 440px;
    line-height: 1.3;
    color: var(--color-text);
    position: relative;
    z-index: 100;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: normal;
    white-space: normal;
    min-height: auto;
    line-height: 1.6;
    color: var(--color-text);
}

/* Paragraph spacing for description - multiple consecutive <br> tags create paragraph gaps */
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description br {
    line-height: 1.6;
}

/* Spacer div between short description and attributes for clear visual separation */
.mdna-3d-magnetic-grid-wrapper .mdna-description-attributes-spacer {
    display: block;
    height: 0;
    min-height: 2em;
    margin: 2em 0;
    padding: 0;
    content: "";
    clear: both;
    visibility: hidden;
}

/* Ensure description paragraphs have proper spacing */
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description {
    margin-top: 0;
    padding-top: 0;
    margin-bottom: 1em;
}

/* Add spacing between description paragraphs (for short description + attributes) */
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description + .mdna-description-attributes-spacer + .mdna-3d-magnetic-grid-preview__item-description {
    margin-top: 0;
    padding-top: 0;
}

/* Alternative: If spacer is not working, add margin to second description paragraph */
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-content .mdna-3d-magnetic-grid-preview__item-description:nth-of-type(2) {
    margin-top: 2em;
    padding-top: 0;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta {
    color: var(--color-text-alt);
    text-transform: uppercase;
    font-size: 0.857rem;
    padding: 1rem 0 0;
    word-break: normal !important;
    white-space: normal !important;
    line-height: 1.5 !important;
    overflow: visible !important;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta span {
    display: block !important;
    word-break: normal !important;
    white-space: normal !important;
    line-height: 1.5 !important;
    position: static !important;
    transform: none !important;
    opacity: 1 !important;
}

/* Completely prevent splitting.js from affecting price/meta content */
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta .char,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta .word,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta .splitting,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description .char,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description .word,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description .splitting {
    display: inline !important;
    word-break: normal !important;
    white-space: normal !important;
    line-height: inherit !important;
    position: static !important;
    transform: none !important;
    opacity: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
}

/* Ensure price HTML displays correctly - override all splitting styles */
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta span,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta span *,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta del,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta del *,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta ins,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta ins * {
    display: inline !important;
    word-break: normal !important;
    white-space: normal !important;
    line-height: inherit !important;
    position: static !important;
    transform: none !important;
    opacity: 1 !important;
}

/* Reset any splitting.js styles on meta/description */
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description {
    overflow: visible !important;
}

.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta *,
.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description * {
    position: static !important;
    transform: none !important;
    opacity: 1 !important;
}


.mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-cursor {
    display: none;
}

/* Responsive Styles */
@media screen and (max-width: 768px) {
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-content__title {
        font-size: 8vw;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item {
        padding: 0 2vw;
        grid-template-columns: 100%;
        grid-template-areas: 'preview-back' 'preview-img' 'preview-title' 'preview-content';
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-imgwrap {
        width: 100%;
        height: auto;
        margin-bottom: 1rem;
        aspect-ratio: 3 / 4;
    }
    
    /* Mobile - maintain 3:4 aspect ratio */
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-grid__item-img {
        aspect-ratio: 3 / 4;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-img {
        aspect-ratio: 3 / 4;
    }
}

@media screen and (min-width: 53em) {
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item {
        height: 100%;
        width: 80vw;
        grid-template-columns: 47% 53%;
        grid-template-rows: auto auto 1fr;
        grid-template-areas: 'preview-title preview-title' 'preview-back ...' 'preview-img preview-content';
        align-items: start;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-title {
        justify-self: start;
        padding: 0;
        align-self: start;
        grid-row: 1;
        margin-bottom: 2rem;
        text-align: left;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-back {
        grid-row: 2;
        margin-bottom: 1rem;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-meta {
        padding: 1rem 0;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-imgwrap {
        width: 100%;
        height: auto;
        grid-row: 3;
        border-radius: 10px 10px 0 0;
        aspect-ratio: 3 / 4;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-content {
        padding: 0 0 0 4rem;
        max-width: 100%;
        grid-row: 3;
        align-self: start;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-preview__item-description {
        max-width: 100%;
    }
}

@media (any-pointer: fine) {
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-cursor {
        display: block;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        pointer-events: none;
        z-index: 9999;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-cursor__svg {
        pointer-events: none;
        position: absolute;
        top: 0;
        left: 0;
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-cursor__svg-circle {
        fill: var(--cursor-fill);
        stroke: var(--cursor-stroke);
        stroke-width: var(--cursor-stroke-width);
    }
    
    .mdna-3d-magnetic-grid-wrapper .mdna-3d-magnetic-grid-cursor__text {
        position: absolute;
        top: 1.875rem;
        left: 80px;
        font-size: 0.857rem;
        text-transform: uppercase;
        font-weight: 500;
        color: var(--cursor-text);
    }
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    .mdna-3d-magnetic-grid-wrapper *,
    .mdna-3d-magnetic-grid-wrapper *::before,
    .mdna-3d-magnetic-grid-wrapper *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}