/* 
   Eterna Clinic Premium Preview Pages Styling
   Author: Antigravity (Google DeepMind Advanced Agentic Coding Team)
   Aesthetic: Ultra-Premium, Warm Taupe, Soft Rose Gold, Elegant Serif Typography, Clean Micro-animations
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&family=Noto+Serif+KR:wght@200;300;400;500;600;700&family=Libre+Caslon+Text:ital,wght@0,400;0,700;1,400&display=swap');

/* Global Animation Definitions */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(25px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes lineDraw {
    from { width: 0; }
    to { width: 60px; }
}

/* Base resets & theme styles inside container */
.eterna-container {
    font-family: 'Noto Sans KR', sans-serif;
    color: #3C3334;
    background-color: #FFFFFF;
    line-height: 1.8;
    overflow: visible;
    letter-spacing: -0.6px;
    font-size: 16px;
    /* Soft animation on page load */
    animation: fadeIn 1.2s ease-out;
}

/* Typography Customizations */
.eterna-serif {
    font-family: 'Noto Serif KR', serif;
}
.eterna-eng {
    font-family: 'Libre Caslon Text', serif;
    color: #A38474;
}

/* Section styling with premium padding and typography */
.eterna-section {
    padding: 120px 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
.eterna-section.bg-beige {
    background-color: #FAF6F4; /* Ultra-soft rose beige */
}
.eterna-section.bg-cream {
    background-color: #F6F3ED; /* Elegant warm sand beige */
}
.eterna-section.bg-dark {
    background-color: #443739;
    color: #FFFFFF;
}

.eterna-content-wrap {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
}

.eterna-reading-wrap {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

/* Premium Sub-Banner / Hero Section with background-image overlay */
.eterna-hero {
    position: relative;
    padding: 180px 20px 140px 20px;
    text-align: center;
    background-image: url("https://woman.eternaclinic.co.kr/wp-content/uploads/2026/02/eterna-woman-%EC%9D%98%EB%A3%8C%EC%A7%84-banner.webp");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: scroll;
    display: flex;
    justify-content: center;
    align-items: center;
    border-bottom: none;
}

/* Dark elegant gradient overlay for Hero readability */
.eterna-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(34, 30, 31, 0.6) 0%, rgba(54, 45, 47, 0.75) 100%);
    z-index: 1;
}

/* Align content on top of overlay */
.eterna-hero .eterna-content-wrap {
    position: relative;
    z-index: 2;
    animation: fadeInUp 1s cubic-bezier(0.25, 1, 0.5, 1);
}

.eterna-hero-tag {
    font-family: 'Libre Caslon Text', serif;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 6px;
    text-transform: uppercase;
    margin-bottom: 20px;
    color: #FFE1D7; /* Soft gold-rose glow */
    text-shadow: 0 1px 4px rgba(0,0,0,0.15);
}

.eterna-hero-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 52px;
    font-weight: 300;
    color: #FFFFFF;
    line-height: 1.25;
    margin-bottom: 25px;
    letter-spacing: -1.5px;
    text-shadow: 0 2px 15px rgba(0, 0, 0, 0.4);
}

.eterna-hero-desc {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.85);
    max-width: 750px;
    margin: 0 auto;
    font-weight: 300;
    line-height: 1.8;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

/* Section Header styling */
.eterna-sec-header {
    text-align: center;
    margin-bottom: 70px;
    position: relative;
}
.eterna-sec-subtitle {
    font-family: 'Libre Caslon Text', serif;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 5px;
    color: #B57E78; /* Soft dusty pink */
    text-transform: uppercase;
    margin-bottom: 15px;
}
.eterna-sec-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 34px;
    font-weight: 300;
    color: #3C3334;
    margin-bottom: 25px;
    letter-spacing: -1px;
}

/* Draw a thin premium underline helper */
.eterna-sec-header::after {
    content: '';
    display: block;
    width: 45px;
    height: 1.5px;
    background-color: #A38474;
    margin: 25px auto 0 auto;
    opacity: 0.6;
}

.eterna-sec-desc {
    font-size: 16px;
    color: #7A7071;
    max-width: 650px;
    margin: 0 auto;
    font-weight: 300;
    line-height: 1.8;
}

/* Grids */
.eterna-grid-2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
}
.eterna-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}
.eterna-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

/* Card layout (Key Differences) */
.eterna-card {
    background: #FFFFFF;
    padding: 50px 35px;
    border-radius: 6px;
    border: 1px solid #EAE2DC;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    display: flex;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
}
.eterna-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(163, 132, 116, 0.1);
    border-color: #C5A880;
}
.eterna-card-num {
    font-family: 'Libre Caslon Text', serif;
    font-size: 30px;
    color: #B57E78;
    margin-bottom: 25px;
    border-bottom: 1px solid #FAF6F4;
    padding-bottom: 12px;
    font-weight: 400;
}
.eterna-card-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 21px;
    font-weight: 400;
    color: #3C3334;
    margin-bottom: 18px;
    letter-spacing: -0.5px;
}
.eterna-card-text {
    font-size: 15px;
    color: #726D6D;
    font-weight: 300;
    margin-bottom: 0;
    line-height: 1.85;
    letter-spacing: -0.4px;
}

/* Visual Card (Top Image + Bottom Text) */
.eterna-visual-card {
    background: #FFFFFF;
    border-radius: 10px;
    border: 1px solid #EAE2DC;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    display: flex;
    flex-direction: column;
    height: 100%;
}
.eterna-visual-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 40px rgba(163, 132, 116, 0.12);
    border-color: #C5A880;
}
.eterna-visual-card-img {
    width: 100%;
    height: 180px;
    overflow: hidden;
    position: relative;
    background: linear-gradient(135deg, #FAF6F4 0%, #F0EAE5 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}
.eterna-visual-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.eterna-visual-card:hover .eterna-visual-card-img img {
    transform: scale(1.06);
}
.eterna-visual-card-img .eterna-img-placeholder {
    text-align: center;
    color: #B5A49C;
    font-size: 13px;
    font-weight: 300;
    letter-spacing: 0.5px;
}
.eterna-visual-card-img .eterna-img-placeholder .eterna-img-icon {
    font-size: 28px;
    margin-bottom: 8px;
    opacity: 0.5;
}
.eterna-visual-card-body {
    padding: 28px 25px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.eterna-visual-card-body .vc-num {
    font-family: 'Libre Caslon Text', serif;
    font-size: 14px;
    color: #C5A880;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 10px;
}
.eterna-visual-card-body .vc-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 17px;
    color: #3C3334;
    font-weight: 600;
    margin: 0 0 12px 0;
    line-height: 1.4;
}
.eterna-visual-card-body .vc-text {
    font-size: 14.5px;
    color: #6E6062;
    line-height: 1.8;
    font-weight: 300;
    letter-spacing: -0.3px;
    margin: 0;
    flex: 1;
}

/* Horizontal Card (Side Image + Text) */
.eterna-hz-card {
    display: grid;
    grid-template-columns: 220px 1fr;
    background: #FFFFFF;
    border-radius: 10px;
    border: 1px solid #EAE2DC;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.eterna-hz-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 35px rgba(163, 132, 116, 0.1);
    border-color: #C5A880;
}
.eterna-hz-card.reversed {
    grid-template-columns: 1fr 220px;
}
.eterna-hz-card-img {
    overflow: hidden;
    background: linear-gradient(135deg, #FAF6F4 0%, #F0EAE5 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 160px;
}
.eterna-hz-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.eterna-hz-card:hover .eterna-hz-card-img img {
    transform: scale(1.06);
}
.eterna-hz-card-body {
    padding: 28px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.eterna-hz-card-body .vc-num {
    font-family: 'Libre Caslon Text', serif;
    font-size: 14px;
    color: #C5A880;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 8px;
}
.eterna-hz-card-body .vc-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 17px;
    color: #3C3334;
    font-weight: 600;
    margin: 0 0 10px 0;
    line-height: 1.4;
}
.eterna-hz-card-body .vc-text {
    font-size: 14.5px;
    color: #6E6062;
    line-height: 1.8;
    font-weight: 300;
    letter-spacing: -0.3px;
    margin: 0;
}

/* Magazine Split Card (Image left/right + rich text) */
.eterna-magazine-split {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 0;
    background: #FFFFFF;
    border-radius: 12px;
    border: 1px solid #EAE2DC;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.eterna-magazine-split:hover {
    box-shadow: 0 12px 35px rgba(163, 132, 116, 0.08);
    border-color: #C5A880;
}
.eterna-magazine-split.reversed {
    grid-template-columns: 1fr 280px;
}
.eterna-magazine-split-img {
    background: linear-gradient(135deg, #FAF6F4 0%, #F0EAE5 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    min-height: 240px;
}
.eterna-magazine-split-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.eterna-magazine-split:hover .eterna-magazine-split-img img {
    transform: scale(1.04);
}
.eterna-magazine-split-body {
    padding: 35px 35px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}


.eterna-list-container {
    display: flex;
    flex-direction: column;
    gap: 35px;
}
.eterna-list-item {
    background-color: #FFFFFF;
    border: 1px solid #EAE2DC;
    border-radius: 6px;
    padding: 45px 50px;
    transition: all 0.4s ease;
    box-shadow: 0 4px 12px rgba(0,0,0,0.01);
}
.eterna-list-item:hover {
    border-color: #C5A880;
    box-shadow: 0 10px 25px rgba(181, 126, 120, 0.06);
}
.eterna-list-header {
    display: flex;
    align-items: center;
    gap: 25px;
    margin-bottom: 25px;
    border-bottom: 1px solid #FAF6F4;
    padding-bottom: 20px;
}
.eterna-list-index {
    font-family: 'Libre Caslon Text', serif;
    font-size: 20px;
    background-color: #FAF6F4;
    color: #B57E78;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 400;
}
.eterna-list-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 23px;
    font-weight: 400;
    color: #3C3334;
    margin-bottom: 4px;
    letter-spacing: -0.5px;
}
.eterna-list-subtitle {
    font-size: 15px;
    color: #A38474;
    margin-bottom: 18px;
    font-weight: 400;
    letter-spacing: -0.3px;
}
.eterna-list-content {
    font-size: 15.5px;
    color: #5E5354;
    font-weight: 300;
    line-height: 1.8;
}

/* Bullet list stylings inside solutions */
.eterna-bullet-list {
    list-style: none;
    padding: 0;
    margin: 20px 0 0 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}
.eterna-bullet-list li {
    position: relative;
    padding-left: 20px;
    font-size: 14.5px;
    color: #726D6D;
    font-weight: 300;
}
.eterna-bullet-list li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: -1px;
    font-size: 18px;
    color: #B57E78;
}

/* Recommended Section Indication card */
.eterna-rec-wrap {
    background-color: #FAF6F4;
    border: 1px solid #EAE2DC;
    border-radius: 6px;
    padding: 70px 90px;
    box-shadow: 0 8px 30px rgba(163, 132, 116, 0.04);
}
.eterna-rec-wrap .eterna-sec-header::after {
    background-color: #C5A880;
}
.eterna-rec-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    margin-top: 50px;
}
.eterna-rec-item {
    display: flex;
    gap: 22px;
    align-items: flex-start;
}
.eterna-rec-icon {
    font-size: 18px;
    color: #B57E78;
    background-color: #FFFFFF;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 10px rgba(181, 126, 120, 0.15);
    flex-shrink: 0;
    font-weight: bold;
}
.eterna-rec-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 19px;
    color: #3C3334;
    margin-bottom: 12px;
    font-weight: 400;
    letter-spacing: -0.5px;
}
.eterna-rec-text {
    font-size: 14.5px;
    color: #726D6D;
    font-weight: 300;
    line-height: 1.7;
}

