#yesim-country-popup {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    z-index: 9999;
}

.yesim-popup-inner {
    background: #fff;
    width: 90%;
    max-width: 500px;
    margin: 10% auto;
    padding: 20px;
    border-radius: 8px;
    position: relative;
}

.yesim-popup-inner ul {
    columns: 2;
    padding-left: 18px;
}

.yesim-close {
    position: absolute;
    right: 12px;
    top: 8px;
    font-size: 22px;
    cursor: pointer;
}

.yesim-view-countries a {
    color: #0073aa;
    cursor: pointer;
    font-weight: 600;
}

button#view-country-btn {
    margin-bottom: 20px;
    padding: 10px 20px;
}
/* Product page button style */
.hero-btn {
    padding: 14px 28px;
    font-size: 16px;
    font-weight: 600;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.25s ease;
    border: 2px solid transparent;
    letter-spacing: 0.3px;
}

/* Primary button */
.hero-btn.primary {
     background: transparent;
    color: #ffffff;
    border: 2px solid rgba(255, 255, 255, 0.8);
}

.hero-btn.primary:hover {
   background: rgba(255, 255, 255, 0.15);
    transform: translateY(-2px);
}

/* Outline button */
.hero-btn.outline {
    background: transparent;
    color: #ffffff;
    border: 2px solid rgba(255, 255, 255, 0.8);
}

.hero-btn.outline:hover {
    background: rgba(255, 255, 255, 0.15);
    transform: translateY(-2px);
}

/* Spacing between buttons */
.hero-btn + .hero-btn {
    margin-left: 14px;
}



/* ===== eSIM Popup ===== */
/* Overlay */
#esim-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.55);
    z-index: 9998;
    overflow: auto;
}

/* Popup */
.esim-destinations-popup {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 860px;
    max-width: 95%;
    max-height: 90vh; /* Limit height relative to viewport */
    overflow-y: auto; /* Make content scrollable */
    background: #ffffff;
    border-radius: 20px;
    padding: 28px;
    z-index: 9999;
    box-shadow: 0 20px 60px rgba(0,0,0,0.25);
    box-sizing: border-box;
}

/* Close */
.esim-close {
    position: absolute;
    top: 16px;
    right: 20px;
    font-size: 28px;
    cursor: pointer;
    z-index: 10000;
}

/* Header */
.esim-popup-header h2 {
    font-size: 24px;
    margin-bottom: 12px;
}

/* Tabs */
.esim-tabs {
    display: flex;
    gap: 10px;
    margin-bottom: 18px;
}

.esim-tab {
    padding: 8px 18px;
    border-radius: 999px;
    border: 1px solid #ddd;
    background: #fff;
    cursor: pointer;
    font-size: 14px;
}

.esim-tab.active {
    background: #0e2041;
    color: #fff;
    border-color: #000;
}

/* Promo */
.esim-promo {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #f5f5f5;
    padding: 14px 16px;
    border-radius: 12px;
    font-size: 14px;
    margin-bottom: 22px;
}

/* Card */
.esim-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px;
    background: #f9f9f9;
    border-radius: 14px;
    text-decoration: none;
    color: #000;
    transition: all 0.2s ease;
}

.esim-card:hover {
    background: #f0f0f0;
    transform: translateY(-2px);
}

/* Flag placeholder */
.esim-flag-placeholder {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #ddd;
/*     flex-shrink: 0; */
	background-size: cover;
    background-position: center;
}
}

/* Text */
.esim-card-text strong {
    font-size: 15px;
    font-weight: 600;
}

#esim-search {
    width: 100%;
    padding: 12px 14px;
    margin: 12px 0 16px;
    border-radius: 10px;
    border: 1px solid #ddd;
    font-size: 14px;
}

/* Arrow */
.esim-arrow {
    margin-left: auto;
    font-size: 20px;
    opacity: 0.6;
}

/* Tabs content */
.esim-tab-content {
    display: none;
}

.esim-tab-content.active {
    display: block;
}

/* Make grid scrollable if too long */
.esim-grid {
    display: grid;
    gap: 12px;
    max-height: 60vh;
    overflow-y: auto;
    padding-right: 8px; /* Space for scrollbar */
}

.esim-simple-list {
    max-height: 60vh;
    overflow-y: auto;
    padding-right: 8px;
}
.esim-details-container {
    margin: 30px auto;
    font-family: 'Arial', sans-serif;
    color: #333;
}

.esim-details-title {
    text-align: center;
    font-size: 28px;
    margin-bottom: 30px;
    color: #0073aa;
}

.esim-card1 {
    display: flex;
    flex-direction: column;
    
    background: #f9f9f9;
    padding: 20px;
    margin-bottom: 25px;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    transition: transform 0.2s ease;
}

.esim-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 18px rgba(0,0,0,0.1);
}

.esim-number {
    font-size: 20px;
    color: #222;
    margin-bottom: 15px;
}

.esim-link a {
    color: #0073aa;
    word-break: break-all;
    text-decoration: none;
}

.esim-link a:hover {
    text-decoration: underline;
}

.esim-qr img {
    width: 200px;
    height: 200px;
    object-fit: contain;
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-top: 10px;
}
button#view-device-btn {
    padding: 10px 10px;
}
/* === FORCE TRUE VIEWPORT CENTERING === */
#country-popup,
#device-popup {
    position: fixed !important;
    top: 50vh !important;
    left: 50vw !important;
    transform: translate(-50%, -50%) !important;
    margin: 60px 0px !important;
  
}

