:root{
    --hmb-primary:#0b2f63;
    --hmb-accent:#0ba7e5;
    --hmb-dark:#101828;
    --hmb-text:#475467;
    --hmb-light:#f7f9fc;
    --hmb-border:#e4e7ec;
    --hmb-radius:10px;
    --hmb-shadow:0 14px 38px rgba(11,47,99,.10);
}

.hmb-enquiry-wrap,
.hmb-inventory,
.hmb-category-grid,
.hmb-cta,
.hmb-floating-actions,
.hmb-modal {
    box-sizing:border-box;
}

.hmb-enquiry-wrap * ,
.hmb-inventory *,
.hmb-category-grid *,
.hmb-cta *,
.hmb-floating-actions *,
.hmb-modal *{
    box-sizing:border-box;
}

.hmb-enquiry-wrap{
    max-width:900px;
    margin:0 auto;
    padding:32px;
    border:1px solid var(--hmb-border);
    border-radius:16px;
    background:#fff;
    box-shadow:var(--hmb-shadow);
}

.hmb-form-heading h3{
    margin:0 0 8px;
    color:var(--hmb-primary);
    font-size:28px;
    line-height:1.2;
}

.hmb-form-heading p{
    margin:0 0 24px;
    color:var(--hmb-text);
}

.hmb-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.hmb-field{
    margin-bottom:18px;
}

.hmb-field label{
    display:block;
    margin-bottom:7px;
    color:var(--hmb-dark);
    font-size:14px;
    font-weight:700;
}

.hmb-field input,
.hmb-field select,
.hmb-field textarea{
    width:100%;
    min-height:48px;
    padding:11px 14px;
    border:1px solid var(--hmb-border);
    border-radius:8px;
    outline:none;
    background:#fff;
    color:var(--hmb-dark);
    transition:.2s ease;
}

.hmb-field textarea{
    min-height:120px;
    resize:vertical;
}

.hmb-field input:focus,
.hmb-field select:focus,
.hmb-field textarea:focus{
    border-color:var(--hmb-accent);
    box-shadow:0 0 0 4px rgba(11,167,229,.10);
}

.hmb-consent{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin:0 0 20px;
    color:var(--hmb-text);
    font-size:13px;
}

.hmb-consent input{
    margin-top:3px;
}

.hmb-btn{
    display:inline-flex;
    min-height:46px;
    align-items:center;
    justify-content:center;
    padding:10px 20px;
    border:2px solid transparent;
    border-radius:7px;
    cursor:pointer;
    font:inherit;
    font-weight:700;
    text-decoration:none!important;
    transition:.2s ease;
}

.hmb-btn:hover{
    transform:translateY(-2px);
}

.hmb-btn-primary{
    border-color:var(--hmb-accent);
    background:var(--hmb-accent);
    color:#fff!important;
}

.hmb-btn-outline{
    border-color:var(--hmb-primary);
    background:#fff;
    color:var(--hmb-primary)!important;
}

.hmb-btn-light{
    border-color:#fff;
    background:#fff;
    color:var(--hmb-primary)!important;
}

.hmb-form-message{
    display:none;
    margin-top:15px;
    padding:12px 14px;
    border-radius:7px;
    font-size:14px;
    font-weight:600;
}

.hmb-form-message.success{
    display:block;
    color:#05603a;
    background:#ecfdf3;
    border:1px solid #abefc6;
}

.hmb-form-message.error{
    display:block;
    color:#b42318;
    background:#fef3f2;
    border:1px solid #fecdca;
}

.hmb-hp{
    position:absolute!important;
    left:-99999px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
}

.hmb-filterbar{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:14px;
    margin-bottom:26px;
    padding:16px;
    border:1px solid var(--hmb-border);
    border-radius:10px;
    background:#fff;
}

.hmb-filterbar input,
.hmb-filterbar select{
    width:100%;
    min-height:48px;
    padding:10px 14px;
    border:1px solid var(--hmb-border);
    border-radius:7px;
    background:#fff;
}

.hmb-machine-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
}

.hmb-machine-card{
    overflow:hidden;
    border:1px solid var(--hmb-border);
    border-radius:12px;
    background:#fff;
    box-shadow:0 8px 24px rgba(16,24,40,.06);
    transition:.25s ease;
}

.hmb-machine-card:hover{
    transform:translateY(-5px);
    box-shadow:var(--hmb-shadow);
}

.hmb-machine-thumb{
    position:relative;
    display:block;
    height:240px;
    overflow:hidden;
    background:#eef2f6;
}