/* Premium Image Comparison (GentleMax) */
.eterna-image-compare {
    display: flex;
    gap: 30px;
    margin-top: 50px;
    justify-content: center;
}
.eterna-image-compare-box {
    text-align: center;
    flex: 1;
    max-width: 480px;
    position: relative;
    overflow: hidden;
    border-radius: 6px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.06);
    border: 1px solid #EAE2DC;
    transition: transform 0.3s ease;
}
.eterna-image-compare-box:hover {
    transform: scale(1.02);
}
.eterna-image-compare-box img {
    width: 100%;
    height: auto;
    display: block;
    transition: filter 0.3s ease;
}
.eterna-image-compare-label {
    padding: 15px 0;
    font-size: 15px;
    background-color: #FFFFFF;
    color: #3C3334;
    font-family: 'Noto Serif KR', serif;
    font-weight: 400;
    border-top: 1px solid #FAF6F4;
}

/* Premium Mockup-Style Placeholders */
.eterna-image-placeholder {
    width: 100%;
    min-height: 320px;
    background: linear-gradient(135deg, #FAF7F5 0%, #F5EFEB 100%);
    border: 1.5px dashed #D3C3BD;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #A38474;
    font-size: 14px;
    text-align: center;
    padding: 40px;
    margin: 15px 0;
    box-sizing: border-box;
    position: relative;
    transition: all 0.4s ease;
    cursor: pointer;
    overflow: hidden;
}
.eterna-image-placeholder::before {
    content: "✦";
    font-size: 24px;
    color: #B57E78;
    margin-bottom: 12px;
    transition: transform 0.6s ease;
}
.eterna-image-placeholder:hover {
    background: linear-gradient(135deg, #F5EFEB 0%, #EFE5DF 100%);
    border-color: #C5A880;
    box-shadow: inset 0 0 20px rgba(197, 168, 128, 0.05);
}
.eterna-image-placeholder:hover::before {
    transform: rotate(180deg);
}
.eterna-image-placeholder-label {
    font-family: 'Noto Serif KR', serif;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 8px;
    color: #3C3334;
}
.eterna-image-placeholder-hint {
    font-size: 12px;
    color: #A38474;
    font-weight: 300;
}

/* Footer / Spacer height */
.eterna-spacer {
    height: 120px;
}

/* Premium micro-effects for all anchors */
.eterna-container a {
    transition: color 0.3s ease;
}

/* Interactive Tabs Layout */
.eterna-tabs-container {
    margin-top: 40px;
    width: 100%;
}
.eterna-tabs-header {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 50px;
    border-bottom: 1px solid #EAE2DC;
    padding-bottom: 25px;
}
.eterna-tab-btn {
    background: none;
    border: 1px solid rgba(163, 132, 116, 0.3);
    padding: 12px 28px;
    font-family: 'Noto Sans KR', sans-serif;
    font-size: 15px;
    color: #726D6D;
    cursor: pointer;
    border-radius: 30px;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    outline: none;
}
.eterna-container .eterna-tab-btn:hover, .eterna-container .eterna-tab-btn.active {
    background: #C5A880 !important;
    background-color: #C5A880 !important;
    color: #FFFFFF !important;
    border-color: #C5A880 !important;
    box-shadow: 0 4px 15px rgba(197, 168, 128, 0.2) !important;
}
.eterna-tab-panel {
    display: none;
    animation: fadeIn 0.6s ease;
}
.eterna-tab-panel.active {
    display: block;
}

/* Premium Accordion Layout */
.eterna-accordion {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-top: 30px;
}
.eterna-accordion-item {
    border: 1px solid #EAE2DC;
    border-radius: 6px;
    background-color: #FFFFFF;
    overflow: hidden;
    transition: all 0.3s ease;
}
.eterna-accordion-item.active {
    border-color: #C5A880;
    box-shadow: 0 4px 15px rgba(197, 168, 128, 0.05);
}
.eterna-accordion-header {
    padding: 22px 30px;
    background: none;
    border: none;
    width: 100%;
    text-align: left;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    outline: none;
}
.eterna-accordion-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 17px;
    color: #3C3334;
    font-weight: 400;
    margin: 0;
}
.eterna-accordion-item.active .eterna-accordion-title {
    color: #C5A880;
}
.eterna-accordion-icon {
    font-size: 14px;
    color: #A38474;
    transition: transform 0.3s ease;
}
.eterna-accordion-item.active .eterna-accordion-icon {
    transform: rotate(180deg);
    color: #C5A880;
}
.eterna-accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    background-color: #FAF6F4;
}
.eterna-accordion-body {
    padding: 25px 30px;
    font-size: 14.5px;
    color: #6E6062;
    line-height: 1.75;
    border-top: 1px solid #EAE2DC;
}

/* Timeline / Process Steps */
.eterna-timeline {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 40px;
    margin-top: 50px;
}
.eterna-timeline::before {
    content: '';
    position: absolute;
    top: 0;
    left: 20px;
    width: 1px;
    height: 100%;
    background-color: #EAE2DC;
}
.eterna-timeline-step {
    position: relative;
    display: flex;
    gap: 30px;
    padding-left: 50px;
}
.eterna-timeline-badge {
    position: absolute;
    left: 7px;
    top: 5px;
    width: 27px;
    height: 27px;
    background-color: #FFFFFF;
    border: 2px solid #C5A880;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Libre Caslon Text', serif;
    font-size: 13px;
    color: #B57E78;
    z-index: 2;
    font-weight: bold;
}
.eterna-timeline-content {
    background-color: #FFFFFF;
    border: 1px solid #EAE2DC;
    border-radius: 6px;
    padding: 30px;
    width: 100%;
    transition: border-color 0.3s ease;
}
.eterna-timeline-step:hover .eterna-timeline-content {
    border-color: #C5A880;
}
.eterna-timeline-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 18px;
    color: #3C3334;
    margin-bottom: 10px;
}
.eterna-timeline-desc {
    font-size: 15px;
    color: #726D6D;
    font-weight: 300;
    margin: 0;
    line-height: 1.85;
    letter-spacing: -0.4px;
}

/* Custom responsiveness for tablets and mobile devices */
@media (max-width: 991px) {
    .eterna-grid-3, .eterna-grid-4 {
        grid-template-columns: repeat(2, 1fr);
    }
    .eterna-rec-wrap {
        padding: 50px 60px;
    }
    .eterna-hero {
        padding: 150px 20px 110px 20px;
    }
    .eterna-hero-title {
        font-size: 40px;
    }
    .eterna-tabs-header {
        gap: 8px;
    }
    .eterna-tab-btn {
        padding: 10px 20px;
        font-size: 14px;
    }
    .eterna-hz-card {
        grid-template-columns: 180px 1fr;
    }
    .eterna-hz-card.reversed {
        grid-template-columns: 1fr 180px;
    }
    .eterna-magazine-split {
        grid-template-columns: 220px 1fr;
    }
    .eterna-magazine-split.reversed {
        grid-template-columns: 1fr 220px;
    }
}

