/* Calculator styles. Extracted from index.html.
   Loaded AFTER the inline <style> so cascade source order is unchanged. */

@media(max-width:480px){

    
    
    
    .calc-card{scroll-margin-top:100px;}
}
.calc-float{
    position:absolute;
    left:50%;transform:translateX(-50%);
    width:100%;max-width:1600px;
    top:405px;
    display:flex;justify-content:flex-end;
    padding:0 40px;
    z-index:3;
    pointer-events:none;
  }.calc-float .calc-card{
    pointer-events:auto;
    width:60%;max-width:680px;min-width:360px;
  }@media(max-width:640px){

    
    
    
    
    .calc-float{
      position:relative;z-index:2;top:auto;left:auto;transform:none;
      width:100%;max-width:none;
      box-sizing:border-box;
      background:var(--navy);
      padding:28px 14px;
      margin-top:0;
    }
    .calc-float .calc-card{width:100%;max-width:none;min-width:0;overflow-y:auto;box-shadow:none;}
    
    .branch-columns{flex-direction:column;}
    [data-group="storeys"], [data-group="bungalow_type"], [data-group="walls"]{width:100%;}
    .calc-head h2{font-size:16px;line-height:1.15;}
    .calc-head{margin-bottom:7px;}
    .calc-head .sub{font-size:10.5px;line-height:1.35;}
    .calc-progress{margin-bottom:8px;}
    .calc-step h3{font-size:12.5px;margin-bottom:6px;}
    .mobile-break{display:block;}
    .opt-grid{gap:5px;}
    [data-group="property_type"] .opt-icon{height:16px;}
    [data-group="property_type"] .opt-card{padding:5px 4px;gap:2px;font-size:11px;}
    .calc-nav{margin-top:8px;}
    .calc-card{padding:12px 12px 12px;}
    .btn-next{padding:9px 14px;font-size:13px;min-height:40px;}
    .btn-back{padding:6px 4px;font-size:12px;}
}
.calc-card{
    background:#5E6E52;
    color:#F4F1E8;
    border-radius:6px;
    padding:34px 32px 32px;
    box-shadow:0 24px 48px -12px rgba(0,0,0,.45);
    position:relative;
    overflow-x:hidden;
    overflow-y:auto;
    scroll-margin-top:140px;
    display:flex;
    flex-direction:column;
  }.calc-head{margin-bottom:18px;}.calc-card.compact-header .calc-head{display:none;}.calc-card.results-step .calc-head, .calc-card.results-step .calc-progress{display:none;}.calc-head h2{font-size:clamp(24px, 3.4vw, 32px);color:#F4F1E8;margin-bottom:4px;font-weight:700;line-height:1.15;}.result-head h2{color:#F4F1E8;margin-bottom:4px;font-weight:700;line-height:1.15;}.calc-head .sub{font-size:13.5px;color:#D6DCC9;}.calc-progress{
    display:flex;gap:6px;margin-bottom:22px;
  }.calc-progress span{
    height:4px;flex:1;background:rgba(244,241,232,0.25);border-radius:2px;overflow:hidden;position:relative;
  }.calc-progress span i{
    display:block;height:100%;width:0;background:var(--pop);transition:width .25s ease;
  }.calc-progress span.done i{width:100%;}.calc-progress span.active i{width:50%;}.calc-step{display:none;}.calc-step.active{display:flex;flex-direction:column;flex:1;min-height:0;animation:fade .25s ease;}.step-body{display:flex;flex-direction:column;flex:1;justify-content:center;min-height:0;}@keyframes fade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}.calc-step[data-step="5"].active{justify-content:flex-start;}.calc-step h3{font-size:clamp(17px, 2.2vw, 21px);color:#F4F1E8;margin-bottom:14px;font-weight:600;}.mobile-break{display:none;}.opt-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:8px;}.opt-card{
    border:1.5px solid #D8D2C6;border-radius:var(--radius);padding:14px 12px;
    font-size:14px;font-weight:600;color:var(--navy);cursor:pointer;
    background:#fff;text-align:left;transition:border-color .15s ease,background .15s ease;
    font-family:'Inter',sans-serif;min-height:44px;
  }.opt-card:hover{border-color:var(--copper);}.opt-card.selected{border-color:var(--copper);background:#F6EFDD;}.opt-icon{display:none;}[data-group="property_type"] .opt-card{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:6px;text-align:center;padding:14px 8px;
  }[data-group="property_type"] .opt-icon{
    display:block;height:32px;width:auto;max-width:100%;
  }[data-group="property_type"] .opt-card .tick,
  [data-group="storeys"] .opt-card .tick,
  [data-group="bungalow_type"] .opt-card .tick{display:none;}.branch-panel{display:none;}.branch-panel.active{display:block;}.branch-columns{display:flex;gap:20px;align-items:flex-start;}.branch-columns .opt-grid{flex-shrink:0;}.branch-note{font-size:15px;color:#D6DCC9;line-height:1.6;margin:0;align-self:flex-start;}[data-group="storeys"]{grid-template-columns:repeat(2,1fr);width:230px;}[data-group="walls"]{grid-template-columns:repeat(2,1fr);width:230px;margin-top:8px;}[data-group="walls"] .opt-card{padding:20px 10px;font-size:16px;font-weight:600;}[data-group="symptoms"]{gap:8px;}[data-group="symptoms"] .opt-card{padding:10px 14px;font-size:13.5px;min-height:auto;}[data-group="storeys"] .opt-card{
    display:flex;flex-direction:row;align-items:center;justify-content:flex-start;
    gap:8px;text-align:left;padding:8px 10px;
  }[data-group="storeys"] .storey-icon{display:block;height:62px;width:auto;flex-shrink:0;}[data-group="bungalow_type"]{grid-template-columns:1fr;width:230px;}[data-group="bungalow_type"] .opt-card{
    display:flex;flex-direction:row;align-items:center;justify-content:flex-start;
    gap:10px;text-align:left;padding:10px 12px;
  }[data-group="bungalow_type"] .opt-icon{display:block;height:62px;width:auto;max-width:120px;flex-shrink:0;}.opt-card .tick{
    display:inline-block;width:16px;height:16px;border-radius:50%;border:1.5px solid #D8D2C6;
    margin-right:8px;vertical-align:-3px;position:relative;
  }.opt-card.selected .tick{background:var(--copper);border-color:var(--copper);}.opt-card.selected .tick::after{
    content:'';position:absolute;left:4px;top:1px;width:5px;height:8px;
    border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);
  }.calc-nav{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:10px;}.btn-back{
    background:none;border:none;font-size:14px;font-weight:600;color:#D6DCC9;
    cursor:pointer;padding:12px 10px;font-family:'Inter',sans-serif;min-height:44px;
  }.btn-next{
    background:var(--pop);color:var(--pop-ink);border:none;padding:13px 22px;
    font-size:15px;font-weight:700;border-radius:var(--radius);cursor:pointer;
    transition:background .15s ease;font-family:'Inter',sans-serif;flex:1;min-height:48px;
  }.btn-next:hover{background:var(--pop-dark);}.btn-next:disabled{background:#D8D2C6;cursor:not-allowed;}.result-badge{
    display:inline-block;font-size:12px;font-weight:700;letter-spacing:.05em;
    text-transform:uppercase;padding:5px 10px;border-radius:20px;margin-bottom:10px;
  }.result-badge.risk-worth{background:#E7F2EC;color:var(--good);}.result-badge.risk-moderate{background:#FBF0DC;color:#9C7A22;}.result-badge.risk-high{background:#FBE7DE;color:var(--bad);}.result-figures{
    display:grid;grid-template-columns:1fr;gap:10px;margin:14px 0 16px;
  }.result-figure{
    background:#fff;border:1.5px solid #E2DDD2;border-radius:4px;padding:12px 13px;
  }.result-figure .label{font-size:11.5px;color:#7A8170;text-transform:uppercase;letter-spacing:.06em;font-weight:700;margin-bottom:4px;}.result-figure .value{font-size:19px;color:var(--navy);font-weight:700;font-family:'Inter',sans-serif;}.result-figure-materials .label{margin-bottom:8px;}.material-row{
    display:flex;justify-content:space-between;align-items:center;
    padding:7px 0;border-top:1px solid #EEE9DD;
  }.material-row:first-of-type{border-top:none;}.material-name{font-size:14px;color:var(--ink);font-weight:600;}.material-price{font-size:17px;color:var(--navy);font-weight:700;font-family:'Inter',sans-serif;}.result-note{font-size:10.5px;color:#D6DCC9;margin-bottom:10px;line-height:1.4;}.gate{
    border-top:1px dashed rgba(244,241,232,0.3);padding-top:16px;margin-top:4px;
  }.gate p.gate-lede{font-size:18px;color:#F4F1E8;font-weight:600;margin-bottom:12px;}.field{margin-bottom:12px;}.field label{
    display:block;font-size:13px;font-weight:600;margin-bottom:5px;color:#F4F1E8;
  }.field input{
    width:100%;padding:12px 13px;border:1.5px solid #D8D2C6;border-radius:var(--radius);
    font-size:16px;font-family:'Inter',sans-serif;background:#fff;color:var(--ink);
  }.field input:focus{outline:none;border-color:var(--copper);}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}@media(max-width:360px){

    .field-row{grid-template-columns:1fr;}
}
@media(max-width:640px){

    .field{margin-bottom:9px;}
    .field label{font-size:12px;margin-bottom:3px;}
    .field input{padding:9px 11px;}
}
.submit-btn{
    width:100%;background:var(--pop);color:var(--pop-ink);border:none;padding:15px;
    font-size:16px;font-weight:700;border-radius:var(--radius);cursor:pointer;
    margin-top:4px;transition:background .15s ease;font-family:'Inter',sans-serif;
    min-height:48px;
  }.submit-btn:hover{background:var(--pop-dark);}.form-note{font-size:12px;color:#D6DCC9;margin-top:12px;text-align:center;}.hp-field{position:absolute;left:-9999px;}.restart-link{display:block;text-align:center;font-size:12.5px;color:#D6DCC9;margin-top:12px;margin-bottom:16px;text-decoration:underline;cursor:pointer;background:none;border:none;font-family:'Inter',sans-serif;}.calc-card.calc-pinned{
    animation:calc-pin-settle .2s ease;
    box-shadow:0 30px 60px -12px rgba(0,0,0,.55);
  }@keyframes calc-pin-settle{
    from{opacity:.85;}
    to{opacity:1;}
  }@media(max-width:640px){

  .calc-head h2{font-size:22px !important;line-height:1.15;}
  .calc-head{margin-bottom:10px;}
  .calc-head .sub{font-size:15px !important;line-height:1.35;}
  .calc-progress{margin-bottom:12px;}
  .calc-step h3{font-size:17.5px !important;margin-bottom:8px !important;}
  .opt-grid{gap:7px !important;}
  [data-group="property_type"] .opt-icon{height:22px !important;}
  [data-group="property_type"] .opt-card{padding:7px 6px !important;gap:3px !important;font-size:15px !important;}
  .calc-nav{margin-top:10px !important;}
  .calc-card{padding:17px 17px 17px !important;}
  .btn-next{padding:13px 20px !important;font-size:18px !important;min-height:56px !important;}
  .btn-back{padding:8px 6px !important;font-size:17px !important;}
  .mobile-break{display:block !important;}
  .calc-card.step2-active .calc-head{display:none;}
  .branch-note{font-size:10.5px !important;line-height:1.35 !important;margin-bottom:10px !important;}
  .step-body{justify-content:flex-start !important;flex:none !important;}
  .calc-step.active{justify-content:flex-start !important;}
  .calc-nav{margin-top:10px !important;}
}
.calc-scrim{
    position:fixed; inset:0; z-index:190;
    background:rgba(15,31,25,.72);
    opacity:0; pointer-events:none;
    transition:opacity .22s ease;
  }body.calc-modal-open .calc-scrim{ opacity:1; pointer-events:auto; }body.calc-body-locked{
    position:fixed !important;
    left:0 !important; right:0 !important;
    width:100% !important;
    overflow:hidden !important;
  }body.calc-modal-open .calc-float{
    position:fixed !important;
    top:0 !important; left:0 !important; right:0 !important; bottom:0 !important;
    width:auto !important; max-width:none !important;
    margin:0 !important;
    transform:none !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:16px 16px calc(16px + var(--cwe-banner-h, 0px)) 16px !important;
    background:none !important;
    z-index:200 !important;
    pointer-events:none;
  }body.calc-modal-open .calc-float .calc-card{
    pointer-events:auto;
    position:relative !important;
    box-sizing:border-box !important;
    width:100% !important;
    max-width:640px !important;
    min-width:0 !important;
    height:auto !important;
    max-height:calc(100vh - 32px - var(--cwe-banner-h, 0px)) !important;
    max-height:calc(100dvh - 32px - var(--cwe-banner-h, 0px)) !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    margin:0 !important;
    top:auto !important; left:auto !important;
    box-shadow:0 30px 60px -12px rgba(0,0,0,.55) !important;
    animation:calc-modal-in .22s ease;
  }@keyframes calc-modal-in{
    from{ opacity:0; transform:translateY(14px) scale(.985); }
    to{ opacity:1; transform:none; }
  }@media(prefers-reduced-motion: reduce){

    body.calc-modal-open .calc-float .calc-card{ animation:none; }
    .calc-scrim{ transition:none; }
}
.calc-modal-close{
    display:none;
    position:absolute; top:10px; right:10px;
    width:44px; height:44px;
    align-items:center; justify-content:center;
    background:rgba(0,0,0,.20); border:none; border-radius:50%;
    color:#F4F1E8; font-size:24px; line-height:1;
    font-family:'Inter',sans-serif; cursor:pointer; padding:0;
    z-index:5;
  }body.calc-modal-open .calc-modal-close{ display:flex; }body.calc-modal-open .calc-card h2{ padding-right:46px; }.calc-modal-close:hover{ background:rgba(0,0,0,.34); }.calc-modal-close:focus-visible{ outline:2px solid var(--pop); outline-offset:2px; }body.calc-modal-open .signs-nudge,
  body.calc-modal-open .mobile-call-popup{ display:none !important; }