:root{--gtp-blue:#087cc4;--gtp-dark:#173550;--gtp-red:#ef3340;--gtp-bg:#f4f6f9;--gtp-border:#dce3e9;--gtp-radius:12px}.gtp-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 18px;border:1px solid var(--gtp-blue);border-radius:8px;background:var(--gtp-blue);color:#fff!important;text-decoration:none!important;font-weight:600;cursor:pointer}.gtp-button:hover{filter:brightness(.94)}.gtp-button:disabled{opacity:.55;cursor:wait}.gtp-button-light{background:#fff;color:var(--gtp-blue)!important}.gtp-catalog{display:grid;grid-template-columns:245px minmax(0,1fr);gap:22px;max-width:1800px;margin:0 auto;padding:20px}.gtp-filters{background:#f0f2f5;padding:16px;border-radius:var(--gtp-radius);align-self:start;position:sticky;top:20px}.gtp-filters label{display:block;margin:16px 0 0;font-size:12px;text-transform:uppercase;font-weight:700;color:#44515c}.gtp-filters input,.gtp-filters select,.gtp-toolbar select{width:100%;height:44px;margin-top:5px;padding:0 12px;border:1px solid var(--gtp-border);border-radius:7px;background:#fff;color:#283746}.gtp-clear{width:100%;padding:10px;border:1px solid var(--gtp-red);border-radius:7px;background:#fff;color:var(--gtp-red);cursor:pointer}.gtp-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.gtp-toolbar select{width:auto;min-width:250px;margin:0}.gtp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.gtp-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e5ebef;border-radius:var(--gtp-radius);overflow:hidden;box-shadow:0 7px 24px rgba(21,47,67,.08)}.gtp-card[hidden]{display:none}.gtp-card-image{display:block;aspect-ratio:1.35;overflow:hidden}.gtp-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gtp-card:hover img{transform:scale(1.035)}.gtp-card-body{display:flex;flex:1;flex-direction:column;padding:15px}.gtp-card h3{font-size:18px;line-height:1.25;margin:0 0 15px}.gtp-card h3 a{color:var(--gtp-blue);text-decoration:none}.gtp-card-stats{display:flex;justify-content:space-between;gap:12px;color:#5a6670}.gtp-card-stats span:last-child{text-align:right}.gtp-card-stats strong{color:#263f54}.gtp-route{min-height:48px;margin:20px 0;color:#62717d;font-size:13px}.gtp-card-actions{display:flex;justify-content:space-between;gap:10px;margin-top:auto}.gtp-card-actions .gtp-button{min-height:36px;padding:7px 12px;font-size:13px}.gtp-empty{text-align:center;padding:40px;background:var(--gtp-bg);border-radius:var(--gtp-radius)}
.gtp-single{color:#203446}.gtp-hero{width:100vw;min-height:520px;margin-left:calc(50% - 50vw);background-position:center;background-size:cover;display:flex;align-items:flex-end}.gtp-hero-inner{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;width:min(1200px,calc(100% - 40px));margin:0 auto;padding:60px 0;color:#fff}.gtp-hero h1{margin:5px 0 0;color:#fff;font-size:clamp(38px,6vw,76px);line-height:1.02;text-shadow:0 4px 18px rgba(0,0,0,.35)}.gtp-button-hero{font-size:18px;padding:14px 28px;white-space:nowrap}.gtp-plan-container{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:40px;max-width:1200px;margin:45px auto;padding:0 20px}.gtp-section{margin-bottom:38px}.gtp-section h2{color:var(--gtp-dark);font-size:28px}.gtp-inclusions{display:grid;grid-template-columns:1fr 1fr;gap:30px}.gtp-itinerary details{border-bottom:1px solid var(--gtp-border);padding:14px 0}.gtp-itinerary summary{display:flex;gap:15px;font-weight:700;cursor:pointer}.gtp-itinerary summary span{color:var(--gtp-blue);min-width:60px}.gtp-itinerary details>div{padding:12px 0 0 75px}.gtp-documents{display:flex;gap:12px}.gtp-booking-card{align-self:start;position:sticky;top:25px;padding:25px;border:1px solid var(--gtp-border);border-radius:var(--gtp-radius);background:#fff;box-shadow:0 12px 35px rgba(24,54,78,.12)}.gtp-booking-card h2{margin-top:0}.gtp-booking-form label{display:flex;flex-direction:column;gap:6px;margin:14px 0;font-size:13px;font-weight:700}.gtp-booking-form input,.gtp-booking-form select{width:100%;height:44px;padding:0 10px;border:1px solid var(--gtp-border);border-radius:7px;background:#fff}.gtp-form-message{padding:12px;border-radius:7px;background:#ffeded;color:#a1262f;margin-bottom:12px}.gtp-room,.gtp-passenger-room{margin:15px 0;padding:12px;border:1px solid var(--gtp-border);border-radius:8px}.gtp-room{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gtp-room legend,.gtp-passenger-room legend{padding:0 6px;font-weight:700}.gtp-passenger{padding:12px 0;border-bottom:1px dashed var(--gtp-border)}.gtp-passenger:last-child{border:0}.gtp-summary{padding:15px;border-radius:9px;background:var(--gtp-bg)}.gtp-summary h4{margin-top:0}.gtp-price-lines{display:grid;gap:5px}.gtp-total{font-size:22px;font-weight:800;color:var(--gtp-dark)}.gtp-check{flex-direction:row!important;align-items:flex-start}.gtp-check input{width:auto;height:auto;margin-top:3px}.gtp-text-link{display:block;margin-top:14px}.gtp-success{text-align:center}.gtp-success .gtp-button{margin:4px}.gtp-account,.gtp-account-box,.gtp-login-page{max-width:900px;margin:35px auto;padding:25px}.gtp-login-page{max-width:480px;border:1px solid var(--gtp-border);border-radius:var(--gtp-radius)}.gtp-login-page input[type=text],.gtp-login-page input[type=password]{width:100%}.gtp-reservation-list{display:grid;gap:12px}.gtp-reservation-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--gtp-border);border-radius:10px}.gtp-reservation-list h3{margin:7px 0}.gtp-status{display:inline-block;padding:4px 9px;border-radius:20px;background:#e9f5ff;color:#066ba8;font-size:12px;font-weight:700}
@media(max-width:900px){.gtp-catalog{grid-template-columns:1fr}.gtp-filters{position:static}.gtp-plan-container{grid-template-columns:1fr}.gtp-booking-card{position:static}.gtp-inclusions{grid-template-columns:1fr}.gtp-hero{min-height:430px}.gtp-hero-inner{align-items:flex-start;flex-direction:column}.gtp-toolbar{align-items:stretch;flex-direction:column}.gtp-toolbar select{width:100%}}@media(max-width:560px){.gtp-catalog{padding:10px}.gtp-grid{grid-template-columns:1fr}.gtp-hero-inner{width:calc(100% - 28px)}.gtp-hero h1{font-size:40px}.gtp-room{grid-template-columns:1fr}.gtp-reservation-list article{align-items:flex-start;flex-direction:column}.gtp-card-actions{flex-direction:column}}
.gtp-account-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:25px}.gtp-points-balance{display:flex;flex-direction:column;min-width:150px;padding:16px 20px;border-radius:12px;background:linear-gradient(135deg,#173550,#087cc4);color:#fff;text-align:center}.gtp-points-balance strong{font-size:30px}.gtp-points-balance span{font-size:12px}.gtp-reservation-card{display:block!important;padding:0!important;overflow:hidden}.gtp-reservation-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px}.gtp-reservation-card details{border-top:1px solid var(--gtp-border)}.gtp-reservation-card summary{padding:13px 18px;color:var(--gtp-blue);font-weight:700;cursor:pointer}.gtp-reservation-details{padding:5px 18px 20px}.gtp-reservation-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.gtp-button-danger{border-color:#c92f3a;background:#fff;color:#c92f3a!important}.gtp-points-history{margin-top:45px}.gtp-points-history table{width:100%;border-collapse:collapse}.gtp-points-history th,.gtp-points-history td{padding:11px;border-bottom:1px solid var(--gtp-border);text-align:left}.gtp-points-history .positive{color:#167a45;font-weight:700}.gtp-points-history .negative{color:#b32d2e;font-weight:700}@media(max-width:620px){.gtp-account-head,.gtp-reservation-summary{align-items:flex-start;flex-direction:column}.gtp-points-balance{width:100%}.gtp-points-history{overflow:auto}}
.gtp-button-disabled{border-color:#9aa7b1;background:#9aa7b1;cursor:not-allowed}.gtp-sold-out-badge{display:inline-block;padding:6px 12px;border-radius:30px;background:#fee9eb;color:#b32634;font-weight:800}.gtp-choice-buttons{display:flex;gap:9px;margin-top:15px}.gtp-choice-buttons>*{flex:1}.gtp-choice-help{font-size:12px;color:#6a7780}.gtp-public-actions label{display:flex;flex-direction:column;gap:6px;font-weight:700}.gtp-public-actions select{height:44px;padding:0 10px;border:1px solid var(--gtp-border);border-radius:7px;background:#fff}
.gtp-auth-shell{min-height:680px;width:100vw;margin-left:calc(50% - 50vw);padding:65px 20px;background:radial-gradient(circle at 15% 15%,rgba(16,145,211,.18),transparent 35%),linear-gradient(135deg,#0f2f4b,#075f98);display:flex;flex-direction:column;align-items:center;justify-content:center}.gtp-auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:22px;color:#fff}.gtp-auth-brand>span{display:grid;place-items:center;width:50px;height:50px;border:2px solid rgba(255,255,255,.7);border-radius:16px;font-size:27px;font-weight:900}.gtp-auth-brand div{display:flex;flex-direction:column}.gtp-auth-brand strong{font-size:24px}.gtp-auth-brand small{opacity:.76}.gtp-auth-card{width:min(470px,100%);padding:30px;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.26)}.gtp-auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin:-8px 0 25px;padding:5px;border-radius:10px;background:#eef3f6}.gtp-auth-tabs button{padding:10px;border:0;border-radius:8px;background:transparent;color:#5e6b75;font-weight:700;cursor:pointer}.gtp-auth-tabs button.active{background:#fff;color:var(--gtp-blue);box-shadow:0 3px 12px rgba(0,0,0,.08)}.gtp-auth-card h2{margin:0 0 7px;color:var(--gtp-dark)}.gtp-auth-card form>p{margin-top:0;color:#65727c}.gtp-auth-card label,.gtp-profile-card label{display:flex;flex-direction:column;gap:6px;margin:14px 0;font-size:13px;font-weight:700}.gtp-auth-card input,.gtp-profile-card input{height:46px;padding:0 12px;border:1px solid var(--gtp-border);border-radius:8px}.gtp-auth-card .gtp-button{width:100%;margin-top:8px}.gtp-auth-message,.gtp-account-message{margin-bottom:15px;padding:11px;border-radius:8px;background:#eaf7ef;color:#17643b}.gtp-auth-message.error,.gtp-account-message.error{background:#ffebed;color:#a12632}
.gtp-account-portal{max-width:1180px;margin:35px auto;padding:0 20px;color:#243a4c}.gtp-portal-header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:32px;border-radius:18px;background:linear-gradient(130deg,#102f49,#087cc4);color:#fff}.gtp-portal-header span{font-size:12px;text-transform:uppercase;letter-spacing:1.6px;opacity:.75}.gtp-portal-header h1{margin:4px 0;color:#fff}.gtp-portal-header p{margin:0;opacity:.82}.gtp-mini-level{display:flex;align-items:center;gap:12px;min-width:160px;padding:13px 17px;border:1px solid rgba(255,255,255,.28);border-radius:13px;background:rgba(255,255,255,.12)}.gtp-mini-level>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.18);font-size:22px}.gtp-mini-level div{display:flex;flex-direction:column}.gtp-account-tabs{display:flex;gap:5px;margin:22px 0;padding:6px;border:1px solid var(--gtp-border);border-radius:12px;background:#f5f7f9;overflow:auto}.gtp-account-tabs button{padding:11px 17px;border:0;border-radius:8px;background:transparent;color:#50606d;font-weight:700;white-space:nowrap;cursor:pointer}.gtp-account-tabs button.active{background:#fff;color:var(--gtp-blue);box-shadow:0 3px 12px rgba(20,49,70,.1)}.gtp-account-tabs button[data-account-tab="logout"]{background:#c92f3a;color:#fff;border:1px solid #c92f3a}.gtp-account-tabs button[data-account-tab="logout"]:hover{background:#a9232e;color:#fff}.gtp-button-danger-solid{color:#fff!important}.gtp-account-tabs button span{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:4px;padding:0 5px;border-radius:10px;background:#e4f2fb;font-size:11px}.gtp-account-panel{display:none}.gtp-account-panel.active{display:block}.gtp-account-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.gtp-profile-card,.gtp-level-card,.gtp-points-history,.gtp-logout-card,.gtp-empty-account{padding:26px;border:1px solid var(--gtp-border);border-radius:16px;background:#fff;box-shadow:0 8px 26px rgba(28,57,78,.06)}.gtp-level-card{display:flex;gap:22px;align-items:center;position:relative;overflow:hidden}.gtp-level-card:after{content:"";position:absolute;right:-45px;top:-45px;width:145px;height:145px;border-radius:50%;background:currentColor;opacity:.06}.gtp-badge{display:grid;place-items:center;flex:0 0 108px;width:108px;height:108px;border:8px double currentColor;border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(255,255,255,.35));box-shadow:inset 0 0 0 4px rgba(255,255,255,.7),0 10px 24px rgba(0,0,0,.15)}.gtp-badge span{font-size:46px}.gtp-level-bronze{color:#a66335}.gtp-level-silver{color:#778692}.gtp-level-gold{color:#c99312}.gtp-level-diamond{color:#1886b5}.gtp-level-info{flex:1}.gtp-level-info small{color:#65737d}.gtp-level-info h2{margin:2px 0;color:currentColor}.gtp-level-info>strong{color:#243a4c}.gtp-level-progress{height:9px;margin:14px 0 8px;border-radius:10px;background:#edf0f2;overflow:hidden}.gtp-level-progress i{display:block;height:100%;border-radius:10px;background:currentColor}.gtp-level-info p{color:#64727d;font-size:13px}.gtp-level-ranges{display:flex;flex-wrap:wrap;gap:6px}.gtp-level-ranges span{padding:4px 7px;border-radius:12px;background:#f2f4f6;color:#687580;font-size:10px}.gtp-panel-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.gtp-panel-title h2{margin-bottom:4px}.gtp-panel-title p{margin:0;color:#687580}.gtp-points-history{margin-top:0}.gtp-logout-card{max-width:520px;margin:50px auto;text-align:center}.gtp-logout-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 16px;border-radius:50%;background:#ffedf0;color:#bd2936;font-size:30px}.gtp-button-danger-solid{border-color:#c92f3a;background:#c92f3a}.gtp-table-wrap{overflow:auto}@media(max-width:780px){.gtp-portal-header,.gtp-panel-title{align-items:flex-start;flex-direction:column}.gtp-account-grid{grid-template-columns:1fr}.gtp-level-card{align-items:flex-start;flex-direction:column}.gtp-choice-buttons{flex-direction:column}}

/* Ficha renovada del plan */
.gtp-destination-gallery{width:100vw;margin-left:calc(50% - 50vw);background:#102f49}.gtp-gallery-main{height:min(64vw,620px);min-height:390px;position:relative;overflow:hidden;background:#173550}.gtp-gallery-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s}.gtp-gallery-slide.is-active{opacity:1}.gtp-gallery-overlay{position:absolute;inset:auto 0 0;padding:110px max(24px,calc((100vw - 1200px)/2)) 45px;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff}.gtp-gallery-overlay span{font-weight:700;letter-spacing:.3px}.gtp-gallery-overlay h1{margin:6px 0 0;color:#fff;font-size:clamp(34px,5vw,68px);line-height:1.02;text-shadow:0 3px 15px rgba(0,0,0,.35)}.gtp-gallery-thumbs{display:flex;gap:8px;overflow:auto;max-width:1200px;margin:0 auto;padding:12px 20px}.gtp-gallery-thumb{flex:0 0 88px;width:88px;height:62px;padding:0;border:2px solid transparent;border-radius:7px;overflow:hidden;background:none;cursor:pointer;opacity:.75}.gtp-gallery-thumb.is-active{border-color:#fff;opacity:1}.gtp-gallery-thumb img{width:100%;height:100%;object-fit:cover}.gtp-plan-layout{align-items:start}.gtp-plan-sidebar{position:relative}.gtp-plan-sidebar>.gtp-booking-card{margin-top:18px}.gtp-plan-nav{position:sticky;top:25px;display:flex;flex-direction:column;padding:20px;border:1px solid var(--gtp-border);border-radius:var(--gtp-radius);background:#fff;box-shadow:0 8px 25px rgba(24,54,78,.08)}.gtp-plan-nav strong{margin-bottom:12px;color:var(--gtp-dark);font-size:16px}.gtp-plan-nav a{padding:11px 4px;border-top:1px solid #edf0f2;color:#4e6070;text-decoration:none;font-weight:600}.gtp-plan-nav a:hover{color:var(--gtp-blue)}.gtp-plan-nav .gtp-nav-book{margin-top:12px;padding:12px;border:0;border-radius:8px;background:var(--gtp-blue);color:#fff!important;text-align:center}.gtp-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.gtp-kicker{display:block;margin-bottom:4px;color:var(--gtp-blue);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.3px}.gtp-heading-note{color:#6b7882;font-size:13px}.gtp-pricing-table-wrap{overflow:auto;border:1px solid var(--gtp-border);border-radius:12px}.gtp-pricing-table{width:100%;min-width:620px;border-collapse:collapse;background:#fff}.gtp-pricing-table th,.gtp-pricing-table td{padding:15px;border-bottom:1px solid var(--gtp-border);text-align:left;vertical-align:middle}.gtp-pricing-table th{background:#f6f8fa;color:#52616d;font-size:12px;text-transform:uppercase;letter-spacing:.4px}.gtp-pricing-table tbody tr:last-child td{border-bottom:0}.gtp-pricing-table td:not(:first-child){font-weight:800;color:var(--gtp-dark)}.gtp-pricing-table td:first-child strong{display:block}.gtp-pricing-table td small{display:block;margin-top:4px;color:#7a8790;font-weight:400}.gtp-availability-open{color:#147442;font-size:13px}.gtp-availability-sold{color:#b32634;font-size:13px}.gtp-conditions-box{padding:20px 22px;border:1px solid var(--gtp-border);border-radius:12px;background:#f8fafb}.gtp-conditions-box p:last-child{margin-bottom:0}
@media(max-width:900px){.gtp-gallery-main{height:55vw;min-height:340px}.gtp-plan-nav{position:static;top:auto}.gtp-plan-sidebar>.gtp-booking-card{margin-top:20px}.gtp-gallery-overlay{padding:90px 20px 28px}.gtp-gallery-overlay h1{font-size:40px}}
@media(max-width:560px){.gtp-gallery-main{height:92vw;min-height:360px}.gtp-gallery-overlay h1{font-size:34px}.gtp-gallery-thumbs{padding:9px 12px}.gtp-gallery-thumb{flex-basis:72px;width:72px;height:52px}.gtp-plan-nav{padding:14px}.gtp-pricing-table{min-width:560px}}

/* ===== Ficha de plan: rediseño completo ===== */
.gtp-single{width:100%;max-width:none;margin:0;padding:0;background:#fff;color:#243746}
.gtp-destination-gallery{width:100vw;margin-left:calc(50% - 50vw);background:#0f2d45;padding:24px 20px 28px}
.gtp-gallery-inner{width:min(1240px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,.7fr);gap:10px}
.gtp-gallery-main{height:470px;min-height:470px;position:relative;overflow:hidden;border-radius:18px;background:#173550;box-shadow:0 18px 50px rgba(4,18,29,.24)}
.gtp-gallery-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s,transform .55s}
.gtp-gallery-slide.is-active{opacity:1}
.gtp-gallery-main:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,31,47,.05) 45%,rgba(7,23,35,.78) 100%);pointer-events:none}
.gtp-gallery-overlay{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:42px 42px 34px;color:#fff}
.gtp-gallery-overlay span{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.14);backdrop-filter:blur(5px);font-size:13px;font-weight:800;letter-spacing:.35px}
.gtp-gallery-overlay h1{margin:10px 0 0;color:#fff;font-size:clamp(38px,5vw,64px);line-height:1.02;text-shadow:0 3px 18px rgba(0,0,0,.28)}
.gtp-gallery-side{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:10px;min-height:470px}
.gtp-gallery-thumb{position:relative;display:block;min-width:0;padding:0;border:0;border-radius:14px;overflow:hidden;background:#173550;cursor:pointer;box-shadow:0 12px 32px rgba(4,18,29,.17)}
.gtp-gallery-thumb img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s,filter .25s}
.gtp-gallery-thumb:hover img{transform:scale(1.04);filter:brightness(.92)}
.gtp-gallery-thumb span{position:absolute;left:12px;bottom:10px;padding:5px 8px;border-radius:999px;background:rgba(11,29,42,.62);color:#fff;font-size:11px;font-weight:700}
.gtp-plan-shell{width:100vw;margin-left:calc(50% - 50vw);background:#f5f7f9;padding:30px 20px 70px}
.gtp-plan-container{width:min(1240px,100%);max-width:none;margin:0 auto;padding:0;display:block}
.gtp-plan-topbar{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 30px;margin-bottom:22px;border:1px solid #e2e8ed;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(26,54,73,.06)}
.gtp-plan-intro h2{margin:2px 0 10px;color:var(--gtp-dark);font-size:clamp(30px,4vw,44px);line-height:1.05}
.gtp-plan-meta{display:flex;flex-wrap:wrap;gap:8px}
.gtp-plan-meta span{padding:7px 11px;border-radius:999px;background:#f0f4f7;color:#566673;font-size:13px;font-weight:700}
.gtp-plan-price-card{min-width:230px;padding:17px 20px;border-left:1px solid #dfe6eb;text-align:right}
.gtp-plan-price-card span,.gtp-plan-price-card small{display:block;color:#75828c;font-size:12px}
.gtp-plan-price-card strong{display:block;margin:2px 0;color:var(--gtp-blue);font-size:30px;line-height:1.05}
.gtp-plan-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}
.gtp-plan-main{min-width:0;display:flex;flex-direction:column;gap:34px}
.gtp-section{margin:0}
.gtp-content-card,.gtp-pricing-section,.gtp-conditions-box,.gtp-documents{padding:30px;border:1px solid #e0e7ec;border-radius:18px;background:#fff;box-shadow:0 7px 22px rgba(26,54,73,.045);box-sizing:border-box;width:100%}.gtp-pricing-section{display:block;position:relative;isolation:isolate;scroll-margin-top:30px}.gtp-pricing-section .gtp-pricing-table-wrap{margin-top:4px}
.gtp-section h2{margin:2px 0 16px;color:var(--gtp-dark);font-size:28px;line-height:1.15}
.gtp-section p:last-child{margin-bottom:0}
.gtp-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}
.gtp-kicker{display:block;margin-bottom:5px;color:var(--gtp-blue);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1.25px}
.gtp-kicker-success{color:#21814f}.gtp-kicker-danger{color:#b14454}.gtp-heading-note{color:#73808a;font-size:13px}
.gtp-inclusions{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.gtp-inclusions .gtp-content-card{height:100%}
.gtp-inclusions ul{padding-left:20px;margin:0}.gtp-inclusions li{margin:8px 0}
.gtp-itinerary-section{padding:30px;border:1px solid #e0e7ec;border-radius:18px;background:#fff;box-shadow:0 7px 22px rgba(26,54,73,.045)}.gtp-itinerary-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:8px}.gtp-itinerary-head h2{margin:2px 0 0}.gtp-itinerary-toggle{appearance:none;border:0;background:transparent;color:var(--gtp-blue);font-weight:800;font-size:13px;padding:8px 4px;cursor:pointer;white-space:nowrap}.gtp-itinerary-toggle span{display:inline-block;margin-left:4px;transition:transform .2s}.gtp-itinerary-toggle.is-open span{transform:rotate(180deg)}.gtp-itinerary{padding:0}.gtp-itinerary details{padding:18px 0;border-bottom:1px solid #e6ecef}.gtp-itinerary details:last-child{border-bottom:0}.gtp-itinerary summary{display:flex;gap:16px;align-items:center;font-weight:800;color:#314b5e;cursor:pointer;list-style:none;position:relative;padding-right:34px}.gtp-itinerary summary::-webkit-details-marker{display:none}.gtp-itinerary-day{display:inline-flex;align-items:center;justify-content:center;min-width:62px;padding:7px 10px;border-radius:999px;background:#ebf7fd;color:var(--gtp-blue);font-size:12px;flex:0 0 auto}.gtp-itinerary summary strong{display:block;min-width:0;line-height:1.35}.gtp-itinerary-chevron{position:absolute;right:2px;top:50%;width:10px;height:10px;border-right:2px solid #61717d;border-bottom:2px solid #61717d;transform:translateY(-65%) rotate(45deg);transition:transform .2s ease}.gtp-itinerary details[open] .gtp-itinerary-chevron{transform:translateY(-25%) rotate(225deg)}.gtp-itinerary details>div{padding:14px 38px 2px 78px;color:#61717d;text-align:justify;line-height:1.7}.gtp-itinerary details>div p{margin:0 0 12px;text-align:justify}.gtp-itinerary details>div p:last-child{margin-bottom:0}
.gtp-pricing-table-wrap{overflow:auto;border:1px solid #e0e7ec;border-radius:14px}.gtp-pricing-table{width:100%;min-width:620px;border-collapse:collapse;background:#fff}.gtp-pricing-table th,.gtp-pricing-table td{padding:15px 16px;border-bottom:1px solid #e5ebef;text-align:left;vertical-align:middle}.gtp-pricing-table th{background:#f6f8fa;color:#596a76;font-size:11px;text-transform:uppercase;letter-spacing:.55px}.gtp-pricing-table tr:last-child td{border-bottom:0}.gtp-pricing-table td:not(:first-child){font-weight:800;color:#243746}.gtp-pricing-table td:first-child strong{display:block}.gtp-pricing-table td small{display:block;margin-top:4px;color:#788691;font-weight:400}.gtp-availability-open{color:#16784a;font-size:13px}.gtp-availability-sold{color:#b32634;font-size:13px}
.gtp-plan-sidebar{position:sticky;top:24px;display:flex;flex-direction:column;gap:18px;min-width:0}
.gtp-plan-nav{position:static;display:flex;flex-direction:column;padding:22px;border:1px solid #e0e7ec;border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(26,54,73,.065)}
.gtp-plan-nav strong{margin-bottom:9px;color:var(--gtp-dark);font-size:17px}.gtp-plan-nav a{padding:12px 4px;border-top:1px solid #edf0f2;color:#50616e;text-decoration:none;font-weight:700}.gtp-plan-nav a:hover,.gtp-plan-nav a:focus{color:var(--gtp-blue)}
.gtp-booking-card{position:static;align-self:stretch;padding:24px;border:1px solid #dbe4ea;border-radius:18px;background:#fff;box-shadow:0 14px 36px rgba(23,53,80,.11)}
.gtp-booking-card-head{padding-bottom:15px;margin-bottom:6px;border-bottom:1px solid #eef2f4}.gtp-booking-card-head h3{margin:2px 0 6px;color:var(--gtp-dark);font-size:24px}.gtp-booking-card-head p{margin:0;color:#6d7b85;font-size:13px}
.gtp-booking-form{margin-top:8px}.gtp-booking-form label{font-size:13px}.gtp-booking-form input,.gtp-booking-form select{border-radius:9px}.gtp-choice-buttons{flex-direction:column}.gtp-choice-buttons>*{width:100%}
.gtp-conditions-box{padding:26px 30px;background:#fbfcfd}.gtp-conditions-box p:last-child{margin-bottom:0}
.gtp-documents{display:flex;flex-wrap:wrap;gap:10px}
.gtp-points-earned{display:flex;flex-direction:column;gap:3px;max-width:330px;margin:18px auto;padding:15px 18px;border:1px solid #bfe7d0;border-radius:12px;background:#effaf3;color:#1e6c43}.gtp-points-earned strong{font-size:20px}.gtp-points-earned span{font-size:13px}
.gtp-reservation-total{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.gtp-points-earned-inline{display:inline-flex;padding:5px 8px;border-radius:999px;background:#effaf3;color:#1e6c43;font-size:11px;font-weight:800}.gtp-points-lost-inline{background:#fff1f1;color:#b42318}
@media(max-width:980px){.gtp-gallery-inner{grid-template-columns:1fr}.gtp-gallery-side{min-height:150px;grid-template-columns:repeat(4,1fr);grid-auto-rows:120px}.gtp-plan-layout{grid-template-columns:1fr}.gtp-plan-sidebar{position:static}.gtp-plan-nav{position:static}.gtp-plan-topbar{align-items:flex-start;flex-direction:column}.gtp-plan-price-card{width:100%;border-left:0;border-top:1px solid #e0e7ec;padding:16px 0 0;text-align:left}}
@media(max-width:700px){.gtp-destination-gallery{padding:12px 12px 18px}.gtp-gallery-main{height:360px;min-height:360px}.gtp-gallery-overlay{padding:28px 22px 24px}.gtp-gallery-overlay h1{font-size:36px}.gtp-gallery-side{grid-template-columns:repeat(2,1fr);grid-auto-rows:112px}.gtp-plan-shell{padding:18px 12px 45px}.gtp-plan-topbar,.gtp-content-card,.gtp-pricing-section,.gtp-conditions-box,.gtp-documents,.gtp-booking-card,.gtp-plan-nav{padding:20px}.gtp-inclusions{grid-template-columns:1fr}.gtp-plan-price-card strong{font-size:26px}.gtp-section h2{font-size:24px}.gtp-itinerary details>div{padding-left:0}}

.gtp-gallery-thumb:only-child{grid-column:1/-1}.gtp-nav-book{margin-top:12px!important;padding:12px 14px!important;border:0!important;border-radius:10px!important;background:var(--gtp-blue)!important;color:#fff!important;text-align:center}.gtp-nav-book:hover{color:#fff!important;filter:brightness(.95)}

/* ===== Aislamiento de la ficha frente a temas de WordPress ===== */
body.single-gtp_plan .gtp-plan-template,
body.single-gtp_plan .gtp-single {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
body.single-gtp_plan .gtp-plan-template {
	box-sizing: border-box;
	--wp--style--root-padding-top: 0px;
	--wp--style--root-padding-right: 0px;
	--wp--style--root-padding-bottom: 0px;
	--wp--style--root-padding-left: 0px;
}
body.single-gtp_plan .gtp-destination-gallery,
body.single-gtp_plan .gtp-plan-shell {
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box;
}
body.single-gtp_plan .gtp-single {
	overflow-x: clip;
}
body.single-gtp_plan .gtp-gallery-overlay h1 {
	display: none !important;
}


/* ===== Paso 1 de reserva: diseño compacto y aislado de Twenty Twenty-Four ===== */
.gtp-booking-form,
.gtp-booking-form *,
.gtp-booking-form *::before,
.gtp-booking-form *::after{box-sizing:border-box}
.gtp-booking-form{width:100%;min-width:0;color:#203446}
.gtp-booking-form h3,.gtp-booking-form p{max-width:none}
.gtp-step-heading{display:flex;align-items:flex-start;gap:12px;margin:0 0 20px}
.gtp-step-number{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;margin-top:1px;border-radius:50%;background:#eaf6fc;color:var(--gtp-blue);font-size:14px;font-weight:900}
.gtp-step-heading>div{min-width:0}
.gtp-step-kicker{display:block;margin:0 0 3px;color:var(--gtp-blue);font-size:10px;font-weight:900;letter-spacing:1.15px;text-transform:uppercase}
.gtp-step-heading h3{margin:0!important;color:var(--gtp-dark)!important;font-size:21px!important;line-height:1.18!important;font-weight:800!important}
.gtp-step-heading p{margin:5px 0 0;color:#74818b;font-size:12px;line-height:1.45}
.gtp-booking-form .gtp-form-field{display:flex;flex-direction:column;gap:7px;margin:0 0 15px!important;font-size:12px!important;line-height:1.25;font-weight:800;color:#3f5362}
.gtp-booking-form .gtp-form-field select,
.gtp-booking-form .gtp-form-field input{width:100%!important;min-width:0!important;max-width:100%!important;height:44px!important;margin:0!important;padding:0 11px!important;border:1px solid #d7e1e8!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;color:#243746!important;font-size:13px!important;line-height:44px}
.gtp-booking-form .gtp-form-field select:focus,
.gtp-booking-form .gtp-form-field input:focus{border-color:var(--gtp-blue)!important;outline:0!important;box-shadow:0 0 0 3px rgba(8,124,196,.10)!important}
.gtp-room-count-field{max-width:150px}
.gtp-room{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:18px 0 18px!important;padding:16px 11px 11px!important;border:1px solid #dbe5eb!important;border-radius:13px!important;background:#f8fafc!important;min-width:0!important}
.gtp-room legend{grid-column:1/-1!important;width:auto!important;margin:0 0 2px 5px!important;padding:0 6px!important;color:#324957!important;background:transparent!important;font-size:13px!important;font-weight:800!important;line-height:1.2!important}
.gtp-room-field{display:flex!important;flex-direction:column!important;gap:6px!important;min-width:0!important;margin:0!important;padding:0!important}
.gtp-room-field span{display:block;color:#64727d;font-size:11px;font-weight:800;line-height:1.2}
.gtp-room-field input{width:100%!important;min-width:0!important;height:43px!important;margin:0!important;padding:0 9px!important;border:1px solid #d5e0e7!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important;color:#243746!important;font-size:13px!important}
.gtp-choice-buttons{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:6px!important}
.gtp-choice-buttons .gtp-button{width:100%!important;min-height:44px!important;height:44px!important;margin:0!important;padding:0 14px!important;border-radius:10px!important;font-size:13px!important;font-weight:800!important;line-height:1!important}
.gtp-choice-buttons .gtp-button-light{background:#fff!important}
.gtp-booking-form .gtp-form-message{margin:0 0 14px!important}
@media(max-width:380px){.gtp-room{gap:8px!important;padding-left:9px!important;padding-right:9px!important}.gtp-room-field span{font-size:10px}.gtp-step-heading h3{font-size:19px!important}}

/* ===== Integração com temas de blocos (ex.: Twenty Twenty-Four) ===== */
body.single-gtp_plan .wp-block-post-content {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box;
}
body.single-gtp_plan .wp-block-post-content > .gtp-single {
	width: 100% !important;
	max-width: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
body.single-gtp_plan .wp-site-blocks > main {
	margin-block-start: 0 !important;
}


/* ===== Ajustes visuales 1.7: botones del catálogo, galería y reserva pública ===== */
.gtp-card-actions{
  display:grid!important;
  grid-template-columns:minmax(92px,.78fr) minmax(0,1.22fr)!important;
  gap:10px!important;
  align-items:stretch!important;
  margin-top:auto!important;
}
.gtp-card-actions .gtp-button{
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  height:48px!important;
  margin:0!important;
  padding:8px 12px!important;
  box-sizing:border-box!important;
  border-radius:10px!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:800!important;
  text-align:center!important;
}
.gtp-card-actions .gtp-button-light{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* Galería: composición tipo hotel/tour premium, con foco visual en la foto principal. */
.gtp-destination-gallery{
  background:linear-gradient(180deg,#102f49 0%,#0c2940 100%)!important;
  padding:28px 24px 34px!important;
}
.gtp-gallery-inner{
  width:min(1180px,100%)!important;
  grid-template-columns:minmax(0,2.15fr) minmax(270px,.85fr)!important;
  gap:12px!important;
}
.gtp-gallery-main{
  height:500px!important;
  min-height:500px!important;
  border-radius:20px!important;
  box-shadow:0 22px 55px rgba(0,0,0,.28)!important;
}
.gtp-gallery-main:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
}
.gtp-gallery-slide{transform:scale(1.001);}
.gtp-gallery-side{
  min-height:500px!important;
  grid-auto-rows:minmax(0,1fr)!important;
  gap:12px!important;
}
.gtp-gallery-thumb{
  border-radius:16px!important;
  box-shadow:0 14px 32px rgba(0,0,0,.20)!important;
  border:1px solid rgba(255,255,255,.06)!important;
}
.gtp-gallery-thumb span{
  left:10px!important;
  bottom:10px!important;
  padding:6px 9px!important;
  background:rgba(8,26,39,.74)!important;
  backdrop-filter:blur(6px);
  font-size:11px!important;
  letter-spacing:.1px;
}
.gtp-gallery-thumb.is-active{
  box-shadow:0 0 0 2px rgba(255,255,255,.72),0 14px 32px rgba(0,0,0,.20)!important;
}
.gtp-gallery-thumb:focus-visible{
  outline:3px solid rgba(116,203,255,.95)!important;
  outline-offset:2px;
}

/* Reserva pública: el tema no debe poder deformar títulos, enlaces ni botones. */
.gtp-public-actions,
.gtp-public-actions *{
  box-sizing:border-box!important;
}
.gtp-public-actions{
  width:100%!important;
  min-width:0!important;
  color:#203446;
}
.gtp-public-actions h2{
  margin:0 0 8px!important;
  color:var(--gtp-dark)!important;
  font-family:inherit!important;
  font-size:28px!important;
  line-height:1.12!important;
  font-weight:800!important;
  letter-spacing:-.02em;
}
.gtp-public-actions label{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  width:100%!important;
  margin:0!important;
  color:#3f5362!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
.gtp-public-actions select{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:44px!important;
  margin:0!important;
  padding:0 11px!important;
  border:1px solid #d7e1e8!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
  color:#243746!important;
  font:inherit!important;
  font-weight:500!important;
}
.gtp-public-actions .gtp-choice-buttons{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  width:100%!important;
  margin-top:12px!important;
}
.gtp-public-actions .gtp-choice-buttons > *{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:44px!important;
  height:auto!important;
  margin:0!important;
  padding:10px 14px!important;
  box-sizing:border-box!important;
  border-radius:10px!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:800!important;
  text-align:center!important;
  white-space:normal!important;
}
.gtp-public-actions .gtp-choice-buttons a.gtp-button{
  overflow:hidden!important;
}
.gtp-public-actions .gtp-choice-help{
  margin:13px 0 0!important;
  color:#6d7b85!important;
  font-size:12px!important;
  line-height:1.45!important;
}

@media(max-width:980px){
  .gtp-gallery-inner{grid-template-columns:1fr!important}
  .gtp-gallery-main{height:min(62vw,500px)!important;min-height:360px!important}
  .gtp-gallery-side{min-height:0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-rows:108px!important}
}
@media(max-width:700px){
  .gtp-destination-gallery{padding:14px 12px 20px!important}
  .gtp-gallery-main{height:76vw!important;min-height:300px!important;max-height:390px!important}
  .gtp-gallery-side{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:108px!important}
  .gtp-card-actions{grid-template-columns:minmax(84px,.76fr) minmax(0,1.24fr)!important}
  .gtp-card-actions .gtp-button{font-size:12px!important;padding-left:9px!important;padding-right:9px!important}
  .gtp-public-actions h2{font-size:25px!important}
}
@media(max-width:360px){
  .gtp-card-actions{grid-template-columns:1fr 1.18fr!important;gap:8px!important}
  .gtp-card-actions .gtp-button{font-size:11.5px!important}
}


/* GALLERY V8: composición solicitada: foto grande arriba + collage debajo. */
.gtp-single .gtp-destination-gallery{
  width:100%!important;
  margin-left:0!important;
  padding:28px 24px 34px!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
.gtp-single .gtp-gallery-inner{
  width:min(1180px,100%)!important;
  margin:0 auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}
.gtp-single .gtp-gallery-main{
  width:100%!important;
  height:500px!important;
  min-height:500px!important;
  border-radius:18px!important;
  overflow:hidden!important;
  position:relative!important;
  background:#edf2f5!important;
  box-shadow:0 18px 42px rgba(22,47,68,.14)!important;
}
.gtp-single .gtp-gallery-main:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.02) 48%,rgba(0,0,0,.62) 100%)!important;
  pointer-events:none!important;
  z-index:1!important;
}
.gtp-single .gtp-gallery-slide{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.gtp-single .gtp-gallery-overlay{
  z-index:2!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  padding:34px 34px 28px!important;
}
.gtp-single .gtp-gallery-overlay h1{display:none!important;}
.gtp-single .gtp-gallery-side{
  width:100%!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-rows:170px!important;
  gap:12px!important;
}
.gtp-single .gtp-gallery-thumb{
  position:relative!important;
  width:100%!important;
  height:170px!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#e8edf1!important;
  box-shadow:0 10px 24px rgba(22,47,68,.10)!important;
  opacity:1!important;
}
.gtp-single .gtp-gallery-thumb img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  transition:transform .28s ease,filter .28s ease!important;
}
.gtp-single .gtp-gallery-thumb span{display:none!important;}
.gtp-single .gtp-gallery-thumb:hover img,
.gtp-single .gtp-gallery-thumb.is-active img{
  transform:scale(1.035)!important;
  filter:brightness(.94)!important;
}
.gtp-single .gtp-gallery-thumb.is-active{
  box-shadow:0 0 0 2px #1488d0,0 10px 24px rgba(22,47,68,.10)!important;
}
.gtp-single .gtp-gallery-thumb:focus-visible{
  outline:3px solid #1488d0!important;
  outline-offset:3px!important;
}

@media (max-width:900px){
  .gtp-single .gtp-destination-gallery{padding:20px 16px 24px!important;}
  .gtp-single .gtp-gallery-main{height:410px!important;min-height:410px!important;}
  .gtp-single .gtp-gallery-side{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:140px!important;}
  .gtp-single .gtp-gallery-thumb{height:140px!important;}
}
@media (max-width:560px){
  .gtp-single .gtp-destination-gallery{padding:14px 12px 20px!important;}
  .gtp-single .gtp-gallery-main{height:300px!important;min-height:300px!important;border-radius:14px!important;}
  .gtp-single .gtp-gallery-overlay{padding:24px 20px 20px!important;}
  .gtp-single .gtp-gallery-side{gap:8px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:105px!important;}
  .gtp-single .gtp-gallery-thumb{height:105px!important;border-radius:10px!important;}
}
.gtp-single .gtp-gallery-more{display:block!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;padding:12px!important;background:linear-gradient(transparent,rgba(0,0,0,.68))!important;color:#fff!important;font-size:14px!important;font-weight:800!important;text-align:right!important;}


/* ===== Destinos similares en la ficha del plan ===== */
.gtp-similar-plans{
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:64px 20px 76px;
  box-sizing:border-box;
}
.gtp-similar-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:26px;
}
.gtp-similar-heading h2{
  margin:0!important;
  color:var(--gtp-dark)!important;
  font-size:32px!important;
  line-height:1.15!important;
}
.gtp-similar-heading p{
  margin:7px 0 0!important;
  color:#6d7a84!important;
  font-size:14px!important;
}
.gtp-similar-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
  align-items:stretch;
}
.gtp-similar-grid .gtp-card{
  min-width:0;
  height:100%;
}
.gtp-similar-grid .gtp-card-body{
  min-width:0;
}
.gtp-similar-grid .gtp-card-actions{
  margin-top:auto!important;
}
.gtp-similar-cta{
  display:flex;
  justify-content:center;
  margin-top:30px;
}
.gtp-similar-cta .gtp-button{
  min-width:190px;
  min-height:48px;
  border-radius:10px;
  font-weight:800;
}
@media(max-width:1100px){
  .gtp-similar-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:820px){
  .gtp-similar-plans{padding:48px 16px 56px;}
  .gtp-similar-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
  .gtp-similar-plans{padding:38px 12px 48px;}
  .gtp-similar-heading h2{font-size:26px!important;}
  .gtp-similar-grid{grid-template-columns:1fr;}
}

/* ===== Itinerario: aislamiento de orden y flechas ===== */
.gtp-plan-main > .gtp-inclusions { order: 2 !important; position: relative; z-index: 1; }
.gtp-plan-main > .gtp-itinerary-section { order: 3 !important; position: relative; z-index: 1; }
.gtp-plan-main > #fechas-precios { order: 4 !important; }
.gtp-plan-main > #condiciones { order: 5 !important; }
.gtp-plan-main > .gtp-documents { order: 6 !important; }
.gtp-plan-main > #descripcion { order: 1 !important; }
.gtp-itinerary summary::before,
.gtp-itinerary summary::after,
.gtp-itinerary details::before,
.gtp-itinerary details::after { content: none !important; display: none !important; }
.gtp-itinerary summary { box-sizing: border-box; min-height: 44px; padding-right: 42px !important; }
.gtp-itinerary-chevron { width: 7px !important; height: 7px !important; right: 10px !important; border-right-width: 2px !important; border-bottom-width: 2px !important; }
.gtp-itinerary details[open] .gtp-itinerary-chevron { transform: translateY(-22%) rotate(225deg) !important; }
.gtp-itinerary details:not([open]) .gtp-itinerary-chevron { transform: translateY(-68%) rotate(45deg) !important; }
.gtp-itinerary summary:focus-visible { outline: 2px solid var(--gtp-blue); outline-offset: 3px; border-radius: 8px; }
.gtp-itinerary details > div { text-align: justify !important; }
.gtp-itinerary details > div p { text-align: justify !important; }


/* v2.2: aislamos el acordeón del itinerario de los estilos de Twenty Twenty-Four */
.gtp-itinerary-section{clear:both;display:block;position:relative;margin-top:6px;z-index:1}
.gtp-itinerary-item{border-bottom:1px solid #e6ecef}
.gtp-itinerary-item:last-child{border-bottom:0}
.gtp-itinerary-trigger{appearance:none!important;-webkit-appearance:none!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;width:100%!important;min-height:62px!important;margin:0!important;padding:16px 2px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#314b5e!important;font:inherit!important;font-weight:800!important;line-height:1.35!important;text-align:left!important;cursor:pointer!important;position:relative!important}
.gtp-itinerary-trigger:hover,.gtp-itinerary-trigger:focus{background:transparent!important;color:#314b5e!important}
.gtp-itinerary-trigger:focus-visible{outline:2px solid var(--gtp-blue)!important;outline-offset:2px!important}
.gtp-itinerary-trigger .gtp-itinerary-day{margin-right:16px}
.gtp-itinerary-chevron{display:block!important;width:8px!important;height:8px!important;border:0!important;border-right:2px solid #627684!important;border-bottom:2px solid #627684!important;transform:rotate(45deg)!important;transition:transform .2s ease!important;margin-right:6px!important}
.gtp-itinerary-item.is-open .gtp-itinerary-chevron{transform:rotate(225deg)!important}
.gtp-itinerary-panel{display:none!important;padding:0 42px 18px 78px!important;color:#61717d!important;text-align:justify!important;line-height:1.7!important}
.gtp-itinerary-item.is-open .gtp-itinerary-panel{display:block!important}
.gtp-itinerary-panel p{margin:0 0 12px!important;text-align:justify!important}
.gtp-itinerary-panel p:last-child{margin-bottom:0!important}
@media(max-width:700px){.gtp-itinerary-trigger{grid-template-columns:auto minmax(0,1fr) auto!important;min-height:58px!important;padding:14px 0!important}.gtp-itinerary-trigger .gtp-itinerary-day{margin-right:10px}.gtp-itinerary-panel{padding:0 8px 16px 0!important}}

/* Filtros comerciales: casillas marcables */
.gtp-filters .gtp-filter-check{display:flex;align-items:center;gap:9px;margin:14px 0 0;padding:10px 11px;border:1px solid var(--gtp-border);border-radius:8px;background:#fff;color:#304353;font-size:13px;text-transform:none;font-weight:700;cursor:pointer}.gtp-filters .gtp-filter-check input[type="checkbox"]{width:18px;height:18px;margin:0;accent-color:var(--gtp-blue)}.gtp-filters .gtp-filter-check span{flex:1}.gtp-filters .gtp-filter-check:has(input:checked){border-color:#9ecbe8;background:#eef8fd;color:var(--gtp-blue)}

/* ===== Tiquetes: filtro y etiqueta visual ===== */
.gtp-card-image{position:relative}
.gtp-ticket-badge{position:absolute;left:12px;top:12px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.94);color:#254357;font-size:11px;font-weight:800;line-height:1;box-shadow:0 6px 18px rgba(0,0,0,.14);backdrop-filter:blur(4px)}
.gtp-ticket-badge.is-included{color:#176a45}
.gtp-ticket-badge.is-excluded{color:#66737c}
.gtp-filters .gtp-ticket-filter{margin-top:16px}
.gtp-filters .gtp-ticket-filter select{width:100%}

/* ===== Documentos: hover de marca ===== */
.gtp-documents .gtp-pdf-button:hover,.gtp-reservation-actions .gtp-pdf-button:hover{background:#d92d20!important;border-color:#d92d20!important;color:#fff!important;filter:none!important}
.gtp-documents .gtp-word-button:hover,.gtp-reservation-actions .gtp-word-button:hover{background:#1769aa!important;border-color:#1769aa!important;color:#fff!important;filter:none!important}

/* Catálogo con presets por página (bloqueos, ofertas, Europa, Caribe, disponibles). */
.gtp-preset-heading{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:0 2px}
.gtp-preset-heading span{font-size:28px;line-height:1.15;font-weight:800;letter-spacing:-.02em;color:#14324a}
.gtp-catalog[data-preset-filter="block"] .gtp-card-badge.gtp-block-badge,
.gtp-catalog[data-preset-filter="offer"] .gtp-card-badge.gtp-offer-badge{display:inline-flex}
@media (max-width: 700px){.gtp-preset-heading span{font-size:24px}}

/* Portal comercial Gremtur 7.0 */
.gtp-account-tabs{flex-wrap:wrap;align-items:center}
.gtp-account-tabs button{font-size:13px}
.gtp-portal-section-head{margin-bottom:20px}
.gtp-portal-section-head h2{margin:0 0 5px}
.gtp-portal-section-head p{margin:0;color:#6a7781}
.gtp-portal-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}
.gtp-mini-plan{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:14px;border:1px solid var(--gtp-border);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(28,57,78,.06)}
.gtp-mini-plan img{width:150px;height:110px;object-fit:cover;border-radius:12px}.gtp-mini-plan h3{margin:2px 0 5px}.gtp-mini-plan p{margin:0 0 12px;color:#687680}
.gtp-resource-grid,.gtp-academy-grid,.gtp-famtrip-grid,.gtp-incentive-grid,.gtp-reward-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.gtp-resource-card,.gtp-academy-card,.gtp-famtrip-card,.gtp-incentive-card,.gtp-reward-card,.gtp-portal-empty{padding:22px;border:1px solid var(--gtp-border);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(28,57,78,.05)}
.gtp-resource-card h3,.gtp-academy-card h3,.gtp-famtrip-card h3,.gtp-incentive-card h3,.gtp-reward-card h3{margin-top:0}
.gtp-resource-meta,.gtp-kicker{color:#087cc4;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.gtp-resource-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.gtp-academy-card ul{padding-left:20px}.gtp-chip{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#eef6fb;color:#176a9c;font-size:11px;font-weight:800;margin:3px 5px 8px 0}
.gtp-incentive-progress{height:10px;background:#eef2f4;border-radius:99px;overflow:hidden;margin:14px 0}.gtp-incentive-progress i{display:block;height:100%;background:linear-gradient(90deg,#087cc4,#18a6dc);border-radius:99px}
.gtp-reward-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.gtp-reward-card .gtp-button{margin-top:auto}.gtp-outlet-badge{position:absolute;left:12px;top:12px;display:inline-flex;padding:7px 10px;border-radius:999px;background:#ff5a3c;color:#fff;font-size:11px;font-weight:900;z-index:2}
.gtp-card-image{position:relative}.gtp-button-disabled{opacity:.55;pointer-events:none}
@media(max-width:780px){.gtp-portal-plan-grid,.gtp-resource-grid,.gtp-academy-grid,.gtp-famtrip-grid,.gtp-incentive-grid,.gtp-reward-grid{grid-template-columns:1fr}.gtp-mini-plan{grid-template-columns:110px 1fr}.gtp-mini-plan img{width:110px;height:95px}}


/* Biblioteca multimedia de Hoteles y productos */
.gtp-resource-card-enhanced{padding:24px}.gtp-resource-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.gtp-resource-card-head h3{margin:4px 0 4px}.gtp-resource-card-head p{margin:0;color:#667680}.gtp-resource-rating{padding:7px 10px;border-radius:999px;background:#fff7de;color:#9a6b00;font-size:13px;white-space:nowrap}.gtp-resource-description{margin:14px 0;color:#52636f;line-height:1.65}.gtp-resource-media-section{margin-top:22px;padding-top:20px;border-top:1px solid #e7edf1}.gtp-resource-media-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.gtp-resource-media-head h4{margin:0 0 3px;color:#1c3a50}.gtp-resource-media-head p{margin:0;color:#70808a;font-size:13px}.gtp-media-select-all{border:0;background:none;color:#087cc4;font-size:12px;font-weight:800;cursor:pointer}.gtp-resource-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gtp-resource-photo{position:relative;display:block;cursor:pointer}.gtp-resource-photo input,.gtp-resource-video input{position:absolute;opacity:0;pointer-events:none}.gtp-resource-photo-frame{display:block;position:relative;aspect-ratio:1.25;border-radius:12px;overflow:hidden;background:#eff3f5;border:2px solid transparent;transition:.18s}.gtp-resource-photo-frame img{width:100%;height:100%;object-fit:cover;display:block}.gtp-resource-photo-frame>span,.gtp-resource-video-frame>span{position:absolute;right:8px;top:8px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.95);color:#087cc4;font-size:13px;font-weight:900;opacity:0;transform:scale(.8);transition:.18s}.gtp-resource-photo input:checked + .gtp-resource-photo-frame,.gtp-resource-video input:checked + .gtp-resource-video-frame{border-color:#087cc4;box-shadow:0 0 0 3px rgba(8,124,196,.12)}.gtp-resource-photo input:checked + .gtp-resource-photo-frame>span,.gtp-resource-video input:checked + .gtp-resource-video-frame>span{opacity:1;transform:scale(1)}.gtp-resource-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gtp-resource-video{position:relative;display:block;cursor:pointer}.gtp-resource-video-frame{position:relative;aspect-ratio:16/9;background:#152b3c;border-radius:12px;overflow:hidden;border:2px solid transparent;transition:.18s}.gtp-resource-video-frame video{width:100%;height:100%;object-fit:cover;display:block}.gtp-resource-video strong{display:block;margin-top:7px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#465965}.gtp-resource-video.legacy,.gtp-resource-photo.legacy{cursor:pointer;text-decoration:none}.gtp-resource-video.legacy .gtp-resource-video-frame{display:grid;place-items:center;color:#fff;font-size:28px}.gtp-resource-download-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 12px;border-radius:10px;background:#f7fafc}.gtp-resource-download-bar span{color:#63727c;font-size:12px;font-weight:700}.gtp-resource-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.gtp-resource-info-grid>div{padding:12px 13px;border:1px solid #e7edf1;border-radius:10px;background:#fbfcfd}.gtp-resource-info-grid strong{display:block;margin-bottom:4px;color:#254255;font-size:12px}.gtp-resource-info-grid p{margin:0;color:#687882;font-size:13px;line-height:1.45}.gtp-resource-count{display:inline-flex;align-items:center;padding:8px 10px;border-radius:8px;background:#f1f6f9;color:#56707f;font-size:12px;font-weight:700}
@media(max-width:900px){.gtp-resource-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gtp-resource-video-grid{grid-template-columns:1fr}}
@media(max-width:560px){.gtp-resource-card-enhanced{padding:18px}.gtp-resource-card-head,.gtp-resource-media-head,.gtp-resource-download-bar{align-items:flex-start;flex-direction:column}.gtp-resource-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gtp-resource-info-grid{grid-template-columns:1fr}}

/* Reserva: acciones principales a la izquierda y cancelación separada a la derecha. */
.gtp-reservation-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;width:100%}
.gtp-reservation-actions-main{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.gtp-reservation-action-cancel{margin-left:auto;padding-left:16px;border-left:1px solid var(--gtp-border)}
.gtp-reservation-actions .gtp-button-pay-online{background:#148a56!important;border-color:#148a56!important;color:#fff!important;box-shadow:0 7px 16px rgba(20,138,86,.18)}
.gtp-reservation-actions .gtp-button-pay-online:hover{background:#0f7447!important;border-color:#0f7447!important;color:#fff!important;transform:translateY(-1px)}

/* Insignias: más visibles y con jerarquía en cabecera y panel. */
.gtp-mini-level{min-width:210px;position:relative;overflow:hidden;color:#fff!important;background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.07))!important}
.gtp-mini-level:after{content:"";position:absolute;right:-30px;top:-34px;width:110px;height:110px;border-radius:50%;background:rgba(255,255,255,.12)}
.gtp-mini-level-badge{position:relative;z-index:1;display:grid!important;place-items:center;width:52px!important;height:52px!important;border-radius:16px!important;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,255,255,.62))!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.75),0 8px 20px rgba(0,0,0,.14)!important;color:#146e9c!important;font-size:24px!important}
.gtp-mini-level div{position:relative;z-index:1}
.gtp-mini-level small,.gtp-mini-level strong,.gtp-mini-level em{color:#fff!important}
.gtp-mini-level strong{font-size:18px!important;line-height:1.1}
.gtp-mini-level em{font-style:normal;font-size:11px;opacity:.78;margin-top:2px}
.gtp-mini-level-diamond .gtp-mini-level-badge{background:linear-gradient(145deg,#f4feff,#bcefff)!important;color:#0673a8!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.8),0 8px 24px rgba(50,208,255,.28)!important}
.gtp-mini-level-gold .gtp-mini-level-badge{color:#9b6a00!important;background:linear-gradient(145deg,#fff8d9,#f5db78)!important}
.gtp-mini-level-silver .gtp-mini-level-badge{color:#63717c!important;background:linear-gradient(145deg,#fff,#dce4eb)!important}
.gtp-mini-level-bronze .gtp-mini-level-badge{color:#8d5328!important;background:linear-gradient(145deg,#fff0e2,#e7b58b)!important}
.gtp-badge{position:relative;overflow:hidden;flex-direction:column!important;gap:3px}
.gtp-badge span{line-height:1;font-size:46px}
.gtp-badge b{font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:currentColor}
.gtp-level-diamond .gtp-badge{background:radial-gradient(circle at 35% 30%,#fff 0,#dffaff 34%,#9adcf4 70%,#64b9da 100%);box-shadow:inset 0 0 0 4px rgba(255,255,255,.75),0 12px 28px rgba(24,134,181,.22)}
.gtp-level-diamond .gtp-badge span{filter:drop-shadow(0 4px 8px rgba(24,134,181,.2))}
.gtp-level-gold .gtp-badge{background:radial-gradient(circle at 35% 30%,#fffdf1 0,#ffe99b 38%,#e4b841 78%,#c8941a 100%)}
.gtp-level-silver .gtp-badge{background:radial-gradient(circle at 35% 30%,#fff 0,#e9eef1 45%,#b3c1ca 100%)}
.gtp-level-bronze .gtp-badge{background:radial-gradient(circle at 35% 30%,#fff7ef 0,#edc39e 45%,#b9733f 100%)}
@media(max-width:780px){.gtp-reservation-actions{align-items:stretch;flex-direction:column}.gtp-reservation-actions-main{width:100%}.gtp-reservation-action-cancel{width:100%;margin-left:0;padding:12px 0 0;border-left:0;border-top:1px solid var(--gtp-border)}.gtp-reservation-action-cancel .gtp-button{width:100%}}


/* Insignia de rango: visible junto al nombre y diferenciada por nivel. */
.gtp-portal-header-main{min-width:0}
.gtp-portal-header h1{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.gtp-inline-rank{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.96)!important;color:#17364e!important;font-family:inherit;font-size:14px;line-height:1;border:1px solid rgba(255,255,255,.92);box-shadow:0 8px 18px rgba(0,0,0,.14),inset 0 0 0 1px rgba(255,255,255,.6);vertical-align:middle}
.gtp-inline-rank strong{color:inherit!important;font-size:13px!important;font-weight:900!important;letter-spacing:.02em}
.gtp-inline-rank-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-size:17px;font-weight:900;background:#edf7fc!important;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.gtp-inline-rank-diamond{background:linear-gradient(135deg,#f6feff,#d7f6ff)!important;color:#086d9d!important;border-color:#9ee4f7}
.gtp-inline-rank-diamond .gtp-inline-rank-icon{background:linear-gradient(145deg,#ffffff,#7fd8f5)!important;color:#0874a4!important;transform:rotate(45deg);border-radius:8px}
.gtp-inline-rank-diamond .gtp-inline-rank-icon{font-size:15px}
.gtp-inline-rank-diamond .gtp-inline-rank-icon::first-letter{transform:rotate(-45deg)}
.gtp-inline-rank-gold{background:linear-gradient(135deg,#fffdf0,#ffe58a)!important;color:#765100!important;border-color:#efd26a}
.gtp-inline-rank-gold .gtp-inline-rank-icon{background:linear-gradient(145deg,#fff8c9,#eab936)!important;color:#795400!important}
.gtp-inline-rank-silver{background:linear-gradient(135deg,#ffffff,#e7eef3)!important;color:#53616b!important;border-color:#c5d0d8}
.gtp-inline-rank-silver .gtp-inline-rank-icon{background:linear-gradient(145deg,#ffffff,#cbd6dd)!important;color:#5b6973!important}
.gtp-inline-rank-bronze{background:linear-gradient(135deg,#fffaf6,#f0c59f)!important;color:#7c4724!important;border-color:#dca16e}
.gtp-inline-rank-bronze .gtp-inline-rank-icon{background:linear-gradient(145deg,#fff1e2,#c9824b)!important;color:#713f1f!important}
.gtp-header-points{flex:0 0 auto;min-width:210px;padding:15px 18px;border-radius:16px;background:rgba(255,255,255,.97)!important;color:#17364e!important;border:1px solid rgba(255,255,255,.9);box-shadow:0 10px 24px rgba(0,0,0,.12)}
.gtp-header-points small{display:block!important;color:#64747f!important;font-size:11px!important;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.gtp-header-points strong{display:block;color:#143d59!important;font-size:23px;line-height:1.15;margin:3px 0 4px}
.gtp-header-points span{display:block;color:#687984!important;font-size:11px;line-height:1.35}
.gtp-badge-symbol{display:grid;place-items:center;width:58px;height:58px;font-size:34px;line-height:1;background:#fff;border-radius:50%;box-shadow:0 4px 16px rgba(0,0,0,.12)}
.gtp-level-diamond .gtp-badge-symbol{width:62px;height:62px;background:linear-gradient(145deg,#ffffff,#c8f2ff 58%,#6bc3e4)!important;color:#0874a4;transform:rotate(45deg);border-radius:16px;box-shadow:0 8px 22px rgba(24,134,181,.24)}
.gtp-level-diamond .gtp-badge-symbol::first-letter{display:inline-block}
.gtp-level-diamond .gtp-badge-symbol{font-size:30px}
.gtp-level-gold .gtp-badge-symbol{background:linear-gradient(145deg,#fffdf2,#f6d875)!important;color:#8a6500;clip-path:polygon(50% 0,61% 12%,76% 5%,85% 20%,100% 28%,92% 44%,100% 60%,84% 69%,80% 88%,62% 83%,50% 100%,38% 83%,20% 88%,16% 69%,0 60%,8% 44%,0 28%,15% 20%,24% 5%,39% 12%)}
.gtp-level-silver .gtp-badge-symbol{background:linear-gradient(145deg,#fff,#d5dfe5)!important;color:#64747e;clip-path:polygon(50% 0,88% 20%,96% 61%,72% 92%,28% 92%,4% 61%,12% 20%)}
.gtp-level-bronze .gtp-badge-symbol{background:linear-gradient(145deg,#fff7ef,#d88e58)!important;color:#7c4828;clip-path:circle(48% at 50% 50%)}
@media(max-width:780px){.gtp-portal-header h1{gap:8px}.gtp-inline-rank{font-size:12px;padding:6px 10px}.gtp-header-points{width:100%;min-width:0}.gtp-badge-symbol{width:54px;height:54px}}


/* 43.0 - Biblioteca de imágenes: visor grande con navegación. */
.gtp-resource-photo-frame{cursor:zoom-in;}
.gtp-resource-photo-frame img{cursor:zoom-in;}
.gtp-resource-lightbox{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:34px 80px;background:rgba(10,22,32,.92);backdrop-filter:blur(4px)}
.gtp-resource-lightbox[hidden]{display:none}
.gtp-resource-lightbox-stage{width:min(1100px,86vw);height:min(82vh,820px);display:flex;align-items:center;justify-content:center}
.gtp-resource-lightbox-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.42)}
.gtp-resource-lightbox-close,.gtp-resource-lightbox-prev,.gtp-resource-lightbox-next{position:absolute;display:grid;place-items:center;border:0;color:#fff;background:rgba(255,255,255,.14);cursor:pointer;border-radius:50%;line-height:1;font-family:inherit;transition:background .18s ease,transform .18s ease}
.gtp-resource-lightbox-close{top:20px;right:24px;width:46px;height:46px;font-size:32px}.gtp-resource-lightbox-prev,.gtp-resource-lightbox-next{top:50%;width:52px;height:52px;font-size:42px;transform:translateY(-50%)}.gtp-resource-lightbox-prev{left:20px}.gtp-resource-lightbox-next{right:20px}.gtp-resource-lightbox-close:hover,.gtp-resource-lightbox-prev:hover,.gtp-resource-lightbox-next:hover{background:rgba(255,255,255,.24)}
.gtp-resource-lightbox-caption{position:absolute;left:0;right:0;bottom:20px;text-align:center;color:#fff;font-size:13px;font-weight:800;letter-spacing:.02em}
.gtp-resource-info-grid .gtp-justified,.gtp-resource-description,.gtp-resource-description p{ text-align:justify; }
.gtp-compact-points{margin:0;padding:0;list-style:none;display:grid;gap:9px}.gtp-compact-points li{position:relative;margin:0;padding:10px 12px 10px 32px;border:1px solid #edf1f3;border-radius:10px;background:#fafcfd;color:#52636f;line-height:1.5;text-align:justify}.gtp-compact-points li::before{content:'✓';position:absolute;left:11px;top:10px;font-weight:900;color:#21814f}.gtp-inclusions #no-incluye .gtp-compact-points li::before{content:'•';color:#b14454;font-size:18px;line-height:1}.gtp-summary-more{margin-top:9px;color:#6c7c87;font-size:12px;font-weight:800}
@media(max-width:700px){.gtp-resource-lightbox{padding:24px 20px}.gtp-resource-lightbox-stage{width:92vw;height:76vh}.gtp-resource-lightbox-prev,.gtp-resource-lightbox-next{width:44px;height:44px;font-size:32px}.gtp-resource-lightbox-prev{left:10px}.gtp-resource-lightbox-next{right:10px}.gtp-resource-lightbox-close{top:12px;right:12px}}

body.gtp-lightbox-open{overflow:hidden!important}

/* 44.0 - Texto de incluye/no incluye y galería visual en Mis reservas. */
.gtp-inclusions .gtp-compact-points.gtp-justified-list{margin:0;padding:0;list-style:none}
.gtp-inclusions .gtp-compact-points.gtp-justified-list li.gtp-justified{text-align:justify!important;text-justify:inter-word!important;hyphens:auto!important}
.gtp-summary-text.gtp-justified{display:block;text-align:justify!important;text-justify:inter-word!important}
.gtp-reservation-gallery{margin:16px 0 18px;padding:14px;border:1px solid #e1eaf0;border-radius:16px;background:#f8fbfd}
.gtp-res-gallery-main{height:250px;border-radius:13px;overflow:hidden;background:#e9eef2;cursor:zoom-in;position:relative}
.gtp-res-gallery-main img{display:block;width:100%;height:100%;object-fit:cover}
.gtp-res-gallery-main:after{content:'Ver fotos en grande';position:absolute;right:10px;bottom:10px;padding:7px 10px;border-radius:999px;background:rgba(16,36,52,.75);color:#fff;font-size:11px;font-weight:800;pointer-events:none}
.gtp-res-gallery-thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:9px}
.gtp-res-gallery-thumb{border:2px solid transparent;padding:0;border-radius:9px;overflow:hidden;background:#fff;cursor:pointer;aspect-ratio:1/0.68}
.gtp-res-gallery-thumb.is-active{border-color:#087cc4}
.gtp-res-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.gtp-res-gallery-more{display:inline-flex;margin-top:8px;padding:6px 9px;border-radius:999px;background:#eaf4fa;color:#0b6fa9;font-size:11px;font-weight:800}
.gtp-res-gallery-lightbox{position:fixed;inset:0;z-index:1000000;display:flex;align-items:center;justify-content:center;padding:30px 88px;background:rgba(8,19,29,.94);backdrop-filter:blur(5px)}
.gtp-res-gallery-lightbox[hidden]{display:none}
.gtp-res-gallery-stage{width:min(1100px,90vw);height:min(84vh,850px);display:flex;align-items:center;justify-content:center;position:relative}
.gtp-res-gallery-stage img{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.45)}
.gtp-res-gallery-close,.gtp-res-gallery-prev,.gtp-res-gallery-next{position:absolute;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;cursor:pointer}
.gtp-res-gallery-close{right:22px;top:18px;width:46px;height:46px;font-size:31px}.gtp-res-gallery-prev,.gtp-res-gallery-next{top:50%;width:54px;height:54px;font-size:42px;transform:translateY(-50%)}.gtp-res-gallery-prev{left:22px}.gtp-res-gallery-next{right:22px}
.gtp-res-gallery-count{position:absolute;left:50%;bottom:-22px;transform:translateX(-50%);color:#fff;font-size:12px;font-weight:800}
.gtp-res-gallery-close:hover,.gtp-res-gallery-prev:hover,.gtp-res-gallery-next:hover{background:rgba(255,255,255,.25)}
body.gtp-res-gallery-open{overflow:hidden!important}
@media(max-width:700px){.gtp-res-gallery-main{height:205px}.gtp-res-gallery-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}.gtp-res-gallery-lightbox{padding:20px}.gtp-res-gallery-prev,.gtp-res-gallery-next{width:44px;height:44px;font-size:32px}.gtp-res-gallery-prev{left:8px}.gtp-res-gallery-next{right:8px}.gtp-res-gallery-close{right:10px;top:10px}}

/* 45.0 - Correcciones finales: texto justificado real y galerías interactivas. */
.gtp-inclusions .gtp-compact-points.gtp-justified-list{
  display:grid!important;
  gap:12px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.gtp-inclusions .gtp-justified-point{
  position:relative!important;
  margin:0!important;
  padding:0 0 0 28px!important;
  width:100%!important;
  min-width:0!important;
}
.gtp-inclusions .gtp-justified-point .gtp-point-marker{
  position:absolute!important;
  left:0!important;
  top:.12em!important;
  width:20px!important;
  text-align:center!important;
  color:#21814f!important;
  font-weight:900!important;
}
.gtp-inclusions #no-incluye .gtp-justified-point .gtp-point-marker{color:#ef3340!important}
.gtp-inclusions .gtp-justified-point p.gtp-justified{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  color:#52636f!important;
  line-height:1.62!important;
  text-align:justify!important;
  text-align-last:auto!important;
  text-justify:inter-word!important;
  hyphens:auto!important;
  overflow-wrap:anywhere!important;
}

/* Galería del material comercial: ver fotos en grande sin activar la selección. */
.gtp-resource-photo{position:relative!important;display:block!important;min-width:0!important}
.gtp-resource-select{position:absolute!important;z-index:4!important;top:9px!important;right:9px!important;margin:0!important;display:block!important;cursor:pointer!important}
.gtp-resource-select input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important}
.gtp-resource-select span{display:grid!important;place-items:center!important;width:28px!important;height:28px!important;border-radius:50%!important;background:rgba(255,255,255,.94)!important;color:#7c8c96!important;box-shadow:0 3px 12px rgba(0,0,0,.16)!important;font-size:13px!important;font-weight:900!important;transition:.18s ease!important}
.gtp-resource-select input:checked + span{background:#087cc4!important;color:#fff!important}
.gtp-resource-photo-view{display:block!important;width:100%!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;cursor:zoom-in!important;text-align:left!important}
.gtp-resource-photo-view .gtp-resource-photo-frame{position:relative!important;display:block!important;width:100%!important;aspect-ratio:1.25!important;border-radius:12px!important;overflow:hidden!important;background:#eff3f5!important;border:1px solid #e5edf1!important}
.gtp-resource-photo-view .gtp-resource-photo-frame img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .25s ease!important}
.gtp-resource-photo-view:hover .gtp-resource-photo-frame img{transform:scale(1.035)!important}
.gtp-resource-photo-view:focus-visible{outline:3px solid rgba(8,124,196,.25)!important;outline-offset:3px!important;border-radius:12px!important}

/* Mis reservas: galería grande y navegable con todas las fotos. */
.gtp-reservation-gallery{margin:20px 0 24px!important;padding:16px!important;border:1px solid #dce8ef!important;border-radius:18px!important;background:#f7fafc!important}
.gtp-res-gallery-main{height:420px!important;border-radius:15px!important;overflow:hidden!important;background:#dfe8ed!important;cursor:zoom-in!important;position:relative!important}
.gtp-res-gallery-view{position:relative!important;display:block!important;width:100%!important;height:100%!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;cursor:zoom-in!important}
.gtp-res-gallery-view img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
.gtp-res-gallery-view span{position:absolute!important;right:16px!important;bottom:16px!important;padding:9px 13px!important;border-radius:999px!important;background:rgba(10,29,43,.78)!important;color:#fff!important;font-size:12px!important;font-weight:800!important;backdrop-filter:blur(5px)!important}
.gtp-res-gallery-thumbs{display:flex!important;gap:9px!important;margin-top:10px!important;overflow-x:auto!important;padding:2px 2px 5px!important;scrollbar-width:thin!important}
.gtp-res-gallery-thumb{flex:0 0 112px!important;width:112px!important;height:78px!important;border:2px solid transparent!important;padding:0!important;border-radius:10px!important;overflow:hidden!important;background:#fff!important;cursor:pointer!important}
.gtp-res-gallery-thumb.is-active{border-color:#087cc4!important;box-shadow:0 0 0 2px rgba(8,124,196,.12)!important}
.gtp-res-gallery-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.gtp-res-gallery-lightbox{position:fixed!important;inset:0!important;z-index:1000000!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:28px 90px!important;background:rgba(8,19,29,.95)!important;backdrop-filter:blur(6px)!important}
.gtp-res-gallery-stage{width:min(1240px,92vw)!important;height:min(86vh,900px)!important}
.gtp-res-gallery-stage img{max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;object-fit:contain!important}
@media(max-width:700px){
  .gtp-res-gallery-main{height:280px!important}
  .gtp-res-gallery-thumb{flex-basis:88px!important;width:88px!important;height:62px!important}
  .gtp-res-gallery-lightbox{padding:22px!important}
  .gtp-res-gallery-prev{left:8px!important}.gtp-res-gallery-next{right:8px!important}
}


/* 46.0 - Correcciones definitivas de texto justificado y visor de biblioteca. */
.gtp-inclusions .gtp-justified-point p.gtp-justified,
.gtp-inclusions .gtp-summary-text.gtp-justified,
.gtp-resource-description,
.gtp-resource-description p,
.gtp-resource-info-grid p.gtp-justified,
.gtp-resource-info-grid p{
  text-align:justify!important;
  text-align-last:auto!important;
  text-justify:inter-word!important;
  hyphens:auto!important;
  overflow-wrap:break-word!important;
}
.gtp-resource-photo-view{position:relative!important;z-index:1!important;}
.gtp-resource-photo-view .gtp-resource-photo-frame{position:relative!important;}
.gtp-resource-photo-zoom{position:absolute!important;left:10px!important;bottom:10px!important;width:34px!important;height:34px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:rgba(10,29,43,.78)!important;color:#fff!important;font-size:18px!important;opacity:0!important;transform:scale(.9)!important;transition:.18s ease!important;pointer-events:none!important;}
.gtp-resource-photo-view:hover .gtp-resource-photo-zoom,.gtp-resource-photo-view:focus-visible .gtp-resource-photo-zoom{opacity:1!important;transform:scale(1)!important;}
.gtp-resource-select{z-index:10!important;}
.gtp-resource-lightbox{z-index:2147483000!important;}
.gtp-res-gallery-lightbox{z-index:2147483001!important;}

/* 50.0 - Justificación natural: última línea alineada normalmente, sin espacios artificiales. */
.gtp-inclusions .gtp-justified-point p.gtp-justified,
.gtp-inclusions .gtp-summary-text.gtp-justified,
.gtp-resource-description,
.gtp-resource-description p,
.gtp-resource-info-grid p.gtp-justified,
.gtp-resource-info-grid p{
  text-align: justify !important;
  text-align-last: auto !important;
  text-justify: inter-word !important;
  hyphens: none !important;
  word-spacing: normal !important;
  letter-spacing: normal !important;
  overflow-wrap: break-word !important;
}
.gtp-inclusions .gtp-justified-point{
  padding-left: 28px !important;
}
.gtp-inclusions .gtp-justified-point p.gtp-justified{
  margin: 0 !important;
}

/* 51.0 - Justificación natural y visores cerrados por defecto. */
.gtp-inclusions .gtp-justified-point p.gtp-justified,
.gtp-inclusions .gtp-summary-text.gtp-justified,
.gtp-resource-description,
.gtp-resource-description p,
.gtp-resource-info-grid p.gtp-justified,
.gtp-resource-info-grid p {
  text-align: justify !important;
  text-align-last: left !important;
  text-justify: inter-word !important;
  hyphens: none !important;
  word-spacing: normal !important;
  letter-spacing: normal !important;
  overflow-wrap: normal !important;
  white-space: normal !important;
}

.gtp-res-gallery-lightbox[hidden],
.gtp-resource-lightbox[hidden] {
  display: none !important;
}

.gtp-res-gallery-lightbox:not([hidden]),
.gtp-resource-lightbox:not([hidden]) {
  display: flex !important;
}



/* 52.0 - Mis reservas compacto + datos completos de pasajeros. */
.gtp-reservation-gallery-compact{margin:10px 0 14px!important;padding:9px!important;border:1px solid #e3ebf0!important;border-radius:12px!important;background:#f8fbfd!important}.gtp-res-gallery-strip{display:flex!important;gap:7px!important;overflow-x:auto!important;padding:0 0 4px!important;scrollbar-width:thin!important}.gtp-reservation-gallery-compact .gtp-res-gallery-thumb{flex:0 0 82px!important;width:82px!important;height:56px!important;border:2px solid transparent!important;border-radius:8px!important;padding:0!important;overflow:hidden!important;background:#fff!important}.gtp-reservation-gallery-compact .gtp-res-gallery-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}.gtp-reservation-gallery-compact .gtp-res-gallery-thumb.is-active{border-color:#0a82c8!important;box-shadow:0 0 0 1px rgba(10,130,200,.12)!important}.gtp-res-gallery-hint{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;margin-top:7px!important;color:#70808b!important;font-size:11px!important}.gtp-res-gallery-open-all{border:0!important;background:none!important;color:#087cc4!important;font-weight:800!important;cursor:pointer!important;padding:0!important}.gtp-passenger-help{margin:0 0 12px!important;color:#71808b!important;font-size:12px!important}.gtp-passenger-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-top:8px!important}.gtp-passenger-grid label{margin:0!important}.gtp-passenger-grid input,.gtp-passenger-grid select{width:100%!important}.gtp-reservation-passenger-details{margin-top:7px!important}@media(max-width:700px){.gtp-passenger-grid{grid-template-columns:1fr!important}.gtp-reservation-gallery-compact .gtp-res-gallery-thumb{flex-basis:74px!important;width:74px!important;height:52px!important}}

/* 52.0 - Biblioteca comercial jerárquica: país > destino > hotel. */
.gtp-resource-browser{max-width:1180px;margin:0 auto}
.gtp-resource-browser-intro{margin:0 0 20px}
.gtp-resource-browser-intro h3{margin:4px 0 6px;font-size:28px}
.gtp-resource-browser-intro p{margin:0;color:#687984;max-width:760px;line-height:1.55}
.gtp-resource-countries{display:grid;gap:12px}
.gtp-resource-country,.gtp-resource-destination,.gtp-resource-hotel{border:1px solid #dce7ed;border-radius:16px;background:#fff;overflow:hidden}
.gtp-resource-country>summary,.gtp-resource-destination>summary,.gtp-resource-hotel>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px}
.gtp-resource-country>summary::-webkit-details-marker,.gtp-resource-destination>summary::-webkit-details-marker,.gtp-resource-hotel>summary::-webkit-details-marker{display:none}
.gtp-resource-country>summary{padding:18px 20px;background:linear-gradient(135deg,#f6fbfe,#fff);font-size:18px;font-weight:800;color:#143b57}
.gtp-resource-country>summary:before,.gtp-resource-destination>summary:before,.gtp-resource-hotel>summary:before{content:'›';display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf6fb;color:#087cc4;font-size:22px;transition:transform .18s ease;flex:0 0 28px}
.gtp-resource-country[open]>summary:before,.gtp-resource-destination[open]>summary:before,.gtp-resource-hotel[open]>summary:before{transform:rotate(90deg)}
.gtp-resource-country-name{display:flex;align-items:center;gap:10px;flex:1}
.gtp-resource-country-name:before{content:'🌎';font-size:19px}
.gtp-resource-country-count,.gtp-resource-destination small{color:#6b7d88;font-size:12px;font-weight:700}
.gtp-resource-destinations{padding:12px;background:#f7fafc;display:grid;gap:10px}
.gtp-resource-destination>summary{padding:14px 16px;background:#fff;color:#24475d;font-size:16px;font-weight:800}
.gtp-resource-destination>summary>span{flex:1}
.gtp-resource-hotels{padding:10px 12px 14px;display:grid;gap:10px;background:#fff}
.gtp-resource-hotel-summary{padding:10px 12px;background:#fbfdfe;border:1px solid #e6eef2!important;border-radius:12px}
.gtp-resource-hotel-title{display:flex;flex-direction:column;gap:2px;flex:1}
.gtp-resource-hotel-title strong{font-size:17px;color:#163b55}
.gtp-resource-hotel-title span{font-size:14px;color:#e5a51e}
.gtp-resource-hotel-title small{font-size:12px;color:#71818b}
.gtp-resource-hotel-cover{width:92px;height:64px;border-radius:10px;overflow:hidden;flex:0 0 92px;background:#eef3f5}
.gtp-resource-hotel-cover img{width:100%;height:100%;object-fit:cover;display:block}
.gtp-resource-hotel-detail{padding:20px;border-top:1px solid #e6eef2}
.gtp-resource-hotel-detail .gtp-resource-card-head{margin-bottom:4px}
.gtp-resource-main-image-admin{padding:14px;margin:14px 0;border:1px solid #e1e9ed;border-radius:12px;background:#f8fbfd}
.gtp-resource-main-image-admin h3{margin-top:0}
#gtp-resource-main-image-preview{width:220px;height:130px;border-radius:10px;overflow:hidden;background:#e9f0f4;display:flex;align-items:center;justify-content:center;margin:8px 0}
#gtp-resource-main-image-preview img{width:100%;height:100%;object-fit:cover;display:block}
.gtp-resource-main-image-empty{color:#71818b;font-size:12px;padding:12px;text-align:center}
@media(max-width:700px){.gtp-resource-country>summary,.gtp-resource-destination>summary{padding:14px}.gtp-resource-hotel-summary{flex-wrap:wrap}.gtp-resource-hotel-cover{width:76px;height:56px;flex-basis:76px}.gtp-resource-hotel-title strong{font-size:15px}}

/* 54.0 - Listas de incluye/no incluye: justificación natural y expansión real. */
.gtp-inclusions .gtp-justified-point p.gtp-justified,
.gtp-inclusions .gtp-summary-text.gtp-justified,
.gtp-resource-description,
.gtp-resource-description p,
.gtp-resource-info-grid p.gtp-justified,
.gtp-resource-info-grid p{
  text-align:left !important;
  text-align-last:left !important;
  word-spacing:normal !important;
  letter-spacing:normal !important;
  hyphens:none !important;
  white-space:normal !important;
}
.gtp-inclusions .gtp-justified-point p.gtp-justified.is-multiline{
  text-align:justify !important;
  text-align-last:left !important;
}
.gtp-inclusions .gtp-summary-more{
  display:inline-flex !important;
  align-items:center;
  margin-top:10px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:var(--gtp-blue) !important;
  font:inherit !important;
  font-size:12px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}
.gtp-inclusions .gtp-summary-more:hover{text-decoration:underline!important}
.gtp-inclusions .gtp-summary-extra[hidden]{display:none!important}
.gtp-inclusions .gtp-justified-point{padding-right:8px!important}


/* 55.0 - Inclusiones: justificación limpia, sin separación artificial y más margen derecho. */
.gtp-inclusions .gtp-justified-point{
  padding-left:28px!important;
  padding-right:18px!important;
  box-sizing:border-box!important;
}
.gtp-inclusions .gtp-justified-point p.gtp-justified{
  text-align:justify!important;
  text-align-last:left!important;
  text-justify:auto!important;
  word-spacing:normal!important;
  letter-spacing:normal!important;
  hyphens:none!important;
  overflow-wrap:break-word!important;
  white-space:normal!important;
  padding-right:6px!important;
}
.gtp-inclusions .gtp-justified-point p.gtp-justified.is-multiline{
  text-align:justify!important;
  text-align-last:left!important;
}
.gtp-inclusions .gtp-summary-extra{margin-top:12px!important}
.gtp-inclusions .gtp-summary-extra[hidden]{display:none!important}
.gtp-inclusions .gtp-summary-more{cursor:pointer!important;user-select:none!important}

/* 56.0 - Incluye/No incluye: cada elemento en su propia línea y justificación natural. */
.gtp-inclusions .gtp-justified-point{display:block!important;position:relative!important;width:100%!important;box-sizing:border-box!important;padding-left:28px!important;padding-right:20px!important;margin:0!important;}
.gtp-inclusions .gtp-justified-point .gtp-point-marker{position:absolute!important;left:0!important;top:.2em!important;width:18px!important;text-align:center!important;font-weight:900!important;}
.gtp-inclusions #no-incluye .gtp-justified-point .gtp-point-marker{color:#ef3340!important;}
.gtp-inclusions .gtp-justified-point p.gtp-justified{display:block!important;width:100%!important;box-sizing:border-box!important;margin:0!important;padding:0!important;text-align:left!important;text-align-last:left!important;white-space:normal!important;overflow-wrap:break-word!important;word-spacing:normal!important;letter-spacing:normal!important;}
.gtp-inclusions .gtp-justified-point p.gtp-justified.is-multiline{text-align:justify!important;text-align-last:left!important;}
.gtp-inclusions .gtp-summary-extra{display:block;}
.gtp-inclusions .gtp-summary-extra[hidden]{display:none!important;}


/* 57.0 FINAL - incluye/no incluye: cada punto separado y justificado sin estirar líneas cortas. */
.gtp-inclusions .gtp-justified-list{display:block!important;width:100%!important;}
.gtp-inclusions .gtp-justified-point{
  position:relative!important;
  display:block!important;
  width:100%!important;
  box-sizing:border-box!important;
  margin:0 0 14px!important;
  padding:0 24px 0 30px!important;
}
.gtp-inclusions .gtp-justified-point .gtp-point-marker{
  position:absolute!important;
  left:0!important;
  top:.15em!important;
  width:18px!important;
  text-align:center!important;
  font-weight:900!important;
  line-height:1.4!important;
}
.gtp-inclusions #no-incluye .gtp-point-marker{color:#ef3340!important;}
.gtp-inclusions .gtp-justified-point p.gtp-justified{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  text-align:justify!important;
  text-align-last:left!important;
  text-justify:inter-word!important;
  word-spacing:normal!important;
  letter-spacing:normal!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}
.gtp-inclusions .gtp-summary-extra[hidden]{display:none!important;}
.gtp-inclusions .gtp-summary-more{
  display:inline-flex!important;
  margin-top:4px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--gtp-blue)!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
@media(max-width:700px){.gtp-inclusions .gtp-justified-point{padding-right:10px!important;}}
.gtp-redemption-history{margin-top:28px}.gtp-redemption-list{display:grid;gap:10px}.gtp-redemption-item{display:flex;justify-content:space-between;gap:18px;align-items:center;border:1px solid #dbe5ee;border-radius:14px;padding:14px 16px;background:#fff}.gtp-redemption-item small{display:block;color:#718096;margin-top:4px}.gtp-redemption-item>div:last-child{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.gtp-reward-image{width:100%;height:180px;object-fit:cover;border-radius:12px;margin-bottom:12px}.gtp-reward-card strong{display:block;margin:10px 0}.gtp-reward-card .gtp-chip{display:inline-block;margin-bottom:12px}@media(max-width:700px){.gtp-redemption-item{flex-direction:column;align-items:flex-start}.gtp-redemption-item>div:last-child{justify-content:flex-start}}
.gtp-incentive-card .gtp-incentive-sales{display:flex;flex-direction:column;gap:3px;margin:14px 0 8px}.gtp-incentive-sales strong{font-size:24px}.gtp-incentive-sales span,.gtp-incentive-note{color:#6b7b88;font-size:13px}.gtp-incentive-next,.gtp-incentive-achieved{display:grid;gap:4px;margin-top:12px;padding:14px;border-radius:12px;background:#f6fafc;border:1px solid #dce9ef}.gtp-incentive-tiers{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.gtp-incentive-tiers span{padding:6px 9px;border-radius:999px;background:#f1f4f6;color:#64717b;font-size:11px}.gtp-incentive-tiers span.is-achieved{background:#e8f7ee;color:#18794e}.gtp-incentive-note{display:block;margin-top:10px}.gtp-reward-image{display:block;width:100%;height:220px;object-fit:cover;border-radius:12px;margin:0 0 14px}

.gtp-award-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.gtp-award-card{padding:22px;border:1px solid var(--gtp-border);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(28,57,78,.05)}.gtp-award-card h3{margin-top:4px}.gtp-award-card.is-expired{opacity:.72}.gtp-award-dates{display:grid;gap:4px;margin:14px 0;color:#667680;font-size:13px}.gtp-chip-active{background:#e8f7ee!important;color:#18794e!important}.gtp-chip-expired{background:#fdebed!important;color:#b52b3a!important}.gtp-admin-scroll{overflow:auto}.gtp-incentive-tier-table th,.gtp-incentive-tier-table td{vertical-align:top}.gtp-incentive-tier-table input{min-width:125px}@media(max-width:980px){.gtp-award-grid{grid-template-columns:1fr}}

.gtp-award-pending-count{display:inline-grid!important;place-items:center;min-width:20px;height:20px;margin-left:5px;padding:0 6px;border-radius:10px;background:#1686c1!important;color:#fff!important;font-size:11px!important;font-weight:800}
.gtp-award-claim{margin-top:8px}.gtp-award-claim-note{display:block;margin-top:8px;color:#6b7a83;font-size:12px}.gtp-award-card.is-claimed{border-color:#b8dfc7;background:#fbfffc}.gtp-award-card.is-expired{border-color:#f0c1c5;background:#fffafa}

.gtp-bonus-picker{margin:18px 0;padding:16px;border:1px solid #dce6ef;border-radius:14px;background:#f8fbfe}.gtp-bonus-picker small{display:block;margin-top:7px;color:#52606d}.gtp-bonus-applied{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding:10px 12px;border-radius:10px;background:#effaf2;color:#176b36}.gtp-bonus-applied strong{font-weight:800}.gtp-total{margin-top:12px}
.gtp-points-value{margin:0 0 18px;padding:12px 14px;border:1px solid #dce6ef;border-radius:12px;background:#f8fbfe;color:#304555}.gtp-points-value strong{font-weight:800}.gtp-points-value small{display:block;margin-top:4px;color:#71808b;font-size:12px}


/* Panel de colaboradores y documentos de reservas */
.gtp-collaborator-portal{max-width:1180px;margin:30px auto;padding:0 18px;color:#18313d}
.gtp-collab-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:28px;border-radius:22px;background:linear-gradient(135deg,#f3f8fb,#fff);border:1px solid #dce8ee;margin-bottom:18px}
.gtp-collab-header h1{margin:5px 0 8px}.gtp-collab-header p{margin:0;color:#60727b}.gtp-portal-kicker{font-size:11px;font-weight:900;letter-spacing:.12em;color:#087cc4}
.gtp-collab-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px}.gtp-collab-stats>div{padding:20px;border:1px solid #e0e9ee;border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(20,50,65,.06)}.gtp-collab-stats strong{display:block;font-size:30px}.gtp-collab-stats span{color:#687a83}
.gtp-collab-reservation{background:#fff;border:1px solid #dce7ec;border-radius:22px;padding:22px;margin:0 0 20px;box-shadow:0 10px 30px rgba(25,55,70,.07)}
.gtp-collab-reservation-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid #edf1f3;padding-bottom:16px;margin-bottom:18px}.gtp-collab-reservation-head h2{margin:8px 0 4px}.gtp-collab-total{font-size:20px;white-space:nowrap}
.gtp-collab-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gtp-collab-info{padding:16px;border-radius:16px;background:#f7fafb}.gtp-collab-info h3,.gtp-collab-documents h3{margin:0 0 10px}.gtp-collab-info p{margin:7px 0}.gtp-collab-info label{display:block;font-weight:800}.gtp-collab-info select{display:block;width:100%;margin:6px 0 10px;padding:10px;border:1px solid #ccdbe2;border-radius:10px;background:#fff}
.gtp-collab-passengers{margin:18px 0;padding:12px 15px;border:1px solid #e2eaee;border-radius:14px}.gtp-collab-passengers summary{font-weight:800;cursor:pointer}.gtp-collab-passengers ul{margin-top:8px}
.gtp-collab-documents{margin-top:18px;padding-top:18px;border-top:1px solid #edf1f3}.gtp-collab-doc-group{border:1px solid #e0e9ee;border-radius:15px;padding:14px;margin-top:12px}.gtp-collab-doc-group-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.gtp-collab-doc-group-head h4{margin:0}.gtp-collab-doc-list{display:grid;gap:7px;margin:10px 0}.gtp-collab-doc-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;background:#f7fafb;border-radius:9px}.gtp-collab-doc-row a{font-weight:700}.gtp-collab-doc-delete{border:0;background:transparent;color:#b3261e;font-weight:800;cursor:pointer}
.gtp-collab-upload-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.gtp-collab-upload-form input[type=file]{max-width:100%}.gtp-collab-upload-names{width:100%;display:grid;gap:8px}.gtp-collab-file-name{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,2fr);gap:10px;align-items:center;font-size:12px;font-weight:700}.gtp-collab-file-name input{padding:9px;border:1px solid #ccdbe2;border-radius:9px}.gtp-collab-form-msg{font-size:13px;font-weight:800}.gtp-collab-form-msg.error{color:#b3261e}.gtp-collab-form-msg:not(.error){color:#16803c}
.gtp-client-documents{margin:18px 0;padding:16px;border:1px solid #dce8ee;border-radius:15px;background:#f8fbfc}.gtp-client-documents h4{margin:0 0 10px}.gtp-client-doc-group{margin-top:10px}.gtp-client-doc-group>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.gtp-doc-empty{color:#687a83;margin:0}
.gtp-resource-lightbox{z-index:2147483000!important}.gtp-resource-lightbox-stage img{max-height:86vh;max-width:90vw}
@media(max-width:760px){.gtp-collab-header,.gtp-collab-reservation-head{flex-direction:column}.gtp-collab-grid,.gtp-collab-stats{grid-template-columns:1fr}.gtp-collab-total{font-size:18px}.gtp-collab-file-name{grid-template-columns:1fr}}

.gtp-outlet-old-price{display:inline-block;color:#8a949c;font-size:12px;font-weight:600;margin-right:6px;text-decoration:line-through;text-decoration-thickness:2px}.gtp-current-price{display:inline-block}
.gtp-reservation-advisor{margin:8px 0 0!important;color:#173f60;font-size:14px}.gtp-reservation-advisor strong{color:#087cc4}.gtp-reservation-advisor-success{margin:12px 0 16px;padding:12px 14px;border:1px solid #d6e7ef;border-radius:12px;background:#f5fafc;color:#173f60;display:flex;flex-direction:column;gap:3px}.gtp-reservation-advisor-success strong{color:#087cc4}.gtp-reservation-advisor-success span{font-size:12px;color:#687a83}

.gtp-collab-tools{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr) auto;gap:14px;align-items:end;margin:0 0 20px;padding:18px;border:1px solid #dce7ec;border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(20,50,65,.05)}
.gtp-collab-tools label{display:block;margin:0 0 6px;font-size:12px;font-weight:900;color:#526770}.gtp-collab-search input,.gtp-collab-filter select{display:block;width:100%;box-sizing:border-box;padding:11px 13px;border:1px solid #ccdbe2;border-radius:10px;background:#fff;color:#18313d;font:inherit}.gtp-collab-filter-count{align-self:end;white-space:nowrap;font-weight:800;color:#526770;padding:11px 0}
@media(max-width:760px){.gtp-collab-tools{grid-template-columns:1fr}.gtp-collab-filter-count{padding:0}}
\n\n/* Panel Comercial Administrativo */\n.gtp-commercial-portal{max-width:1240px;margin:32px auto;padding:0 18px;color:#18313d}.gtp-commercial-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:30px;border-radius:22px;background:linear-gradient(135deg,#0f3f5f,#0d84c4);color:#fff;margin-bottom:20px}.gtp-commercial-header h1{margin:6px 0 8px;color:#fff}.gtp-commercial-header p{margin:0;color:rgba(255,255,255,.86)}.gtp-commercial-header .gtp-portal-kicker{color:#d9eef9}.gtp-commercial-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:22px}.gtp-commercial-summary>div{padding:20px;border:1px solid #dce7ec;border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(20,50,65,.06)}.gtp-commercial-summary strong{display:block;font-size:25px;line-height:1.2}.gtp-commercial-summary span{display:block;color:#687a83;font-size:13px;margin-top:6px}.gtp-commercial-table-card{padding:22px;border:1px solid #dce7ec;border-radius:20px;background:#fff;box-shadow:0 8px 25px rgba(20,50,65,.06)}.gtp-commercial-table-wrap{overflow:auto}.gtp-commercial-table{width:100%;border-collapse:collapse;min-width:780px}.gtp-commercial-table th,.gtp-commercial-table td{padding:14px 12px;border-bottom:1px solid #edf1f3;text-align:left;vertical-align:middle}.gtp-commercial-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#60727b;background:#f7fafb}.gtp-commercial-table td:first-child strong,.gtp-commercial-table td:first-child small{display:block}.gtp-commercial-table td:first-child small{color:#71818a;margin-top:3px}.gtp-commercial-table tr:last-child td{border-bottom:0}.gtp-commercial-badge{display:inline-grid;place-items:center;min-width:28px;padding:4px 9px;border-radius:999px;font-weight:800;font-size:12px}.gtp-commercial-badge.is-confirmed{background:#e8f7ee;color:#18794e}.gtp-commercial-badge.is-cancelled{background:#fdebed;color:#b52b3a}.gtp-commercial-badge.is-pending{background:#fff5d8;color:#946200}.gtp-commercial-detail{margin-top:12px;border:1px solid #dce7ec;border-radius:16px;background:#fff;overflow:hidden}.gtp-commercial-detail summary{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;cursor:pointer;list-style:none}.gtp-commercial-detail summary::-webkit-details-marker{display:none}.gtp-commercial-detail summary span{color:#687a83;font-size:13px}.gtp-commercial-reservations{border-top:1px solid #edf1f3}.gtp-commercial-reservation-row{display:flex;justify-content:space-between;gap:18px;padding:13px 18px;border-bottom:1px solid #edf1f3}.gtp-commercial-reservation-row:last-child{border-bottom:0}.gtp-commercial-reservation-row>div:first-child strong,.gtp-commercial-reservation-row>div:first-child span{display:block}.gtp-commercial-reservation-row>div:first-child span{margin-top:3px;color:#687a83;font-size:13px}.gtp-commercial-reservation-row>div:last-child{display:flex;align-items:center;gap:12px;white-space:nowrap}.gtp-commercial-reservation-row .gtp-status{font-size:11px}.gtp-commercial-table tr.is-unassigned td{background:#fffaf0}.gtp-commercial-table tr.is-unassigned td:first-child{color:#946200}\n@media(max-width:1000px){.gtp-commercial-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}\n@media(max-width:700px){.gtp-commercial-header{flex-direction:column}.gtp-commercial-summary{grid-template-columns:1fr}.gtp-commercial-detail summary,.gtp-commercial-reservation-row{flex-direction:column;align-items:flex-start}.gtp-commercial-reservation-row>div:last-child{white-space:normal}}\n
/* 12.5 - Panel Comercial Administrativo renovado + control de documentos */
.gtp-commercial-portal{max-width:1280px;margin:36px auto;padding:0 22px;color:#18313d}
.gtp-commercial-header{padding:34px 36px;border-radius:24px;background:linear-gradient(135deg,#123c59 0%,#087fc3 100%);box-shadow:0 18px 42px rgba(14,55,78,.16);margin-bottom:24px}
.gtp-commercial-header h1{font-size:clamp(32px,4vw,48px);letter-spacing:-.03em;margin:8px 0 6px}
.gtp-commercial-header p{font-size:15px}
.gtp-commercial-header .gtp-button-light{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.35);color:#fff}
.gtp-commercial-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:24px}
.gtp-commercial-kpi{position:relative;display:flex;align-items:center;gap:14px;min-height:105px;padding:20px 18px!important;border:1px solid #e0e9ee!important;border-radius:18px!important;box-shadow:0 10px 28px rgba(20,50,65,.07)!important;overflow:hidden}
.gtp-commercial-kpi:after{content:"";position:absolute;right:-24px;top:-24px;width:78px;height:78px;border-radius:50%;background:#eef7fc}
.gtp-commercial-kpi-icon{position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:#eef7fc;color:#087fc3;font-size:20px;font-weight:900}
.gtp-commercial-kpi.is-confirmed .gtp-commercial-kpi-icon{background:#e8f7ee;color:#18824f}
.gtp-commercial-kpi.is-cancelled .gtp-commercial-kpi-icon{background:#fdebed;color:#b52b3a}
.gtp-commercial-kpi.is-pending .gtp-commercial-kpi-icon{background:#fff4d8;color:#a16a00}
.gtp-commercial-kpi.is-sales .gtp-commercial-kpi-icon{background:#edf0ff;color:#4557a8}
.gtp-commercial-kpi strong{font-size:27px;line-height:1.15;display:block;position:relative;z-index:1}
.gtp-commercial-kpi span:not(.gtp-commercial-kpi-icon){font-size:12px;margin-top:5px;position:relative;z-index:1}
.gtp-commercial-section-kicker{font-size:11px!important;font-weight:800!important;letter-spacing:.13em!important;color:#1381bd!important;text-transform:uppercase!important}
.gtp-commercial-doc-overview{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 28px;margin-bottom:24px;border:1px solid #dce8ee;border-radius:20px;background:linear-gradient(135deg,#f7fbfd,#fff);box-shadow:0 8px 24px rgba(20,50,65,.05)}
.gtp-commercial-doc-overview h2{margin:4px 0 5px;font-size:25px}.gtp-commercial-doc-overview p{margin:0;color:#71808a;font-size:14px}
.gtp-commercial-doc-overview-stats{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.gtp-commercial-doc-overview-stats span{padding:10px 13px;border:1px solid #e1ebef;border-radius:12px;background:#fff;color:#65757e;font-size:12px;white-space:nowrap}.gtp-commercial-doc-overview-stats strong{color:#18313d;font-size:16px;margin-right:4px}
.gtp-commercial-table-card{padding:26px!important;border-radius:22px!important}.gtp-commercial-table{min-width:1050px}.gtp-commercial-table th{padding:13px 14px;background:#f4f8fa}.gtp-commercial-table td{padding:16px 14px}.gtp-commercial-advisor{display:flex;align-items:center;gap:11px}.gtp-commercial-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#e6f4fb,#cfe8f5);color:#0874ad;font-weight:900}.gtp-commercial-avatar.small{width:34px;height:34px;border-radius:10px;font-size:13px}.gtp-commercial-advisor span:last-child{min-width:170px}.gtp-commercial-advisor small,.gtp-commercial-detail-person small{display:block;color:#7a8991;margin-top:3px;font-size:11px}.gtp-commercial-sales{white-space:nowrap;color:#173d53}
.gtp-commercial-doc-pills{display:flex;flex-wrap:wrap;gap:5px}.gtp-commercial-doc-pill{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#edf7fb;color:#17617f;font-size:10px;font-weight:800;white-space:nowrap}.gtp-commercial-doc-state{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:700}.gtp-commercial-doc-state.is-empty{background:#f4f5f6;color:#8a969c}
.gtp-commercial-details-title{margin:34px 0 14px}.gtp-commercial-details-title h2{margin:4px 0 3px;font-size:28px}.gtp-commercial-details-title p{margin:0;color:#73828b}
.gtp-commercial-detail{border:1px solid #dce7ec!important;border-radius:18px!important;background:#fff!important;box-shadow:0 8px 22px rgba(20,50,65,.05)!important;margin-bottom:12px;overflow:hidden}.gtp-commercial-detail summary{padding:18px 20px!important;background:#fbfdfe}.gtp-commercial-detail[open] summary{border-bottom:1px solid #edf2f4;background:#f7fbfd}.gtp-commercial-detail-person{display:flex;align-items:center;gap:11px}.gtp-commercial-detail-person strong{display:block;font-size:15px}.gtp-commercial-detail-arrow{font-size:22px;color:#73828b;transition:transform .2s}.gtp-commercial-detail[open] .gtp-commercial-detail-arrow{transform:rotate(180deg)}
.gtp-commercial-reservations{background:#f9fbfc}.gtp-commercial-reservation-row{display:grid!important;grid-template-columns:minmax(220px,1.3fr) minmax(140px,.55fr) minmax(250px,1fr);align-items:center;padding:18px 20px!important;gap:22px;border-bottom:1px solid #e9eff2!important}.gtp-commercial-reservation-main .gtp-commercial-ref{display:inline-flex;padding:4px 7px;border-radius:7px;background:#e9f4fa;color:#17617f;font-size:10px;font-weight:800;margin-bottom:7px}.gtp-commercial-reservation-main strong{display:block;font-size:14px}.gtp-commercial-reservation-main span{display:block;color:#71808a;font-size:12px;margin-top:4px}.gtp-commercial-reservation-meta{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.gtp-commercial-reservation-meta strong{font-size:14px}.gtp-commercial-reservation-docs{padding:12px 14px;border:1px solid #e1eaee;border-radius:13px;background:#fff}.gtp-commercial-doc-title{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#71808a;margin-bottom:8px}.gtp-commercial-doc-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.gtp-commercial-doc-links a{padding:5px 8px;border-radius:7px;background:#f0f7fa;color:#0875ad;text-decoration:none;font-size:10px;font-weight:700}.gtp-commercial-doc-links a:hover{text-decoration:underline}
@media(max-width:1100px){.gtp-commercial-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.gtp-commercial-doc-overview{align-items:flex-start;flex-direction:column}.gtp-commercial-doc-overview-stats{justify-content:flex-start}}
@media(max-width:760px){.gtp-commercial-portal{padding:0 12px}.gtp-commercial-header{padding:26px 22px}.gtp-commercial-summary{grid-template-columns:1fr}.gtp-commercial-reservation-row{grid-template-columns:1fr!important}.gtp-commercial-doc-overview{padding:20px}.gtp-commercial-table-card{padding:16px!important}.gtp-commercial-detail summary{padding:15px!important}}

/* 12.6 - Panel comercial: detalle de reservas amplio y responsive */
.gtp-commercial-portal{max-width:1450px;margin:34px auto;padding:0 24px}
.gtp-commercial-details-title{margin:34px 0 16px}
.gtp-commercial-details-title h2{margin:4px 0 6px;font-size:30px;line-height:1.2}
.gtp-commercial-details-title p{margin:0;color:#687a83}
.gtp-commercial-detail{margin:0 0 18px;border:1px solid #d7e3e9;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(20,50,65,.05)}
.gtp-commercial-detail summary{min-height:76px;padding:18px 22px;background:#f8fbfc}
.gtp-commercial-detail-person{display:flex;align-items:center;gap:14px;min-width:0}
.gtp-commercial-detail-person strong{font-size:18px;color:#18313d}
.gtp-commercial-detail-person small{display:block;margin-top:4px;color:#687a83;font-size:13px}
.gtp-commercial-reservations{border-top:1px solid #dfe8ed}
.gtp-commercial-reservation-row{display:grid;grid-template-columns:minmax(260px,1.55fr) minmax(180px,.65fr) minmax(300px,1fr);gap:26px;align-items:center;padding:24px 26px;background:#fff;border-bottom:1px solid #e7eef1}
.gtp-commercial-reservation-row:last-child{border-bottom:0}
.gtp-commercial-reservation-main{min-width:0}
.gtp-commercial-reservation-main .gtp-commercial-ref{display:inline-block;margin-bottom:9px;padding:6px 10px;border-radius:8px;background:#eaf5fa;color:#176b91;font-size:12px;font-weight:900;letter-spacing:.02em}
.gtp-commercial-reservation-main strong{display:block;font-size:18px;line-height:1.35;color:#18252b}
.gtp-commercial-reservation-main span{display:block;margin-top:7px;color:#687a83;font-size:14px;line-height:1.45}
.gtp-commercial-reservation-meta{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:9px!important;white-space:normal!important}
.gtp-commercial-reservation-meta .gtp-status{display:inline-block;padding:7px 12px;border-radius:999px;background:#eaf5fa;color:#087cc4;font-size:12px;font-weight:900}
.gtp-commercial-reservation-meta strong{font-size:21px;line-height:1.2;color:#111820;white-space:normal}
.gtp-commercial-reservation-docs{min-width:0;padding:18px 20px;border:1px solid #dbe6eb;border-radius:16px;background:#f9fbfc}
.gtp-commercial-doc-title{margin-bottom:10px;color:#60727b;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.gtp-commercial-doc-state{display:block;padding:9px 11px;border-radius:9px;background:#f1f4f5;color:#7b878d;font-size:13px;font-weight:700}
.gtp-commercial-doc-pills{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}
.gtp-commercial-doc-pill{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#eaf5fa;color:#176b91;font-size:12px;font-weight:900}
.gtp-commercial-doc-links{display:flex;flex-wrap:wrap;gap:8px}
.gtp-commercial-doc-links a{display:inline-flex;align-items:center;padding:8px 10px;border:1px solid #cfe0e7;border-radius:9px;background:#fff;color:#087cc4;font-size:12px;font-weight:900;text-decoration:none}
.gtp-commercial-doc-links a:hover{text-decoration:underline}
.gtp-commercial-table-wrap{overflow-x:auto}
.gtp-commercial-table{min-width:920px}
@media(max-width:1100px){
 .gtp-commercial-portal{max-width:100%;padding:0 18px}
 .gtp-commercial-reservation-row{grid-template-columns:minmax(0,1fr) minmax(180px,.7fr);gap:20px}
 .gtp-commercial-reservation-docs{grid-column:1/-1}
}
@media(max-width:700px){
 .gtp-commercial-portal{padding:0 12px}
 .gtp-commercial-reservation-row{grid-template-columns:1fr;padding:20px 18px}
 .gtp-commercial-reservation-docs{grid-column:auto}
 .gtp-commercial-detail summary{padding:16px 18px}
 .gtp-commercial-detail-person strong{font-size:16px}
 .gtp-commercial-reservation-meta strong{font-size:19px}
}

/* 12.7 — Ajuste visual del panel Comercial Administrativo */
.gtp-commercial-kpi{
  min-width:0!important;
  overflow:hidden!important;
  padding:20px 18px!important;
}
.gtp-commercial-kpi-icon{
  width:46px!important;
  height:46px!important;
  flex:0 0 46px!important;
  border-radius:14px!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:21px!important;
  line-height:1!important;
  text-align:center!important;
  font-weight:900!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.03)!important;
}
.gtp-commercial-kpi.is-confirmed .gtp-commercial-kpi-icon,
.gtp-commercial-kpi.is-cancelled .gtp-commercial-kpi-icon,
.gtp-commercial-kpi.is-pending .gtp-commercial-kpi-icon,
.gtp-commercial-kpi.is-sales .gtp-commercial-kpi-icon{
  display:grid!important;
  place-items:center!important;
}
.gtp-commercial-kpi > div{min-width:0!important}
.gtp-commercial-kpi strong{font-variant-numeric:tabular-nums;word-break:break-word}

/* Reserva: información + estado en la primera fila; documentos en una fila propia. */
.gtp-commercial-reservation-row{
  grid-template-columns:minmax(0,1.55fr) minmax(190px,.65fr)!important;
  gap:18px 28px!important;
  align-items:center!important;
  padding:24px 26px!important;
}
.gtp-commercial-reservation-main,
.gtp-commercial-reservation-meta,
.gtp-commercial-reservation-docs{min-width:0!important}
.gtp-commercial-reservation-docs{
  grid-column:1 / -1!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:18px 20px!important;
  border:1px solid #d8e4e9!important;
  border-radius:16px!important;
  background:#f8fbfc!important;
  overflow:hidden!important;
}
.gtp-commercial-doc-title{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 12px!important;
  color:#526872!important;
  font-size:12px!important;
  line-height:1.2!important;
  letter-spacing:.06em!important;
}
.gtp-commercial-doc-title:before{
  content:'▣';
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:7px;
  background:#e8f4f9;
  color:#0877ad;
  font-size:12px;
  letter-spacing:0;
}
.gtp-commercial-doc-pills{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 12px!important;
}
.gtp-commercial-doc-pill{
  max-width:100%!important;
  box-sizing:border-box!important;
  padding:7px 10px!important;
  border:1px solid #d4e7ee!important;
  border-radius:999px!important;
  background:#edf7fb!important;
  color:#17617f!important;
  font-size:12px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
.gtp-commercial-doc-links{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:8px!important;
  width:100%!important;
  margin:0!important;
}
.gtp-commercial-doc-links a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  padding:9px 11px!important;
  border:1px solid #cfe0e7!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#0877ad!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:800!important;
  text-align:center!important;
  text-decoration:none!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.gtp-commercial-doc-links a:hover{background:#eef8fc!important;text-decoration:none!important}
.gtp-commercial-doc-state.is-empty{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  width:max-content!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  padding:9px 11px!important;
  border-radius:10px!important;
  background:#f1f4f5!important;
  color:#7b878d!important;
  font-size:12px!important;
}
.gtp-commercial-doc-state.is-empty:before{content:'—';font-weight:900}

@media(max-width:760px){
  .gtp-commercial-reservation-row{grid-template-columns:1fr!important;padding:20px 18px!important;gap:16px!important}
  .gtp-commercial-reservation-docs{grid-column:auto!important;padding:16px!important}
  .gtp-commercial-doc-links{grid-template-columns:1fr!important}
  .gtp-commercial-kpi-icon{width:42px!important;height:42px!important;flex-basis:42px!important}
}


/* 12.8 — Panel Comercial: precios compactos e identificación clara de documentos */
.gtp-commercial-kpi.is-sales > div{min-width:0!important;flex:1 1 auto!important}
.gtp-commercial-kpi.is-sales strong{font-size:22px!important;line-height:1.15!important;white-space:nowrap!important;word-break:normal!important;letter-spacing:-.02em!important}
.gtp-commercial-kpi-icon{display:grid!important;place-items:center!important;align-content:center!important;justify-content:center!important;text-align:center!important;line-height:1!important;padding:0!important;box-sizing:border-box!important}
.gtp-commercial-doc-title{justify-content:flex-start!important}
.gtp-commercial-doc-title-icon{display:grid!important;place-items:center!important;width:26px!important;height:26px!important;flex:0 0 26px!important;border-radius:8px!important;background:#e8f4f9!important;color:#0877ad!important;font-size:12px!important;line-height:1!important}
.gtp-commercial-doc-groups{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;gap:12px!important}
.gtp-commercial-doc-group{min-width:0!important;padding:13px!important;border:1px solid #dce8ed!important;border-radius:12px!important;background:#fff!important}
.gtp-commercial-doc-group-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:9px!important}
.gtp-commercial-doc-group-head strong{font-size:13px!important;color:#18313d!important}
.gtp-commercial-doc-group-head span{font-size:11px!important;color:#75868f!important;white-space:nowrap!important}
.gtp-commercial-doc-links{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
.gtp-commercial-doc-links a{justify-content:flex-start!important;text-align:left!important;min-width:0!important;overflow:hidden!important;white-space:normal!important;text-overflow:clip!important;gap:4px!important}
.gtp-commercial-doc-links a span{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.gtp-commercial-doc-links a small{display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#70818a!important;font-size:10px!important;font-weight:600!important;margin-top:2px!important}
.gtp-commercial-doc-state.is-empty{width:100%!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important}
.gtp-commercial-doc-state.is-empty strong{font-size:12px!important;color:#6f7d84!important}
.gtp-commercial-doc-state.is-empty span{font-size:11px!important;color:#89969c!important}
@media(max-width:1100px){.gtp-commercial-kpi.is-sales strong{font-size:20px!important}.gtp-commercial-doc-groups{grid-template-columns:1fr!important}}
@media(max-width:760px){.gtp-commercial-kpi.is-sales strong{font-size:22px!important;white-space:normal!important}.gtp-commercial-doc-groups{grid-template-columns:1fr!important}}

/* 12.9 — Panel Comercial: KPIs sin cortes + documentos en acordeón */
.gtp-commercial-summary{grid-template-columns:repeat(4,minmax(0,1fr)) minmax(230px,1.12fr)!important}
.gtp-commercial-kpi{min-width:0!important}
.gtp-commercial-kpi.is-sales strong{font-size:19px!important;line-height:1.12!important;white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere!important;letter-spacing:-.015em!important}
.gtp-commercial-kpi.is-sales > div{min-width:0!important;max-width:100%!important}
.gtp-commercial-kpi-icon{align-self:center!important;justify-self:center!important;place-items:center!important}
.gtp-commercial-doc-accordion{width:100%;border:0!important;margin:0!important}
.gtp-commercial-doc-accordion>summary{display:grid!important;grid-template-columns:32px minmax(150px,1fr) auto 22px!important;align-items:center!important;gap:10px!important;padding:0!important;cursor:pointer!important;list-style:none!important;background:transparent!important;border:0!important}
.gtp-commercial-doc-accordion>summary::-webkit-details-marker{display:none!important}
.gtp-commercial-doc-summary-icon{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;border-radius:9px!important;background:#e8f4f9!important;color:#0877ad!important;font-size:12px!important;font-weight:900!important}
.gtp-commercial-doc-summary-main{min-width:0!important;display:flex!important;flex-direction:column!important;gap:3px!important}
.gtp-commercial-doc-summary-main strong{font-size:12px!important;color:#526872!important;text-transform:uppercase!important;letter-spacing:.06em!important;line-height:1.2!important}
.gtp-commercial-doc-summary-main small{font-size:11px!important;color:#7b8b93!important;line-height:1.2!important}
.gtp-commercial-doc-summary-pills{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:5px!important;min-width:0!important}
.gtp-commercial-doc-summary-pills b{display:inline-flex!important;align-items:center!important;padding:5px 8px!important;border-radius:999px!important;background:#edf7fb!important;border:1px solid #d4e7ee!important;color:#17617f!important;font-size:10px!important;line-height:1!important;white-space:nowrap!important}
.gtp-commercial-doc-summary-arrow{font-size:19px!important;color:#6f818a!important;line-height:1!important;transition:transform .2s ease!important;text-align:center!important}
.gtp-commercial-doc-accordion[open] .gtp-commercial-doc-summary-arrow{transform:rotate(180deg)!important}
.gtp-commercial-doc-accordion-body{margin-top:14px!important;padding-top:14px!important;border-top:1px solid #e4edf1!important}
.gtp-commercial-doc-groups{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important}
.gtp-commercial-doc-group{min-width:0!important}
@media(max-width:1100px){.gtp-commercial-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gtp-commercial-summary .gtp-commercial-kpi.is-sales{grid-column:1/-1}.gtp-commercial-kpi.is-sales strong{font-size:20px!important}}
@media(max-width:700px){.gtp-commercial-summary{grid-template-columns:1fr!important}.gtp-commercial-summary .gtp-commercial-kpi.is-sales{grid-column:auto}.gtp-commercial-kpi.is-sales strong{font-size:20px!important}.gtp-commercial-doc-accordion>summary{grid-template-columns:32px minmax(0,1fr) 22px!important}.gtp-commercial-doc-summary-pills{grid-column:2/-1;justify-content:flex-start}.gtp-commercial-doc-summary-arrow{grid-column:3;grid-row:1;align-self:center}.gtp-commercial-doc-accordion-body{margin-top:12px!important;padding-top:12px!important}}

/* ===== Destacados por destino: 4 tarjetas sin filtros ===== */
.gtp-featured-plans{
  width:100%;
  max-width:1400px;
  margin:0 auto;
  padding:0;
  box-sizing:border-box;
}
.gtp-featured-plans-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
  align-items:stretch;
}
.gtp-featured-plans .gtp-card{
  min-width:0;
  height:100%;
}
.gtp-featured-plans .gtp-card-body{
  min-width:0;
}
.gtp-featured-plans .gtp-card-actions{
  margin-top:auto!important;
}
.gtp-featured-empty{
  width:100%;
}
@media(max-width:1100px){
  .gtp-featured-plans-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
  .gtp-featured-plans-grid{grid-template-columns:1fr;gap:16px;}
}

/* v13.11: cada día guardado debe ser visible; el acordeón solo oculta el contenido del día, no la fila. */
.gtp-itinerary-section .gtp-itinerary-item { display:block !important; visibility:visible !important; }
.gtp-itinerary-section .gtp-itinerary-panel { box-sizing:border-box; }

.gtp-auth-forgot{margin:-8px 0 14px;text-align:right}.gtp-auth-forgot a{font-size:13px;font-weight:600;color:#0b8fd3;text-decoration:none}.gtp-auth-forgot a:hover{text-decoration:underline}


/* Recuperación de contraseña Gremtur */
.gtp-auth-recovery-card{text-align:center;padding:38px 34px}.gtp-recovery-logo{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:22px;color:var(--gtp-dark);font-size:23px}.gtp-recovery-logo span{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--gtp-blue);color:#fff;font-weight:900}.gtp-recovery-logo strong{font-size:25px}.gtp-recovery-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:50%;background:#eaf7ef;color:#16804a;font-size:28px;font-weight:900}.gtp-recovery-icon.error{background:#ffebed;color:#b12632}.gtp-auth-recovery-card h2{font-size:26px;margin-bottom:9px}.gtp-recovery-intro{max-width:380px;margin:0 auto 22px!important;color:#65727c;line-height:1.6}.gtp-auth-recovery-card form{text-align:left}.gtp-auth-recovery-card .gtp-button{width:100%;margin-top:8px}.gtp-recovery-back{display:block;margin-top:18px;color:#0b8fd3;text-decoration:none;font-size:13px;font-weight:700}.gtp-recovery-back:hover{text-decoration:underline}.gtp-recovery-success p{color:#65727c;line-height:1.6}.gtp-recovery-success .gtp-button{margin-top:10px}@media(max-width:560px){.gtp-auth-recovery-card{padding:30px 22px}}

/* v13.24: personalización de acceso y panel de colaboradores */
.gtp-auth-shell.has-custom-bg{background-size:cover;background-position:center;background-repeat:no-repeat}
.gtp-auth-brand>span.gtp-auth-logo-mark,
.gtp-recovery-logo span.gtp-auth-logo-mark{display:grid;place-items:center;overflow:hidden;background:#fff;border:2px solid rgba(255,255,255,.72)}
.gtp-auth-brand>span.gtp-auth-logo-mark img,
.gtp-recovery-logo span.gtp-auth-logo-mark img{display:block;width:100%;height:100%;object-fit:contain;padding:5px}
.gtp-auth-brand>span.gtp-auth-logo-mark{width:50px;height:50px;border-radius:16px}
.gtp-recovery-logo span.gtp-auth-logo-mark{width:46px;height:46px;border-radius:14px}
.gtp-auth-card form[data-auth-panel] h2,
.gtp-auth-card form[data-auth-panel] > p{text-align:center}
.gtp-auth-tabs button:hover,
.gtp-auth-tabs button:focus-visible{background:var(--gtp-blue)!important;color:#fff!important;box-shadow:none}
.gtp-button:hover,
.gtp-button:focus-visible,
.gtp-button-light:hover,
.gtp-button-light:focus-visible{background:var(--gtp-blue)!important;color:#fff!important;border-color:var(--gtp-blue)!important;filter:none!important}
.gtp-collab-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.gtp-collab-stats>div.is-confirmed{border-color:#bfe7d0;background:#f4fcf7}
.gtp-collab-stats>div.is-pending{border-color:#f0dfaa;background:#fffaf0}
.gtp-collab-stats>div.is-cancelled{border-color:#f1c7cc;background:#fff7f8}
.gtp-collab-tools{grid-template-columns:minmax(0,2fr) minmax(260px,1fr) auto}
.gtp-collab-filter select{min-height:46px!important;height:46px!important;padding:10px 38px 10px 14px!important;background:#fff!important;color:#18313d!important;font-size:14px!important;font-weight:700!important;line-height:1.3!important;opacity:1!important;visibility:visible!important}
.gtp-collab-filter select option{color:#18313d;background:#fff;font-weight:600}
.gtp-collab-reservation{padding:0;overflow:hidden}
.gtp-collab-reservation-head{margin:0!important;padding:22px 24px!important;border-bottom:0!important;align-items:center!important;background:#fff}
.gtp-collab-summary-main{min-width:0}
.gtp-collab-summary-main h2{margin:7px 0 5px!important;font-size:19px!important}
.gtp-collab-summary-main p{margin:0!important;color:#687a83;font-size:13px}
.gtp-collab-summary-side{display:flex;align-items:center;gap:18px;flex-shrink:0}
.gtp-collab-total{font-size:21px!important;color:#111820}
.gtp-collab-details{min-width:120px}
.gtp-collab-details summary{display:inline-flex;align-items:center;gap:8px;justify-content:center;padding:10px 14px;border:1px solid #cfe0e7;border-radius:10px;background:#f6fafc;color:#087cc4;font-weight:800;cursor:pointer;list-style:none;white-space:nowrap}
.gtp-collab-details summary::-webkit-details-marker{display:none}
.gtp-collab-details summary .gtp-collab-details-arrow{font-size:14px;transition:transform .2s}
.gtp-collab-details[open] summary .gtp-collab-details-arrow{transform:rotate(180deg)}
.gtp-collab-details-body{margin:0 -24px;border-top:1px solid #e7eef1;padding:20px 24px 24px;background:#f8fafb}
.gtp-collab-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.gtp-collab-detail-card{margin:0 0 16px}
.gtp-collab-detail-card .gtp-collab-info{height:100%;box-sizing:border-box}
.gtp-collab-passengers{margin-top:16px;border:1px solid #dce7ec;border-radius:14px;background:#fff;overflow:hidden}
.gtp-collab-passengers summary{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:14px 16px;cursor:pointer;list-style:none;font-weight:800;color:#18313d}
.gtp-collab-passengers summary::-webkit-details-marker{display:none}
.gtp-collab-passengers summary small{color:#687a83;font-weight:600}
.gtp-collab-passengers>div{padding:0 16px 16px;border-top:1px solid #edf1f3}
.gtp-collab-passengers h4{margin:15px 0 7px;color:#087cc4}
.gtp-collab-passengers ul{margin:0;padding-left:20px}
.gtp-collab-passengers li{margin:7px 0;color:#526770;font-size:13px;line-height:1.5}
.gtp-collab-documents{margin-top:16px!important;padding:18px!important;border:1px solid #dce7ec!important;border-radius:15px!important;background:#fff}
.gtp-collab-documents .gtp-collab-doc-head{margin-bottom:8px}
.gtp-collab-upload-form .gtp-button{color:#fff!important;background:var(--gtp-blue)!important}
@media(max-width:1100px){.gtp-collab-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  .gtp-collab-stats{grid-template-columns:1fr 1fr}
  .gtp-collab-summary-side{width:100%;justify-content:space-between;flex-wrap:wrap}
  .gtp-collab-reservation-head{align-items:flex-start!important}
  .gtp-collab-detail-grid{grid-template-columns:1fr}
  .gtp-collab-details-body{margin:0 -18px;padding:18px}
}
@media(max-width:520px){.gtp-collab-stats{grid-template-columns:1fr}.gtp-collab-summary-side{align-items:flex-start}.gtp-collab-total{font-size:19px!important}.gtp-collab-details{width:100%}.gtp-collab-details summary{width:100%;box-sizing:border-box}}


/* 13.26 — indicadores anuales/mensuales y valores compactos en paneles */
.gtp-collab-year-filter,.gtp-commercial-year-filter{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:0 0 16px}
.gtp-collab-year-filter label,.gtp-commercial-year-filter label{font-size:12px;font-weight:900;color:#526770}
.gtp-collab-year-filter select,.gtp-commercial-year-filter select{min-width:120px;height:42px;padding:8px 34px 8px 12px;border:1px solid #ccdbe2;border-radius:10px;background:#fff;color:#18313d;font:inherit;font-weight:800}
.gtp-panel-money{display:block;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;line-height:1.05!important;letter-spacing:-.025em!important;font-size:clamp(15px,2.2vw,26px)!important;min-width:0!important}
.gtp-collab-total.gtp-panel-money{font-size:clamp(15px,2vw,21px)!important}
.gtp-commercial-sales.gtp-panel-money{font-size:clamp(14px,1.65vw,20px)!important}
.gtp-monthly-summary{margin:0 0 22px;padding:22px;border:1px solid #dce7ec;border-radius:20px;background:#fff;box-shadow:0 8px 25px rgba(20,50,65,.05)}
.gtp-monthly-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}
.gtp-month-card{min-width:0;padding:14px;border:1px solid #e0e9ee;border-radius:14px;background:#f9fbfc}
.gtp-month-card strong,.gtp-month-card span,.gtp-month-card small,.gtp-month-card b{display:block}
.gtp-month-card strong{color:#18313d;font-size:14px}
.gtp-month-card span{margin-top:5px;color:#526770;font-size:13px;font-weight:800}
.gtp-month-card small{margin-top:5px;color:#71818a;font-size:11px;line-height:1.4}
.gtp-month-card b{margin-top:9px;color:#087fc3;font-size:16px;white-space:nowrap}
@media(max-width:1000px){.gtp-monthly-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.gtp-collab-year-filter,.gtp-commercial-year-filter{justify-content:flex-start}.gtp-monthly-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gtp-month-card b{font-size:14px}}
@media(max-width:520px){.gtp-monthly-grid{grid-template-columns:1fr}.gtp-panel-money{font-size:15px!important}}

.gtp-panel-filters form{display:flex;align-items:center;gap:10px;margin:0}.gtp-panel-filters select{min-width:120px}.gtp-panel-filters form select{height:42px}.gtp-panel-filters form label{margin:0 0 0 4px}.gtp-panel-filters form label:first-child{margin-left:0}
@media(max-width:760px){.gtp-panel-filters{justify-content:flex-start;overflow-x:auto}.gtp-panel-filters form{flex-wrap:wrap}.gtp-panel-filters form select{min-width:150px}}


/* Dashboard tabs: keep the monthly comparison separate from the reservation workload. */
.gtp-panel-tabs{display:flex;gap:8px;align-items:center;margin:0 0 18px;padding:5px;border:1px solid #dce7ec;border-radius:14px;background:#f4f8fa;width:max-content;max-width:100%;box-sizing:border-box}
.gtp-panel-tabs button{border:0;border-radius:10px;background:transparent;color:#5b707a;font:inherit;font-weight:800;padding:10px 18px;cursor:pointer;transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.gtp-panel-tabs button:hover{background:#e8f3f8;color:#087cc4}
.gtp-panel-tabs button.is-active{background:#087cc4;color:#fff;box-shadow:0 4px 12px rgba(8,124,196,.18)}
.gtp-panel-tab-content[hidden],.gtp-monthly-summary[hidden]{display:none!important}
.gtp-monthly-summary{margin-top:0}
@media(max-width:600px){.gtp-panel-tabs{width:100%}.gtp-panel-tabs button{flex:1;padding:10px 8px;font-size:12px}}