@media (max-width: 767px) {
    .eterna-grid-2, .eterna-grid-3, .eterna-grid-4, .eterna-rec-grid, .eterna-bullet-list, .eterna-image-compare {
        grid-template-columns: 1fr;
    }
    .eterna-hero-title {
        font-size: 32px;
    }
    .eterna-section {
        padding: 80px 15px;
    }
    .eterna-list-item {
        padding: 35px 25px;
    }
    .eterna-rec-wrap {
        padding: 40px 30px;
    }
    .eterna-rec-grid {
        gap: 30px;
        margin-top: 35px;
    }
    .eterna-tabs-header {
        flex-direction: column;
        align-items: stretch;
    }
    .eterna-tab-btn {
        text-align: center;
    }
    .eterna-hz-card,
    .eterna-hz-card.reversed {
        grid-template-columns: 1fr;
    }
    .eterna-hz-card.reversed .eterna-hz-card-img {
        order: -1;
    }
    .eterna-magazine-split,
    .eterna-magazine-split.reversed {
        grid-template-columns: 1fr;
    }
    .eterna-magazine-split.reversed .eterna-magazine-split-img {
        order: -1;
    }
    .eterna-magazine-split-img {
        min-height: 200px;
    }
    .eterna-visual-card-img {
        height: 160px;
    }
}

/* --- Premium Self-Diagnostic Checklist Styling --- */
.eterna-diag-card {
    background: #FFFFFF;
    border: 1px solid #EAE2DC;
    border-radius: 8px;
    padding: 50px;
    box-shadow: 0 10px 30px rgba(163, 132, 116, 0.05);
    margin-top: 40px;
    box-sizing: border-box;
}
.eterna-diag-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 24px;
    color: #3C3334;
    text-align: center;
    margin-bottom: 12px;
}
.eterna-diag-subtitle {
    font-size: 14.5px;
    color: #8C7F80;
    text-align: center;
    margin-bottom: 35px;
}
.eterna-diag-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-bottom: 40px;
}
@media (max-width: 767px) {
    .eterna-diag-list {
        grid-template-columns: 1fr;
    }
}
.eterna-diag-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    background-color: #FAF6F4;
    padding: 18px 22px;
    border-radius: 6px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.3s ease;
    user-select: none;
}
.eterna-diag-item:hover {
    border-color: #C5A880;
    background-color: #FFFFFF;
}
.eterna-diag-item.checked {
    background-color: #FCF8F7;
    border-color: #C5A880;
    box-shadow: 0 4px 15px rgba(197, 168, 128, 0.08);
}
.eterna-diag-checkbox {
    width: 20px;
    height: 20px;
    border: 1px solid #C4B5AE;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #FFFFFF;
    flex-shrink: 0;
    margin-top: 3px;
    transition: all 0.3s ease;
}
.eterna-diag-item:hover .eterna-diag-checkbox {
    border-color: #C5A880;
}
.eterna-diag-item.checked .eterna-diag-checkbox {
    background-color: #C5A880;
    border-color: #C5A880;
    color: #FFFFFF;
}
.eterna-diag-checkbox::after {
    content: "\2713"; /* Checkmark symbol */
    font-size: 12px;
    font-weight: bold;
    display: none;
}
.eterna-diag-item.checked .eterna-diag-checkbox::after {
    display: block;
}
.eterna-diag-label {
    font-size: 15px;
    color: #5E5354;
    line-height: 1.5;
    font-weight: 300;
}
.eterna-diag-item.checked .eterna-diag-label {
    color: #3C3334;
    font-weight: 400;
}
.eterna-diag-btn-wrap {
    text-align: center;
}
.eterna-diag-btn {
    background-color: #C5A880;
    color: #FFFFFF;
    border: none;
    padding: 15px 45px;
    font-size: 16px;
    border-radius: 30px;
    cursor: pointer;
    font-family: 'Noto Sans KR', sans-serif;
    font-weight: 500;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(197, 168, 128, 0.25);
    outline: none;
}
.eterna-container .eterna-diag-btn:hover {
    background: #B49770 !important;
    background-color: #B49770 !important;
    box-shadow: 0 6px 20px rgba(197, 168, 128, 0.35) !important;
    transform: translateY(-2px);
}
.eterna-diag-result {
    margin-top: 35px;
    padding: 30px;
    background-color: #FCF8F7;
    border: 1px solid #EAE2DC;
    border-radius: 6px;
    display: none;
    animation: fadeIn 0.6s ease;
    text-align: center;
}
.eterna-diag-result-score {
    font-family: 'Noto Serif KR', serif;
    font-size: 20px;
    color: #B57E78;
    margin-bottom: 15px;
}
.eterna-diag-result-desc {
    font-size: 15px;
    color: #6E6062;
    line-height: 1.8;
    max-width: 600px;
    margin: 0 auto;
    font-weight: 300;
}

/* --- Scroll Reveal Animations --- */
.eterna-scroll-reveal {
    opacity: 0;
    transform: translateY(35px);
    transition: opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1), transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.eterna-scroll-reveal.reveal-active {
    opacity: 1;
    transform: translateY(0);
}
.reveal-delay-1 { transition-delay: 0.15s; }
.reveal-delay-2 { transition-delay: 0.3s; }
.reveal-delay-3 { transition-delay: 0.45s; }
.reveal-delay-4 { transition-delay: 0.6s; }
.reveal-delay-5 { transition-delay: 0.75s; }
.reveal-delay-6 { transition-delay: 0.9s; }

/* Dynamic layout zig-zag grid */
.eterna-grid-zigzag {
    display: flex;
    flex-direction: column;
    gap: 80px;
    margin-top: 50px;
}
.eterna-zigzag-row {
    display: flex;
    align-items: center;
    gap: 60px;
}
.eterna-zigzag-row:nth-child(even) {
    flex-direction: row-reverse;
}
.eterna-zigzag-col {
    flex: 1;
}
@media (max-width: 767px) {
    .eterna-zigzag-row, .eterna-zigzag-row:nth-child(even) {
        flex-direction: column;
        gap: 30px;
    }
}

/* Remove border from bottom fast consultation bar on subpages */
.mb-application-form-m3.mb-widget-shortcode {
    border: none !important;
    box-shadow: none !important;
}

/* ==========================================================================
   Design Innovation & Premium Custom Layouts Styles
   ========================================================================== */

/* 1) Circular SVG Score Dial (폐경기 센터) */
.eterna-score-dial-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 40px auto;
    position: relative;
    width: 200px;
    height: 200px;
}
.eterna-score-dial-svg {
    transform: rotate(-90deg);
    width: 200px;
    height: 200px;
}
.eterna-score-dial-circle-bg {
    fill: none;
    stroke: #F5EEE9;
    stroke-width: 12;
}
.eterna-score-dial-circle-fill {
    fill: none;
    stroke: #C5A880;
    stroke-width: 12;
    stroke-linecap: round;
    stroke-dasharray: 565.48; /* 2 * PI * r (r=90) */
    stroke-dashoffset: 565.48;
    transition: stroke-dashoffset 1.5s cubic-bezier(0.25, 0.8, 0.25, 1), stroke 0.5s ease;
}
.eterna-score-dial-text-wrap {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}
.eterna-score-dial-value {
    font-family: 'Libre Caslon Text', serif;
    font-size: 32px;
    font-weight: 700;
    color: #3C3334;
}
.eterna-score-dial-label {
    font-size: 13px;
    color: #7A7071;
    margin-top: 5px;
}
.eterna-glass-card {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    box-shadow: 0 15px 35px rgba(163, 132, 116, 0.08);
    border-radius: 12px;
    padding: 30px;
}

/* 2) Branching Timeline (줄기세포 맞춤 재생치료) */
.eterna-branch-timeline {
    position: relative;
    max-width: 900px;
    margin: 60px auto;
    padding: 20px 0;
}
.eterna-branch-timeline::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(to bottom, #FAF6F4, #D3C3BD 20%, #D3C3BD 80%, #FAF6F4);
    transform: translateX(-50%);
}
.eterna-branch-step {
    position: relative;
    width: 50%;
    margin-bottom: 50px;
    clear: both;
}
.eterna-branch-step.left {
    float: left;
    padding-right: 40px;
    text-align: right;
}
.eterna-branch-step.right {
    float: right;
    padding-left: 40px;
    text-align: left;
}
.eterna-branch-node {
    position: absolute;
    top: 20px;
    left: 50%;
    width: 14px;
    height: 14px;
    background-color: #FFFFFF;
    border: 3px solid #C5A880;
    border-radius: 50%;
    transform: translate(-50%, 0);
    z-index: 10;
    transition: all 0.3s ease;
    box-shadow: 0 0 0 4px rgba(181, 126, 120, 0.15);
}
.eterna-branch-step:hover .eterna-branch-node {
    background-color: #C5A880;
    box-shadow: 0 0 0 8px rgba(181, 126, 120, 0.3), 0 0 15px rgba(181, 126, 120, 0.6);
}
.eterna-branch-card {
    background: #FFF;
    border: 1px solid #F0E6E1;
    border-radius: 8px;
    padding: 25px;
    transition: all 0.3s ease;
    display: inline-block;
    max-width: 100%;
}
.eterna-branch-step:hover .eterna-branch-card {
    border-color: #C5A880;
    box-shadow: 0 10px 25px rgba(163, 132, 116, 0.08);
    transform: translateY(-5px);
}
.eterna-branch-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 18px;
    color: #3C3334;
    margin-bottom: 10px;
}
.eterna-branch-desc {
    font-size: 14px;
    color: #726D6D;
    line-height: 1.6;
}

