/* ----- Cardo Regular (400) ----- */
@font-face {
    font-family: 'Cardo';
    src: url('fonts/Cardo-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* ----- Cardo Bold (700) ----- */
@font-face {
    font-family: 'Cardo';
    src: url('fonts/Cardo-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* ----- Inter Regular (400) ----- */
@font-face {
    font-family: 'Inter';
    src: url('fonts/Inter-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}




/* Typography */
h1, h2, h3 {
    font-family: 'Cardo', serif;
}

p, li {
    font-family: 'Inter', sans-serif;
}

/* Layout */
body {
    margin: 0;
    padding: 0;
    background: #ffffff;
    line-height: 1.6;
}

section {
    padding: 48px 16px;
    text-align: center;
}

/* Hero Section */
.hero-section {
    background: #f4f8fa;
    padding: 80px 16px;
}

.hero-section h1 {
    font-size: 2.5rem;
    margin-bottom: 16px;
}

.hero-section .subhead {
    font-size: 1.2rem;
    max-width: 600px;
    margin: 0 auto;
}

/* About Section */
.about-yuls {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

/* Package Section */
.package-section ul {
    list-style: none;
    padding: 0;
    margin: 24px 0;
}

.package-section li {
    margin-bottom: 8px;
    font-size: 1rem;
}

.cta-button {
    display: inline-block;
    background: #0f4761;
    color: #ffffff;
    padding: 12px 24px;
    border-radius: 6px;
    text-decoration: none;
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    margin-top: 16px;
}

/* Emotional Hook */
.emotional-hook p {
    max-width: 700px;
    margin: 0 auto;
}

/* Footer CTA */
.footer-cta {
    background: #f4f8fa;
}

/* Mobile-Optimized Comparison Table */
@media (max-width: 700px) {
    table.comparison-table,
    table.comparison-table thead,
    table.comparison-table tbody,
    table.comparison-table th,
    table.comparison-table td,
    table.comparison-table tr {
        display: block;
        width: 100%;
    }

    table.comparison-table thead {
        display: none; /* hide header on mobile */
    }

    table.comparison-table tr {
        margin-bottom: 24px;
        border: 1px solid #d8d8d8;
        border-radius: 6px;
        padding: 12px;
        background: #f9fbfc;
    }

    table.comparison-table td {
        border: none;
        padding: 8px 0;
        position: relative;
        text-align: left;
    }

    table.comparison-table td::before {
        content: attr(data-label);
        font-weight: 600;
        font-family: 'Cardo', serif;
        color: #0f4761;
        display: block;
        margin-bottom: 4px;
    }
}

table.comparison-table td,
table.comparison-table th {
    text-align: left;
}

@media (max-width: 700px) {
    table.comparison-table {
        display: block !important;
    }
}

