/* ==============================================================================
Theme Name: Phlox Pro Child
Theme URI: http://phlox.pro/go/
Author: averta
Author URI: http://www.phlox.pro
Description: Phlox Pro Child Theme
Template: phlox-pro
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column,two-columns, three-columns, left-sidebar, right-sidebar
Text Domain: phlox-pro-child
================================================================================= */

    /* 1. THE OVERLAY (Restricted to the Content Area) */
    #tt-content-lock {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        
        /* The "Fog" - White with high opacity so content is barely visible */
        background-color: rgba(255, 255, 255, 0.92); 
        backdrop-filter: blur(4px);
        
        z-index: 9999; /* High, but usually below the Sticky Header */
        display: flex;
        justify-content: center;
        align-items: flex-start; /* Aligns message to top area */
    }

    /* 2. THE MESSAGE BOX */
    .tt-lock-message {
        /* Sticky positioning keeps the message visible even if user scrolls down */
        position: sticky;
        top: 30vh; /* 30% down from the screen top */
        
        text-align: center;
        padding: 40px;
        max-width: 90%;
        
        /* Optional: Add a border/card look if you want it to pop more */
        /* border: 1px solid #eee; background: white; box-shadow: 0 10px 30px rgba(0,0,0,0.1); border-radius: 12px; */
    }

    .tt-lock-message .tt-icon {
        font-size: 60px;
        margin-bottom: 20px;
        line-height: 1;
    }

    .tt-lock-message h1 {
        font-family: 'Roboto', sans-serif;
        color: #333;
        font-size: clamp(32px, 6vw, 60px);
        font-weight: 900;
        text-transform: uppercase;
        margin: 0;
        line-height: 1.1;
        letter-spacing: -1px;
    }

    .tt-lock-message h2 {
        font-family: 'Roboto', sans-serif;
        color: #d90429; /* Red accent for "Match Ended" */
        font-size: clamp(16px, 3vw, 24px);
        font-weight: 500;
        margin: 10px 0 30px 0;
        text-transform: uppercase;
        letter-spacing: 2px;
    }

    /* 3. THE BUTTON */
    .tt-redirect-btn {
        display: inline-block;
        background: #00529F; /* Real Madrid Blue */
        color: white !important;
        text-decoration: none !important;
        padding: 15px 40px;
        font-size: 16px;
        font-weight: bold;
        border-radius: 50px;
        transition: all 0.2s;
        box-shadow: 0 10px 20px rgba(0, 82, 159, 0.2);
        border: 2px solid #00529F;
    }

    .tt-redirect-btn:hover {
        background: white;
        color: #00529F !important;
        transform: translateY(-3px);
    }
 
/* 1. General Styles */
/* --- AUTOMATIC 'MATCH FINISHED' BADGE --- */

/* 1. Base Design (The "Button" Look) */
.woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link::before {
    content: "FINALIZADO"; /* Default Text (Spanish) */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* Centers the button perfectly */
    z-index: 10;
    
    /* Button Styling */
    background-color: rgba(255, 255, 255, 0.95);
    color: #ff0000;
    border: 2px solid #ff0000;
    padding: 15px 30px;
    font-size: 20px;
    font-weight: 800;
    text-transform: uppercase;
    text-align: center;
    border-radius: 5px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    width: auto; /* Adapts to text size */
    min-width: 200px;
}

/* 2. Visual Overlay Effect (Optional - darkens the image behind the button) */
.woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link img {
    opacity: 0.6;
    filter: grayscale(80%); /* Makes the image black & white to emphasize it's over */
}

/* 3. Automatic Translations using HTML Language Tags */

/* English */
:lang(en-GB) .woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link::before,
:lang(en-US) .woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link::before {
    content: "FINISHED";
}

/* Russian */
:lang(ru-RU) .woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link::before {
    content: "ЗАВЕРШЕН";
}

/* Portuguese */
:lang(pt-AO) .woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link::before,
:lang(pt-PT) .woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link::before,
:lang(pt-BR) .woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link::before {
    content: "CONCLUÍDO";
}



