/* Accepted calculation scene with live form and dimension captions. */
.bl-mesh-preview .mesh-calculation {
    padding:0 24px 56px;
    scroll-margin-top:110px;
}
.bl-mesh-preview .mesh-calculation-platform {
    position:relative;
    isolation:isolate;
    overflow:hidden;
    container-type:inline-size;
    padding:0;
    border-radius:4px;
    background:#f0f0ed;
    box-shadow:0 32px 56px -28px #25302b35,0 8px 18px -10px #25302b20;
}
.bl-mesh-preview .mesh-calculation-scene {
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
}
.bl-mesh-preview .mesh-calculation-scene img {
    display:block;
    width:100%;
    height:auto !important;
}
.bl-mesh-preview .mesh-calculation-layout {
    position:relative;
    display:grid;
    grid-template-columns:54.3% 37.8%;
    gap:3.65%;
    align-items:start;
}
.bl-mesh-preview .mesh-calculation-copy {
    min-width:0;
    width:47cqw;
    margin:2.63cqw 0 3.4cqw 7.3cqw;
}
.bl-mesh-preview .mesh-calculation-copy .hsb-eyebrow {
    margin:0 0 .28cqw;
    font-size:.78cqw;
    line-height:1.2;
    letter-spacing:.4em;
}
.bl-mesh-preview .mesh-calculation-copy h2 {
    margin:0;
    font-size:4.4cqw;
    line-height:.9;
    letter-spacing:-.035em;
    font-weight:750;
    color:#0d1730;
}
.bl-mesh-preview .mesh-calculation-copy h2 span { color:#006142; }
.bl-mesh-preview .mesh-calculation-copy .hsb-lead {
    max-width:41cqw;
    margin:1.05cqw 0 0;
    font-size:1.39cqw;
    line-height:1.26;
    color:#15233b;
}
.bl-mesh-preview .mesh-calculation-art {
    position:relative;
    width:100%;
    height:30.7cqw;
    margin:0;
    padding:0;
}
.bl-mesh-preview .mesh-calculation-art > img { display:none; }
.bl-mesh-preview .mesh-calculation-art .hsb-dimension {
    padding:0;
    box-shadow:none;
    font-size:1.14cqw;
    line-height:1.2;
    font-weight:650;
    color:#086d40;
}
.bl-mesh-preview .mesh-calculation-art .hsb-dimension::before,
.bl-mesh-preview .mesh-calculation-art .hsb-dimension::after { content:none; }
.bl-mesh-preview .mesh-calculation-art .hsb-dimension-width {
    left:10cqw;
    right:auto;
    bottom:1.1cqw;
    width:26cqw;
}
.bl-mesh-preview .mesh-calculation-art .hsb-dimension-height {
    left:43.65cqw;
    right:auto;
    top:9.3cqw;
    bottom:auto;
    height:10.5cqw;
}
.bl-mesh-preview .mesh-calculation .hsb-cost-factors { margin-top:1.8cqw; }

.bl-mesh-preview .mesh-calculation .hsb-cost-factors h3 { margin:0 0 1cqw; font-size:1.85cqw; line-height:1.2; letter-spacing:-.025em; }
.bl-mesh-preview .mesh-calculation .hsb-cost-factors .hsb-notes { display:flex; justify-content:space-between; flex-wrap:nowrap; gap:1.8cqw; margin:0; font-size:1.2cqw; }
.bl-mesh-preview .mesh-calculation .hsb-cost-factors li { position:relative; white-space:nowrap; gap:.65cqw; }
.bl-mesh-preview .mesh-calculation .hsb-cost-factors li::before { width:.85cqw; height:.85cqw; flex-basis:.85cqw; }
.bl-mesh-preview .mesh-calculation .hsb-cost-factors li:not(:last-child)::after { content:''; position:absolute; right:-1cqw; height:1.25cqw; width:1px; background:#acb6bd80; }
.bl-mesh-preview .mesh-calculation-form { min-width:0; margin:3cqw 0 2.8cqw; padding:2.6cqw 3cqw 2cqw; border-radius:1.8cqw; background:#fffffff5; box-shadow:0 16px 36px #23394c1a; }
.bl-mesh-preview .mesh-calculation-form > h3 { margin:0 0 .4cqw; font-size:2.9cqw; line-height:1.1; letter-spacing:-.035em; font-weight:750; }
.bl-mesh-preview .mesh-calculation-form .hsb-form-note { margin:0 0 1.6cqw; font-size:1.25cqw; line-height:1.35; }
.bl-mesh-preview .mesh-calculation-form .hsb-form-row { gap:1.2cqw; }
.bl-mesh-preview .mesh-calculation-form .hsb-field { margin-bottom:1cqw; }
.bl-mesh-preview .mesh-calculation-form .hsb-field label { margin-bottom:.4cqw; font-size:1.08cqw; line-height:1.35; }
.bl-mesh-preview .mesh-calculation-form .hsb-field :is(input,select) { min-height:3.5cqw; padding:.8cqw 1.1cqw; border:0; border-radius:1cqw; font:400 1.13cqw/1.35 "Segoe UI",system-ui,sans-serif; }
.bl-mesh-preview .mesh-calculation-form .hsb-field input { background:#eff1f4; }
.bl-mesh-preview .mesh-calculation-form .hsb-field select { display:flex; align-items:center; justify-content:space-between; background-color:#eff1f4; }
.bl-mesh-preview .mesh-calculation-form .hsb-field-error { font-size:.93cqw; }
.bl-mesh-preview .mesh-calculation-form .hsb-attachment-control { min-height:3.5cqw; border-radius:1cqw; padding:.8cqw 1.1cqw; font-size:1.1cqw; gap:.8cqw; }
.bl-mesh-preview .mesh-calculation-form .hsb-attachment-control input[type="file"] { position:absolute; inset:0; width:100%; height:100%; min-height:0; padding:0; opacity:0; cursor:pointer; }
.bl-mesh-preview .mesh-calculation-form .hsb-attachment-control:focus-within { outline:2px solid #7a8898; outline-offset:3px; }
.bl-mesh-preview .mesh-calculation-form .hsb-consent-field { margin:.3cqw 0 1.3cqw; }
.bl-mesh-preview .mesh-calculation-form .hsb-consent { gap:.8cqw; font-size:1cqw; line-height:1.4; }
.bl-mesh-preview .mesh-calculation-form .hsb-consent input { width:1.4cqw; height:1.4cqw; margin:0; }
.bl-mesh-preview .mesh-calculation-form .hsb-submit { position:relative; justify-content:center; width:100%; min-height:4.4cqw; padding:.85cqw 3.3cqw; gap:1.2cqw; font-size:1.45cqw; font-weight:700; }
.bl-mesh-preview .mesh-calculation-form .hsb-submit img { position:absolute; right:1.6cqw; width:2cqw; height:2cqw!important; filter:brightness(0) invert(1); }
.bl-mesh-preview .mesh-calculation-form .hsb-submit:disabled { opacity:.6; cursor:wait; }
.bl-mesh-preview .mesh-calculation-form > .hsb-small { margin-top:.9cqw; font-size:.95cqw; line-height:1.4; color:#52617a; }
.bl-mesh-preview .mesh-enquiry-local-note { margin-top:.55cqw; font-size:.8cqw; line-height:1.4; color:#68778c; }
.bl-mesh-preview .mesh-calculation-form .hsb-form-phone { display:block; margin-top:1.3cqw; padding-top:1cqw; text-align:center; font-size:1.05cqw; }
.bl-mesh-preview .mesh-calculation-form .hsb-form-phone a { display:block; margin-top:.4cqw; font-size:1.45cqw; color:#0d1730; }
.bl-mesh-preview .mesh-enquiry-selection { display:flex; align-items:center; gap:12px; padding:12px 14px; margin-bottom:18px; border-radius:10px; background:#edf5ef; }
.bl-mesh-preview .mesh-enquiry-selection p { flex:1; min-width:0; margin:0; color:#244b3a; font-size:14px; line-height:1.4; }
.bl-mesh-preview .mesh-enquiry-selection button { flex:none; min-height:36px; padding:4px 8px; border:0; border-radius:6px; background:#fff; color:#52617a; font:inherit; font-size:12px; cursor:pointer; }
.bl-mesh-preview .mesh-calculation-form .hsb-form-status { margin:16px 0; font-size:15px; line-height:1.45; }
.bl-mesh-preview .mesh-enquiry-draft { margin-top:16px; padding:14px; border-radius:12px; background:#f1f5f3; }
.bl-mesh-preview .mesh-enquiry-draft > label { display:block; font-size:14px; font-weight:650; margin-bottom:10px; }
.bl-mesh-preview .mesh-enquiry-draft textarea { width:100%; min-height:190px; padding:12px; resize:vertical; border:1px solid #d6ded9; border-radius:8px; background:#fff; color:#162233; font:14px/1.45 "Segoe UI",system-ui,sans-serif; }
.bl-mesh-preview .mesh-enquiry-draft-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
.bl-mesh-preview .mesh-enquiry-draft-actions :is(button,a) { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 14px; border:0; border-radius:999px; background:#fff; color:#075943; font:600 14px/1.3 "Segoe UI",system-ui,sans-serif; text-decoration:none; cursor:pointer; }
.bl-mesh-preview .mesh-enquiry-draft > p { margin-top:12px; font-size:13px; line-height:1.4; color:#52617a; }
.bl-mesh-preview .mesh-calculation [hidden] { display:none!important; }
@media(max-width:1399px) {
    .bl-mesh-preview .mesh-calculation-platform {
        padding:40px 32px 28px;
        background:#f1f0ec url('./assets/selection-background.webp') center bottom/cover no-repeat;
    }
    .bl-mesh-preview .mesh-calculation-scene { display:none; }
    .bl-mesh-preview .mesh-calculation-layout { grid-template-columns:1fr 1fr; gap:28px; }
    .bl-mesh-preview .mesh-calculation-copy { width:auto; margin:0; }
    .bl-mesh-preview .mesh-calculation-copy .hsb-eyebrow { margin-bottom:14px; font-size:12px; }
    .bl-mesh-preview .mesh-calculation-copy h2 { font-size:clamp(32px,3.5vw,46px); line-height:1; }
    .bl-mesh-preview .mesh-calculation-copy .hsb-lead { max-width:none; margin:20px 0 0; font-size:17px; line-height:1.4; }
    .bl-mesh-preview .mesh-calculation-art {
        overflow:hidden;
        width:100%;
        height:auto;
        aspect-ratio:1.1;
        margin:24px 0 20px;
        border-radius:4px;
    }
    .bl-mesh-preview .mesh-calculation-art > img {
        display:block;
        position:absolute;
        width:212%;
        max-width:none !important;
        height:auto !important;
        top:-24%;
        left:-22.7%;
    }
    .bl-mesh-preview .mesh-calculation-art .hsb-dimension { font-size:14px; }
    .bl-mesh-preview .mesh-calculation-art .hsb-dimension-width { left:18%; width:70%; bottom:12%; }
    .bl-mesh-preview .mesh-calculation-art .hsb-dimension-height { left:auto; right:10.5%; top:24%; height:52%; }
    .bl-mesh-preview .mesh-calculation-form { margin:0; }
}

@media(max-width:1100px) {
 .bl-mesh-preview .mesh-calculation-platform { padding:34px 24px 28px; background-size:cover; }
 .bl-mesh-preview .mesh-calculation-layout { grid-template-columns:1fr; gap:32px; }
 .bl-mesh-preview .mesh-calculation-copy { padding:0; }
 .bl-mesh-preview .mesh-calculation-copy .hsb-eyebrow { font-size:11px; margin-bottom:16px; }
 .bl-mesh-preview .mesh-calculation-copy h2 { font-size:clamp(34px,5.2vw,56px); }
 .bl-mesh-preview .mesh-calculation-copy .hsb-lead { font-size:18px; margin-top:18px; max-width:670px; }
 .bl-mesh-preview .mesh-calculation .hsb-cost-factors h3 { font-size:27px; margin-bottom:16px; }
 .bl-mesh-preview .mesh-calculation .hsb-cost-factors .hsb-notes { gap:26px; font-size:16px; }
 .bl-mesh-preview .mesh-calculation .hsb-cost-factors li { gap:9px; }
 .bl-mesh-preview .mesh-calculation .hsb-cost-factors li::before { width:12px; height:12px; flex-basis:12px; }
 .bl-mesh-preview .mesh-calculation .hsb-cost-factors li:not(:last-child)::after { right:-14px; height:20px; }
 .bl-mesh-preview .mesh-calculation-form { width:100%; max-width:740px; margin:0 auto; padding:32px; border-radius:24px; }
 .bl-mesh-preview .mesh-calculation-form > h3 { font-size:36px; margin-bottom:8px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-form-note { font-size:18px; margin-bottom:24px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-form-row { gap:18px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-field { margin-bottom:16px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-field label { font-size:16px; margin-bottom:7px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-field :is(input,select),.bl-mesh-preview .mesh-calculation-form .hsb-attachment-control { min-height:50px; padding:12px 16px; font-size:16px; border-radius:12px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-field-error { font-size:14px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-attachment-control { gap:12px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-attachment-control > img { width:20px; height:20px!important; }
 .bl-mesh-preview .mesh-calculation-form .hsb-attachment-plus { width:28px; height:28px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-attachment-plus img { width:17px; height:17px!important; }
 .bl-mesh-preview .mesh-calculation-form .hsb-consent { font-size:14px; gap:10px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-consent input { width:20px; height:20px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-consent-field { margin:4px 0 20px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-submit { min-height:60px; padding:14px 44px; font-size:20px; gap:18px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-submit img { right:18px; width:28px; height:28px!important; }
 .bl-mesh-preview .mesh-calculation-form > .hsb-small { font-size:14px; margin-top:14px; }
 .bl-mesh-preview .mesh-enquiry-local-note { font-size:12px; margin-top:8px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-form-phone { font-size:15px; margin-top:20px; padding-top:18px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-form-phone a { font-size:21px; margin-top:6px; }
}
@media(max-width:767px) {
 .bl-mesh-preview .mesh-calculation { padding:0 12px 30px; scroll-margin-top:84px; }
 .bl-mesh-preview .mesh-calculation-platform { padding:30px 18px 24px; }
 .bl-mesh-preview .mesh-calculation-copy h2 { font-size:clamp(29px,7.5vw,44px); }
 .bl-mesh-preview .mesh-calculation-copy .hsb-lead { font-size:16px; line-height:1.4; }
 .bl-mesh-preview .mesh-calculation .hsb-cost-factors h3 { font-size:23px; }
 .bl-mesh-preview .mesh-calculation .hsb-cost-factors .hsb-notes { display:grid; gap:12px; font-size:16px; }
 .bl-mesh-preview .mesh-calculation .hsb-cost-factors li::after { display:none; }
 .bl-mesh-preview .mesh-calculation-form { padding:26px 20px; border-radius:20px; }
 .bl-mesh-preview .mesh-calculation-form > h3 { font-size:30px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-form-note { font-size:16px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-field label { font-size:15px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-field :is(input,select),.bl-mesh-preview .mesh-calculation-form .hsb-attachment-control { font-size:15px; padding:12px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-form-row { gap:12px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-form-row:not(.mesh-calculation-dimensions) {
     grid-template-columns:1fr;
     gap:0;
 }
 .bl-mesh-preview .mesh-calculation-form .hsb-form-row.mesh-calculation-dimensions {
     grid-template-columns:repeat(2,minmax(0,1fr));
     gap:12px;
 }
 .bl-mesh-preview .mesh-calculation-form .hsb-submit { font-size:18px; min-height:56px; }
 .bl-mesh-preview .mesh-enquiry-selection { align-items:flex-start; }
 .bl-mesh-preview .mesh-enquiry-draft-actions { display:grid; }
}
@media(max-width:360px) {
 .bl-mesh-preview .mesh-calculation-form { padding:24px 16px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-form-row { grid-template-columns:1fr; gap:0; }
 .bl-mesh-preview .mesh-calculation-form > h3 { font-size:27px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-field :is(input,select),.bl-mesh-preview .mesh-calculation-form .hsb-attachment-control { font-size:14px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-submit { gap:12px; padding-inline:40px; font-size:16px; }
 .bl-mesh-preview .mesh-calculation-form .hsb-submit img { right:12px; width:24px; height:24px!important; }
}


@media(min-width:1400px) {
    .bl-mesh-preview .mesh-calculation-form {
        padding:2.1cqw 3.2cqw 1.25cqw;
        border-radius:1.65cqw;
    }
    .bl-mesh-preview .mesh-calculation-form > h3 { font-size:2.75cqw; margin-bottom:.3cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-form-note { font-size:1.28cqw; margin-bottom:1.35cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-form-row { gap:1.45cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-field { margin-bottom:.9cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-field label { font-size:1cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-field :is(input,select) {
        min-height:3.1cqw;
        padding:.65cqw 1.3cqw;
        font-size:1.03cqw;
        line-height:1.4;
        border-radius:1.15cqw;
    }
    .bl-mesh-preview .mesh-calculation-form .hsb-attachment-control {
        min-height:3.3cqw;
        padding:.6cqw 1.3cqw;
        font-size:1.03cqw;
    }
    .bl-mesh-preview .mesh-calculation-form .hsb-consent-field { margin:.25cqw 0 1.15cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-consent { font-size:.98cqw; gap:.85cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-consent input { width:1.25cqw; height:1.25cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-submit { min-height:4.05cqw; padding:.8cqw 3.6cqw; font-size:1.35cqw; }
    .bl-mesh-preview .mesh-calculation-form > .hsb-small { margin-top:.55cqw; font-size:.92cqw; line-height:1.2; }
    .bl-mesh-preview .mesh-enquiry-local-note { margin-top:.45cqw; font-size:.7cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-form-phone { margin-top:.65cqw; padding-top:.25cqw; font-size:1.03cqw; }
    .bl-mesh-preview .mesh-calculation-form .hsb-form-phone a { font-size:1.25cqw; }
}