.hmb-machine-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.hmb-no-image{
    display:grid;
    height:100%;
    place-items:center;
    color:#98a2b3;
    font-weight:700;
    background:linear-gradient(135deg,#eef2f6,#f8fafc);
}

.hmb-status{
    position:absolute;
    top:14px;
    left:14px;
    padding:6px 10px;
    border-radius:999px;
    background:#079455;
    color:#fff;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
}

.hmb-machine-body{
    padding:20px;
}

.hmb-machine-meta{
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-bottom:9px;
    color:var(--hmb-accent);
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
}

.hmb-machine-body h3{
    margin:0 0 10px;
    color:var(--hmb-primary);
    font-size:20px;
    line-height:1.3;
}

.hmb-machine-body h3 a{
    color:inherit;
    text-decoration:none!important;
}

.hmb-capacity{
    margin:0 0 9px;
    color:var(--hmb-dark);
    font-weight:800;
}

.hmb-specs{
    margin:0 0 18px;
    color:var(--hmb-text);
    font-size:13px;
    line-height:1.6;
}

.hmb-card-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.hmb-category-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
}

.hmb-category-card{
    display:block;
    min-height:180px;
    padding:28px;
    border:1px solid var(--hmb-border);
    border-radius:12px;
    background:linear-gradient(145deg,#fff,#f7f9fc);
    color:var(--hmb-primary)!important;
    text-decoration:none!important;
    transition:.25s ease;
}

.hmb-category-card:hover{
    transform:translateY(-5px);
    border-color:var(--hmb-accent);
    box-shadow:var(--hmb-shadow);
}

.hmb-category-count{
    color:var(--hmb-accent);
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
}

.hmb-category-card h3{
    margin:30px 0 14px;
    color:var(--hmb-primary);
    font-size:22px;
}

.hmb-category-link{
    font-weight:700;
}

.hmb-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:38px;
    border-radius:14px;
    background:linear-gradient(120deg,var(--hmb-primary),#071f43);
    color:#fff;
}

.hmb-cta h2{
    margin:0 0 10px;
    color:#fff;
    font-size:32px;
}

.hmb-cta p{
    max-width:760px;
    margin:0;
    color:rgba(255,255,255,.82);
}

.hmb-floating-actions{
    position:fixed;
    right:20px;
    bottom:20px;
    z-index:9990;
    display:flex;
    flex-direction:column;
    gap:9px;
}

.hmb-float-button{
    min-width:150px;
    padding:12px 16px;
    border:0;
    border-radius:999px;
    cursor:pointer;
    box-shadow:0 10px 30px rgba(0,0,0,.20);
    background:var(--hmb-accent);
    color:#fff!important;
    font-weight:800;
    text-align:center;
    text-decoration:none!important;
}

.hmb-whatsapp{
    background:#25D366;
}

.hmb-modal{
    position:fixed;
    inset:0;
    z-index:100000;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.hmb-modal.is-open{
    display:flex;
}

.hmb-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(4,12,24,.72);
    backdrop-filter:blur(3px);
}

.hmb-modal-dialog{
    position:relative;
    z-index:2;
    width:min(920px,100%);
    max-height:92vh;
    overflow:auto;
}

.hmb-modal-close{
    position:absolute;
    top:10px;
    right:14px;
    z-index:5;
    width:38px;
    height:38px;
    border:0;
    border-radius:50%;
    background:#fff;
    color:var(--hmb-primary);
    font-size:26px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 5px 18px rgba(0,0,0,.14);
}

body.hmb-modal-open{
    overflow:hidden;
}

@media(max-width:1024px){
    .hmb-machine-grid,
    .hmb-category-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:700px){
    .hmb-row,
    .hmb-filterbar,
    .hmb-machine-grid,
    .hmb-category-grid{
        grid-template-columns:1fr;
    }

    .hmb-enquiry-wrap{
        padding:22px 16px;
    }

    .hmb-cta{
        align-items:flex-start;
        flex-direction:column;
        padding:28px 22px;
    }

    .hmb-cta h2{
        font-size:26px;
    }

    .hmb-floating-actions{
        right:12px;
        bottom:12px;
    }

    .hmb-float-button{
        min-width:132px;
        padding:10px 13px;
        font-size:13px;
    }
}

/* Product detail page - v1.2 */
.hmb-single-machine,
.hmb-single-machine *{box-sizing:border-box}
.hmb-single-machine{
    background:#f6f8fb;
    color:var(--hmb-dark);
}
.hmb-product-container{
    width:min(1240px,calc(100% - 40px));
    margin:0 auto;
    padding:28px 0 64px;
}
.hmb-product-breadcrumbs{
    display:flex;
    gap:8px;
    align-items:center;
    flex-wrap:wrap;
    margin:0 0 22px;
    color:#667085;
    font-size:13px;
}
.hmb-product-breadcrumbs a{color:#475467;text-decoration:none}
.hmb-product-breadcrumbs a:hover{color:var(--hmb-accent)}
.hmb-product-top{
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);
    gap:34px;
    align-items:start;
}
.hmb-product-gallery,
.hmb-product-summary,
.hmb-product-section,
.hmb-product-enquiry-sticky,
.hmb-related-card{
    background:#fff;
    border:1px solid var(--hmb-border);
    border-radius:14px;
    box-shadow:0 10px 30px rgba(16,24,40,.05);
}
.hmb-product-gallery{padding:16px}
.hmb-product-main-media{
    position:relative;
    display:grid;
    place-items:center;
    min-height:520px;
    overflow:hidden;
    border-radius:10px;
    background:#f1f3f6;
}
.hmb-product-main-link{display:block;width:100%;height:100%}
.hmb-product-main-image{
    display:block;
    width:100%;
    height:520px;
    object-fit:contain;
    background:#f1f3f6;
}
.hmb-product-image-placeholder{
    display:flex;
    min-height:520px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:10px;
    color:#98a2b3;
}
.hmb-product-image-placeholder .dashicons{width:auto;height:auto;font-size:48px}
.hmb-product-thumbnails{
    display:flex;
    gap:10px;
    margin-top:12px;
    overflow-x:auto;
    padding-bottom:2px;
}
.hmb-product-thumb{
    flex:0 0 86px;
    height:70px;
    padding:3px;
    overflow:hidden;
    border:2px solid transparent;
    border-radius:8px;
    background:#f2f4f7;
    cursor:pointer;
}
.hmb-product-thumb.is-active{border-color:var(--hmb-accent)}
.hmb-product-thumb img{width:100%;height:100%;object-fit:cover;border-radius:4px}
.hmb-product-summary{
    padding:30px;
    position:sticky;
    top:24px;
}
.hmb-product-kicker-row{
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:center;
    margin-bottom:13px;
}
.hmb-product-category{
    color:var(--hmb-accent)!important;
    font-size:12px;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
    text-decoration:none!important;
}
.hmb-product-status{
    display:inline-flex;
    padding:6px 10px;
    border-radius:999px;
    background:#e8f7ee;
    color:#157347;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
}
.hmb-product-status-reserved{background:#fff3cd;color:#8a6116}
.hmb-product-status-sold{background:#fde8e8;color:#b42318}
.hmb-product-status-coming-soon{background:#e8f1ff;color:#175cd3}
.hmb-product-status-on-request{background:#f3e8ff;color:#7a3e9d}
.hmb-product-summary h1{
    margin:0 0 10px;
    color:var(--hmb-primary);
    font-size:clamp(29px,3vw,42px);
    line-height:1.14;
    letter-spacing:-.02em;
}
.hmb-product-stock{margin-bottom:24px;color:#667085;font-size:13px}
.hmb-product-price{
    margin:0 0 20px;
    padding:18px 0;
    border-top:1px solid var(--hmb-border);
    border-bottom:1px solid var(--hmb-border);
    color:#111827;
    font-size:24px;
    font-weight:800;
}
.hmb-product-location{
    display:flex;
    gap:12px;
    align-items:center;
    margin:0 0 22px;
    padding:14px;
    border-radius:10px;
    background:#f8fafc;
}
.hmb-product-location .dashicons{color:var(--hmb-accent)}
.hmb-product-location small,
.hmb-product-location strong{display:block}
.hmb-product-location small{margin-bottom:2px;color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.hmb-product-location strong{font-size:14px}
.hmb-product-facts{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1px;
    overflow:hidden;
    margin-bottom:22px;
    border:1px solid var(--hmb-border);
    border-radius:10px;
    background:var(--hmb-border);
}
.hmb-product-facts>div{padding:13px;background:#fff}
.hmb-product-facts span,
.hmb-product-facts strong{display:block}
.hmb-product-facts span{margin-bottom:3px;color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.03em}
.hmb-product-facts strong{font-size:14px}
.hmb-product-actions{display:grid;gap:10px}
.hmb-product-actions .hmb-btn{width:100%;gap:7px}
.hmb-btn-whatsapp{background:#167b4f;border-color:#167b4f;color:#fff!important}
.hmb-product-assurance{
    display:grid;
    gap:8px;
    margin-top:18px;
    color:#667085;
    font-size:12px;
}
.hmb-product-assurance span:before{content:'✓';margin-right:7px;color:#079455;font-weight:800}
.hmb-product-content-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 390px;
    gap:30px;
    align-items:start;
    margin-top:34px;
}
.hmb-product-main-column{display:grid;gap:26px}
.hmb-product-section{padding:30px}
.hmb-product-section-heading{margin-bottom:20px}
.hmb-product-section-heading>span{
    display:block;
    margin-bottom:5px;
    color:var(--hmb-accent);
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.hmb-product-section-heading h2{
    margin:0;
    color:var(--hmb-primary);
    font-size:28px;
    line-height:1.2;
}
.hmb-product-copy{color:#475467;font-size:15px;line-height:1.8}
.hmb-product-copy p:first-child{margin-top:0}
.hmb-product-copy p:last-child{margin-bottom:0}
.hmb-product-copy ul,.hmb-product-copy ol{padding-left:22px}
.hmb-specification-table-wrap{overflow-x:auto}
.hmb-specification-table{width:100%;border-collapse:collapse;border-spacing:0}
.hmb-specification-table th,
.hmb-specification-table td{
    padding:14px 16px;
    border-bottom:1px solid var(--hmb-border);
    text-align:left;
    vertical-align:top;
    font-size:14px;
}
.hmb-specification-table tr:last-child th,
.hmb-specification-table tr:last-child td{border-bottom:0}
.hmb-specification-table th{width:38%;background:#f8fafc;color:#344054;font-weight:700}
.hmb-specification-table td{color:#475467}
.hmb-product-side-column{min-width:0}
.hmb-product-enquiry-sticky{position:sticky;top:24px;padding:0;overflow:hidden}
.hmb-product-enquiry-sticky .hmb-enquiry-wrap{
    max-width:none;
    margin:0;
    border:0;
    border-radius:0;
    box-shadow:none;
    padding:24px;
}
.hmb-product-enquiry-sticky .hmb-form-heading h3{font-size:23px}
.hmb-product-enquiry-sticky .hmb-row{grid-template-columns:1fr}
.hmb-product-enquiry-sticky .hmb-field{margin-bottom:13px}
.hmb-product-enquiry-sticky .hmb-field input,
.hmb-product-enquiry-sticky .hmb-field select,
.hmb-product-enquiry-sticky .hmb-field textarea{min-height:44px}
.hmb-product-enquiry-sticky .hmb-field textarea{min-height:95px}
.hmb-form-product{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin:-8px 0 20px;
    padding:11px 12px;
    border-radius:8px;
    background:#f5f8fc;
    font-size:12px;
}
.hmb-form-product strong{color:#344054}
.hmb-form-product span{white-space:nowrap;color:var(--hmb-accent);font-weight:700}
.hmb-product-video iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:10px}
.hmb-related-machines{margin-top:42px}
.hmb-related-machines>.hmb-product-section-heading{margin-bottom:18px}
.hmb-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.hmb-related-card{overflow:hidden}
.hmb-related-image{position:relative;display:block;height:220px;background:#eef2f6}
.hmb-related-image img{width:100%;height:100%;object-fit:cover}
.hmb-related-body{padding:18px}
.hmb-related-body>span{color:var(--hmb-accent);font-size:11px;font-weight:800;text-transform:uppercase}
.hmb-related-body h3{margin:7px 0 8px;font-size:18px;line-height:1.35}
.hmb-related-body h3 a{color:var(--hmb-primary);text-decoration:none}
.hmb-related-body p{margin:0 0 12px;color:#475467;font-weight:700}
.hmb-related-link{color:var(--hmb-accent)!important;font-size:13px;font-weight:800;text-decoration:none!important}
@media (max-width:1100px){
    .hmb-product-top{grid-template-columns:1fr}
    .hmb-product-summary{position:static}
    .hmb-product-content-grid{grid-template-columns:1fr}
    .hmb-product-enquiry-sticky{position:static}
    .hmb-product-enquiry-sticky .hmb-row{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
    .hmb-product-container{width:min(100% - 24px,1240px);padding-top:18px}
    .hmb-product-top{gap:18px}
    .hmb-product-gallery{padding:10px}
    .hmb-product-main-media,.hmb-product-main-image,.hmb-product-image-placeholder{min-height:320px;height:320px}
    .hmb-product-summary,.hmb-product-section{padding:20px}
    .hmb-product-summary h1{font-size:29px}
    .hmb-product-facts{grid-template-columns:1fr 1fr}
    .hmb-product-content-grid{gap:18px;margin-top:18px}
    .hmb-product-enquiry-sticky .hmb-row{grid-template-columns:1fr}
    .hmb-related-grid{grid-template-columns:1fr}
    .hmb-related-image{height:250px}
}
@media (max-width:480px){
    .hmb-product-facts{grid-template-columns:1fr}
    .hmb-product-thumbnails{gap:7px}
    .hmb-product-thumb{flex-basis:72px;height:60px}
    .hmb-specification-table th,.hmb-specification-table td{padding:12px 10px;font-size:13px}
    .hmb-specification-table th{width:42%}
}
