/* Touch purchase experience. Portal controls retain their existing layout. */
.customer #identity{display:none}.customer header{padding:16px 4%}.customer .brand-logo{width:190px;max-height:70px}.customer .demo{font-size:12px;letter-spacing:.4px;padding:8px}.customer main{max-width:1380px;margin-top:20px}.customer h1{line-height:1.12}.customer .muted{font-size:19px}.customer button{min-height:64px;font-size:19px;border-radius:18px}.customer .large{min-height:76px;font-size:22px;padding:20px 34px}.customer .primary{background:#ff633a;box-shadow:0 10px 22px #ff633a20}.customer button:focus-visible,.customer input:focus-visible,.customer summary:focus-visible{outline:4px solid #007f9d;outline-offset:5px}.customer-nav{display:flex;justify-content:flex-start;margin-bottom:18px}.customer-nav button{min-height:50px;padding:10px 22px;font-size:17px}.customer .travel-hero{min-height:510px;grid-template-columns:1.15fr 1fr;padding-top:5px;background:linear-gradient(120deg,#f8fbff,#eaf4ff);border:1px solid #e5eefb}.customer .hero-copy{padding:35px 16px 35px 28px}.customer .hero-copy h1{font-size:clamp(40px,4.3vw,63px);letter-spacing:-2.4px}.customer .hero-copy p{font-size:20px;max-width:440px;margin:22px 0 28px}.customer .hero-art{min-height:480px}.customer .hero-art>img{height:510px}.hero-pills{display:flex;gap:18px;flex-wrap:wrap;font-size:15px;color:#47748a;margin-top:22px}.destination-section{padding-top:15px;scroll-margin-top:20px}.customer .section-heading{margin:26px 0 18px}.customer .section-heading h2{font-size:36px;letter-spacing:-1px}.customer .section-heading p{margin:10px 0 20px}.customer .search-label{max-width:640px;margin:0 0 15px}.customer .search-label input{border-radius:40px;font-size:21px;min-height:68px;padding:18px 28px;border:2px solid #d6e5f3;box-shadow:0 5px 18px #193f6510}.customer .popular{font-size:15px;color:#6a8195}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.customer .visual-destination{padding:0;overflow:hidden;border:1px solid #dbe7f2;border-radius:27px;background:#fff;color:#0b3357;box-shadow:0 8px 24px #183f6710;text-align:left;transition:transform .18s,box-shadow .18s}.visual-destination:hover{transform:translateY(-5px);box-shadow:0 16px 32px #183f6720}.destination-art{display:flex;align-items:center;justify-content:center;height:165px;color:#fff;position:relative;overflow:hidden;background:linear-gradient(140deg,#198faf,#10587c)}.destination-art:before{content:'';position:absolute;width:180px;height:180px;right:-20px;top:-90px;background:#ffffff18;border-radius:50%}.destination-art:after{content:'';position:absolute;width:95px;height:95px;left:-25px;bottom:-40px;border:20px solid #ffffff15;border-radius:50%}.destination-art svg{width:160px;height:140px;filter:drop-shadow(0 10px 12px #0a385c22)}.usa .destination-art{background:linear-gradient(140deg,#7396cf,#263f7a)}.europe .destination-art{background:linear-gradient(140deg,#f4ad79,#cb7067)}.colombia .destination-art{background:linear-gradient(140deg,#63b999,#197972)}.mexico .destination-art{background:linear-gradient(140deg,#ecc46f,#cf8d55)}.global .destination-art{background:linear-gradient(140deg,#72c9df,#4783c1)}.destination-caption{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:22px 25px;position:relative}.place-name{display:block;flex:1 1 100%;font-size:26px;font-weight:750;letter-spacing:-.6px}.place-name>span{margin-right:10px}.from-price{font-size:14px;font-weight:400;color:#668199}.from-price strong{font-size:26px;font-weight:800;color:#0b3357;margin-left:5px}.from-price small{font-size:12px;margin-left:6px}.destination-arrow{margin-left:auto;background:#fff1e9;color:#e35b32;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-size:24px}.visual-steps{list-style:none;display:flex;gap:8px;justify-content:center;max-width:760px;margin:14px auto 40px;padding:0}.visual-steps li{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;color:#91a2b1;font-size:14px;padding:12px 4px;border-bottom:3px solid #e2eaf1}.visual-steps li>span{display:grid;place-items:center;border-radius:50%;width:28px;height:28px;background:#e8eff5;font-weight:700}.visual-steps li.current{color:#e96338;border-color:#ff633a}.visual-steps li.current>span{background:#ff633a;color:white}.visual-steps li.complete{color:#158c91;border-color:#b4dedc}.visual-steps li.complete>span{background:#dbf1ed;color:#158c91}.centered{text-align:center;justify-content:center}.customer .purchase-screen{width:100%;padding-bottom:35px}.customer .purchase-screen h1{font-size:clamp(34px,4vw,52px);margin-top:15px}.destination-chip{display:inline-block;padding:10px 22px;border-radius:40px;background:#e3f1f7;color:#14617a;font-weight:750;font-size:18px}.plan-grid{max-width:1080px;margin:35px auto}.customer .visual-plan{display:flex;flex-direction:column;align-items:center;text-align:center;padding:27px 25px;border:2px solid #e0eaf3;border-radius:28px;box-shadow:0 10px 28px #1d4f7210}.mini-label{font-size:11px;letter-spacing:1.5px;color:#668399;font-weight:750}.plan-icon{width:105px;height:95px;color:#1398a4;margin:20px 0 0}.plan-icon svg{width:100%;height:100%}.visual-plan h2{font-size:24px;font-weight:500;margin:5px 0}.visual-plan h2 strong{font-size:64px;letter-spacing:-3px;font-weight:800}.plan-kind{font-size:15px;color:#748a9d}.plan-price{font-size:40px;font-weight:800;letter-spacing:-1.4px;color:#123953;margin:24px 0 15px}.plan-price small{display:block;font-size:12px;font-weight:500;letter-spacing:0;color:#7b8f9e;margin-top:7px}.visual-plan details{font-size:14px;color:#6b8092;margin:2px 0 20px;line-height:1.6;max-width:220px}.visual-plan summary{cursor:pointer;color:#227286}.visual-plan button{margin-top:auto;width:100%;font-size:18px}.checkout-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:55px;max-width:1050px;align-items:center;margin:40px auto}.checkout-illustration{text-align:center}.illustration-ring{width:240px;height:240px;display:grid;place-items:center;background:linear-gradient(140deg,#e7f8f6,#dfedfc);border-radius:50%;margin:0 auto 25px;color:#168da3}.illustration-ring svg{width:175px;height:165px}.checkout-illustration h2{font-size:26px;margin:22px 0 0}.checkout-card{padding:30px 35px}.summary-row{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:14px 0;color:#6a8295;font-size:17px}.summary-row strong{color:#163d56}.summary-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e2eaf1;padding:25px 0;margin-top:12px}.summary-total>span{font-size:16px}.summary-total strong{font-size:38px;letter-spacing:-1.4px}.summary-total small{font-size:14px;letter-spacing:0}.choice-check{display:flex;gap:10px;align-items:center;padding:16px;background:#f5f9fc;border:1px solid #e2ecf4;border-radius:14px;font-size:15px;line-height:1.5;cursor:pointer}.choice-check input[type=checkbox]{width:26px;height:26px;flex:0 0 26px;margin:0;accent-color:#1095a1}.checkout-card .actions{display:flex;flex-direction:column}.checkout-card .actions button{width:100%}.payment-stage{display:flex;align-items:center;justify-content:center;gap:65px;margin:35px auto}.payment-stage .illustration-ring{margin:0}.terminal-art{width:250px;height:250px}.payment-total{display:flex;flex-direction:column;gap:12px;color:#6f8598}.payment-total strong{font-size:65px;font-weight:800;letter-spacing:-3px;color:#163a54}.payment-total small{font-size:18px;letter-spacing:0}.payment-demo-note{max-width:660px;text-align:center;margin:25px auto;color:#8a682a;font-size:14px;padding:14px 20px;background:#fff6df;border-radius:14px}.customer .text-button{background:transparent;color:#687f92;font-weight:600}.success-mark{width:82px;height:82px;margin:0 auto 25px;background:#dff3eb;color:#109478;display:grid;place-items:center;border-radius:50%;font-size:44px}.receipt-strip{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;max-width:720px;margin:25px auto;color:#47697f;background:#fff;border:1px solid #e1ebf3;border-radius:18px;padding:20px}.receipt-strip strong{color:#173b55}.delivery-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;max-width:760px;margin:30px auto}.customer .delivery-card{display:flex;flex-direction:column;align-items:center;padding:30px;background:#fff;color:#153b58;border:2px solid #dae9f1;box-shadow:0 8px 25px #15466909}.delivery-card:hover{border-color:#159baa}.delivery-card strong{font-size:25px;margin:15px 0 10px}.delivery-card>span:last-child{font-size:14px;color:#718a9d;font-weight:400}.delivery-icon{width:105px;height:100px;color:#138e9c}.delivery-icon svg{width:100%;height:100%}.receipt-reference{font-size:12px;color:#889aaa;text-align:center}.digital-preview{text-align:center;max-width:600px;margin:30px auto}.digital-preview p{font-size:17px;color:#658092}.customer .offline .demo:after,.customer.offline .demo:after{content:' · Sin conexión: estamos intentando reconectar';font-size:12px}.customer #error{order:-2}.customer .notice{font-size:17px}.customer .floating-sim{padding:15px;border-radius:18px}.customer .floating-sim img{width:115px}.customer .customer-nav~*{scroll-margin-top:20px}
@media(max-width:1000px){.customer .travel-hero{grid-template-columns:1fr 1fr;min-height:420px}.customer .hero-copy{padding:25px 10px}.customer .hero-copy h1{font-size:45px}.customer .hero-art{min-height:400px}.customer .hero-art>img{height:430px}.checkout-layout{gap:25px}.customer .visual-plan{padding:23px 18px}.plan-grid{gap:15px}.visual-plan h2 strong{font-size:58px}}
@media(max-width:750px){.customer .travel-hero{grid-template-columns:1fr}.customer .hero-copy{text-align:center;padding:30px 10px 10px}.customer .hero-copy p{margin:20px auto}.hero-pills{justify-content:center}.customer .hero-art{width:100%;max-width:420px;min-height:330px}.customer .hero-art>img{height:350px}.customer .hero-copy h1{font-size:44px}.customer .grid.plan-grid{grid-template-columns:1fr}.customer .visual-plan{display:grid;grid-template-columns:70px 1fr 1fr;column-gap:18px;align-items:center;text-align:left;padding:20px}.visual-plan .mini-label{grid-column:2/4}.plan-icon{grid-column:1;grid-row:1/4;width:70px;height:85px;margin:0}.visual-plan h2{grid-column:2;grid-row:2}.visual-plan h2 strong{font-size:46px}.visual-plan .plan-kind{display:none}.plan-price{grid-column:3;grid-row:2;margin:0;font-size:32px}.visual-plan details{grid-column:2/4;margin:5px 0 12px;font-size:13px}.visual-plan button{grid-column:1/4;margin-top:10px}.checkout-layout{grid-template-columns:1fr}.checkout-illustration .illustration-ring{width:150px;height:150px;margin-bottom:15px}.checkout-illustration .illustration-ring svg{width:110px;height:110px}.checkout-illustration h2{display:none}.checkout-card{padding:22px}.visual-steps{gap:3px;margin-bottom:25px}.visual-steps li{flex-direction:column;font-size:11px;padding:8px 1px;gap:7px}.visual-steps li>span{width:27px;height:27px}.customer .purchase-screen h1{font-size:36px}.payment-stage{gap:25px;flex-direction:column}.terminal-art{width:180px;height:180px}.terminal-art svg{width:140px;height:140px}.payment-total{text-align:center}.payment-total strong{font-size:56px}.customer .large{font-size:20px;min-height:68px}.customer .delivery-card{padding:23px 15px}.delivery-card strong{font-size:20px}.delivery-grid{gap:15px}.customer .customer-nav{margin-bottom:15px}.customer .visual-destination .place-name{font-size:23px}.destination-caption{padding:20px}.customer .section-heading h2{font-size:31px}.receipt-strip{gap:14px;font-size:15px}}
@media(max-width:480px){.customer header{padding:12px 18px}.customer .brand-logo{width:155px;max-height:58px}.customer .hero-copy h1{font-size:37px}.customer .hero-copy p{font-size:18px}.customer .grid{grid-template-columns:1fr 1fr;gap:12px}.destination-art{height:115px}.destination-art svg{width:115px;height:105px}.destination-caption{padding:16px 12px;gap:9px}.customer .visual-destination .place-name{font-size:18px;letter-spacing:-.3px}.place-name>span{margin-right:4px}.from-price{font-size:11px}.from-price strong{font-size:21px}.from-price small{display:block;margin:5px 0 0}.destination-arrow{width:29px;height:29px;font-size:19px}.customer .grid.plan-grid{grid-template-columns:1fr}.delivery-grid{grid-template-columns:1fr}.customer .search-label input{font-size:18px;min-height:62px}.summary-total strong{font-size:32px}.customer .muted{font-size:17px}}
@media print{.customer .visual-steps,.customer .delivery-grid,.customer #receipt-actions,.customer #delivery-preview,.customer .customer-nav{display:none}.customer .receipt-reference{color:#000}.customer .receipt-strip{border:1px solid #999}.customer .success-mark{background:none;color:#000}}
.customer{overflow-anchor:none}.customer .payment-stage{scroll-margin-top:20px}
