.voucher-section:empty{display:none}.voucher-section{border-top:1px solid var(--line);padding-top:22px;margin-top:22px;margin-bottom:25px}.voucher-heading{display:flex;gap:10px;justify-content:space-between;align-items:flex-end;margin-bottom:16px}.voucher-heading .eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:7px}.voucher-heading h3{font-size:17px}.voucher-heading>span{font-size:9px;color:var(--muted);text-align:right}.voucher-list{display:grid;gap:10px}.voucher-ticket{display:flex;align-items:center;gap:14px;border:1px solid #edcdbb;border-radius:7px;background:#fffaf6;padding:13px}.voucher-value{min-width:78px;text-align:center;border-right:1px dashed #e4bd9f;padding:12px 15px 12px 0}.voucher-value strong{display:block;color:#c04920;font-size:21px;letter-spacing:-.8px;font-family:var(--display)}.voucher-value>span{display:block;font-size:7px;letter-spacing:1px;color:#ab7b60;margin-top:3px}.voucher-description{flex:1;min-width:0}.voucher-description>strong{font-size:11px;display:block}.voucher-description code{font-family:var(--font);font-size:10px;color:#b15b32;font-weight:700;letter-spacing:1px;overflow-wrap:anywhere}.voucher-description p{font-size:9px;color:#747a6f;margin:4px 0}.voucher-description small{display:block;font-size:8px;color:#888b80;line-height:1.6}.voucher-use{font-size:10px;border:1px solid #df7d52;background:#fff;color:#b34623;border-radius:4px;padding:7px 11px;font-weight:600;flex-shrink:0}.voucher-use:hover:not(:disabled){background:#fff0e4}.voucher-note{font-size:9px;color:var(--muted);margin:12px 0 0;line-height:1.7}.voucher-entry{border-top:1px solid #d5d9cc;padding-top:17px;margin-bottom:16px}.voucher-entry>label{font-size:11px;font-weight:600;display:block;margin-bottom:9px}.voucher-entry>div{display:flex;gap:6px}.voucher-entry input{width:100%;min-width:0;background:#fafbf7;border:1px solid #ccd2c3;border-radius:4px;padding:10px;font-size:11px;text-transform:uppercase}.voucher-entry input::placeholder{text-transform:none;color:#7f8875}.voucher-entry .secondary-button{font-size:10px;padding:9px 12px;min-height:36px}.voucher-entry>.text-button{font-size:10px;color:#a15332}.promo-breakdown{font-size:11px}.promo-breakdown>div{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin:9px 0}.promo-breakdown>div>span:last-child,.promo-breakdown strong{white-space:nowrap}.savings,.invoice-saving{color:#b34a22}.promo-message{font-size:10px;color:#626d58;line-height:1.7;margin:12px 0 16px}.promo-message.error{color:#b73a22}.summary-total{margin-top:10px}.invoice-card dd.invoice-saving{color:#b34a22}
@media(max-width:760px){.voucher-heading{align-items:center}.voucher-ticket{gap:10px;padding:12px 10px;flex-wrap:wrap}.voucher-value{min-width:70px;padding-right:10px}.voucher-value strong{font-size:19px}.voucher-description{min-width:125px}.voucher-use{margin-left:auto}.voucher-entry input{font-size:16px}.voucher-heading h3{font-size:16px}.voucher-heading>span{max-width:90px}.promo-message,.promo-breakdown{font-size:11px}}
.duration-grid{gap:12px;align-items:stretch}
.duration-choice{min-width:0;display:block}
.duration-card,.duration-choice input:checked+.duration-card{height:100%;min-height:0;padding:0;border:1px solid #d7dbd3;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 2px 3px #25312a04;transition:border-color .18s,box-shadow .18s,transform .18s}
.duration-card:hover{border-color:#a1ab9e;box-shadow:0 5px 14px #25312a0c;transform:translateY(-2px)}
.duration-choice.has-promo .duration-card,.duration-choice.has-promo input:checked+.duration-card{background:linear-gradient(155deg,#fff1e4,#fffaf4 70%);border-color:#e7a780;box-shadow:0 4px 14px #a54c1910}
.duration-choice input:checked+.duration-card{border-color:#d65025;box-shadow:0 0 0 1px #d65025,0 5px 16px #ad4c1617}
.duration-choice input:focus-visible+.duration-card{outline:3px solid #253c34;outline-offset:4px}
.plan-ribbon{display:flex;align-items:center;justify-content:center;gap:7px;min-height:32px;padding:7px 8px;background:#f1f3ed;color:#566151;font-size:9px;font-weight:700;letter-spacing:1px;line-height:1.2;border-bottom:1px solid #e6e9e0}
.plan-ribbon.promo-ribbon{background:linear-gradient(110deg,#b83d19,#c94a20);color:#fff;border-bottom-color:transparent;font-size:11px;letter-spacing:.7px}
.promo-symbol{height:17px;width:17px;border:1px solid #ffffff78;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:10px}
.plan-body{display:flex;flex:1;flex-direction:column;padding:14px 13px 12px;min-width:0}
.duration-hours{display:flex;gap:6px;align-items:baseline;font-size:35px;letter-spacing:-1.4px;line-height:1.15;margin:0 0 16px;color:#27362d}
.duration-hours small{font-size:12px;letter-spacing:0;color:#626e5d;font-weight:500}
.plan-price-block{display:flex;flex-direction:column;margin-bottom:12px;min-width:0}
.price-was{font-size:11px;font-weight:500;color:#73796d;line-height:1.5;min-height:17px;margin-bottom:2px}
.price-was s{text-decoration-thickness:1px}
.regular-price-label{font-size:10px;color:#717a6a}
.duration-price{font-family:var(--display);font-size:24px;font-weight:800;letter-spacing:-1px;line-height:1.25;white-space:nowrap;color:#27362d;display:flex;align-items:baseline;gap:2px}
.duration-price .price-currency{font-family:var(--font);font-size:12px;font-weight:650;letter-spacing:-.2px}
.has-promo .duration-price{color:#b73c18}
.duration-price.amount-long{font-size:17px;letter-spacing:-.6px}
.duration-caption{font-size:9px;color:#69735e;line-height:1.5;margin-top:3px}
.plan-benefit{font-size:9px;line-height:1.5;color:#73806a;margin-top:auto;padding-top:7px;border-top:1px solid #e7ebe1;overflow-wrap:anywhere}
.plan-savings{color:#a13c1e;font-weight:700;border-top-color:#efd1b9;font-size:11px}
.plan-selection{display:flex;align-items:center;justify-content:space-between;gap:6px;background:#f7f8f3;padding:9px 12px;border-top:1px solid #e5e8de;font-size:10px;font-weight:600;line-height:1.4;min-height:37px;color:#65745b}
.has-promo .plan-selection{background:#fff2e6;border-top-color:#efd1b9;color:#955236}
.plan-check{height:17px;width:17px;border:1px solid #a5b19d;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.plan-check .icon{height:12px;width:12px;visibility:hidden;stroke-width:2.5}
.plan-selected-text{display:none}
.duration-choice input:checked+.duration-card .plan-selection{background:#2d4035;color:#fff;border-top-color:#2d4035}
.duration-choice input:checked+.duration-card .plan-select-prompt{display:none}
.duration-choice input:checked+.duration-card .plan-selected-text{display:inline}
.duration-choice input:checked+.duration-card .plan-check{background:#fff;border-color:#fff;color:#2d4035}
.duration-choice input:checked+.duration-card .plan-check .icon{visibility:visible}
.duration-choice.is-unavailable .duration-card,.duration-choice.is-unavailable input:checked+.duration-card{background:#f6f6f2;border-color:#d8dbd3;box-shadow:none;transform:none}
.duration-choice.is-unavailable .plan-ribbon{background:#e4e7df;color:#626b5b}
.duration-choice.is-unavailable .duration-price{color:#656f5d}
.duration-choice.is-unavailable .plan-selection,.duration-choice.is-unavailable input:checked+.duration-card .plan-selection{background:#e8ebe2;border-color:#daddd2;color:#626d59}
.plan-selection>.icon{width:15px;height:15px}
@media(min-width:761px) and (max-width:1199px){.duration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.duration-grid{gap:12px}.plan-body{padding:13px 12px 11px}.duration-hours{font-size:34px;margin-bottom:14px}.duration-price{font-size:24px}.duration-price.amount-long{font-size:16px}.plan-ribbon{min-height:32px}.plan-selection{font-size:10px;padding:9px 11px}.plan-savings{font-size:10px}}
@media(max-width:350px){.duration-grid{gap:9px}.plan-body{padding:12px 9px 10px}.duration-price{font-size:21px}.duration-price.amount-long{font-size:14px}.plan-selection{padding:8px;font-size:9px}.plan-savings{font-size:9px}.plan-ribbon.promo-ribbon{font-size:10px}}
@media(prefers-reduced-motion:reduce){.duration-card{transition:none}.duration-card:hover{transform:none}}
