/* Customer inquiry flow. Load after the existing storefront styles. */
html.vcf-enabled { --vcf-blue:#10365c; --vcf-border:#cbd8e1; --vcf-muted:#52697b; }
.vcf-cart-button { display:inline-flex; align-items:center; justify-content:center; gap:9px; }
.vcf-cart-button svg { flex:none; width:22px; height:22px; }
html.vcf-enabled :is(#cartPanel,#inquiryForm,.vcf-dialog) [hidden] { display:none !important; }
/* All six hero slides are square: match their ratio instead of letterboxing them. */
html.vcf-enabled .hero { min-height:0; padding:56px 0; }
html.vcf-enabled .hero-grid { width:min(1180px,calc(100% - 64px)); margin-inline:auto; grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr); gap:64px; align-items:center; }
html.vcf-enabled .hero-grid > div:first-child { min-width:0; }
html.vcf-enabled .hero .stage.logo-hero[data-hero-carousel] { display:block; width:100%; max-width:510px; min-height:0; aspect-ratio:1; justify-self:end; }
html.vcf-enabled .hero .stage.logo-hero[data-hero-carousel] img { position:absolute; inset:0; display:block; width:100%; height:100%; min-height:0; aspect-ratio:auto; object-fit:contain; }
html.vcf-enabled .hero h1 { max-width:100%; margin:18px 0 20px; font-size:clamp(48px,3.7vw,64px); line-height:1.14; letter-spacing:-.035em; text-wrap:balance; }
html.vcf-enabled .hero .headline-line { display:block; white-space:normal; }
html.vcf-enabled .hero .lead { max-width:480px; margin:0; font-size:19px; line-height:1.55; }
html.vcf-enabled .hero .actions { margin-top:28px; }
html.vcf-enabled .product-actions .inquiry-add { display:inline-grid; width:46px; min-width:46px; height:46px; min-height:46px; place-items:center; padding:0; }
html.vcf-enabled .product-actions .inquiry-add svg { display:block; width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.vcf-cart-spec,.vcf-box-count { display:block; margin-top:5px; color:var(--vcf-muted,#52697b); font:12px/1.5 Arial,"Microsoft YaHei",sans-serif; letter-spacing:0; overflow-wrap:anywhere; }
.vcf-box-count { font-weight:700; }
.vcf-unit-note,.vcf-contact-note,.vcf-offer-status { color:var(--vcf-muted,#52697b); font:13px/1.55 Arial,"Microsoft YaHei",sans-serif; overflow-wrap:anywhere; }
.vcf-unit-note { margin:8px 0; }
.vcf-offer-status { grid-column:1/-1; margin:0; padding:10px 12px; border:1px solid #d4dfe7; border-radius:10px; background:#f7fafc; }
.vcf-cart-continue { grid-column:1/-1; display:flex; min-height:48px; align-items:center; justify-content:center; width:100%; padding:12px 16px; border:1px solid #10365c; border-radius:13px; background:#10365c; color:#fff; cursor:pointer; font:700 14px/1.4 Arial,"Microsoft YaHei",sans-serif; text-align:center; text-decoration:none; }
.vcf-cart-continue:disabled { opacity:.5; cursor:not-allowed; }
html.vcf-enabled #cartPanel.cart-panel { width:min(430px,calc(100vw - 24px)); }
html.vcf-enabled #cartPanel .cart-panel-header { position:sticky; top:0; z-index:2; background:#fdfcf9; }
html.vcf-enabled #cartPanel .cart-item { align-items:start; grid-template-columns:minmax(0,1fr); gap:10px; }
html.vcf-enabled #cartPanel .cart-item-name strong { font-size:14px; line-height:1.4; white-space:normal; overflow-wrap:anywhere; }
html.vcf-enabled #cartPanel .cart-item-name .vcf-cart-spec,
html.vcf-enabled #cartPanel .cart-item-name .vcf-box-count { font-size:12px; font-weight:400; letter-spacing:0; }
html.vcf-enabled #cartPanel .cart-item-name .vcf-box-count { font-weight:700; }
html.vcf-enabled #cartPanel .cart-item-controls { justify-content:flex-end; flex-wrap:wrap; gap:6px; }
html.vcf-enabled #cartPanel .cart-item-controls button { width:44px; height:44px; min-width:44px; min-height:44px; font-size:17px; }
html.vcf-enabled #cartPanel .cart-item-controls > span { min-width:36px; font-size:14px; }
html.vcf-enabled #cartPanel .cart-item-controls input { box-sizing:border-box; width:68px; min-height:44px; padding:8px; border:1px solid #b7c9d7; border-radius:10px; background:#fff; color:#10365c; text-align:center; font:700 14px/1.4 Arial,sans-serif; }
.vcf-form-summary { grid-column:1/-1; margin:0 0 12px; padding:16px; border:1px solid #ccd9e3; border-radius:14px; background:#f4f8fb; }
.vcf-form-summary h3 { margin:0 0 8px; color:#10365c; font:700 16px/1.4 Arial,"Microsoft YaHei",sans-serif; }
.vcf-form-summary p { margin:6px 0 0; line-height:1.55; }
.vcf-form-summary :is([data-vcf-edit-cart],a) { display:inline-flex; min-height:44px; align-items:center; justify-content:center; margin-top:10px; padding:9px 14px; border:1px solid #a9bfd0; border-radius:10px; background:#fff; color:#10365c; font:700 13px/1.4 Arial,"Microsoft YaHei",sans-serif; text-decoration:none; cursor:pointer; }
.vcf-form-summary :is([data-vcf-edit-cart],a):focus-visible { outline:3px solid #8cb4d8; outline-offset:3px; }
.vcf-form-items { margin:0; padding-left:20px; color:#1e3447; font:13px/1.6 Arial,"Microsoft YaHei",sans-serif; }
.vcf-form-items > * + * { margin-top:7px; }
.vcf-dialog { box-sizing:border-box; width:min(780px,calc(100vw - 24px)); max-height:calc(100dvh - 28px); margin:auto; padding:0; overflow:auto; overscroll-behavior:contain; border:1px solid #cbd8e1; border-radius:20px; background:#fdfcf9; color:#1e3447; box-shadow:0 24px 80px #0c233a4f; }
.vcf-dialog::backdrop { background:rgb(12 35 58 / .58); }
.vcf-dialog-body { position:relative; padding:28px; }
.vcf-dialog h2 { margin:0 44px 14px 0; font:500 clamp(25px,4vw,34px)/1.2 Georgia,"Times New Roman",serif; color:#10365c; }
.vcf-dialog h3 { margin:16px 0 8px; font:700 16px/1.45 Arial,"Microsoft YaHei",sans-serif; color:#10365c; }
.vcf-dialog p { line-height:1.55; }
.vcf-close { position:absolute; top:14px; right:14px; display:grid; width:44px; height:44px; min-width:44px; min-height:44px; place-items:center; padding:0; border:1px solid #cbd8e1; border-radius:50%; background:#f5f8fa; color:#10365c; font:400 25px/1 Arial,sans-serif; cursor:pointer; }
.vcf-steps { display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; margin:0 0 22px; padding:10px 0; list-style:none; color:#62798b; font:600 12px/1.5 Arial,"Microsoft YaHei",sans-serif; }
.vcf-steps [aria-current="step"],.vcf-steps .is-active { color:#10365c; font-weight:800; }
.vcf-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:18px 0; }
.vcf-fields label { display:grid; min-width:0; gap:7px; color:#1e3447; font:700 13px/1.45 Arial,"Microsoft YaHei",sans-serif; }
.vcf-fields label:has(textarea),.vcf-fields .span-2,.vcf-fields .vcf-contact-note { grid-column:1/-1; }
.vcf-fields input,.vcf-fields textarea { box-sizing:border-box; display:block; width:100%; min-width:0; min-height:46px; padding:11px 12px; border:1px solid #b9cbd8; border-radius:10px; background:#fff; color:#1e3447; font:400 16px/1.4 Arial,"Microsoft YaHei",sans-serif; }
.vcf-fields textarea { min-height:96px; resize:vertical; }
.vcf-fields input:user-invalid { border-color:#8d5652; }
.vcf-contact-note { margin:0; font-weight:400; }
.vcf-actions { display:flex; flex-wrap:wrap; align-items:stretch; gap:10px; margin:22px 0 0; }
.vcf-actions > :is(button,a) { box-sizing:border-box; display:inline-flex; min-height:46px; flex:1 1 180px; align-items:center; justify-content:center; gap:7px; padding:11px 15px; border:1px solid #10365c; border-radius:12px; background:#10365c; color:#fff; font:700 14px/1.4 Arial,"Microsoft YaHei",sans-serif; cursor:pointer; text-align:center; text-decoration:none; }
.vcf-actions > :is(button,a).vcf-secondary,.vcf-actions > :is(button,a)[data-vcf-back],.vcf-actions > :is(button,a)[data-vcf-copy] { background:#fff; color:#10365c; }
.vcf-actions > button:disabled { opacity:.5; cursor:not-allowed; }
.vcf-review-items { display:grid; gap:10px; margin:16px 0; padding:0; list-style:none; }
.vcf-review-item { padding:13px 15px; border:1px solid #d4dfe7; border-radius:12px; background:#fff; overflow-wrap:anywhere; }
.vcf-review-item h3,.vcf-review-item strong { display:block; margin:0 0 6px; font-size:14px; }
.vcf-review-item p { margin:5px 0 0; font-size:13px; }
.vcf-review-meta { padding:14px 16px; border:1px solid #d4dfe7; border-radius:12px; background:#f4f8fb; color:#35536b; font:13px/1.6 Arial,"Microsoft YaHei",sans-serif; overflow-wrap:anywhere; }
.vcf-review-meta > * { margin-block:4px; }
.vcf-status { margin:12px 0 0; color:#2c587b; font:13px/1.55 Arial,"Microsoft YaHei",sans-serif; overflow-wrap:anywhere; }
.vcf-status:empty { display:none; }
.vcf-draft-preview { box-sizing:border-box; display:block; width:100%; min-height:160px; max-height:320px; margin-top:14px; padding:12px; overflow:auto; resize:vertical; border:1px solid #bdceda; border-radius:10px; background:#fff; color:#1e3447; font:13px/1.55 Arial,"Microsoft YaHei",sans-serif; white-space:pre-wrap; overflow-wrap:anywhere; }
.vcf-sr-only { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.vcf-dialog :is(input,textarea,button,a):focus-visible,.vcf-cart-continue:focus-visible,html.vcf-enabled #cartPanel .cart-item-controls :is(button,input):focus-visible { outline:3px solid #8cb4d8; outline-offset:3px; }
@media(max-width:900px) {
  html.vcf-enabled .hero { padding:44px 0; }
  html.vcf-enabled .hero-grid { width:min(760px,calc(100% - 48px)); grid-template-columns:minmax(0,1fr); gap:36px; }
  html.vcf-enabled .hero .stage.logo-hero[data-hero-carousel] { justify-self:center; }
}
@media(max-width:600px) {
  html.vcf-enabled #cartFloat [data-vcf-cart-label] { display:none; }
  /* Keep the product action above a first-visit privacy choice on a 390x844 phone. */
  html.vcf-enabled .hero { min-height:0; align-items:start; padding:22px 0 32px; }
  html.vcf-enabled .hero-grid { width:calc(100% - 28px); gap:30px; }
  html.vcf-enabled .hero .eyebrow { margin:0 0 10px; font-size:9px; line-height:1.5; letter-spacing:.12em; }
  html.vcf-enabled .hero h1 { max-width:100%; margin:10px 0 12px; font-size:clamp(32px,9.3vw,42px); line-height:1.06; letter-spacing:-.045em; text-wrap:balance; }
  html.vcf-enabled .hero .headline-line { display:block; white-space:normal; }
  html.vcf-enabled .hero .lead { margin:0; font-size:15px; line-height:1.5; }
  html.vcf-enabled .hero .actions { gap:14px; flex-wrap:wrap; margin-top:18px; }
  html.vcf-enabled .hero .btn { min-height:44px; padding:12px 20px; font-size:14px; }
  html.vcf-enabled .hero .actions > a:not(.btn) { min-height:44px; display:inline-flex; align-items:center; font-size:14px; }
  html.vcf-enabled .hero .stage.logo-hero[data-hero-carousel] { max-width:360px; }
  html.vcf-enabled .hero .stage.logo-hero[data-hero-carousel],html.vcf-enabled .hero .stage.logo-hero[data-hero-carousel] img { min-height:0; }
  html.vcf-enabled .ventro-welcome-notice,html.vcf-enabled .ventro-welcome-notice-inner { min-height:44px; }
  html.vcf-enabled .ventro-welcome-notice-inner { width:calc(100% - 16px); padding-left:0; padding-right:44px; }
  html.vcf-enabled .ventro-welcome-message { padding:7px 0; font-size:12px; line-height:1.3; letter-spacing:0; }
  html.vcf-enabled .ventro-welcome-close { width:44px; height:44px; font-size:25px; }
  html.vcf-enabled .ventro-privacy-banner { gap:10px; padding:12px 14px; }
  html.vcf-enabled .ventro-privacy-copy h2 { margin-bottom:4px; font-size:17px; line-height:1.3; }
  html.vcf-enabled .ventro-privacy-copy p { font-size:12px; line-height:1.45; }
  html.vcf-enabled .ventro-privacy-banner .ventro-privacy-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; width:100%; }
  html.vcf-enabled .ventro-privacy-banner .ventro-privacy-actions button { min-height:44px; padding:8px 5px; border-radius:10px; font-size:12px; line-height:1.35; }
  html.vcf-enabled #cartPanel.cart-panel { top:12px !important; bottom:calc(12px + var(--ventro-privacy-height,0px)) !important; left:12px; right:12px; width:auto; max-height:calc(100dvh - 24px - var(--ventro-privacy-height,0px)) !important; border-radius:18px; }
  .vcf-dialog { width:calc(100vw - 16px); max-height:calc(100dvh - 16px); border-radius:16px; }
  .vcf-dialog-body { padding:22px 16px; }
  .vcf-close { top:10px; right:10px; }
  .vcf-fields { grid-template-columns:minmax(0,1fr); gap:14px; }
  .vcf-fields label:has(textarea),.vcf-fields .span-2,.vcf-fields .vcf-contact-note { grid-column:auto; }
  .vcf-actions { gap:9px; margin-top:18px; }
  .vcf-actions > :is(button,a) { flex-basis:100%; }
  .vcf-steps { gap:6px 12px; margin-bottom:16px; }
}
@media(max-width:600px) and (max-height:700px) {
  html.vcf-enabled .hero { padding-top:14px; }
  html.vcf-enabled .hero h1 { font-size:32px; margin-block:8px; }
  html.vcf-enabled .hero .lead { font-size:14px; line-height:1.4; }
  html.vcf-enabled .hero .actions { margin-top:12px; }
}
@media(prefers-reduced-motion:reduce) { .vcf-dialog,.vcf-cart-continue { scroll-behavior:auto; } }

