/* HKCARRY buyer UX V4.0 — presentation only; no payment or data changes */
:root{--buyer-v4-accent:#762b45;--buyer-v4-focus:#a74262}
html{overflow-x:clip}body{overflow-x:clip}
.form-page,.customer-quote-page,.shopping-center,main{min-width:0}
.form-page input,.form-page textarea,.form-page select,.customer-quote-page input{max-width:100%;box-sizing:border-box}
.form-page input:focus-visible,.form-page textarea:focus-visible,.form-page button:focus-visible,.customer-quote-page button:focus-visible,.shopping-center button:focus-visible,a:focus-visible{outline:3px solid var(--buyer-v4-focus);outline-offset:3px}
.form-page .muted,.form-page small,.customer-quote-page .muted{color:#65555c}
.form-page .submit,.customer-quote-page .btn{min-height:48px}
#formMessage:not([hidden]),#deliveryChoiceError:not([hidden]){padding:12px;border-radius:10px}
#customerGrand{font-variant-numeric:tabular-nums}
@media(max-width:640px){
 .form-page,.customer-quote-page{width:100%;max-width:100%;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box}
 .form-page .grid2{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
 .form-page button,.form-page input,.form-page select,.form-page textarea{font-size:16px}
 .form-page .submit{width:100%}
 .delivery-choice-grid{display:grid;grid-template-columns:minmax(0,1fr)}
 .customer-total-card,.customer-quote-head,.shopping-card{min-width:0;max-width:100%;overflow-wrap:anywhere}
 .shopping-card button,.shopping-card a{min-height:44px}
}
@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* V4.0 inquiry mobile typography: avoid isolated final glyphs */
.form-page>h1{max-width:19em;text-wrap:balance;overflow-wrap:normal;word-break:normal;line-height:1.3}
.form-page>.lead{max-width:45em;line-height:1.8;overflow-wrap:normal;word-break:normal}
.form-page .buyer-start-info{overflow-wrap:break-word}
@media(max-width:640px){.form-page>h1{font-size:clamp(28px,7.3vw,38px)!important;letter-spacing:0!important;line-height:1.35!important;text-wrap:pretty}.form-page>.lead{font-size:15px!important;line-height:1.85!important;text-wrap:pretty}.form-page .buyer-start-info{padding:18px!important}.form-page .buyer-start-info p{font-size:15px;line-height:1.75}}

/* Quote validity shown beside the quote summary */
.customer-quote-head+.quote-validity{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:12px 0 20px;padding:14px 16px;border:1px solid #ebc7d0;border-radius:14px;background:#fff3f5;color:#70243d}
.customer-quote-head+.quote-validity.expired{background:#fff4ed;border-color:#edc5aa;color:#8c391f}
.customer-quote-head+.quote-validity span{font-variant-numeric:tabular-nums;font-weight:700}

/* V4 quote pre-confirmation checklist */
.buyer-v4-checklist{margin:12px 0;padding:12px 16px 12px 34px;border-radius:12px;background:#fff8f9;color:#49323b;line-height:1.8}
.buyer-v4-checklist li{padding:3px 0}

/* V4 compact buyer order cards */
.shopping-list .hkc-card-summary{min-height:100px}
.shopping-list .hkc-card-summary-top{gap:8px;align-items:center}
.shopping-list .hkc-card-summary-main{min-width:0}
.shopping-list .hkc-card-product{min-width:0;overflow-wrap:anywhere}
.shopping-list .hkc-card-summary-bottom{gap:8px}
@media(max-width:640px){.shopping-list .hkc-card-summary{padding:14px!important}.shopping-list .hkc-card-summary-main{gap:10px}.shopping-list .hkc-card-next{padding:0 14px 14px}.shopping-list .hkc-card-next .btn{width:100%;min-height:44px;display:flex;justify-content:center;align-items:center}}

/* Buyer card last update metadata */
.shopping-list .hkc-card-updated{font-size:12px;color:#76646b;font-weight:400;white-space:nowrap}
@media(max-width:640px){.shopping-list .hkc-card-summary-bottom{display:flex;align-items:center;flex-wrap:wrap}.shopping-list .hkc-card-updated{margin-left:auto}.shopping-list .hkc-card-chevron{flex:none}}

/* Shared mobile buyer navigation */
.hkc-buyer-v4-nav{display:none}
@media(max-width:640px){body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))!important}.hkc-buyer-v4-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:1090;padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #e9dfe2;box-shadow:0 -3px 16px #32131d12}.hkc-buyer-v4-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:49px;color:#65565c;text-decoration:none;font-size:12px;font-weight:600;border-radius:10px}.hkc-buyer-v4-nav a[aria-current=page]{color:#762b45;background:#fff1f5}.hkc-buyer-v4-nav a:focus-visible{outline:3px solid #a74262;outline-offset:2px}.hkc-buyer-v4-nav .hkc-v4-nav-icon{font-size:19px;line-height:1.2}}

/* Keep fixed buyer navigation above full-page cover, but below modal dialogs. */
@media(max-width:640px){body:has(.hkc-buyer-v4-nav){scroll-padding-bottom:90px}.hkc-buyer-v4-nav{isolation:isolate}.hkc-buyer-v4-nav a{touch-action:manipulation}.hkc-buyer-v4-nav a:active{background:#f9e9ee}}

/* Keep LINE support above mobile navigation without covering nav buttons. */
@media(max-width:640px){body:has(.hkc-buyer-v4-nav) #hkcarry-line-support{bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;right:12px!important;z-index:1091!important}body:has(.hkc-buyer-v4-nav){padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))!important}}

/* Keep bottom nav out of the way when an on-screen keyboard is likely visible. */
@media(max-width:640px){body:has(input:focus:not([type=checkbox]):not([type=radio])) .hkc-buyer-v4-nav,body:has(textarea:focus) .hkc-buyer-v4-nav,body:has(select:focus) .hkc-buyer-v4-nav{display:none}body:has(input:focus:not([type=checkbox]):not([type=radio])) #hkcarry-line-support,body:has(textarea:focus) #hkcarry-line-support{display:none}}

/* Mobile cover: reserve space for persistent navigation without changing section snap logic. */
@media(max-width:640px){.hk-photo-hero{scroll-margin-bottom:76px}.hk-hero-photo{max-height:calc(100svh - 76px);min-height:360px}.hkc-buyer-v4-nav{overscroll-behavior:contain}.hkc-buyer-v4-nav a{user-select:none;-webkit-tap-highlight-color:transparent}}
/* Keyboard focus: avoid overlaying focused controls with fixed navigation. */
@media(max-width:640px){body:has(input:focus:not([type=checkbox]):not([type=radio])),body:has(textarea:focus),body:has(select:focus){scroll-padding-bottom:12px}}

/* Homepage cover: hide fixed bottom navigation until the visitor scrolls past the hero. */
@media(max-width:640px){body.hkc-cover-active .hkc-buyer-v4-nav{display:none!important}body.hkc-cover-active #hkcarry-line-support{bottom:calc(18px + env(safe-area-inset-bottom,0px))!important}body > header #hkcarry-line-support.hkc-line-header{width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important;}body > header #hkcarry-line-support.hkc-line-header img{width:25px!important;height:25px!important}body > header #hkcarry-instagram-header{width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important}body > header #hkcarry-instagram-header img{width:36px!important;height:36px!important}body > header #hkcarry-line-support.hkc-line-header{box-shadow:none!important}body:not(:has(> header #hkcarry-line-support.hkc-line-header)) #hkcarry-line-support{width:54px!important;min-width:54px!important;max-width:54px!important;height:54px!important;min-height:54px!important;max-height:54px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;white-space:nowrap!important;box-sizing:border-box!important}body:has(input:focus:not([type=checkbox]):not([type=radio])) #hkcarry-line-support,body:has(textarea:focus) #hkcarry-line-support{display:none!important}}

/* Bottom buyer navigation removed: restore normal page spacing. */
@media(max-width:640px){body,body:has(.hkc-buyer-v4-nav){padding-bottom:env(safe-area-inset-bottom,0px)!important}.hkc-buyer-v4-nav{display:none!important}#hkcarry-line-support{bottom:calc(16px + env(safe-area-inset-bottom,0px))!important}}