.product-subtitle {
    margin-top: 3px !important;
    width: 100% !important;
    text-align: center !important;
    display: table;
}

.aux-fold, .aux-fold-padding, .aux-boxed-container > .aux-container {
    padding-right: 15px;
    padding-left: 15px;
}

.woocommerce .woocommerce-result-count {
    display: none;
}

.contenedor-migas-pan {
    width: 100%;
    padding: 0;
    margin: 0;
}

.rank-math-breadcrumb {
    color: black !important;
    text-transform: uppercase;
    font-size: 10px !important;
    width: 100%;
    margin: 0 auto;
}

/* 2. Offers & Menus */
.aux-master-menu.aux-horizontal.aux-skin-classic .aux-menu-depth-0 > .aux-submenu {
    z-index: 999999;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: #ffffff;
    background: #51a3d3 !important;
    border-radius: 0 13px 0 13px;
}

svg:not(:root) {
    display: none;
    overflow: hidden;
}

table tr th, table tr td {
    border: none;
}

.aux-master-menu.aux-vertical.aux-skin-classic .aux-menu-depth-0 > .aux-submenu, 
.aux-master-menu.aux-horizontal.aux-skin-classic .aux-menu-depth-0 > .aux-submenu {
    background-color: #ffffff;
}


.entry-content h2, .comment-body h2 {
    font-size: 20px;
    line-height: 22px;
    color: #1972f5;
}

h3 {
    font-size: 23px;
    line-height: 23px;
}

.pagoss {
    background: #1972F5;
    padding: 5px;
    color: white !important;
}
.aux-news-element-main, .aux-ajax-view {
    margin-top: 30px;
}
/* 4. Layout & Elementor Overrides */
.aux-has-sidebar .aux-primary .hentry .entry-title {
    background: #00adef3d;
    padding-bottom: 10px;
}

.crisp-client .cc-1brb6 .cc-1yy0g .cc-1no03 .cc-rfbfu .cc-1iwcs .cc-1nvun .cc-qqgts {
    opacity: 0 !important;
}

.aux-header.aux-header-elements-wrapper {
    border-bottom: none !important;
    background: #ffffff91;
}

.woocommerce div.product div.summary {
    min-height: 450px;
    margin-bottom: 0;
}

.aux-media-frame.aux-media-image img {
    max-width: 500px;
}

.page-title-section .aux-page-title-entry {
    margin: 10px !important;
}

.page-title {
    color: #51a3d3;
    text-transform: uppercase;
    font-weight: bolder;
    font-family: montserrat;
    -webkit-text-stroke: 1px #00a1e6;
    text-stroke: 1px #00a1e6;
}

.elementor-117 .elementor-element.elementor-element-35e6dd7, 
.elementor-117 .elementor-element.elementor-element-35e6dd7 > .elementor-background-overlay, 
.elementor-631 .elementor-element.elementor-element-78dfe602, 
.elementor-631 .elementor-element.elementor-element-78dfe602 > .elementor-background-overlay {
    background: #c3d8ff;
}

.aux-master-menu .aux-megamenu .aux-menu-row {
    background: white;
    padding: 20px;
}

.qtywrap {
    background-color: #ffffff;
    width: auto;
}

.aux-master-menu, .aux-master-menu * {
    display: inline-table;
}

.crisp-client .cc-tlyw .cc-kxkl .cc-1hqb .cc-13tl .cc-1cff .cc-15os .cc-1g88, 
.crisp-client .cc-tlyw .cc-kxkl .cc-1hqb .cc-13tl .cc-1cff .cc-15os .cc-1g88 * {
    display: none !important;
}

.crisp-client .cc-tlyw .cc-kxkl .cc-1hqb .cc-gye0 .cc-11uv .cc-15ak .cc-acjo .cc-nmj4 .cc-17ym, 
.crisp-client .cc-tlyw .cc-kxkl .cc-1hqb .cc-gye0 .cc-11uv .cc-15ak .cc-acjo .cc-nmj4 .cc-17ym.cc-1287 {
    -webkit-text-stroke: 5px white !important;
}

woocommerce div.product .woocommerce-tabs .panel {
    margin-top: 70px;
}

