/* Shared V3 product flow, within the original visual system. */
.plan-options{display:grid;gap:11px;margin:16px 0}.plan-options label{display:grid;gap:7px;font-size:14px;font-weight:600}.plan-options select{width:100%;padding:12px 10px;border:1px solid #d7d0cb;background:#fff;border-radius:7px;font:inherit;line-height:1.5;color:#292426}.plan-inquiry{display:inline-flex;color:#821b31;text-underline-offset:4px;font-size:13px;line-height:1.6}.plan-small{font-size:12px!important;line-height:1.7!important;color:#6d6563;margin:4px 0 10px!important}.plan-section{padding:34px 0;border-top:1px solid #e4dfdb}.plan-section h2{font-size:clamp(24px,2.8vw,31px);line-height:1.35;margin:0 0 18px}.plan-section h3{font-size:18px;line-height:1.5;margin:0 0 10px}.plan-section p{font-size:14px;line-height:1.8;color:#625b59}.plan-payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.plan-policy-list{margin:18px 0}.plan-policy-row{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:15px 0;border-bottom:1px solid #ebe6e2;font-size:14px;line-height:1.7}.plan-policy-row dt{font-weight:600}.plan-policy-row dd{margin:0;color:#6c625e}.plan-journey{list-style:none;counter-reset:journey;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:0;margin:25px 0}.plan-journey li{counter-increment:journey;display:grid;align-content:start;gap:9px;font-size:14px;line-height:1.7}.plan-journey li:before{content:'0' counter(journey);font-size:12px;color:#8b2439}.plan-journey span{color:#6c625e;font-size:13px}.plan-link-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;background:#841b30;color:white!important;border:0;border-radius:7px;font:600 14px/1.5 inherit;text-decoration:none;min-height:44px}.plan-link-button:hover{background:#661225}.plan-instagram{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px;margin:20px 0;border:1px solid #e4dcd7;border-radius:11px;background:#faf8f5}.plan-instagram strong{font-size:18px}.plan-instagram p{font-size:13px;line-height:1.8;color:#6d625c;margin:8px 0 0;max-width:720px}.plan-instagram>a{flex:none;color:#851d32;font-weight:600;text-underline-offset:4px}.plan-stay-rules{padding-top:18px;font-size:14px}.plan-stay-rules summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.plan-stay-rules h5{font-size:14px;margin:16px 0 6px}.plan-stay-rules p{font-size:13px;line-height:1.8;color:#6d625e;white-space:pre-line}.plan-address{display:block}.plan-service-content a,.vv-service-content a{color:#851d32;text-underline-offset:3px}.plan-preview-banner{border:1px solid #eadcc5;background:#fff9ed;padding:11px 14px;border-radius:7px;font-size:13px;line-height:1.7;color:#725a3c}.plan-checkout{max-width:780px}.plan-checkout header{display:flex;align-items:center;justify-content:space-between;gap:20px}.plan-close{border:0;background:none;font-size:23px;color:#5e4d4e;cursor:pointer}.plan-checkout fieldset{border:1px solid #dfd7d2;border-radius:8px;padding:17px;margin:15px 0}.plan-checkout legend{font-weight:600;padding:0 5px}.plan-checkout label{font-size:13px;line-height:1.6}.plan-checkout label input:not([type=checkbox]){min-height:44px}.plan-check{display:flex!important;align-items:flex-start;gap:9px;font-weight:400!important;margin:15px 0;line-height:1.7!important}.plan-check input[type=checkbox]{width:18px;min-width:18px;height:18px;min-height:18px;flex:none;margin:3px 0 0;accent-color:#841b30}.plan-order-summary{background:#faf8f5;border:1px solid #e8dfda;padding:18px;border-radius:9px;margin:16px 0}.plan-summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:9px 0;font-size:14px;line-height:1.7;border-bottom:1px solid #e9e1dc}.plan-summary-row:last-child{border:0;font-size:18px}.plan-summary-row strong{text-align:right;font-weight:600;max-width:70%}.plan-summary-row span{color:#71655f}.plan-checkout-terms{border-left:3px solid #c5a59a;padding:4px 0 4px 15px;margin:20px 0}.plan-checkout-terms p{font-size:13px;line-height:1.8}.plan-secondary{display:inline-flex;justify-content:center;align-items:center;border:1px solid #cfc3bd;border-radius:7px;padding:10px 16px;background:#fff;color:#74192b;font:inherit;cursor:pointer;min-height:42px}.plan-success{color:#35614b;font-weight:600}.plan-order-number{display:block;font-size:20px;overflow-wrap:anywhere;margin:12px 0}.plan-account-page{max-width:1050px;margin:0 auto;padding:35px 24px 70px;color:#292426;font-family:Montserrat,'PingFang SC','Microsoft YaHei',sans-serif}.plan-account-page h1{font-size:36px;line-height:1.3}.plan-account-page>p{line-height:1.8;color:#675f5c}.plan-account-status{background:#faf7f1;border:1px solid #e4d8c7;padding:22px;border-radius:10px;margin:25px 0;font-size:14px;line-height:1.8}.plan-account-status a{color:#821b31}.plan-demo-order{border:1px solid #e0d6cf;padding:24px;border-radius:10px;margin:25px 0}.plan-demo-order h2{font-size:22px;overflow-wrap:anywhere}.plan-demo-order p{font-size:14px;line-height:1.8}.plan-account-tabs details{border-bottom:1px solid #e3dad4;padding:16px 0}.plan-account-tabs summary{cursor:pointer;font-size:15px}.plan-account-link{position:absolute;right:24px;bottom:10px;font:12px/1.5 system-ui;color:#7c1b30!important;text-underline-offset:3px}.plan-addons{border:1px solid #dfd5ce;border-radius:7px;padding:13px}.plan-addons label{display:flex;font-weight:400}.plan-addons input{width:17px;height:17px}.plan-options :focus-visible,.plan-link-button:focus-visible,.plan-secondary:focus-visible,.plan-instagram a:focus-visible{outline:3px solid #b37932;outline-offset:3px}
@media(min-width:801px){.vv-product #plan-payment,.vv-product #plan-policies,.vv-product #plan-after-booking,.vv-product [id^="plan-"]{scroll-margin-top:246px}}
@media(max-width:800px){.plan-payment-grid{grid-template-columns:1fr;gap:20px}.plan-journey{grid-template-columns:1fr 1fr}.plan-policy-row{grid-template-columns:1fr;gap:4px;padding:13px 0}.plan-instagram{align-items:flex-start;flex-direction:column;gap:15px;padding:20px}.plan-checkout{width:calc(100vw - 24px);padding:18px!important}.plan-summary-row{font-size:13px;gap:12px}.plan-summary-row:last-child{font-size:16px}.plan-account-link{right:16px;bottom:5px}.plan-section{padding:28px 0}.plan-demo-order{padding:18px}.plan-account-page h1{font-size:29px}}
@media(max-width:400px){.plan-journey{grid-template-columns:1fr}.plan-summary-row{align-items:flex-start;flex-direction:column;gap:3px}.plan-summary-row strong{text-align:left;max-width:100%}}
.plan-section h2{font-size:24px!important}.plan-section h3{font-size:16px}.plan-policy-row{font-size:13px;gap:18px;padding:12px 0}.plan-policy-row dt{font-weight:500}#plan-policies h2{font-size:22px!important}#plan-policies p{font-size:13px;line-height:1.8}.plan-stay-extras{margin-top:22px;padding-top:18px;border-top:1px solid #e6ddd7}.plan-stay-extras h5{font-size:16px;margin:0 0 12px}.plan-extra-choice{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;padding:14px;background:#faf8f5;border:1px solid #e5dcd5;border-radius:8px;margin:8px 0;font-size:14px}.plan-extra-choice>span{display:grid;gap:5px;flex:1}.plan-extra-choice strong{font-size:14px}.plan-extra-choice small{font-size:12px;line-height:1.6;color:#74665e}.plan-extra-choice input{width:18px;height:18px;min-height:18px;margin:2px 0 0;accent-color:#841b30}.plan-extra-note{flex-basis:100%}.plan-extra-choice>a{font-size:13px;white-space:nowrap}.plan-stay-extras:empty{display:none}
@media(max-width:800px){.plan-section h2{font-size:22px!important}#plan-policies h2{font-size:20px!important}.plan-policy-row{gap:4px}}
.plan-route-icon{display:inline-flex;vertical-align:-3px;margin-right:7px;color:#4c655f}.plan-route-icon svg{width:18px;height:18px;flex:none}
/* Product inclusion icons must remain bounded even if a legacy style is missing. */
.vv-product .vv-service-icon{width:46px;height:46px;min-width:46px;display:grid;place-items:center;flex:none;border-radius:12px}
.vv-product .vv-service-icon svg{display:block;width:27px!important;height:27px!important;max-width:27px!important;max-height:27px!important;flex:none}
@media(max-width:680px){.vv-product .vv-service-icon{width:38px;height:38px;min-width:38px;border-radius:10px}.vv-product .vv-service-icon svg{width:23px!important;height:23px!important;max-width:23px!important;max-height:23px!important}}
.vv-product .plan-stock-status{display:inline-flex;align-items:center;gap:7px;width:fit-content;margin:9px 0 3px;padding:5px 10px;border:1px solid #ddd8d2;border-radius:99px;background:#f7f6f3;color:#625e59;font:600 12px/1.4 Montserrat,"PingFang SC","Microsoft YaHei",sans-serif}.vv-product .plan-stock-status::before{content:"";display:inline-block;width:7px;height:7px;flex:none;border-radius:50%;background:currentColor}.vv-product .plan-stock-status.is-in_stock{color:#217347;background:#edf8f1;border-color:#b7ddc5}.vv-product .plan-stock-status.is-low_stock,.vv-product .plan-stock-status.is-sold_out{color:#aa293a;background:#fff0f2;border-color:#e8b9c0}
@media(min-width:801px){
 .vv-product.vv-desktop-reflow .vv-product-hero{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);column-gap:38px;row-gap:18px;align-items:start}
 .vv-product.vv-desktop-reflow .vv-product-gallery{grid-column:1;grid-row:1}
 .vv-product.vv-desktop-reflow .vv-product-summary{grid-column:2;grid-row:1 / span 2}
 .vv-product.vv-desktop-reflow .vv-desktop-product-dock{grid-column:1;grid-row:2;min-width:0;padding:2px 0 0}
 .vv-product.vv-desktop-reflow .vv-product-summary [data-plan-facts-mobile]{display:none}
 .vv-product.vv-desktop-reflow .vv-desktop-product-dock .vv-at-glance{margin:0 0 16px}
}
@media(max-width:800px){.vv-product.vv-desktop-reflow .vv-desktop-product-dock{display:none}}
.vv-product.vv-desktop-reflow h1{font-size:26px!important;line-height:1.3!important}
@media(min-width:801px){.vv-product.vv-desktop-reflow .vv-product-summary .plan-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 10px;margin:11px 0 2px}.vv-product.vv-desktop-reflow .vv-product-summary .plan-options>small,.vv-product.vv-desktop-reflow .vv-product-summary .plan-options>.plan-inquiry,.vv-product.vv-desktop-reflow .vv-product-summary .plan-addons{grid-column:1 / -1}}
@media(max-width:800px){.vv-product.vv-desktop-reflow h1{font-size:24px!important}}
.vv-product-next .vv-contact-choice{border:0;background:transparent;color:#8e001b;font:600 14px/1.5 system-ui;cursor:pointer;white-space:nowrap;padding:8px 0}
@media(max-width:800px){.vv-product-next .vv-contact-choice{margin-top:10px}}
.vv-product.vv-desktop-reflow #plan-airport .vv-service-note,.vv-product.vv-desktop-reflow #plan-transfer .vv-service-note{border:0;padding:0;margin:9px 0 0!important;font-size:12px!important;line-height:1.6!important;color:#716b67!important}
@media(max-width:680px){.vv-product.vv-desktop-reflow #plan-airport .vv-service-note,.vv-product.vv-desktop-reflow #plan-transfer .vv-service-note{font-size:12px!important;line-height:1.55!important;margin-top:7px!important}}
body.vv-utility-page .vv-product.vv-desktop-reflow .vv-at-glance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;list-style:none;margin:0 0 16px;padding:0}
body.vv-utility-page .vv-product.vv-desktop-reflow .vv-at-glance li{display:flex;align-items:center;gap:9px;min-width:0;min-height:68px;padding:9px;border:1px solid #e6e1dd;border-radius:9px;background:#fbfaf8;line-height:1.4}
body.vv-utility-page .vv-product.vv-desktop-reflow .vv-fact-icon{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:9px;background:#f3e9e8;color:#86172d}
body.vv-utility-page .vv-product.vv-desktop-reflow .vv-fact-icon svg{display:block;width:22px!important;height:22px!important;max-width:22px!important;max-height:22px!important;fill:none}
body.vv-utility-page .vv-product.vv-desktop-reflow .vv-fact-copy{display:grid;gap:3px;min-width:0;font:12px/1.45 Montserrat,"PingFang SC","Microsoft YaHei",sans-serif;color:#5c5652;overflow-wrap:anywhere}
body.vv-utility-page .vv-product.vv-desktop-reflow .vv-fact-copy b{font-size:13px;color:#292426;font-weight:600}
@media(max-width:440px){body.vv-utility-page .vv-product.vv-desktop-reflow .vv-at-glance{grid-template-columns:1fr 1fr}body.vv-utility-page .vv-product.vv-desktop-reflow .vv-at-glance li{min-height:61px;padding:7px}body.vv-utility-page .vv-product.vv-desktop-reflow .vv-fact-icon{width:29px;height:29px}body.vv-utility-page .vv-product.vv-desktop-reflow .vv-fact-icon svg{width:19px!important;height:19px!important}}
@media(min-width:801px){.vv-product.vv-desktop-reflow .vv-product-summary [data-plan-facts-mobile]{display:none!important}}
/* Compact product-specific terms in the review step and clear sample booking mail. */
.plan-checkout-policy-list{margin:12px 0 0}.plan-checkout-policy-row{display:grid;grid-template-columns:160px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid #e9e1dc;font-size:12px;line-height:1.65}.plan-checkout-policy-row dt{font-weight:700}.plan-checkout-policy-row dd{margin:0;color:#625b59}.plan-account-mails{margin:24px 0;border-top:1px solid #e6ded8;padding-top:20px}.plan-account-mails h3{margin-bottom:7px}.plan-account-mail{border:1px solid #e6ded8;border-radius:8px;padding:13px 16px;margin:10px 0;background:#fff}.plan-account-mail summary{cursor:pointer;font-weight:650}.plan-account-mail-fields>div{display:grid;grid-template-columns:125px 1fr;gap:8px;padding:6px 0;border-bottom:1px solid #f1ece8;font-size:13px;line-height:1.6}.plan-account-mail-fields dt{font-weight:600}.plan-account-mail-fields dd{margin:0}.plan-demo-order>[data-open-contact]{margin-top:8px}
@media(max-width:600px){.plan-checkout-policy-row,.plan-account-mail-fields>div{grid-template-columns:1fr;gap:2px}.plan-account-page h2{font-size:21px}.plan-account-mail{padding:12px}}
.plan-inquiry:is(button){appearance:none;background:none;border:0;padding:0;text-align:left;cursor:pointer;font-family:inherit}