/* 3) Dual-Column Battle Cards (피임예방접종) */
.eterna-battle-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-top: 40px;
}
.eterna-battle-card {
    position: relative;
    background: #FFF;
    border: 1px solid #EAE2DC;
    border-radius: 12px;
    padding: 40px;
    transition: all 0.3s ease;
}
.eterna-battle-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px;
    border-radius: 12px 12px 0 0;
    background: linear-gradient(90deg, #C5A880, #D89E97);
}
.eterna-battle-card:hover {
    box-shadow: 0 15px 35px rgba(163, 132, 116, 0.1);
    transform: translateY(-5px);
}
.eterna-battle-tag {
    position: absolute;
    top: 20px;
    right: 25px;
    background: #FCF8F7;
    color: #B57E78;
    border: 1px solid #F0E6E1;
    border-radius: 20px;
    padding: 4px 14px;
    font-size: 12px;
    font-weight: 600;
}
.eterna-battle-vs-badge {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 48px;
    height: 48px;
    background: #C5A880;
    color: #FFFFFF;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Libre Caslon Text', serif;
    font-size: 16px;
    font-weight: 700;
    border: 4px solid #FAF6F4;
    box-shadow: 0 5px 15px rgba(197, 168, 128, 0.2);
    z-index: 5;
}
.eterna-check-list {
    list-style: none;
    padding: 0;
    margin: 20px 0 0 0;
}
.eterna-check-item {
    position: relative;
    padding-left: 28px;
    margin-bottom: 12px;
    font-size: 14.5px;
    color: #6E6062;
    line-height: 1.6;
}
.eterna-check-item::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #B57E78;
    font-weight: 800;
}

/* 4) Editorial Offset Overlap (바디 화이트닝) */
.eterna-editorial-row {
    display: flex;
    align-items: center;
    gap: 60px;
    margin-bottom: 100px;
    position: relative;
}
.eterna-editorial-row:nth-child(even) {
    flex-direction: row-reverse;
}
.eterna-editorial-col {
    flex: 1;
    position: relative;
}
.eterna-editorial-bg-block {
    position: absolute;
    top: -20px;
    left: -20px;
    right: 20px;
    bottom: 20px;
    background: #FAF3F0;
    border-radius: 12px;
    z-index: -1;
    transition: all 0.3s ease;
}
.eterna-editorial-row:hover .eterna-editorial-bg-block {
    transform: translate(5px, 5px);
    background: #F5EAE5;
}
.eterna-editorial-card {
    background: #FFFFFF;
    border: 1px solid #EAE2DC;
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(163, 132, 116, 0.05);
    position: relative;
}
.eterna-editorial-num {
    font-family: 'Libre Caslon Text', serif;
    font-size: 72px;
    font-weight: 300;
    color: rgba(197, 168, 128, 0.12);
    position: absolute;
    top: -45px;
    left: 20px;
    line-height: 1;
    letter-spacing: -2px;
}
.eterna-editorial-row:nth-child(even) .eterna-editorial-num {
    left: auto;
    right: 20px;
}

/* 5) Vertical Tabs Layout (부인과 질환) */
.eterna-vtabs-container {
    display: flex;
    gap: 40px;
    margin-top: 40px;
}
.eterna-vtabs-menu {
    flex: 0 0 250px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.eterna-vtabs-btn {
    background: #FCF8F7;
    border: 1px solid #F0E6E1;
    border-radius: 6px;
    padding: 16px 20px;
    font-size: 15px;
    font-family: 'Noto Serif KR', serif;
    color: #6E6062;
    text-align: left;
    cursor: pointer;
    transition: all 0.3s ease;
}
.eterna-container .eterna-vtabs-btn:hover, .eterna-container .eterna-vtabs-btn.active {
    background: #C5A880 !important;
    color: #FFFFFF !important;
    border-color: #C5A880 !important;
    transform: translateX(5px);
    box-shadow: -5px 5px 15px rgba(197, 168, 128, 0.15) !important;
}
.eterna-vtabs-content-wrap {
    flex: 1;
    background: #FFF;
    border: 1px solid #EAE2DC;
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(163, 132, 116, 0.04);
    min-height: 380px;
}
.eterna-vtabs-panel {
    display: none;
    animation: fadeIn 0.4s ease;
}
.eterna-vtabs-panel.active {
    display: block;
}

/* 6) Slide-up Spec Panel Card (여성성형 레이저) */
.eterna-spec-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-top: 40px;
}
.eterna-spec-card {
    position: relative;
    background: #FFF;
    border: 1px solid #EAE2DC;
    border-radius: 12px;
    overflow: hidden;
    height: 320px;
    transition: all 0.3s ease;
}
.eterna-spec-card-body {
    padding: 35px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}
.eterna-spec-overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -100%;
    height: 100%;
    background: rgba(60, 51, 52, 0.96);
    color: #FFFFFF;
    padding: 35px;
    transition: bottom 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.eterna-spec-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(163, 132, 116, 0.1);
}
.eterna-spec-card:hover .eterna-spec-overlay {
    bottom: 0;
}
.eterna-spec-overlay-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 20px;
    color: #D89E97;
    margin-bottom: 15px;
    border-bottom: 1px solid rgba(216, 158, 151, 0.3);
    padding-bottom: 10px;
}

/* 7) Horizontal Flow Step Layout (유두축소 레이저 조각술) */
.eterna-hflow-container {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 20px;
    margin-top: 40px;
}
.eterna-hflow-step {
    flex: 1;
    background: #FFF;
    border: 1px solid #EAE2DC;
    border-radius: 8px;
    padding: 30px 20px;
    text-align: center;
    position: relative;
    transition: all 0.3s ease;
}
.eterna-hflow-step:hover {
    border-color: #C5A880;
    box-shadow: 0 10px 25px rgba(163, 132, 116, 0.06);
    transform: translateY(-5px);
}
.eterna-hflow-badge {
    width: 36px;
    height: 36px;
    background: #FCF8F7;
    border: 2px solid #C5A880;
    color: #B57E78;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 15px auto;
    font-family: 'Libre Caslon Text', serif;
    font-weight: 700;
    font-size: 14px;
}
.eterna-hflow-step:hover .eterna-hflow-badge {
    background: #C5A880;
    color: #FFFFFF;
}

/* 8) Watermark Icon Card Layout (음핵레이저) */
.eterna-watermark-card {
    position: relative;
    background: #FFF;
    border: 1px solid #EAE2DC;
    border-radius: 12px;
    padding: 35px;
    overflow: hidden;
    transition: all 0.3s ease;
}
.eterna-watermark-card:hover {
    border-color: #C5A880;
    box-shadow: 0 12px 30px rgba(163, 132, 116, 0.08);
}
.eterna-watermark-bg {
    position: absolute;
    bottom: -20px;
    right: -20px;
    font-size: 130px;
    font-weight: 800;
    color: rgba(181, 126, 120, 0.03);
    line-height: 1;
    z-index: 1;
    pointer-events: none;
    font-family: 'Libre Caslon Text', serif;
}

/* 9) Editorial Split Layout (튼살/비만/바디라인) */
.eterna-split-layout {
    display: flex;
    gap: 50px;
    margin-top: 40px;
}
.eterna-split-left {
    flex: 0 0 350px;
    position: sticky;
    top: 100px;
    align-self: flex-start;
}
.eterna-split-right {
    flex: 1;
}
.eterna-split-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 42px;
    line-height: 1.3;
    color: #3C3334;
    font-weight: 300;
}
.eterna-split-title span {
    font-family: 'Libre Caslon Text', serif;
    font-size: 54px;
    display: block;
    color: #B57E78;
    margin-bottom: 10px;
}

/* 10) 3D Table Style */
.eterna-3d-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 8px;
    min-width: 600px;
}
.eterna-3d-row {
    transition: all 0.2s ease;
    background: #FFF;
    border: 1px solid #EAE2DC;
}
.eterna-3d-row:hover {
    transform: scale(1.01) translateY(-2px);
    box-shadow: 0 8px 20px rgba(163, 132, 116, 0.06);
}
.eterna-3d-cell {
    padding: 20px;
    border-top: 1px solid #F0E6E1;
    border-bottom: 1px solid #F0E6E1;
    color: #6E6062;
    font-weight: 300;
}
.eterna-3d-cell:first-child {
    border-left: 1px solid #F0E6E1;
    border-radius: 8px 0 0 8px;
    font-weight: 500;
    background-color: #FCF8F7;
}
.eterna-3d-cell:last-child {
    border-right: 1px solid #F0E6E1;
    border-radius: 0 8px 8px 0;
}

/* 11) Responsive Adaptations */
@media (max-width: 1024px) {
    .eterna-vtabs-container, .eterna-split-layout {
        flex-direction: column;
    }
    .eterna-vtabs-menu {
        flex-direction: row;
        flex-wrap: wrap;
        width: 100%;
    }
    .eterna-vtabs-btn {
        flex: 1 1 200px;
    }
    .eterna-split-left {
        position: relative;
        top: 0;
        width: 100%;
        margin-bottom: 30px;
    }
}

@media (max-width: 767px) {
    .eterna-branch-timeline::before {
        left: 20px;
    }
    .eterna-branch-step {
        width: 100%;
        padding-left: 45px !important;
        padding-right: 0 !important;
        text-align: left !important;
    }
    .eterna-branch-node {
        left: 20px;
    }
    .eterna-battle-grid, .eterna-spec-grid, .eterna-hflow-container {
        grid-template-columns: 1fr;
        flex-direction: column;
    }
    .eterna-battle-vs-badge {
        position: relative;
        left: 50%;
        top: 0;
        transform: translate(-50%, 0);
        margin: 20px 0;
    }
    .eterna-hflow-step {
        width: 100%;
    }
    .eterna-editorial-row {
        flex-direction: column !important;
        gap: 30px;
        margin-bottom: 60px;
    }
}