.woocommerce button.button.alt, .woocommerce input.button.alt {
    background-color: #dfe6f5;
    color: black;
    max-width: 403px;
}

.woocommerce span.onsale {
    background-color: #ff4d00;
}

.woocommerce ul.products li.product a img {
    border-radius: 10px;
    margin-bottom: 3px;
}

.vtspinner img, .aux-offcanvas-menu.aux-offcanvas-cart .offcanvas-header {
    display: none !important;
}

.aux-cart-wrapper .aux-shopping-cart-info > span.aux-shopping-title {
    display: none;
}

/* 5. Localization Content (Note: This is suboptimal for SEO, best to use translation plugins, but keeping for function) */
[lang="en-GB"] #checkbox_trigger1_field::before { content: "If you still do not have this information, you can send us an email later to info@ticket-time.es. (Important to indicate the order number in the email). If you do not have accommodation within Madrid Capital, you can collect the tickets at our physical collection point. For more information contact us at info@ticket-time.es "; }
[lang="ru-RU"] #checkbox_trigger1_field::before { content: "Если у вас еще нет этой информации, вы можете отправить нам электронное письмо позже на адрес info@ticket-time.es. (Важно указать номер заказа в письме). Если у вас нет жилья в пределах Мадрида, вы можете забрать билеты в нашем пункте физического получения. Для получения дополнительной информации свяжитесь с нами по адресу info@ticket-time.es"; }
[lang="pt_AO"] #checkbox_trigger1_field::before { content: "Se você ainda não tem essa informação, pode nos enviar um e-mail posteriormente para info@ticket-time.es. (Importante indicar o número do pedido no e-mail). Se você não tiver acomodação dentro da Capital de Madrid, pode retirar os ingressos no nosso ponto de coleta física. Para mais informações, entre em contato conosco pelo e-mail info@ticket-time.es"; }
[lang="es-ES"] #checkbox_trigger1_field::before { content: "Si todavía no disponen de esta información pueden mandarnos un email más adelante a info@ticket-time.es. (Importante indicar en el email el número de pedido). Si no tienen alojamiento dentro de Madrid Capital pueden recoger las entradas en nuestro punto de recogida físico. Para más información contáctenos a info@ticket-time.es "; }

.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt {
    color: white;
}

.aux-burger, .aux-burger[class*="medium"] {
    width: 100%;
    font-weight: bold;
    margin: 5px;
}

.woocommerce-products-header__title.page-title, .woocommerce-ordering, .aux-breadcrumbs {
    display: none;
}

h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong {
    font-weight: 500;
    color: #0083bb;
}

.entry-title {
    line-height: 25px !important;
    font-size: 22px !important;
}

.aux-archive .type-post .entry-title a {
    color: #0083bb;
}

.aux-master-menu .aux-submenu > .aux-menu-item {
    background: white;
    z-index: 9999;
}

.elementor-5168 .elementor-element.elementor-element-3574d67f > .elementor-container {
    display: table;
}

.woocommerce-cart table.cart img, .woocommerce-checkout table.cart img {
    margin: 0 auto;
}

.optional, .bdt-mini-cart-price-amount ::after {
    display: none !important;
}

.product-subtitle::before {
    content: "*" !important;
    color: red;
    display: inline-block;
}

.cart-subtotal, .product-subtotal {
    display: none !important;
}

.woocommerce #payment #place_order, .woocommerce-page #payment #place_order, .checkout-button.button.alt.wc-forward.wp-element-button {
    float: none;
    background: #358335 !important;
    color: white;
    width: 100%;
    font-size: 25px;
    margin: 5px;
    border-radius: 5px;
    padding: 20px;
}

.woocommerce-message {
    background: #358335 !important;
}

.aux-master-menu .aux-menu-icon {
    color: black;
}

.aux-master-menu .aux-submenu.aux-megamenu .aux-menu-column > .aux-item-content {
    padding: 0;
}

.aux-master-menu.aux-horizontal.aux-skin-classic .aux-submenu.aux-megamenu .aux-menu-column > .aux-item-content {
    padding-bottom: 0;
    margin-bottom: 0;
}

