/* ========================================
   ALTERNATIVE PAGE SPECIFIC STYLES
   Note: Shared components (.new_stepsbox, .stats-container, etc.) 
   are in styles.css as they're used across multiple pages
   ======================================== */

/* Start Button Section */
.start_btn {
    background: #fff;
    padding: 20px 0
}

.start_btn button {
    background: radial-gradient(77.21% 1908.79% at 49.5% 50%, #FCE10D 48.9%, #FBB62C 69.15%);
    border: 2px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0px 4px 28px #A4ABF6;
    border-radius: 8px;
    padding: 5px 55px;
    color: #000;
    margin-bottom: 30px;
    font-weight: 600;
}

/* Hero Section */
.hero-content {
    width: 50%;
    margin: auto;
}

.short_content {
    width: 70%;
    margin: auto;
}

.hero-content h1 span {
    color: #0000fe;
}

.hero {
    padding: 50px 0px;
    background: linear-gradient(180deg, #ECF3FF 0%, #FFFFFF 100%);
}

.hero button {
    background: radial-gradient(77.21% 1908.79% at 49.5% 50%, #FCE10D 48.9%, #FBB62C 69.15%);
    border: 2px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0px 4px 28px #A4ABF6;
    border-radius: 8px;
    padding: 5px 70px;
    color: #000;
    margin-bottom: 30px;
    font-weight: 600;
}

.brand_logo {
    padding-bottom: 20px;
}

.brand_logo img {
    width: 80%;
}

/* Table Container */
.new-table-container {
    width: 100%;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
}

/* Table wrapper for horizontal scroll */
.table-scroll-wrapper {
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    position: relative;
    scroll-behavior: smooth;
}

/* Custom scrollbar styling */
.table-scroll-wrapper::-webkit-scrollbar {
    height: 8px;
}

.table-scroll-wrapper::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.table-scroll-wrapper::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 4px;
}

.table-scroll-wrapper::-webkit-scrollbar-thumb:hover {
    background: #555;
}

/* Swipe hint indicator */
.swipe-hint {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 254, 0.9);
    color: #fff;
    padding: 12px 20px;
    border-radius: 8px 0 0 8px;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    z-index: 10;
    pointer-events: none;
    box-shadow: -2px 2px 10px rgba(0, 0, 0, 0.2);
    animation: swipeHintPulse 2s ease-in-out infinite;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.swipe-hint.hidden {
    opacity: 0;
    visibility: hidden;
}

.swipe-hint-icon {
    font-size: 18px;
    animation: swipeArrow 1.5s ease-in-out infinite;
}

/* Swipe hint animations */
@keyframes swipeHintPulse {

    0%,
    100% {
        transform: translateY(-50%) translateX(0);
    }

    50% {
        transform: translateY(-50%) translateX(-10px);
    }
}

@keyframes swipeArrow {

    0%,
    100% {
        transform: translateX(0);
    }

    50% {
        transform: translateX(5px);
    }
}

/* Hide swipe hint on desktop by default */
@media (min-width: 992px) {
    .swipe-hint {
        display: none;
    }
}

.new-table-container table {
    margin: auto;
    border-collapse: separate;
    border-spacing: 0;
    width: 60%;
    table-layout: fixed;
}

.new-table-container th,
td {
    border-bottom: 10px solid #fff;
    padding: 12px;
    border-right: 4px solid #fff;
    border-left: 4px solid #fff;
}

/* Table row striping */
table tr:nth-child(odd) {
    background-color: #ecf3ff;
}

table tr:nth-child(even) {
    background-color: #fff;
}

.one_bot {
    background-color: #ecf3ff;
}

.new-table-container th {
    background-color: #fff;
    font-size: 20px;
}

.new-table-container th:first-child {
    width: 26%;
    min-width: 110px;
    text-align: center;
}

.new-table-container th:nth-child(2) {
    width: 37%;
    text-align: center;
}

.new-table-container th:nth-child(3) {
    width: 37%; 
    text-align: center;
}

/* Media Mister column - outer border only, no internal lines between th/tds */
.new-table-container th:nth-child(2) {
    border: 4px solid #3740ff;
    border-bottom: none;
    border-radius: 8px 8px 0 0;
}

.new-table-container td:nth-child(2) {
    border-left: 4px solid #3740ff;
    border-right: 4px solid #3740ff;
    border-bottom: none;
}
/* No line below Media Mister logo - first data cell has no top border */
.new-table-container tbody tr:first-child td:nth-child(2) {
    border-top: none;
}

.new-table-container tbody tr:last-child td:nth-child(2) {
    border-bottom: 4px solid #3740ff;
    border-radius: 0 0 8px 8px;
}

/* Media Mister column - all content bold */
.new-table-container th:nth-child(2),
.new-table-container td:nth-child(2),
.new-table-container td:nth-child(2) span {
    font-weight: bold;
}

/* No double line between Media Mister column and competitor column */
.new-table-container th:nth-child(3),
.new-table-container td:nth-child(3) {
    border-left: none;
}

.new-table-container td {
    font-size: 13px;
}

.new-table-container .highlight {
    font-weight: bold;
    color: #333;
    text-align: center;
    padding-left: 20px;
}

.highlight_td {
    font-weight: bold;
    color: #333;
    text-align: center;
}

/* Feature Table */
.feature_table {
    background-color: #fff;
    padding-bottom: 50px;
}

.feature_table h2 {
    padding-bottom: 30px;
}

.hero h1 {
    padding-bottom: 30px;
}

.short_para h2 {
    padding-bottom: 30px !important;
}

.choose_div h2 {
    padding-bottom: 30px;
}

.table_logo img {
    width: 90%;
    max-width: 180px;
    min-width: 80px;
    height: auto;
    object-fit: contain;
}

/* Set minimum width for logo columns (widths overridden above: 40%, 40%) */
.new-table-container th.table_logo,
.new-table-container td.table_logo {
    min-width: 120px;
}

.short_para {
    background-color: #fff;
    padding: 0px 0px 50px 0px;
}

.check img,
.cross img {
    height: 25px;
}

.check {
    text-align: center;
    display: table-cell;
    vertical-align: middle;
}

.cross {
    text-align: center;
    display: table-cell;
    vertical-align: middle;
}

/* Icon + Text combination styles */
.check span,
.cross span {
    display: inline-block;
    margin-left: 8px;
    font-weight: 600;
    color: #333;
    vertical-align: middle;
}

.check img,
.cross img {
    vertical-align: middle;
}

.table_logo {
    text-align: center;
}

/* ========================================
   RESPONSIVE DESIGN - ALTERNATIVE PAGES
   Note: .new_stepsbox, .stats-container responsive styles are in styles.css
   ======================================== */

/* Tablet & Smaller Laptops (768px to 991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .hero-content {
        width: 70%;
        margin: auto;
    }

    .short_content {
        width: 80%;
        margin: auto;
    }

    .new-table-container th,
    td {
        padding: 8px;
        font-size: 16px;
    }

    .table_logo img {
        width: 85%;
        min-width: 70px;
        max-width: 140px;
    }

    .new-table-container th.table_logo,
    .new-table-container td.table_logo {
        min-width: 110px;
    }

    .feature_table h2 {
        padding-bottom: 20px;
    }

    .hero h1 {
        padding-bottom: 20px;
    }

    .short_para h2 {
        padding-bottom: 20px !important;
    }

    .choose_div h2 {
        padding-bottom: 20px;
    }

    /* Enable horizontal scroll on tablet */
    .table-scroll-wrapper {
        overflow-x: auto;
    }

    .new-table-container table {
        min-width: 600px;
    }

    .swipe-hint {
        display: flex;
        font-size: 13px;
        padding: 10px 16px;
    }

    .check span,
    .cross span {
        margin-left: 7px;
        font-size: 14px;
    }
}

/* Tablet Portrait (768px and below) */
@media (max-width: 768px) {
    .hero-content {
        width: 75%;
        margin: auto;
    }

    .short_content {
        width: 85%;
        margin: auto;
    }

    /* Enable horizontal scroll */
    .table-scroll-wrapper {
        overflow-x: auto;
    }

    .new-table-container table {
        min-width: 600px;
    }

    .swipe-hint {
        display: flex;
        font-size: 13px;
        padding: 10px 16px;
    }

    .check span,
    .cross span {
        margin-left: 7px;
        font-size: 13px;
    }
}

/* Small Tablets & Large Phones Landscape (640px) */
@media (max-width: 640px) {
    .new-table-container table {
        min-width: 550px;
    }

    .new-table-container th,
    td {
        padding: 7px;
        font-size: 11px;
    }

    .new-table-container .highlight {
        font-size: 12px;
        padding-left: 12px;
    }

    .table_logo img {
        width: 90%;
        min-width: 80px;
        max-width: 130px;
    }

    .new-table-container th.table_logo,
    .new-table-container td.table_logo {
        min-width: 110px;
    }

    .feature_table h2 {
        font-size: 20px;
    }

    .swipe-hint {
        font-size: 12px;
        padding: 9px 14px;
    }

    .swipe-hint-icon {
        font-size: 16px;
    }

    .check span,
    .cross span {
        margin-left: 6px;
        font-size: 11px;
    }
}

/* Landscape Phones & Small Tablets (576px) */
@media (max-width: 576px) {
    .brand_logo img {
        width: 100%;
    }

    .hero-content {
        width: 100%;
        margin: auto;
    }

    .short_content {
        width: 100%;
        margin: auto;
    }

    .hero {
        padding: 20px 0px;
    }

    .feature_table {
        padding-bottom: 20px;
    }

    .short_para {
        padding: 20px;
    }

    .start_btn {
        padding: 20px;
    }

    .feature_table h2 {
        padding-bottom: 10px;
    }

    .hero h1 {
        padding-bottom: 10px;
        font-size: x-large;
    }

    .short_para h2 {
        padding-bottom: 10px !important;
    }

    .choose_div h2 {
        padding-bottom: 10px;
        font-size: 24px;
    }

    .new_stepsbox h2 {
        font-size: 24px;
    }

    .new-table-container table {
        min-width: 500px;
    }

    .new-table-container td {
        font-size: 12px;
    }

    .new-table-container .highlight {
        font-size: 13px;
        padding-left: 15px;
    }

    .table_logo img {
        width: 85%;
        min-width: 75px;
        max-width: 115px;
    }

    .new-table-container th.table_logo,
    .new-table-container td.table_logo {
        min-width: 100px;
    }

    .new-table-container th,
    td {
        padding: 6px;
        font-size: 10.5px;
    }

    .new-table-container .highlight {
        font-size: 11.5px;
        padding-left: 12px;
        white-space: normal;
    }

    .feature_table h2 {
        font-size: 19px;
        padding-bottom: 18px;
    }

    .check img,
    .cross img {
        height: 22px;
    }

    .check span,
    .cross span {
        margin-left: 6px;
        font-size: 12px;
    }

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

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

    .swipe-hint {
        font-size: 11px;
        padding: 8px 12px;
        border-radius: 6px 0 0 6px;
    }

    .swipe-hint-icon {
        font-size: 14px;
    }
}

/* Small Phones Portrait (480px) */
@media (max-width: 480px) {
    .new-table-container table {
        min-width: 450px;
    }

    .new-table-container th,
    td {
        padding: 6px;
    }

    .new-table-container .highlight {
        white-space: normal;
        font-size: 11px;
        padding-left: 10px;
    }

    .check img,
    .cross img {
        height: 20px;
    }

    .check span,
    .cross span {
        margin-left: 5px;
        font-size: 11px;
    }

    .table_logo img {
        width: 80%;
        min-width: 70px;
        max-width: 100px;
    }

    .new-table-container th.table_logo,
    .new-table-container td.table_logo {
        min-width: 90px;
    }

    .feature_table h2 {
        font-size: 18px;
        padding-bottom: 15px;
    }

    .swipe-hint {
        font-size: 10px;
        padding: 7px 10px;
    }

    .swipe-hint-icon {
        font-size: 13px;
    }
}

/* Mobile Portrait (up to 375px) - Very Small Phones */
@media (max-width: 375px) {
    .new-table-container table {
        min-width: 420px;
    }

    .swipe-hint {
        font-size: 9px;
        padding: 6px 8px;
    }

    .check span,
    .cross span {
        margin-left: 4px;
        font-size: 10px;
    }
}