/* --------------------------------------------------------------------------
   Key Differences Variety Styling
   -------------------------------------------------------------------------- */

/* 1) Magazine Split Row (obesity-bodyline, body-whitening) */
.eterna-diff-magazine {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 50px;
    align-items: start;
}
.eterna-diff-magazine-sticky {
    position: sticky;
    top: 100px;
}
.eterna-diff-magazine-grid {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.eterna-diff-magazine-card {
    background: #FFFFFF;
    border-radius: 8px;
    padding: 30px;
    box-shadow: 0 4px 20px rgba(181, 126, 120, 0.04);
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 20px;
    align-items: start;
    transition: all 0.3s ease;
    border-left: 3px solid transparent;
}
.eterna-diff-magazine-card:hover {
    transform: translateX(10px);
    border-left-color: #C5A880;
    box-shadow: 0 8px 30px rgba(197, 168, 128, 0.08);
}

/* 2) Asymmetric Focus (contraception-vaccine) */
.eterna-diff-asymmetric {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 40px;
}
.eterna-diff-asymmetric-hero {
    background: linear-gradient(135deg, #FCF8F7 0%, #F5EEE9 100%);
    border: 1px solid #EAE2DC;
    border-top: 5px solid #B57E78;
    border-radius: 12px;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-shadow: 0 10px 30px rgba(197, 168, 128, 0.05);
    transition: transform 0.3s ease;
}
.eterna-diff-asymmetric-hero:hover {
    transform: translateY(-5px);
}
.eterna-diff-asymmetric-stack {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.eterna-diff-asymmetric-card {
    background: #FFFFFF;
    border: 1px solid #F6F3F1;
    border-radius: 8px;
    padding: 24px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0,0,0,0.01);
}
.eterna-diff-asymmetric-card:hover {
    border-color: #C5A880;
    box-shadow: 0 6px 20px rgba(197, 168, 128, 0.05);
}

/* 3) Connecting SVG Nodes / Timeline (stemcell-regeneration) */
.eterna-diff-timeline-wrap {
    position: relative;
    padding: 30px 0;
}
.eterna-diff-timeline-line {
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 2px;
    background: #EAE2DC;
    transform: translateX(-50%);
}
.eterna-diff-timeline-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
    position: relative;
    width: 100%;
}
.eterna-diff-timeline-col {
    width: 45%;
}
.eterna-diff-timeline-node {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 36px;
    height: 36px;
    background: #FFFFFF;
    border: 2px solid #C5A880;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-family: 'Libre Caslon Text', serif;
    color: #B57E78;
    font-weight: bold;
    z-index: 2;
    transition: all 0.3s ease;
}
.eterna-diff-timeline-row:hover .eterna-diff-timeline-node {
    background: #C5A880;
    color: #FFFFFF;
    box-shadow: 0 0 12px rgba(181,126,120,0.6);
}
.eterna-diff-timeline-card {
    background: #FFFFFF;
    border-radius: 8px;
    padding: 25px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.02);
    border: 1px solid #F5EEE9;
    transition: all 0.3s ease;
}
.eterna-diff-timeline-card:hover {
    border-color: #C5A880;
    transform: translateY(-3px);
}

/* 4) Stacked Deck Overlap (clitoris-laser) */
.eterna-diff-deck-wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 900px;
    margin: 0 auto;
}
.eterna-diff-deck-card {
    background: #FFFFFF;
    border: 1px solid #EAE2DC;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.02);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    position: relative;
}
.eterna-diff-deck-card:nth-child(1) { transform: rotate(-0.5deg) translateY(0); z-index: 1; }
.eterna-diff-deck-card:nth-child(2) { transform: rotate(0.5deg) translateY(-10px); z-index: 2; }
.eterna-diff-deck-card:nth-child(3) { transform: rotate(-0.3deg) translateY(-20px); z-index: 3; }
.eterna-diff-deck-card:nth-child(4) { transform: rotate(0.4deg) translateY(-30px); z-index: 4; }

.eterna-diff-deck-card:hover {
    transform: scale(1.02) rotate(0deg) translateY(-35px) !important;
    z-index: 10 !important;
    border-color: #C5A880;
    box-shadow: 0 15px 40px rgba(197, 168, 128, 0.12);
}

/* 5) Crosshair Quadrant (menopause-center, perineoplasty) */
.eterna-diff-quadrant-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    position: relative;
    max-width: 1000px;
    margin: 0 auto;
}
.eterna-diff-quadrant-grid::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1px;
    background: #EAE2DC;
}
.eterna-diff-quadrant-grid::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    background: #EAE2DC;
}
.eterna-diff-quadrant-card {
    padding: 40px;
    transition: background-color 0.3s ease;
}
.eterna-diff-quadrant-card:hover {
    background-color: rgba(245, 238, 233, 0.3);
}

/* 6) Horizontal Ribbon Steps (nipple-reduction, gynecology-disease) */
.eterna-diff-ribbon-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    position: relative;
    padding-top: 20px;
}
.eterna-diff-ribbon-line {
    display: none;
}
.eterna-diff-ribbon-card {
    background: #FFFFFF;
    border-radius: 12px;
    padding: 35px 30px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.01);
    border: 1px solid #F6F3F1;
    z-index: 2;
    transition: all 0.3s ease;
    text-align: center;
}
.eterna-diff-ribbon-card:hover {
    transform: translateY(-5px);
    border-color: #C5A880;
    box-shadow: 0 8px 25px rgba(197, 168, 128, 0.08);
}

/* 7) Floating Asymmetric Grid (women-examination, women-laser-center) */
.eterna-diff-floating-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    padding: 20px 0;
}
.eterna-diff-floating-card {
    background: #FFFFFF;
    border: 1px solid #EAE2DC;
    border-radius: 10px;
    padding: 25px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0,0,0,0.01);
}
.eterna-diff-floating-card:nth-child(1) { transform: translateY(0); }
.eterna-diff-floating-card:nth-child(2) { transform: translateY(15px); }
.eterna-diff-floating-card:nth-child(3) { transform: translateY(-10px); }
.eterna-diff-floating-card:nth-child(4) { transform: translateY(5px); }

.eterna-diff-floating-card:hover {
    transform: translateY(-15px) scale(1.02) !important;
    border-color: #C5A880;
    box-shadow: 0 10px 30px rgba(197, 168, 128, 0.08);
}

/* 8) Interactive Accordion Drawer (gentlemax-hair-removal) */
.eterna-diff-drawer-wrap {
    display: flex;
    flex-direction: column;
    gap: 15px;
    max-width: 800px;
    margin: 0 auto;
}
.eterna-diff-drawer-item {
    border: 1px solid #EAE2DC;
    border-radius: 8px;
    background: #FFFFFF;
    overflow: hidden;
    transition: all 0.3s ease;
}
.eterna-diff-drawer-header {
    width: 100%;
    padding: 22px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #FFFFFF;
    border: none;
    cursor: pointer;
    text-align: left;
}
.eterna-diff-drawer-header h3 {
    margin: 0;
    font-family: 'Noto Serif KR', serif;
    font-size: 18px;
    color: #3C3334;
}
.eterna-diff-drawer-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}
.eterna-diff-drawer-body {
    padding: 0 30px 25px 30px;
    font-size: 15px;
    color: #6E6062;
    line-height: 1.85;
    letter-spacing: -0.4px;
}
.eterna-diff-drawer-item.active {
    border-color: #C5A880;
    box-shadow: 0 6px 20px rgba(197, 168, 128, 0.05);
}

/* Media Queries for Variety Styles */
@media (max-width: 991px) {
    .eterna-diff-magazine {
        grid-template-columns: 1fr;
    }
    .eterna-diff-magazine-sticky {
        position: static;
        margin-bottom: 20px;
    }
    .eterna-diff-asymmetric {
        grid-template-columns: 1fr;
    }
    .eterna-diff-timeline-line {
        left: 20px;
    }
    .eterna-diff-timeline-row {
        flex-direction: column;
        align-items: flex-start;
        padding-left: 45px;
    }
    .eterna-diff-timeline-col {
        width: 100%;
    }
    .eterna-diff-timeline-node {
        left: 20px;
    }
    .eterna-diff-quadrant-grid {
        grid-template-columns: 1fr;
    }
    .eterna-diff-quadrant-grid::before, .eterna-diff-quadrant-grid::after {
        display: none;
    }
    .eterna-diff-quadrant-card {
        padding: 25px 0;
        border-bottom: 1px solid #EAE2DC;
    }
    .eterna-diff-ribbon-wrap {
        grid-template-columns: 1fr;
    }
    .eterna-diff-floating-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .eterna-diff-floating-card {
        transform: none !important;
    }
    .eterna-diff-deck-card {
        transform: none !important;
    }
}

/* Premium Accordion Hover Override */
.eterna-accordion-header:hover {
    background-color: #FAF6F4 !important;
}
.eterna-accordion-header:hover .eterna-accordion-title {
    color: #C5A880 !important;
}
.eterna-accordion-header:hover .eterna-accordion-icon {
    color: #C5A880 !important;
}
.eterna-accordion-item.active .eterna-accordion-header {
    background-color: #FAF6F4 !important;
}

