/* Scoped HFC menu styling; does not change the rest of Astra/Elementor. */
.hfc-order-menu [hidden] { display: none !important; }
.hfc-order-tabs { display:flex; align-items:center; gap:8px; width:100%; max-width:100%; overflow-x:auto; white-space:nowrap; scrollbar-width:none; padding:2px 0 6px; font-family:Poppins,Arial,sans-serif; }
.hfc-order-tabs::-webkit-scrollbar { display:none; }
.hfc-order-tab { flex:0 0 auto; appearance:none; border:1px solid #e8ded2; background:#fff; color:#181818; font:600 12px/1.35 Poppins,Arial,sans-serif; padding:11px 15px; border-radius:10px; cursor:pointer; transition:background .15s ease, color .15s ease; }
.hfc-order-tab.is-active, .hfc-order-tab:hover { background:#e7192b; color:white; border-color:#e7192b; }
.hfc-order-tab:focus-visible, .hfc-order-add:focus-visible { outline:3px solid #ffbf2c; outline-offset:2px; }
.hfc-order-menu { font-family:Poppins,Arial,sans-serif; color:#181818; width:100%; }
.hfc-order-section { margin:0 0 32px; scroll-margin-top:150px; }
.hfc-order-section-heading { display:flex; align-items:center; justify-content:space-between; border-bottom:2px solid #e7192b; margin-bottom:15px; padding-bottom:9px; gap:12px; }
.hfc-order-section-heading h2 { margin:0; color:#181818; font:700 27px/1.15 Oswald,Impact,sans-serif; text-transform:uppercase; }
.hfc-order-section-heading span { font:600 12px Poppins,Arial,sans-serif; color:#777; background:#f4f4f4; border-radius:20px; padding:5px 10px; white-space:nowrap; }
.hfc-order-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.hfc-order-card { min-width:0; background:#fff; border:1px solid #e8ded2; border-radius:13px; padding:14px; box-shadow:0 2px 8px rgba(0,0,0,.04); display:flex; flex-direction:column; justify-content:space-between; gap:13px; }
.hfc-order-card-head { display:flex; gap:12px; align-items:flex-start; min-width:0; }
.hfc-order-thumbnail { flex:0 0 83px; width:83px; height:83px; display:block; border-radius:9px; overflow:hidden; background:#fff8ee; }
.hfc-order-thumbnail img { display:block; width:100%; height:100%; object-fit:cover; }
.hfc-order-placeholder { display:flex; align-items:center; justify-content:center; width:100%; height:100%; color:#e7192b; font:700 21px Oswald,sans-serif; }
.hfc-order-card-info { min-width:0; flex:1; }
.hfc-order-card-info h3 { margin:0 0 6px; color:#181818; font:700 15px/1.35 Poppins,Arial,sans-serif; }
.hfc-order-card-info p { margin:0; color:#565656; font:400 12px/1.55 Poppins,Arial,sans-serif; }
.hfc-order-card-foot { display:flex; align-items:center; justify-content:space-between; gap:8px; border-top:1px solid #f0ebe7; padding-top:10px; }
.hfc-order-card-foot strong { font:700 16px Oswald,Impact,sans-serif; color:#e7192b; }
.hfc-order-card-foot a { font-size:12px; }
.hfc-order-add { appearance:none; border:0; border-radius:9px; background:#e7192b; color:white; cursor:pointer; font:700 12px/1.2 Poppins,Arial,sans-serif; padding:9px 13px; white-space:nowrap; }
.hfc-order-add:hover { background:#c40f20; }
.hfc-order-add[disabled] { opacity:.55; cursor:wait; }
.hfc-order-card-variable { grid-column:1/-1; }
.hfc-order-card-variable .hfc-order-card-head { align-items:center; }
.hfc-order-card-variable .hfc-order-thumbnail { flex-basis:135px; width:135px; height:105px; }
.hfc-order-variants { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.hfc-order-option { border:1px solid #e8ded2; border-radius:10px; padding:10px; display:flex; flex-direction:column; gap:10px; align-items:center; justify-content:space-between; text-align:center; }
.hfc-order-option-label { display:flex; flex-direction:column; gap:3px; align-items:center; }
.hfc-order-option-label strong { font-size:13px; color:#181818; }
.hfc-order-option-label span { color:#e7192b; font:700 17px Oswald,Impact,sans-serif; }
.hfc-order-bottom { display:flex; justify-content:flex-end; align-items:center; gap:15px; margin:22px 0 40px; }
.hfc-order-message { color:#333; font-size:13px; }
.hfc-order-view-cart { background:#181818; color:#fff!important; text-decoration:none!important; border-radius:9px; padding:10px 14px; font-weight:700; font-size:13px; }
.hfc-order-count { display:inline-block; margin-left:5px; color:#181818; background:#ffbf2c; border-radius:20px; min-width:19px; text-align:center; padding:1px 5px; }
.hfc-order-empty { color:#555; background:#fff; padding:20px; border-radius:10px; }
@media(max-width:1024px) { .hfc-order-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) { .hfc-order-tab { font-size:11px; padding:10px 12px; } .hfc-order-grid { grid-template-columns:minmax(0,1fr); } .hfc-order-card { padding:13px; } .hfc-order-section-heading h2 { font-size:24px; } .hfc-order-variants { grid-template-columns:repeat(2,minmax(0,1fr)); } .hfc-order-card-variable .hfc-order-thumbnail { flex-basis:110px; width:110px; height:95px; } .hfc-order-option { padding:10px 6px; } .hfc-order-bottom { flex-wrap:wrap; justify-content:center; } }