.aux-master-menu .aux-submenu.aux-megamenu .aux-menu-column {
    padding: 5px;
}

.master-carousel, .master-carousel-slider, .entry-info {
    display: none;
}

.woocommerce table.shop_table td {
    border: 1px solid #37373738;
    padding: 5px;
}

.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt{border: 1px solid green;background:white}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    padding: 10px;
}

.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    text-align: center;
}

#tab-additional_information {
    display: none !important;
}

table.vartable input.qty {
    max-width: 40px;
}

img {
    min-width: 10px !important;
}

rt {
    color: #ff6a6a !important;
}

div.product-addon-totals {
    margin: 0;
    padding: 0;
    border-top: none;
    border-bottom: none;
    overflow: hidden;
    max-width: 403px;
}

.woocommerce .woocommerce-terms-and-conditions, .woocommerce-page .woocommerce-terms-and-conditions {
    min-height: 500px;
}

body h2, body .aux-h2 {
    font-size: 30px;
    letter-spacing: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    display: none !important;
}

.select2-container--default .select2-selection--single {
    max-width: 403px;
}

label {
    margin-bottom: 0;
}

.woocommerce div.product p.price, .woocommerce div.product span.price {
    color: #1f520a;
    font-weight: bold;
    font-size: 25px !important;
}

.input-text.wc-pao-addon-field.wc-pao-addon-input-multiplier {
    width: 69px !important;
}

a.button, button, input[type="button"], .aux-button {
    box-shadow: 0 0 3px 1px #565656;
    color: #2c559f;
}

/* Custom Scrollbar */
::-webkit-scrollbar-thumb {
    background: #2c559f;
    box-shadow: inset 0 0 5px 0 black;
    border-radius: 4px;
}

::-webkit-scrollbar {
    width: 8px;
    background: #00000091;
}

.mmm {
    box-shadow: 0px -5px 5px 0px #80808042;
    margin-bottom: 10px;
    padding: 20px;
    margin-top: 10px;
}

p, li {
    line-height: 17px !important;
}

.tt {
    text-align: center !important;
    margin: 0 auto;
}

.entry-content ul, .comment-body ul {
    padding-left: 0;
}

.t1 {
    text-align: center;
    font-size: 35px;
}

.woocommerce form {
    WIDTH: 100%;
    font-size: 15px;
    padding: 10px;
    line-height: 10px;
    margin: 0;
}

.page-title-section .aux-heading-bordered .page-title-group, .page-title-section .aux-heading-boxed .page-title-group {
    border: none !important;
    margin: 0;
    padding: 0 20px 0 20px;
    background: #2c559f59;
}

.aux-content-top-margin .aux-primary {
    padding-top: 0;
}

.woocommerce form .form-row .input-text, .woocommerce-page form .form-row .input-text {
    max-HEIGHT: 20px;
}

.elementor-element.elementor-element-ae485e2.elementor-widget.elementor-widget-aux_menu_box {
    top: 25px;
    left: 290px;
    position: absolute;
}

.wc-block-grid__product .wc-block-grid__product-image:not(.wc-block-components-product-image), .wc-block-grid__product .wc-block-grid__product-title {
    max-width: 280px;
    background: #2c559f;
    padding: 5px;
    color: #ffffff;
}

label.wc-pao-addon-name, .e--pointer-double-line .elementor-item:after, .e--pointer-underline .elementor-item:after, .tagged_as, .posted_in {
    display: none !important;
}

.woocommerce div.product form.cart .button {
    width: 100%;
    float: RIGHT;
}

.woocommerce div.product div.images img {
    display: none;
}

.wc-pao-addon {
    margin: 0 auto;
}

.wc-pao-addon .wc-pao-addon-description {
    display: inline-block;
    float: left;
    margin-right: 5px;
    width: 200px;
}

/* REMOVED: .woocommerce-Price-amount amount {display:none} was deleted here to fix SEO */
.related.products {
    display: none;
}

h1.entry-title {
    text-align: center;
    padding-top: 10px !important;
    font-size: 33px;
    color: #036f9d;
}