/* === BREAK THE THEME TRANSFORM TRAP === */
html, body {
    transform: none !important;
}

/* If theme wraps content (very common) */
.site,
#page,
.wrapper,
.main-wrapper {
    transform: none !important;
}
body {
    overflow-x: hidden;
}

/* ===== SEARCH BAR WRAPPER ===== */
.esim-search-wrapper {
    display: flex;
    align-items: center;
    max-width: 485px;      /* BIG width */
    width: 100%;
    margin: 30px auto;
    position: relative;
}

/* ===== INPUT ===== */
.esim-trigger-input {
    width: 100%;
    height: 64px;          /* Taller input */
    padding: 0 70px 0 20px;
    font-size: 18px;
    border: 2px solid #1d4795;
    border-radius: 12px;
    outline: none;
    background: #fff;
    cursor: pointer;
}

/* Placeholder style */
.esim-trigger-input::placeholder {
    color: #777;
    font-size: 16px;
}

/* ===== SEARCH BUTTON ===== */
.esim-trigger-btn {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    width: 52px;
    height: 52px;
    border-radius: 10px;
    border: none;
    background: #1d4795;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

/* ===== ICON ===== */
.esim-trigger-btn svg {
    width: 20px;
    height: 20px;
    fill: #fff;
}

/* Hover effect */
.esim-trigger-btn:hover {
    background: #1d4795;
}

/* theme section css */
.flag img {
   
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    object-fit: cover;
}
.e-sim-provider-destinations-card .content {
    display: flex;
    align-items: center;
    gap: 20px; /* space between image & text */
}
.e-sim-provider-destinations-card .flag {
    flex: 0 0 90px; /* fixed width */
    display: flex;
    justify-content: center;
}
.e-sim-provider-destinations-card .flag img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
}
.e-sim-provider-destinations-card .info {
    flex: 1; /* take remaining space */
}
.e-sim-provider-destinations-card .content .info h5 b {

    color: #ededed !important;
}
.e-sim-provider-destinations-card .content .info h5 b {

    color: #dfdbdb !important;
}

.ptb-120 {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
}
.e-sim-provider-destinations-card {
    background-color: #3882c0 !important;
}
.e-sim-provider-destinations-area {
    background-color: #224b9b !important;
}
.e-sim-provider-destinations-area .section-title .top-title {
    color: #f8bc15 !important;
}

	color:#f6cc50 !important;
}

e-sim-provider-choose-content .btn {
    background-color: #ff6d6e;
}
.ott-made-area.pt-100.pb-75 {
    background-color: #224b9b !important;
}
.footer-single-widget ul li a {
	color: #e6dede !important;}

.elementor-2059 .elementor-element.elementor-element-c101c33{
	padding-bottom:100px !important
}
.page-banner-content.text-start {
    padding-top: 48px !important;
    padding-bottom: 50px !important;
	padding-left: 50px !important;
}
.page-banner-content.text-start h1 {
    color: white;
}

.single-product span.woocommerce-Price-amount.amount {
    color: white !important;
}

.ott-made-card {
    background-color: #ffffff !important;
    border-radius: 16px;
    padding: 28px 24px;
    box-shadow: 
        0 10px 30px rgba(0, 0, 0, 0.12),
        0 4px 12px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    position: relative;
}
.ott-made-card .content h3 {
	    color: #938a8b !important;
}

.ott-made-card .content p {
	color: #978585 !important;}


/* Hover effect */
.ott-made-card:hover {
    transform: translateY(-6px);
    box-shadow: 
        0 18px 45px rgba(0, 0, 0, 0.18),
        0 8px 20px rgba(0, 0, 0, 0.12);
}

.mo-choose-card {
	background: #224b9b !important;}
.mo-choose-card .content h3{
	color:white !important;
}
.mo-choose-card .content p{
	color:white !important;
}
.products-single-item .product-img img {

    border-radius: 10px;
    width: 100%;
    height: 200px !important;
    object-fit: cover;
}
.align-items-center {
    align-items: normal !important;
}

.page-banner-area::before {
    background-color: #224b9b !important;
 
}
table td a, table th a {
    color: #224b9b !important;
}

.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt {
    background-color: #f7b500  !important;
    color: #224b9b;
}
button.single_add_to_cart_button.button.alt.disabled.wc-variation-selection-needed {
    background-color: #3882c0;
    color: black;
}
	a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover {
    background-color: #fbb518 !i;
    color: black;
}
.contact-info-single-item {
	background-color: #224b9b !important;}
.contact-info-single-item h3 {
	color: white !important;}
.contact-info-single-item p{
	color: white !important;}
.contact-info-single-item p a {
    color: white !important;

}

.single_variation_wrap .woocommerce-variation-price span.woocommerce-Price-amount.amount {
    color: #3882c0 !important;
}
.woocommerce-tabs .panel table.shop_attributes td p {
    font-family: sans-serif;
   
}
@media (min-width: 992px) {
    .shop-area.main-product-area .col-lg-6 {
        flex: 0 0 auto;
        width: 33.33%;
    }
}
.norflo-seo-breadcrumbs,
.norflo-seo-breadcrumbs span,
.norflo-seo-breadcrumbs a {
    color: #ffffff !important;
}
