.dlx-res-excursion-sheet{
    margin-top:32px;
}
.dlx-res-excursion-section{
    padding:22px 0;
    border-top:1px solid rgba(0,0,0,.08);
}
.dlx-res-excursion-section:first-child{
    border-top:0;
}
.dlx-res-excursion-section h2{
    margin:0 0 10px;
    font-size:1.45rem;
    line-height:1.3;
}
.dlx-res-excursion-section p:last-child{
    margin-bottom:0;
}

.dlx-res-geo-label{
    display:inline-block;
    margin:0 0 10px;
    padding:5px 9px;
    border:1px solid rgba(0,0,0,.10);
    border-radius:999px;
    font-size:.78rem;
    font-weight:600;
    line-height:1.2;
}


/* F4.A.1 — Selector público de salida */
.dlx-res-booking{
    margin:32px 0;
    padding:24px;
    border:1px solid rgba(0,0,0,.10);
    border-radius:14px;
    background:#fff;
}
.dlx-res-booking-head h2{
    margin:0 0 8px;
    font-size:1.55rem;
    line-height:1.25;
}
.dlx-res-booking-head p{
    margin:0 0 18px;
}
.dlx-res-departure-selector{
    margin:0;
    padding:0;
    border:0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.dlx-res-departure-option{
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:16px;
    border:1px solid rgba(0,0,0,.14);
    border-radius:12px;
    cursor:pointer;
    transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;
}
.dlx-res-departure-option:hover{
    border-color:rgba(0,0,0,.28);
}
.dlx-res-departure-option:has(input:checked){
    border-color:currentColor;
    box-shadow:0 0 0 2px rgba(0,0,0,.08);
}
.dlx-res-departure-option.is-disabled{
    opacity:.58;
    cursor:not-allowed;
    background:rgba(0,0,0,.025);
}
.dlx-res-departure-option input{
    margin-top:4px;
    flex:0 0 auto;
}
.dlx-res-departure-option-main,
.dlx-res-departure-option-meta{
    display:flex;
    flex-direction:column;
    gap:4px;
}
.dlx-res-departure-option-main{
    min-width:0;
    flex:1 1 auto;
}
.dlx-res-departure-option-meta{
    flex:0 0 auto;
    text-align:right;
    font-size:.9rem;
}
.dlx-res-departure-date{
    line-height:1.35;
}
.dlx-res-departure-time,
.dlx-res-departure-availability{
    opacity:.78;
}
.dlx-res-departure-status{
    font-weight:700;
}
.dlx-res-booking-note{
    margin:14px 0 0;
    font-size:.82rem;
    opacity:.65;
}
.dlx-res-booking-empty{
    padding:14px 16px;
    border-radius:10px;
    background:rgba(0,0,0,.04);
}
@media(max-width:767px){
    .dlx-res-booking{padding:18px;margin:24px 0}
    .dlx-res-departure-selector{grid-template-columns:1fr}
    .dlx-res-departure-option{flex-wrap:wrap}
    .dlx-res-departure-option-meta{width:100%;padding-left:28px;text-align:left}
}


/* F4.A.2 — Selección de cantidad y tipo de pasajeros */
.dlx-res-passenger-panel{margin-top:18px;padding:20px;border:1px solid rgba(0,0,0,.10);border-radius:12px;background:rgba(0,0,0,.015)}
.dlx-res-passenger-panel[hidden]{display:none!important}
.dlx-res-passenger-head h3{margin:0 0 5px;font-size:1.25rem}
.dlx-res-passenger-head p{margin:0 0 16px}
.dlx-res-tariff-selector{display:flex;flex-direction:column;gap:10px}
.dlx-res-tariff-option{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid rgba(0,0,0,.10);border-radius:10px;background:#fff}
.dlx-res-tariff-info{display:flex;flex-direction:column;gap:3px}
.dlx-res-tariff-info span{font-size:.9rem;opacity:.76}
.dlx-res-qty{display:grid;grid-template-columns:38px 54px 38px;align-items:center}
.dlx-res-qty-btn{width:38px;height:38px;padding:0;border:1px solid rgba(0,0,0,.18);background:#fff;font-size:1.25rem;line-height:1;cursor:pointer}
.dlx-res-qty-btn:first-child{border-radius:8px 0 0 8px}
.dlx-res-qty-btn:last-child{border-radius:0 8px 8px 0}
.dlx-res-qty input{width:54px!important;height:38px;text-align:center;border:1px solid rgba(0,0,0,.18);border-left:0;border-right:0;border-radius:0!important;padding:4px!important;-moz-appearance:textfield}
.dlx-res-qty input::-webkit-outer-spin-button,.dlx-res-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.dlx-res-passenger-summary{display:flex;justify-content:flex-end;gap:28px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(0,0,0,.10);font-size:1.05rem}
.dlx-res-capacity-warning{margin:10px 0 0;text-align:right;font-size:.9rem;font-weight:600}
@media(max-width:767px){
 .dlx-res-passenger-panel{padding:16px}
 .dlx-res-tariff-option{align-items:flex-start;flex-direction:column}
 .dlx-res-qty{align-self:stretch;grid-template-columns:42px 1fr 42px}
 .dlx-res-qty-btn{width:42px}
 .dlx-res-qty input{width:100%!important}
 .dlx-res-passenger-summary{justify-content:space-between;gap:12px}
}


/* F4.A.3 — Punto de abordaje por pasajero */
.dlx-res-boarding-assignments{
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid rgba(0,0,0,.10);
}
.dlx-res-boarding-assignments[hidden]{display:none!important}
.dlx-res-boarding-head h4{
    margin:0 0 4px;
    font-size:1.08rem;
}
.dlx-res-boarding-head p{
    margin:0 0 12px;
    font-size:.92rem;
    opacity:.78;
}
.dlx-res-boarding-rows{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.dlx-res-boarding-row{
    display:grid;
    grid-template-columns:minmax(150px,.7fr) minmax(240px,1.3fr);
    gap:14px;
    align-items:center;
}
.dlx-res-boarding-row label{
    font-weight:600;
}
.dlx-res-boarding-row select{
    width:100%;
    min-height:42px;
    padding:7px 34px 7px 10px;
    border:1px solid rgba(0,0,0,.18);
    border-radius:8px;
    background:#fff;
}
.dlx-res-boarding-unavailable{
    margin-top:18px;
    padding:12px 14px;
    border:1px solid rgba(0,0,0,.10);
    border-radius:9px;
    background:rgba(0,0,0,.035);
    font-size:.92rem;
}
@media(max-width:767px){
    .dlx-res-boarding-row{grid-template-columns:1fr;gap:6px}
}

/* F4.A.3 UX — abordaje común o individual */
.dlx-res-boarding-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 16px}
.dlx-res-boarding-mode label{display:flex;gap:9px;align-items:flex-start;padding:13px 14px;border:1px solid rgba(0,0,0,.12);border-radius:9px;background:#fff;cursor:pointer}
.dlx-res-boarding-mode input{margin-top:3px}
.dlx-res-boarding-same[hidden],.dlx-res-boarding-different[hidden]{display:none!important}
.dlx-res-boarding-same label{display:flex;flex-direction:column;gap:7px}
.dlx-res-boarding-same select{width:100%;min-height:42px;padding:7px 34px 7px 10px;border:1px solid rgba(0,0,0,.18);border-radius:8px;background:#fff}
@media(max-width:767px){.dlx-res-boarding-mode{grid-template-columns:1fr}}

/* F4.A.4 — validación de cupo */
.dlx-res-qty-btn:disabled{
    opacity:.45;
    cursor:not-allowed;
}
.dlx-res-capacity-warning{
    padding:9px 11px;
    border-radius:8px;
    background:rgba(0,0,0,.045);
}

/* F4.A.5 — resumen dinámico formal */
.dlx-res-selection-summary{margin-top:20px;padding:16px;border:1px solid rgba(0,0,0,.10);border-radius:10px;background:#fff}
.dlx-res-selection-summary[hidden]{display:none!important}
.dlx-res-selection-summary h4{margin:0 0 12px;font-size:1.08rem}
.dlx-res-selection-lines{display:flex;flex-direction:column;gap:8px}
.dlx-res-selection-line{display:flex;justify-content:space-between;gap:18px;padding-bottom:8px;border-bottom:1px dashed rgba(0,0,0,.10)}
.dlx-res-selection-line:last-child{border-bottom:0}
.dlx-res-selection-line span{min-width:0}
.dlx-res-selection-line strong{white-space:nowrap}
.dlx-res-selection-summary .dlx-res-passenger-summary{margin-top:12px}
@media(max-width:520px){
 .dlx-res-selection-line{align-items:flex-start}
 .dlx-res-selection-line span{font-size:.92rem}
}

/* F4.A.6 — reglas financieras visibles */
.dlx-res-financial-summary{margin-top:14px;padding:16px;border:1px solid rgba(0,0,0,.10);border-radius:10px;background:rgba(0,0,0,.018)}
.dlx-res-financial-summary[hidden]{display:none!important}
.dlx-res-financial-summary h4{margin:0 0 12px;font-size:1.08rem}
.dlx-res-financial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dlx-res-financial-grid>div{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid rgba(0,0,0,.08);border-radius:8px;background:#fff}
.dlx-res-financial-grid span{font-size:.86rem;opacity:.72}
.dlx-res-financial-grid strong{font-size:1.02rem}
@media(max-width:767px){.dlx-res-financial-grid{grid-template-columns:1fr}}

/* F4.A.6 — desglose visible de anticipo por persona */
.dlx-res-financial-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.dlx-res-deposit-per-person [data-dlx-deposit-lines]{
    display:flex;
    flex-direction:column;
    gap:5px;
    margin-top:2px;
}
.dlx-res-deposit-line{
    display:flex;
    justify-content:space-between;
    gap:12px;
    font-size:.92rem;
}
.dlx-res-deposit-line span{
    opacity:.85;
}
.dlx-res-deposit-line strong{
    font-size:.92rem;
    white-space:nowrap;
}
@media(max-width:767px){
    .dlx-res-financial-grid{grid-template-columns:1fr}
}

/* F4.A.7 — acción Continuar y validación transaccional */
.dlx-res-precheckout-action{margin-top:16px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.dlx-res-precheckout-action[hidden]{display:none!important}
.dlx-res-continue{min-width:150px}
.dlx-res-continue:disabled{opacity:.55;cursor:wait}
.dlx-res-precheckout-status{margin:0;font-size:.92rem}
.dlx-res-precheckout-status.is-success{font-weight:600}
.dlx-res-precheckout-status.is-error{font-weight:600}

/* F4.B.2 — presentación de reservación en carrito */
.woocommerce-cart .wc-item-meta,
.woocommerce-cart dl.variation{margin-top:8px;font-size:.9rem}
.woocommerce-cart .wc-item-meta li{margin:3px 0}
.woocommerce-cart .wc-item-meta-label{font-weight:600}
.dlx-res-cart-reservation-qty{display:inline-block;padding:7px 10px;border:1px solid rgba(0,0,0,.12);border-radius:6px;white-space:nowrap}

/* F4.B.3 — cobro del pago requerido hoy */
.dlx-res-cart-payment-note{margin:0 0 16px;padding:12px 14px;border:1px solid rgba(0,0,0,.10);border-radius:8px;background:rgba(0,0,0,.025);font-size:.92rem;line-height:1.45}

/* F4.B.3 — elección de modalidad de pago */
.dlx-res-payment-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 16px}
.dlx-res-payment-choice label{display:flex;align-items:flex-start;gap:9px;padding:13px 14px;border:1px solid rgba(0,0,0,.12);border-radius:9px;background:#fff;cursor:pointer}
.dlx-res-payment-choice input{margin-top:4px}
.dlx-res-payment-choice span{display:flex;flex-direction:column;gap:3px}
.dlx-res-payment-choice small{font-size:.84rem;line-height:1.35;opacity:.72}
.dlx-res-payment-required-full{display:flex;flex-direction:column;gap:3px;margin:0 0 16px;padding:13px 14px;border:1px solid rgba(0,0,0,.12);border-radius:9px;background:#fff}
.dlx-res-payment-required-full span{font-size:.88rem;opacity:.76}
.dlx-res-financial-grid [hidden]{display:none!important}
@media(max-width:767px){.dlx-res-payment-choice{grid-template-columns:1fr}}

/* F4.B refinement — nombres para abordajes individuales */
.dlx-res-boarding-row{grid-template-columns:minmax(120px,.65fr) minmax(190px,1fr) minmax(260px,1.5fr)}
.dlx-res-passenger-name-wrap{min-width:0}
.dlx-res-passenger-name{width:100%;min-height:42px;padding:7px 10px;border:1px solid rgba(0,0,0,.18);border-radius:8px;background:#fff}
.dlx-res-holder-label{display:flex;align-items:center;min-height:42px;font-size:.9rem;opacity:.72}
@media(max-width:767px){
 .dlx-res-boarding-row{grid-template-columns:1fr}
}

/* F4.C — facturación condicional */
.dlx-res-invoice{margin-top:20px}
.dlx-res-invoice h3{margin-bottom:6px}
.dlx-res-invoice-intro{margin-top:0}
.dlx-res-radio-field .woocommerce-input-wrapper{display:flex;gap:12px;flex-wrap:wrap}
.dlx-res-radio-field label{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid rgba(0,0,0,.14);border-radius:8px;background:#fff}
.dlx-res-invoice-note{clear:both;padding:12px 14px;border-radius:8px;background:rgba(0,0,0,.035);font-size:.9rem;line-height:1.45}
#dlx-res-invoice-details[hidden],#dlx-res-invoice-manual[hidden],#dlx-res-invoice-csf[hidden]{display:none!important}

/* F4.C UX fix — ocultar selector de modalidad con 1 pasajero */
.dlx-res-boarding-mode[hidden]{display:none!important}
.dlx-res-boarding-head p[hidden]{display:none!important}

/* F4.C — resumen final de reservación en checkout */
.dlx-res-checkout-summary{margin:22px 0;padding:18px;border:1px solid rgba(0,0,0,.10);border-radius:10px;background:#fff}
.dlx-res-checkout-summary h3{margin:0 0 14px}
.dlx-res-checkout-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dlx-res-checkout-summary-grid>div{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid rgba(0,0,0,.08);border-radius:8px;background:rgba(0,0,0,.015)}
.dlx-res-checkout-summary-grid span{font-size:.85rem;opacity:.72}
.dlx-res-checkout-summary-grid strong{font-size:.96rem}
.dlx-res-checkout-summary-wide{grid-column:1/-1}
.dlx-res-checkout-summary-wide strong+strong{margin-top:3px}
@media(max-width:767px){.dlx-res-checkout-summary-grid{grid-template-columns:1fr}.dlx-res-checkout-summary-wide{grid-column:auto}}

.dlx-res-hold-notice{margin:0 0 16px;padding:14px 16px;border:1px solid rgba(0,0,0,.12);border-radius:9px;background:#fff}.dlx-res-hold-notice [data-dlx-hold-countdown]{font-weight:700;font-variant-numeric:tabular-nums}

/* F8.D.1 — Ficha comercial Excursión Deluxxo */
.single-product div.product.type-product.product-type-deluxxo_excursion{--dlx-navy:#0D1B2A;--dlx-blue:#00357A;--dlx-sky:#2EA3F2;--dlx-text:#1F2937;--dlx-soft:#F7F9FC;color:var(--dlx-text)}
.single-product .product-type-deluxxo_excursion .woocommerce-product-gallery__wrapper img{border-radius:14px}
.single-product .product-type-deluxxo_excursion .summary{padding-top:2px}
.single-product .product-type-deluxxo_excursion .product_title{color:var(--dlx-navy);font-weight:750;line-height:1.12;margin-bottom:22px}
.single-product .product-type-deluxxo_excursion .woocommerce-product-details__short-description{font-size:1rem;line-height:1.65;color:var(--dlx-text);margin-bottom:20px}
.dlx-res-product-facts{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.dlx-res-product-facts>span{display:flex;flex-direction:column;min-width:120px;padding:10px 13px;border:1px solid #E3E8EF;border-radius:10px;background:#fff}
.dlx-res-product-facts small,.dlx-res-product-price small{font-size:.74rem;color:#6B7280;text-transform:uppercase;letter-spacing:.04em}
.dlx-res-product-facts strong{font-size:.92rem;color:var(--dlx-navy)}
.dlx-res-product-price{display:flex;align-items:baseline;gap:8px;margin:22px 0 8px}
.dlx-res-product-price strong{font-size:2rem;line-height:1;color:var(--dlx-blue)}
.dlx-res-product-price span{font-size:.82rem;color:#6B7280}
.dlx-res-product-availability{display:flex;align-items:center;gap:7px;font-size:.88rem;margin:10px 0 18px;color:#4B5563}
.dlx-res-product-availability strong{color:#166534}
.dlx-res-dot{width:8px;height:8px;border-radius:50%;background:#22C55E;display:inline-block}
.dlx-res-product-cta{display:inline-flex!important;align-items:center;justify-content:center;min-height:46px;padding:0 22px!important;border-radius:9px!important;background:var(--dlx-blue)!important;color:#fff!important;border:0!important;font-weight:700!important}
.dlx-res-product-cta:hover{background:var(--dlx-navy)!important}
.dlx-res-booking{border:1px solid #E1E7EF!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 28px rgba(13,27,42,.05);padding:28px!important}
.dlx-res-booking-head h2{color:var(--dlx-navy);font-size:1.65rem!important;margin-bottom:6px!important}
.dlx-res-departure-option{border-color:#DCE3EC!important;border-radius:12px!important;transition:border-color .2s,box-shadow .2s,transform .2s}
.dlx-res-departure-option:hover{border-color:var(--dlx-sky)!important;box-shadow:0 5px 18px rgba(13,27,42,.06)}
.dlx-res-departure-option:has(input:checked){border-color:var(--dlx-blue)!important;box-shadow:0 0 0 2px rgba(0,53,122,.08)}
.dlx-res-excursion-sheet{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:32px 0!important}
.dlx-res-excursion-section{margin:0!important;padding:22px!important;border:1px solid #E3E8EF!important;border-radius:14px;background:#fff}
.dlx-res-excursion-section h2{font-size:1.25rem!important;color:var(--dlx-navy);margin:0 0 14px!important}
.dlx-res-section-duracion{grid-column:1/-1;display:flex;align-items:center;gap:18px;background:var(--dlx-soft)}
.dlx-res-section-duracion h2{margin:0!important}.dlx-res-section-duracion p{margin:0!important;font-weight:700;color:var(--dlx-blue)}
.dlx-res-section-informacion-importante,.dlx-res-section-itinerario,.dlx-res-policies{grid-column:1/-1}
.dlx-res-section-incluye .dlx-res-section-content p,.dlx-res-section-no-incluye .dlx-res-section-content p{line-height:1.7}
.dlx-res-policies{padding:0!important;overflow:hidden}
.dlx-res-policies summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 22px;cursor:pointer;font-weight:750;color:var(--dlx-navy);list-style:none}
.dlx-res-policies summary::-webkit-details-marker{display:none}.dlx-res-policies summary small{font-weight:500;color:var(--dlx-blue)}
.dlx-res-policies .dlx-res-section-content{padding:0 22px 22px;line-height:1.65}
.product-type-deluxxo_excursion .woocommerce-tabs{margin-top:28px!important}
.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs{border-bottom:1px solid #E3E8EF!important}
.product-type-deluxxo_excursion .related.products{margin-top:42px}.product-type-deluxxo_excursion .related.products>h2{color:var(--dlx-navy);font-weight:750}
@media(max-width:980px){.dlx-res-product-facts>span{flex:1 1 30%}.dlx-res-excursion-sheet{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.single-product .product-type-deluxxo_excursion .product_title{font-size:1.8rem}.dlx-res-product-facts{display:grid;grid-template-columns:1fr 1fr}.dlx-res-product-facts>span{min-width:0}.dlx-res-product-price{flex-wrap:wrap}.dlx-res-product-cta{width:100%}.dlx-res-booking{padding:18px!important;border-radius:12px!important}.dlx-res-excursion-sheet{grid-template-columns:1fr;gap:12px}.dlx-res-excursion-section,.dlx-res-section-informacion-importante,.dlx-res-section-itinerario,.dlx-res-policies,.dlx-res-section-duracion{grid-column:1}.dlx-res-section-duracion{display:block}.dlx-res-section-duracion h2{margin-bottom:8px!important}}

/* HOTFIX v1.0.4 — Ficha de excursión en móvil: apilar galería + resumen.
 * Divi/WooCommerce puede conservar anchos/float de escritorio por debajo de 768 px.
 * Se limita al tipo de producto deluxxo_excursion para no alterar otros productos. */
@media (max-width:767px){
  body.single-product div.product.type-product.product-type-deluxxo_excursion{
    display:block!important;
  }
  body.single-product div.product.type-product.product-type-deluxxo_excursion .woocommerce-product-gallery,
  body.single-product div.product.type-product.product-type-deluxxo_excursion .summary{
    float:none!important;
    clear:both!important;
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.single-product div.product.type-product.product-type-deluxxo_excursion .woocommerce-product-gallery{
    margin-bottom:24px!important;
  }
  body.single-product div.product.type-product.product-type-deluxxo_excursion .summary{
    padding-top:0!important;
  }
  body.single-product div.product.type-product.product-type-deluxxo_excursion .product_title,
  body.single-product div.product.type-product.product-type-deluxxo_excursion .woocommerce-product-details__short-description,
  body.single-product div.product.type-product.product-type-deluxxo_excursion .dlx-res-product-availability{
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
  body.single-product div.product.type-product.product-type-deluxxo_excursion .dlx-res-product-availability{
    flex-wrap:wrap;
  }
}



/* F8.D.2 — refinamientos de ficha aprobados */
.dlx-res-feature-list{list-style:none!important;margin:0!important;padding:0!important;display:flex;flex-direction:column;gap:8px}
.dlx-res-feature-list li{position:relative;padding-left:27px;line-height:1.5}
.dlx-res-feature-list li:before{position:absolute;left:0;top:.05em;width:19px;height:19px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
.dlx-res-feature-list-included li:before{content:"✓";color:#166534;background:#DCFCE7}
.dlx-res-feature-list-excluded li:before{content:"×";color:#991B1B;background:#FEE2E2}
.dlx-res-policy-link{display:inline-flex;align-items:center;margin-top:8px;color:#00357A!important;font-weight:700;text-decoration:none!important}
.dlx-res-policy-link:hover{text-decoration:underline!important}

/* Opiniones compactas: pestaña discreta y panel cerrado hasta interacción */
.product-type-deluxxo_excursion .woocommerce-tabs{border:1px solid #E3E8EF;border-radius:14px;overflow:hidden;margin-top:28px!important}
.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs{margin:0!important;padding:0!important;border:0!important;background:#fff!important}
.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs:before,.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs:after{display:none!important}
.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs li{display:block!important;width:100%;margin:0!important;padding:0!important;border:0!important;background:#fff!important;border-radius:0!important}
.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs li:before,.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs li:after{display:none!important}
.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs li a{display:flex!important;align-items:center;justify-content:space-between;width:100%;padding:17px 20px!important;color:#0D1B2A!important;font-weight:750!important}
.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs li a:after{content:"Ver opiniones";font-size:.82rem;font-weight:500;color:#00357A}
.product-type-deluxxo_excursion .woocommerce-tabs .panel{padding:20px 22px!important;margin:0!important;border-top:1px solid #E3E8EF}
.product-type-deluxxo_excursion .woocommerce-tabs .panel:not([style*="display: block"]){display:none}

/* Relacionados más compactos y con precio dinámico */
.product-type-deluxxo_excursion .related.products{margin-top:34px!important}
.product-type-deluxxo_excursion .related.products>h2{font-size:1.55rem!important;margin-bottom:18px!important}
.product-type-deluxxo_excursion .related.products ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px!important}
.product-type-deluxxo_excursion .related.products ul.products li.product{width:auto!important;margin:0!important;float:none!important}
.product-type-deluxxo_excursion .related.products ul.products li.product img{aspect-ratio:16/10;object-fit:cover;border-radius:10px;margin-bottom:10px!important}
.product-type-deluxxo_excursion .related.products ul.products li.product .woocommerce-loop-product__title{font-size:1.05rem!important;line-height:1.3!important;padding:0!important;margin:0 0 7px!important;color:#0D1B2A}
.product-type-deluxxo_excursion .related.products .dlx-res-card-price{display:flex;align-items:baseline;gap:5px;color:#1F2937;font-size:.9rem}
.product-type-deluxxo_excursion .related.products .dlx-res-card-price small{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:#6B7280}
.product-type-deluxxo_excursion .related.products .dlx-res-card-price strong{color:#00357A;font-size:1rem}
.product-type-deluxxo_excursion .related.products .dlx-res-card-price span{font-size:.72rem;color:#6B7280}
@media(max-width:767px){.product-type-deluxxo_excursion .related.products ul.products{grid-template-columns:1fr 1fr!important;gap:14px!important}}
@media(max-width:520px){.product-type-deluxxo_excursion .related.products ul.products{grid-template-columns:1fr!important}.product-type-deluxxo_excursion .woocommerce-tabs .panel{padding:16px!important}}

/* F8.D.3 — Información importante visual */
.dlx-res-important-grid{list-style:none!important;margin:4px 0 0!important;padding:0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.dlx-res-important-grid li{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid #E7EBF0;border-radius:10px;background:#FAFBFD;line-height:1.45}
.dlx-res-important-pin{position:relative;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:#EAF4FE;margin-top:1px}
.dlx-res-important-pin:before{content:"";position:absolute;left:7px;top:4px;width:6px;height:8px;border:2px solid #2EA3F2;border-radius:6px 6px 6px 0;transform:rotate(-45deg);box-sizing:border-box}
@media(max-width:767px){.dlx-res-important-grid{grid-template-columns:1fr}}

/* F8.D.3 — Opiniones realmente cerradas por defecto */
.product-type-deluxxo_excursion .woocommerce-tabs #tab-reviews{display:none!important}
.product-type-deluxxo_excursion .woocommerce-tabs #tab-reviews.is-open{display:block!important}
.product-type-deluxxo_excursion .woocommerce-tabs ul.tabs li.reviews_tab a:after{content:"Ver opiniones"!important}
.product-type-deluxxo_excursion .woocommerce-tabs.reviews-open ul.tabs li.reviews_tab a:after{content:"Ocultar opiniones"!important}

/* F8.D.3 — Etiquetas geográficas dentro de las imágenes */
.woocommerce ul.products li.product.type-product.product-type-deluxxo_excursion,
.woocommerce ul.products li.product.product-type-deluxxo_excursion{position:relative!important}
.woocommerce ul.products li.product .dlx-res-geo-label{position:absolute!important;z-index:5;top:10px;left:10px;margin:0!important;padding:6px 10px!important;border:0!important;border-radius:7px!important;background:#00357A!important;color:#fff!important;font-size:.75rem!important;font-weight:650!important;line-height:1!important;box-shadow:0 2px 8px rgba(13,27,42,.12)}
.single-product .product-type-deluxxo_excursion .woocommerce-product-gallery{position:relative!important}
.dlx-res-main-geo-label{position:absolute;z-index:8;top:12px;left:12px;padding:7px 11px;border-radius:7px;background:#00357A;color:#fff;font-size:.78rem;font-weight:650;line-height:1;box-shadow:0 2px 8px rgba(13,27,42,.14);pointer-events:none}

/* F8.D.3 — Grid relacionado estable: 3 / 2 / 1 */
body.single-product .product-type-deluxxo_excursion .related.products ul.products,
body.single-product .related.products ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:22px!important;row-gap:22px!important;width:100%!important}
body.single-product .product-type-deluxxo_excursion .related.products ul.products li.product,
body.single-product .related.products ul.products li.product{float:none!important;clear:none!important;width:100%!important;max-width:none!important;margin:0!important}
@media(max-width:980px){body.single-product .product-type-deluxxo_excursion .related.products ul.products,body.single-product .related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){body.single-product .product-type-deluxxo_excursion .related.products ul.products,body.single-product .related.products ul.products{grid-template-columns:1fr!important}}

/* F8.D.4 — Productos relacionados compactos y 3 columnas reales en escritorio */
body.single-product .product-type-deluxxo_excursion .related.products,
body.single-product .related.products{width:100%!important}
body.single-product .product-type-deluxxo_excursion .related.products ul.products,
body.single-product .related.products ul.products{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px!important;
  width:100%!important;
  max-width:1040px!important;
  margin:0 auto!important;
  padding:0!important;
  list-style:none!important;
}
body.single-product .product-type-deluxxo_excursion .related.products ul.products li.product,
body.single-product .related.products ul.products li.product{
  float:none!important;
  clear:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  grid-column:auto!important;
  grid-row:auto!important;
  transform:none!important;
}
body.single-product .related.products ul.products li.product:nth-child(1){grid-column:1!important;grid-row:1!important}
body.single-product .related.products ul.products li.product:nth-child(2){grid-column:2!important;grid-row:1!important}
body.single-product .related.products ul.products li.product:nth-child(3){grid-column:3!important;grid-row:1!important}
body.single-product .related.products ul.products li.product img{
  width:100%!important;
  aspect-ratio:16/9!important;
  object-fit:cover!important;
}
@media(max-width:980px){
  body.single-product .product-type-deluxxo_excursion .related.products ul.products,
  body.single-product .related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:760px!important;gap:20px!important}
  body.single-product .related.products ul.products li.product:nth-child(1),
  body.single-product .related.products ul.products li.product:nth-child(2),
  body.single-product .related.products ul.products li.product:nth-child(3){grid-column:auto!important;grid-row:auto!important}
}
@media(max-width:600px){
  body.single-product .product-type-deluxxo_excursion .related.products ul.products,
  body.single-product .related.products ul.products{grid-template-columns:1fr!important;max-width:420px!important;gap:18px!important}
}


/* F8.D.5 — Corrección de orden del grid de relacionados en tablet */
@media (min-width:601px) and (max-width:980px){
  body.single-product .product-type-deluxxo_excursion .related.products ul.products,
  body.single-product .related.products ul.products{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    justify-items:stretch!important;
    align-items:start!important;
    max-width:760px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.single-product .related.products ul.products li.product:nth-child(1){grid-column:1!important;grid-row:1!important}
  body.single-product .related.products ul.products li.product:nth-child(2){grid-column:2!important;grid-row:1!important}
  body.single-product .related.products ul.products li.product:nth-child(3){grid-column:1!important;grid-row:2!important}
}
@media(max-width:600px){
  body.single-product .related.products ul.products li.product:nth-child(1),
  body.single-product .related.products ul.products li.product:nth-child(2),
  body.single-product .related.products ul.products li.product:nth-child(3){grid-column:auto!important;grid-row:auto!important}
}

/* F8.E.1 — Catálogo: texto centrado y precio "Desde" compacto */
.woocommerce ul.products li.product.product-type-deluxxo_excursion .woocommerce-loop-product__title,
.woocommerce ul.products li.product.type-product.product-type-deluxxo_excursion .woocommerce-loop-product__title{
  text-align:center!important;
}
.woocommerce ul.products li.product.product-type-deluxxo_excursion .price,
.woocommerce ul.products li.product.type-product.product-type-deluxxo_excursion .price{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.woocommerce ul.products li.product.product-type-deluxxo_excursion .dlx-res-card-price,
.woocommerce ul.products li.product.type-product.product-type-deluxxo_excursion .dlx-res-card-price{
  display:inline-flex!important;
  align-items:baseline!important;
  justify-content:center!important;
  gap:5px!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  width:auto!important;
  max-width:100%!important;
  margin:0 auto!important;
}
.woocommerce ul.products li.product.product-type-deluxxo_excursion .dlx-res-card-price small,
.woocommerce ul.products li.product.type-product.product-type-deluxxo_excursion .dlx-res-card-price small{
  margin:0!important;
}


/* F8.E.2 — Barra de filtros dinámica del catálogo de Excursiones Deluxxo */
.dlx-res-catalog-tools{clear:both;margin:0 0 28px;padding:18px 20px;border:1px solid #E5E7EB;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(13,27,42,.05)}
.dlx-res-catalog-filters{display:grid;grid-template-columns:1.15fr 1.15fr .85fr .85fr 1.1fr auto;gap:12px;align-items:end}
.dlx-res-catalog-filters label{display:flex;flex-direction:column;gap:6px;margin:0}
.dlx-res-catalog-filters label>span{font-size:.72rem;font-weight:700;letter-spacing:.02em;color:#6B7280}
.dlx-res-catalog-filters select,.dlx-res-catalog-filters input{width:100%;min-height:42px;margin:0!important;padding:8px 10px!important;border:1px solid #D7DCE2!important;border-radius:9px!important;background:#fff!important;color:#1F2937!important;font-size:.9rem!important;box-shadow:none!important}
.dlx-res-catalog-filters select:focus,.dlx-res-catalog-filters input:focus{border-color:#2EA3F2!important;outline:2px solid rgba(46,163,242,.12)!important;outline-offset:0}
.dlx-res-filter-actions{display:flex;align-items:center;gap:10px;min-height:42px}
.dlx-res-filter-apply{min-height:42px!important;padding:9px 17px!important;border-radius:9px!important;background:#00357A!important;color:#fff!important;border:0!important;font-size:.88rem!important}
.dlx-res-filter-clear{font-size:.82rem;font-weight:600;color:#6B7280;text-decoration:none;white-space:nowrap}
.dlx-res-filter-clear:hover{color:#00357A}
.dlx-res-catalog-count{margin-top:14px;padding-top:12px;border-top:1px solid #EEF0F2;font-size:.84rem;color:#6B7280}
.dlx-res-catalog-count strong{color:#0D1B2A}
@media(max-width:1100px){.dlx-res-catalog-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.dlx-res-filter-actions{grid-column:span 1}}
@media(max-width:767px){.dlx-res-catalog-tools{padding:15px;margin-bottom:22px}.dlx-res-catalog-filters{grid-template-columns:1fr 1fr;gap:10px}.dlx-res-catalog-filters label:nth-child(1),.dlx-res-catalog-filters label:nth-child(2),.dlx-res-catalog-filters label:nth-child(5),.dlx-res-filter-actions{grid-column:1/-1}.dlx-res-filter-actions{justify-content:space-between}.dlx-res-filter-apply{flex:1}.dlx-res-filter-clear{padding:0 8px}}

/* F8.E.6 — Chips dinámicos por categoría de experiencia */
.dlx-res-category-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 16px;
  padding:0 0 16px;
  border-bottom:1px solid #EEF0F2;
}
.dlx-res-category-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 13px;
  border:1px solid #D7DCE2;
  border-radius:999px;
  background:#fff;
  color:#374151!important;
  font-size:.82rem;
  font-weight:600;
  line-height:1.2;
  text-decoration:none!important;
  transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease;
}
.dlx-res-category-chip:hover{
  border-color:#2EA3F2;
  color:#00357A!important;
  background:#F8FBFF;
}
.dlx-res-category-chip.is-active{
  border-color:#00357A;
  background:#00357A;
  color:#fff!important;
  box-shadow:0 4px 12px rgba(0,53,122,.14);
}
@media(max-width:767px){
  .dlx-res-category-chips{
    flex-wrap:nowrap;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    margin-left:-2px;
    margin-right:-2px;
    padding-left:2px;
    padding-right:2px;
  }
  .dlx-res-category-chip{flex:0 0 auto;white-space:nowrap}
}
\n\n/* F8.E.8 — Características/etiquetas discretas en la ficha individual */\nbody.single-product .dlx-res-product-tags{\n  margin:14px 0 16px;\n}\nbody.single-product .dlx-res-product-tags-label{\n  display:block;\n  margin:0 0 7px;\n  color:#6B7280;\n  font-size:.72rem;\n  font-weight:700;\n  letter-spacing:.02em;\n}\nbody.single-product .dlx-res-product-tag-list{\n  display:flex;\n  flex-wrap:wrap;\n  gap:7px;\n}\nbody.single-product .dlx-res-product-tag{\n  display:inline-flex;\n  align-items:center;\n  min-height:30px;\n  padding:6px 11px;\n  border:1px solid #DCE3EA;\n  border-radius:999px;\n  background:#F8FAFC;\n  color:#374151;\n  font-size:.78rem;\n  font-weight:600;\n  line-height:1.2;\n}\n@media(max-width:767px){\n  body.single-product .dlx-res-product-tags{margin:12px 0 15px}\n  body.single-product .dlx-res-product-tag-list{gap:6px}\n  body.single-product .dlx-res-product-tag{font-size:.76rem;padding:6px 10px}\n}\n

/* =========================================================
 * F8.E.9 — Product tag chips visual fix
 * ========================================================= */
.single-product .dlx-res-product-tags {
    margin: 18px 0 20px;
}

.single-product .dlx-res-product-tags__label {
    display: block;
    margin: 0 0 8px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
    color: #1F2937;
}

.single-product .dlx-res-product-tags__list {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.single-product .dlx-res-product-tags__chip {
    display: inline-flex !important;
    align-items: center;
    width: auto !important;
    max-width: 100%;
    margin: 0 !important;
    padding: 6px 10px !important;
    border: 1px solid #D9E0E7;
    border-radius: 999px;
    background: #F7F9FB;
    color: #344054;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.25;
    white-space: normal;
    text-decoration: none !important;
    box-sizing: border-box;
}

.single-product .dlx-res-product-tags__chip:hover,
.single-product .dlx-res-product-tags__chip:focus {
    background: #F7F9FB;
    color: #344054;
    border-color: #D9E0E7;
    text-decoration: none !important;
}

@media (max-width: 600px) {
    .single-product .dlx-res-product-tags {
        margin: 16px 0 18px;
    }

    .single-product .dlx-res-product-tags__list {
        gap: 7px !important;
    }

    .single-product .dlx-res-product-tags__chip {
        padding: 6px 9px !important;
        font-size: 12.5px;
    }
}


/* F8.E.9 compatibility with exact F8.E.8 markup */
.single-product .dlx-res-product-tags-label {
    display: block !important;
    margin: 0 0 8px !important;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
    color: #1F2937;
}

.single-product .dlx-res-product-tag-list {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* HOTFIX v1.0.5 — defensa en profundidad para ficha móvil.
 * La guardia crítica equivalente se imprime además al final de wp_head
 * únicamente en excursiones para sobrevivir a combinación/UCSS/orden de carga. */
@media (max-width:767px){
  body.single-product .woocommerce div.product,
  body.single-product #main-content .woocommerce div.product{display:block!important}
  body.single-product .woocommerce div.product .woocommerce-product-gallery,
  body.single-product .woocommerce div.product div.summary,
  body.single-product .woocommerce div.product .summary,
  body.single-product #main-content .woocommerce div.product .woocommerce-product-gallery,
  body.single-product #main-content .woocommerce div.product div.summary{
    float:none!important;
    clear:both!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:none!important;
    flex-basis:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }
  body.single-product .woocommerce div.product .woocommerce-product-gallery{margin-bottom:24px!important}
  body.single-product .woocommerce div.product div.summary{padding-top:0!important}
}


/* HOTFIX v1.0.6 — selector directo independiente de wrappers .woocommerce. */
@media (max-width:767px){
  body.single-product div.product.product-type-deluxxo_excursion{display:block!important;width:100%!important;max-width:100%!important}
  body.single-product div.product.product-type-deluxxo_excursion > .woocommerce-product-gallery,
  body.single-product div.product.product-type-deluxxo_excursion > .summary,
  body.single-product div.product.product-type-deluxxo_excursion .woocommerce-product-gallery,
  body.single-product div.product.product-type-deluxxo_excursion div.summary{
    float:none!important;clear:both!important;display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;flex:none!important;flex-basis:100%!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important
  }
}