/* Premium Sticky Split Layout */
@media (min-width: 992px) {
    .eterna-split-container {
        display: flex;
        gap: 60px;
        align-items: flex-start;
    }
    .eterna-split-left {
        position: -webkit-sticky;
        position: sticky;
        top: 130px; /* Offset for sticky site header */
        width: 35%;
        flex-shrink: 0;
    }
    .eterna-split-right {
        width: 65%;
        flex-grow: 1;
    }
}
@media (max-width: 991px) {
    .eterna-split-container {
        display: block;
    }
    .eterna-split-left {
        width: 100%;
        margin-bottom: 40px;
        text-align: center;
    }
    .eterna-split-right {
        width: 100%;
    }
}

/* ==========================================================================
   Wireframe-Specific Layout Additions
   ========================================================================== */

/* Full-width banner section (no padding, edge-to-edge) */
.eterna-fullwidth-banner {
    position: relative;
    width: 100%;
    overflow: hidden;
}
.eterna-fullwidth-banner .eterna-image-placeholder {
    min-height: 400px;
    border-radius: 0;
    border: none;
    margin: 0;
}
.eterna-fullwidth-banner-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 60px 40px;
    background: linear-gradient(transparent 0%, rgba(60, 51, 52, 0.7) 100%);
    text-align: center;
    color: #FFFFFF;
}
.eterna-fullwidth-banner-overlay .banner-tag {
    font-family: 'Libre Caslon Text', serif;
    font-size: 13px;
    letter-spacing: 5px;
    color: #FFE1D7;
    text-transform: uppercase;
    margin-bottom: 12px;
}
.eterna-fullwidth-banner-overlay .banner-title {
    font-family: 'Noto Serif KR', serif;
    font-size: 32px;
    font-weight: 300;
    margin: 0 0 12px 0;
    letter-spacing: -1px;
    text-shadow: 0 2px 10px rgba(0,0,0,0.3);
}
.eterna-fullwidth-banner-overlay .banner-desc {
    font-size: 15px;
    max-width: 650px;
    margin: 0 auto;
    font-weight: 300;
    line-height: 1.7;
    opacity: 0.9;
}

/* Large number decoration for zigzag items */
.eterna-big-number {
    font-family: 'Libre Caslon Text', serif;
    font-size: 64px;
    font-weight: 700;
    color: rgba(181, 126, 120, 0.12);
    line-height: 1;
    margin-bottom: 10px;
    letter-spacing: -2px;
}