.kartab {
    width: 420px;
    left: 20px;
    top: auto;
    position: absolute;
    display: block;
    margin: 10px auto;
}
.aux-has-sidebar .aux-primary .hentry .entry-title {
    padding: 10px;
}
/* 6. Media Queries (Mobile/Tablet) */
@media only screen and (max-width: 1067px) {
    .kartab {
        width: 100%;
        margin-bottom: 30px;
    }
    h1.entry-title {
        font-size: 15px;
        padding: 0 !important;
    }
    .aux-content-top-margin .aux-primary {
        padding-top: 20px;
    }
    .summary.entry-summary {
        margin-top: 700px !important;
    }
    .wc-pao-addon label.wc-pao-addon-name {
        font-size: 10px;
    }
    .wc-pao-addon .wc-pao-addon-description {
        width: 250px;
    }
}

@media only screen and (max-width: 770px) {
    .kartab {
        position: unset !important;
    }
    .summary.entry-summary {
        margin-top: 0px !important;
    }
    .wc-pao-addon label.wc-pao-addon-name {
        color: black !important;
        font-size: 10px;
    }
}

@media only screen and (max-width: 600px) {
    .woocommerce ul.products[class*=columns-] li.product, .woocommerce-page ul.products[class*=columns-] li.product {
        width: 100%;
    }
    table.vartable td span {
        display: inline-grid !important;
    }
}

@media only screen and (max-width: 450px) {
    .aux-widget-logo {
        width: 100px;
        height: auto;
        display: inline-block;
    }
    .page-title-section .aux-page-title-entry {
        margin: 0px !important;
        padding: 5px;
    }
    .page-title {
        font-size: 22px;
        padding: 0;
        margin: 0;
    }
    .vtajaxform.customize-unpreviewable {
        padding: 0 !important;
    }
    table.vartable input.qty {
        text-align: left;
        max-width: 26px;
    }
    table tr td, table tr:nth-child(even) td {
        background: transparent;
        height: 80px;
    }
    .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover {
        font-size: 10px;
    }
    table.vartable td, #content-area table.vartable td {
        font-size: 10px;
        padding: 1px;
    }
    .stockcol.text {
        transform: rotate(90deg) !important;
    }
    .qtywrap > div {
        display: none;
    }
    h2, .aux-h2 {
        line-height: 30px;
    }
    .t1 {
        font-size: 25px; /* Fixed conflict: you had 20px!important then 25px */
    }
    .elementor-528 .elementor-element.elementor-element-0ed7682 {
        text-align: center !important;
    }
    .page-title-section .aux-heading-bordered .page-title-group, .page-title-section .aux-heading-boxed .page-title-group {
        border: 1px solid black;
        margin: 0;
        padding: 0 10px 0 10px;
        font-size: 15px;
    }
    .kartab {
        position: unset !important;
    }
    h1.entry-title {
        font-size: 15px;
        padding: 7px;
    }
    .aux-content-top-margin .aux-primary {
        padding-top: 0 !important; /* Fixed conflict: 20px then 0!important */
    }
    .summary.entry-summary {
        margin-top: 0px !important;
    }
    .wc-pao-addon label.wc-pao-addon-name {
        color: black !important;
        font-size: 10px;
    }
    .wc-pao-addon .wc-pao-addon-description {
        width: 300px;
        font-size: 12px;
    }
    .hentry .entry-content, .hentry .comment-body {
        margin-bottom: 0;
    }
    .aux-sidebar .sidebar-inner {
        padding: 0;
    }
    .wc-block-grid__product .wc-block-grid__product-image:not(.wc-block-components-product-image), .wc-block-grid__product .wc-block-grid__product-title {
        width: auto;
        padding: 0;
        margin: 0;
    }
    .idiomas {
        width: 150px !important;
        float: right;
    }
    .entry-content h2, .comment-body h2 {
        font-size: 20px;
        line-height: 20px;
    }
    h3 {
        font-size: 17px;
        line-height: 19px;
    }
    .oferta {
        font-size: 15px !important;
        line-height: 17px !important;
    }
}