/* 5-column grid */
.eterna-grid-5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
}
@media (max-width: 991px) {
    .eterna-grid-5 {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 767px) {
    .eterna-grid-5 {
        grid-template-columns: repeat(2, 1fr);
    }
    .eterna-fullwidth-banner .eterna-image-placeholder {
        min-height: 250px;
    }
    .eterna-fullwidth-banner-overlay {
        padding: 30px 20px;
    }
    .eterna-fullwidth-banner-overlay .banner-title {
        font-size: 24px;
    }
    .eterna-big-number {
        font-size: 48px;
    }
}

/* Enhanced zigzag with image placeholder sizing */
.eterna-zigzag-col .eterna-image-placeholder {
    min-height: 300px;
    height: 100%;
}

/* Vertical number list for effects sections */
.eterna-number-list {
    display: flex;
    flex-direction: column;
    gap: 50px;
    margin-top: 40px;
}
.eterna-number-item {
    display: flex;
    align-items: flex-start;
    gap: 30px;
}
.eterna-number-item .num-big {
    font-family: 'Libre Caslon Text', serif;
    font-size: 56px;
    color: rgba(181, 126, 120, 0.2);
    font-weight: 700;
    line-height: 1;
    flex-shrink: 0;
    min-width: 70px;
}
.eterna-number-item .num-content h3 {
    font-family: 'Noto Serif KR', serif;
    font-size: 22px;
    color: #3C3334;
    margin: 0 0 12px 0;
    font-weight: 400;
    letter-spacing: -0.5px;
}
.eterna-number-item .num-content p {
    font-size: 15px;
    color: #6E6062;
    line-height: 1.8;
    font-weight: 300;
    margin: 0;
}

/* Topic divider label */
.eterna-topic-divider {
    text-align: center;
    padding: 15px 0;
    margin: 0;
}
.eterna-topic-divider span {
    display: inline-block;
    padding: 8px 30px;
    background: #FAF6F4;
    border: 1px solid #EAE2DC;
    border-radius: 30px;
    font-family: 'Noto Serif KR', serif;
    font-size: 14px;
    color: #A38474;
    letter-spacing: 2px;
}


/* ==========================================================================
   Antigravity Custom Enhancements (Section 2 Sticky, Image Placeholders, Mobile Optimization)
   ========================================================================== */

/* Force parent containers to have overflow visible and stretch height so that native CSS sticky scrolling works correctly */
.eterna-container,
.elementor,
.e-con,
.e-con-inner,
div[data-id="6e7489e6"],
div[data-id="613d0797"],
div[data-id="13866c13"] {
    overflow: visible !important;
}

div[data-id="6e7489e6"] {
    display: block !important;
}

div[data-id="613d0797"] {
    display: flex !important;
    align-items: stretch !important;
}

div[data-id="13866c13"] {
    align-self: stretch !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* Widen paragraph wrappers */
.eterna-sec-desc {
    max-width: 950px !important;
}
.eterna-section-p {
    max-width: 950px !important;
}

/* Hide star icon (::before) on placeholders that wrap a real image */
.eterna-image-placeholder:has(img)::before,
.eterna-image-placeholder[style*="background"]::before {
    display: none !important;
}
.eterna-image-placeholder:has(img) {
    border: none !important;
    background: none !important;
    padding: 0 !important;
}

/* Section 2 Cards Image Optimization */
div[data-id="3c9a63ed"] .eterna-image-placeholder {
    height: 180px !important;
    min-height: 180px !important;
    border: none !important;
    background: none !important;
    padding: 0 !important;
    margin: 0 0 15px 0 !important;
    overflow: hidden !important;
    border-radius: 8px !important;
}
div[data-id="3c9a63ed"] .eterna-image-placeholder::before {
    display: none !important;
}
div[data-id="3c9a63ed"] .eterna-image-placeholder img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

/* Mobile & Tablet Optimizations */
@media (max-width: 991px) {
    .eterna-grid-4 {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
    }
    .eterna-grid-3 {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 25px !important;
    }
    .eterna-grid-2 {
        gap: 30px !important;
    }
    div[data-id="3c9a63ed"] {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
    }
}

@media (max-width: 767px) {
    .eterna-grid-4,
    .eterna-grid-3,
    .eterna-grid-2,
    div[data-id="3c9a63ed"] {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    .eterna-section {
        padding: 60px 15px !important;
    }
    .eterna-hero {
        padding: 100px 15px 80px 15px !important;
    }
    .eterna-hero-title {
        font-size: 32px !important;
    }
    .eterna-hero-desc {
        font-size: 15px !important;
    }
    .eterna-hz-card,
    .eterna-hz-card.reversed {
        grid-template-columns: 1fr !important;
    }
    .eterna-hz-card-img {
        height: 180px !important;
        width: 100% !important;
    }
    .eterna-magazine-split,
    .eterna-magazine-split.reversed {
        grid-template-columns: 1fr !important;
    }
    .eterna-magazine-split-img {
        height: 200px !important;
        width: 100% !important;
    }
    .eterna-magazine-split-body {
        padding: 25px 20px !important;
    }
    .eterna-list-item {
        padding: 25px 20px !important;
    }
    .eterna-list-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
}

.eterna-table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}


/* Top-level overflow control to prevent scrollbars without breaking sticky */
html {
    overflow-x: hidden !important;
}
body {
    overflow: visible !important;
}

/* 에테르나 차별점 섹션 가로 빈 공간 오버라이드 해결 (회음체 성형, 음핵 레이저 성형, 폐경기 센터 공통 적용) */
.elementor-element.elementor-element-13866c13 {
    --width: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    flex-basis: 100% !important;
}
.elementor-element.elementor-element-1fa38078 {
    --width: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    flex-basis: 100% !important;
}
.elementor-element.elementor-element-69501166 {
    --width: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    flex-basis: 100% !important;
}
/* 차별점 섹션 2컬럼 레이아웃 (공통 - 모든 페이지) */
.elementor-element.elementor-element-6e7489e6 {
    --column-gap: 50px !important;
    gap: 0px 50px !important;
    align-items: stretch !important;
}

/* e-con-boxed 내부 래퍼도 stretch 적용 */
.elementor-element.elementor-element-6e7489e6 > .e-con-inner {
    display: flex !important;
    align-items: stretch !important;
}

/* 5) Contraception (3924), Stemcell (4206), Examination (3413), Laser Center (3628) */
.elementor-page-3924 .elementor-element.elementor-element-8df0a9d,
.elementor-page-4206 .elementor-element.elementor-element-8df0a9d,
.elementor-page-3413 .elementor-element.elementor-element-8df0a9d,
.elementor-page-3628 .elementor-element.elementor-element-8df0a9d {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
}
.elementor-page-3924 .elementor-element.elementor-element-5b943c4,
.elementor-page-4206 .elementor-element.elementor-element-5b943c4,
.elementor-page-3413 .elementor-element.elementor-element-5b943c4,
.elementor-page-3628 .elementor-element.elementor-element-5b943c4 {
    width: 30% !important;
    max-width: 30% !important;
    flex: 0 0 30% !important;
    align-self: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    height: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    min-width: auto !important;
}
.elementor-page-3924 .elementor-element.elementor-element-2dd32b8,
.elementor-page-4206 .elementor-element.elementor-element-2dd32b8,
.elementor-page-3413 .elementor-element.elementor-element-2947083 {
    width: 67% !important;
    max-width: 67% !important;
    flex: 0 0 auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    min-width: auto !important;
}
.elementor-page-3924 .elementor-element.elementor-element-4b421c3,
.elementor-page-4206 .elementor-element.elementor-element-4b421c3,
.elementor-page-3413 .elementor-element.elementor-element-4b421c3,
.elementor-page-3628 .elementor-element.elementor-element-4b421c3,
.elementor-page-3567 .elementor-element.elementor-element-4b421c3 {
    flex-grow: 1 !important;
    flex-shrink: 1 !important;
    flex-basis: auto !important;
    height: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    align-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: auto !important;
}
.elementor-page-3924 .elementor-element.elementor-element-bb75d60,
.elementor-page-4206 .elementor-element.elementor-element-bb75d60,
.elementor-page-3413 .elementor-element.elementor-element-bb75d60,
.elementor-page-3628 .elementor-element.elementor-element-bb75d60,
.elementor-page-3567 .elementor-element.elementor-element-bb75d60 {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 150px !important;
    align-self: flex-start !important;
    z-index: 10 !important;
    animation: none !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.elementor-page-3924 .elementor-element.elementor-element-bb75d60 *,
.elementor-page-4206 .elementor-element.elementor-element-bb75d60 *,
.elementor-page-3413 .elementor-element.elementor-element-bb75d60 *,
.elementor-page-3628 .elementor-element.elementor-element-bb75d60 *,
.elementor-page-3567 .elementor-element.elementor-element-bb75d60 * {
    visibility: visible !important;
    opacity: 1 !important;
}

@media (min-width: 1025px) {
    /* 좌측 컬럼: 부모 높이에 맞춰 늘어나야 스티키가 작동 */
    .elementor-page-5191 .elementor-element.elementor-element-613d0797 {
        align-self: stretch !important;
        position: relative !important;
        overflow: visible !important;
    }
    /* 스티키 요소: CSS native sticky */
    .elementor-page-5191 .elementor-element.elementor-element-1fa38078,
    .elementor-page-5285 .elementor-element.elementor-element-1fa38078,
    .elementor-page-5677 .elementor-element.elementor-element-1fa38078,
    .elementor-page-4114 .elementor-element.elementor-element-1fa38078,
    .elementor-page-5678 .elementor-element.elementor-element-1fa38078 {
        position: -webkit-sticky !important;
        position: sticky !important;
        top: 150px !important;
        align-self: flex-start !important;
        z-index: 10 !important;
        animation: none !important;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        flex-basis: auto !important;
        height: auto !important;
    }
    .elementor-page-5191 .elementor-element.elementor-element-1fa38078 *,
    .elementor-page-5285 .elementor-element.elementor-element-1fa38078 *,
    .elementor-page-5677 .elementor-element.elementor-element-1fa38078 *,
    .elementor-page-4114 .elementor-element.elementor-element-1fa38078 *,
    .elementor-page-5678 .elementor-element.elementor-element-1fa38078 * {
        visibility: visible !important;
        opacity: 1 !important;
    }
}

/* 폐경기 센터 추천 대상 섹션 텍스트 가독성 개선 */
.elementor-3765 .elementor-icon-box-description {
    color: #404040 !important;
    opacity: 1 !important;
}

/* 부인과 레이저 탭 부모 컨테이너 더블 테두리/여백 제거 */
.elementor-page-3628 .elementor-element-8b91083,
.elementor-page-3628 .elementor-element-c9daec1,
.elementor-page-3628 .elementor-element-69135d1,
.elementor-page-3628 .elementor-element-dd13916,
.elementor-page-3628 .elementor-element-2c3b6a3 {
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    height: auto !important;
}

/* 탭 버튼 기본 (비활성) 스타일 - 높이 축소 및 중앙 정렬 */
.elementor-page-3628 .elementor-element-c0951e7,
.elementor-page-3628 .elementor-element-84b6295,
.elementor-page-3628 .elementor-element-1e9edd2,
.elementor-page-3628 .elementor-element-eb6da98,
.elementor-page-3628 .elementor-element-e581576 {
    background: #FFFFFF !important;
    border: 1px solid #E5D5D2 !important;
    border-radius: 12px !important;
    padding: 10px 18px !important;
    cursor: pointer !important;
    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
    opacity: 0.65 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 48px !important;
    box-sizing: border-box !important;
    color: #8E7572 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

/* 비활성 탭 호버 */
.elementor-page-3628 .elementor-element-c0951e7:hover,
.elementor-page-3628 .elementor-element-84b6295:hover,
.elementor-page-3628 .elementor-element-1e9edd2:hover,
.elementor-page-3628 .elementor-element-eb6da98:hover,
.elementor-page-3628 .elementor-element-e581576:hover {
    border-color: #B57E78 !important;
    opacity: 0.9 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(158, 116, 112, 0.12) !important;
}

/* 비활성 탭 텍스트 */
.elementor-page-3628 .elementor-element-c0951e7:not(.eterna-tab-active) p,
.elementor-page-3628 .elementor-element-c0951e7:not(.eterna-tab-active) span,
.elementor-page-3628 .elementor-element-84b6295:not(.eterna-tab-active) p,
.elementor-page-3628 .elementor-element-84b6295:not(.eterna-tab-active) span,
.elementor-page-3628 .elementor-element-1e9edd2:not(.eterna-tab-active) p,
.elementor-page-3628 .elementor-element-1e9edd2:not(.eterna-tab-active) span,
.elementor-page-3628 .elementor-element-eb6da98:not(.eterna-tab-active) p,
.elementor-page-3628 .elementor-element-eb6da98:not(.eterna-tab-active) span,
.elementor-page-3628 .elementor-element-e581576:not(.eterna-tab-active) p,
.elementor-page-3628 .elementor-element-e581576:not(.eterna-tab-active) span {
    color: #8E7572 !important;
}

/* 탭 활성 상태 - 전체 배경색 변경 + 그림자 */
.elementor-page-3628 .eterna-tab-active {
    background: linear-gradient(135deg, #9E7470 0%, #B88985 100%) !important;
    border-color: #9E7470 !important;
    border-radius: 12px !important;
    padding: 10px 18px !important;
    box-shadow: 0 8px 28px rgba(158, 116, 112, 0.35) !important;
    opacity: 1 !important;
    color: #FFFFFF !important;
    transform: translateY(-3px) scale(1.02) !important;
    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* 활성 탭 텍스트 전부 흰색 */
.elementor-page-3628 .eterna-tab-active p,
.elementor-page-3628 .eterna-tab-active span,
.elementor-page-3628 .eterna-tab-active h2,
.elementor-page-3628 .eterna-tab-active h3,
.elementor-page-3628 .eterna-tab-active a,
.elementor-page-3628 .eterna-tab-active .elementor-heading-title {
    color: #FFFFFF !important;
}

/* 여성성형 레이저 - What's Special 섹션 레이아웃 (텍스트 가로폭 확장, 이미지 축소 및 여백 정렬) */
.elementor-page-3628 .elementor-element.elementor-element-721bf47 {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 0 !important;
}
.elementor-page-3628 .elementor-element.elementor-element-1e77ca3 {
    width: 52% !important;
    max-width: 52% !important;
    flex: 0 0 52% !important;
}
.elementor-page-3628 .elementor-element.elementor-element-6eb61fb {
    width: 44% !important;
    max-width: 44% !important;
    flex: 0 0 44% !important;
}

/* 유두축소 페이지 좌측 열 스티키 처리 */
.elementor-page-2009 .elementor-element.elementor-element-33aaf3e7 {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 150px !important;
    align-self: flex-start !important;
    z-index: 10 !important;
    animation: none !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.elementor-page-2009 .elementor-element.elementor-element-33aaf3e7 * {
    visibility: visible !important;
    opacity: 1 !important;
}

/* 부모 컨테이너가 높이를 제대로 전달하도록 설정 및 위 마진 제거 */
.elementor-page-2009 .elementor-element.elementor-element-794e6143 {
    align-self: stretch !important;
    position: relative !important;
    overflow: visible !important;
    margin-top: 0 !important;
}

/* 부인과 질환 진료순서 섹션 프리미엄 카드 디자인 */
.elementor-4373 .elementor-element-5517c746,
.elementor-4373 .elementor-element-7d3e7cc9,
.elementor-4373 .elementor-element-508cdf04,
.elementor-4373 .elementor-element-54b623d7 {
    background-color: #FCF9F8 !important;
    border: 1px solid #EADCDA !important;
    border-radius: 20px !important;
    padding: 30px 20px !important;
    box-shadow: 0 10px 30px rgba(158, 116, 112, 0.04) !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    height: auto !important;
}

.elementor-4373 .elementor-element-5517c746:hover,
.elementor-4373 .elementor-element-7d3e7cc9:hover,
.elementor-4373 .elementor-element-508cdf04:hover,
.elementor-4373 .elementor-element-54b623d7:hover {
    transform: translateY(-6px) !important;
    border-color: #9E7470 !important;
    box-shadow: 0 15px 40px rgba(158, 116, 112, 0.1) !important;
    background-color: #FFF !important;
}

/* 이미지 모서리 둥글게 처리 및 그림자 */
.elementor-4373 .elementor-element-5517c746 img,
.elementor-4373 .elementor-element-7d3e7cc9 img,
.elementor-4373 .elementor-element-508cdf04 img,
.elementor-4373 .elementor-element-54b623d7 img {
    border-radius: 12px !important;
    box-shadow: 0 6px 15px rgba(0,0,0,0.05) !important;
    margin-bottom: 20px !important;
    width: 100% !important;
    height: auto !important;
}

/* STEP 라벨 스타일링 */
.elementor-4373 .elementor-element-1c932100,
.elementor-4373 .elementor-element-2cf42392,
.elementor-4373 .elementor-element-28b8911e,
.elementor-4373 .elementor-element-54c8a67c {
    background-color: #9E7470 !important;
    border: none !important;
    border-radius: 30px !important;
    padding: 6px 20px !important;
    margin-bottom: 15px !important;
    width: auto !important;
    max-width: none !important;
    display: inline-block !important;
}
.elementor-4373 .elementor-element-1c932100 .elementor-heading-title,
.elementor-4373 .elementor-element-2cf42392 .elementor-heading-title,
.elementor-4373 .elementor-element-28b8911e .elementor-heading-title,
.elementor-4373 .elementor-element-54c8a67c .elementor-heading-title {
    color: #FFF !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
}

@media (min-width: 1025px) {
    .elementor-4373 .elementor-element-5acdb226 {
        gap: 0px 24px !important;
    }
}

/* =====================================================
   차별점 좌측 컬럼 CSS sticky (부모 내 제한)
   폐경기 센터 + 부인과 질환 공통
   ===================================================== */

/* 폐경기: 좌측 타이틀 블록 sticky */
.elementor-3765 .elementor-element.elementor-element-51d49995 {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 120px !important;
    align-self: flex-start !important;
    z-index: 10 !important;
}

/* 부인과: 13866c13 - 부모(613d0797) 높이에 채우고 overflow만 허용 (텍스트 가로 폭 보존) */
.elementor-element.elementor-element-13866c13 {
    align-self: stretch !important;
    --align-self: stretch !important;
    overflow: visible !important;
}

/* 좌측 컬럼: stretch로 우측과 동일 높이 + overflow visible */
.elementor-element.elementor-element-613d0797 {
    align-self: stretch !important;
    overflow: visible !important;
}

/* 6e7489e6의 .e-con-inner도 overflow visible */
.elementor-element.elementor-element-6e7489e6,
.elementor-element.elementor-element-6e7489e6 > .e-con-inner {
    overflow: visible !important;
}

/* 부인과: 이미지 카드 위 흰 공간 제거 */
.elementor-element.elementor-element-2391a6d7 {
    margin-top: 0 !important;
}

/* 부인과: 서브타이틀과 카드 사이 간격 */
.elementor-element.elementor-element-4c72cb2d {
    margin-bottom: 32px !important;
}

/* =====================================================
   폐경기 센터 - 추천 대상 섹션 (부인과 질환 스타일)
   ===================================================== */

/* 그리드 컨테이너: 3열 균등 배분, 전체 너비 */
.elementor-3765 .elementor-element-10e6ff3 {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    counter-reset: card-counter !important;
}

/* e-grid 내부 래퍼도 전체 너비 */
.elementor-3765 .elementor-element-10e6ff3 > .e-con-inner {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    width: 100% !important;
    counter-reset: card-counter !important;
}

/* 각 카드: 부인과 질환 스타일 (정확히 동일) */
.elementor-3765 .elementor-element-652b11e,
.elementor-3765 .elementor-element-921bef6,
.elementor-3765 .elementor-element-b3dcec8,
.elementor-3765 .elementor-element-a2561b0,
.elementor-3765 .elementor-element-9c5acff,
.elementor-3765 .elementor-element-af71057 {
    background: #FFFAF9 !important;
    border: 1px solid #E5CFCC !important;
    border-radius: 20px !important;
    padding: 48px 40px !important;
    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
    box-shadow: none !important;
    width: 100% !important;
    max-width: 100% !important;
    --width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    counter-increment: card-counter !important;
    position: relative !important;
}

/* 호버 효과 */
.elementor-3765 .elementor-element-652b11e:hover,
.elementor-3765 .elementor-element-921bef6:hover,
.elementor-3765 .elementor-element-b3dcec8:hover,
.elementor-3765 .elementor-element-a2561b0:hover,
.elementor-3765 .elementor-element-9c5acff:hover,
.elementor-3765 .elementor-element-af71057:hover {
    transform: translateY(-4px) !important;
    border-color: #C9A09B !important;
    box-shadow: 0 12px 30px rgba(158, 116, 112, 0.08) !important;
    background: #FFF !important;
}

/* 아이콘 박스 래퍼: 세로 정렬 */
.elementor-3765 .elementor-element-10e6ff3 .elementor-icon-box-wrapper {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0 !important;
}

/* 체크마크 아이콘 숨기기 → 번호로 대체 */
.elementor-3765 .elementor-element-10e6ff3 .elementor-icon-box-icon {
    display: none !important;
}

/* 번호 표시: CSS counter로 01, 02, ... */
.elementor-3765 .elementor-element-10e6ff3 .elementor-icon-box-content::before {
    content: "0" counter(card-counter) !important;
    display: block !important;
    font-family: 'Libre Caslon Text', serif !important;
    font-size: 2.6rem !important;
    font-weight: 400 !important;
    color: #EDD9D6 !important;
    margin-bottom: 24px !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
}

/* 타이틀: 부인과 동일 스타일 */
.elementor-3765 .elementor-element-10e6ff3 .elementor-icon-box-title {
    font-family: 'Noto Serif KR', sans-serif !important;
    font-size: 1.6rem !important;
    font-weight: 600 !important;
    color: #3A2724 !important;
    margin-bottom: 0 !important;
    padding-bottom: 20px !important;
    line-height: 1.4 !important;
    letter-spacing: -1.2px !important;
    position: relative !important;
}

/* 제목 아래 구분선 */
.elementor-3765 .elementor-element-10e6ff3 .elementor-icon-box-title::after {
    content: '' !important;
    display: block !important;
    width: 36px !important;
    height: 1px !important;
    background: #9E7470 !important;
    margin-top: 18px !important;
}

/* 설명 텍스트: 부인과 동일 */
.elementor-3765 .elementor-element-10e6ff3 .elementor-icon-box-description {
    font-family: 'Noto Sans KR', sans-serif !important;
    font-size: 1.1rem !important;
    color: #9E7470 !important;
    line-height: 1.8em !important;
    font-weight: 400 !important;
    letter-spacing: -1.2px !important;
    opacity: 1 !important;
    margin-top: 18px !important;
}

/* 태블릿: 2열 */
@media (max-width: 1024px) {
    .elementor-3765 .elementor-element-10e6ff3,
    .elementor-3765 .elementor-element-10e6ff3 > .e-con-inner {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
    }
}

/* 모바일: 1열 */
@media (max-width: 767px) {
    .elementor-3765 .elementor-element-10e6ff3,
    .elementor-3765 .elementor-element-10e6ff3 > .e-con-inner {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
    .elementor-3765 .elementor-element-652b11e,
    .elementor-3765 .elementor-element-921bef6,
    .elementor-3765 .elementor-element-b3dcec8,
    .elementor-3765 .elementor-element-a2561b0,
    .elementor-3765 .elementor-element-9c5acff,
    .elementor-3765 .elementor-element-af71057 {
        padding: 28px 22px !important;
    }
}




/* 줄기세포 주사 페이지 - About 섹션 및 스티키 간격 미세 조정 */
.elementor-page-4206 .elementor-element.elementor-element-5f33321b {
    padding-top: 0 !important;
}

.elementor-page-4206 .elementor-element.elementor-element-721bf47 {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 0 !important;
}

.elementor-page-4206 .elementor-element.elementor-element-1e77ca3 {
    width: 52% !important;
    max-width: 52% !important;
    flex: 0 0 52% !important;
}

.elementor-page-4206 .elementor-element.elementor-element-6eb61fb {
    width: 44% !important;
    max-width: 44% !important;
    flex: 0 0 44% !important;
}

/* 스티키 헤더 간격 축소 */
.elementor-element.elementor-element-2dd32b8 {
    flex-basis: auto !important;
    height: auto !important;
}

/* 회음체 성형 페이지 수술정보 카드 중앙 정렬 */
.elementor-page-4114 .elementor-element.elementor-element-1123f59a,
.elementor-page-5678 .elementor-element.elementor-element-1123f59a {
    justify-content: center !important;
}

@media (min-width: 1025px) {
    .elementor-page-4114 .elementor-element.elementor-element-1123f59a,
    .elementor-page-5678 .elementor-element.elementor-element-1123f59a {
        grid-template-columns: repeat(4, 233.859px) !important;
    }
}

/* 회음체 성형 페이지 데스크톱 레이아웃 컬럼 비율 복원 */
@media (min-width: 1025px) {
    .elementor-page-4114 .elementor-element.elementor-element-13866c13,
    .elementor-page-5678 .elementor-element.elementor-element-13866c13 {
        width: 30% !important;
        max-width: 30% !important;
        flex: 0 0 30% !important;
    }
    .elementor-page-4114 .elementor-element.elementor-element-3c9a63ed,
    .elementor-page-5678 .elementor-element.elementor-element-3c9a63ed {
        width: 67% !important;
        max-width: 67% !important;
        flex: 0 0 67% !important;
    }
}

