/* IBDIGITAL PROJECT ENQUIRY — FRONTEND */
.ibde-front{background:#070a0f;color:#fff;padding:100px 20px;font-family:inherit}.ibde-front-inner{max-width:1180px;margin:auto}.ibde-front-head{display:flex;justify-content:space-between;gap:70px;align-items:flex-end;margin-bottom:65px}.ibde-kicker{color:#1677ff!important;font-size:11px!important;font-weight:800!important;letter-spacing:2px!important}.ibde-front h1{font-size:clamp(55px,7vw,100px);line-height:.86;letter-spacing:-4px;margin:15px 0 28px;font-weight:900}.ibde-front h1 span{color:#1677ff}.ibde-lead{max-width:650px;color:#8994a3;font-size:17px;line-height:1.7}.ibde-side-note{border-left:1px solid #26303b;padding-left:28px;max-width:290px;color:#fff}.ibde-side-note span{display:block;color:#737f8e;font-size:10px;line-height:1.6;margin-top:10px;letter-spacing:1px}.ibde-progress{height:2px;background:#26303b}.ibde-progress span{display:block;height:100%;background:#1677ff;transition:.3s}.ibde-form{background:#fff;color:#111820;padding:55px;margin-top:30px}.ibde-step{display:none}.ibde-step.is-active{display:block}.ibde-step-head{display:flex;gap:22px;margin-bottom:40px}.ibde-step-head>span{color:#1677ff;font-weight:900;font-size:13px}.ibde-step-head small{font-size:10px;letter-spacing:1.5px;color:#8994a3;font-weight:800}.ibde-step-head h2{font-size:42px;line-height:.95;letter-spacing:-2px;margin:10px 0 0;font-weight:900}.ibde-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.ibde-grid-2{grid-template-columns:1fr 1fr}.ibde-field{display:block}.ibde-field>span,.ibde-multi legend{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:800;margin-bottom:8px}.ibde-field input,.ibde-field select,.ibde-field textarea{width:100%;border:1px solid #cbd1d8;background:#fff;padding:15px 16px;font:inherit;color:#111820;min-height:52px;border-radius:0}.ibde-field textarea{min-height:140px;resize:vertical}.ibde-wide{grid-column:1/-1}.ibde-multi{border:0;padding:0;margin:0;grid-column:1/-1}.ibde-multi>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ibde-multi label{display:flex;gap:8px;border:1px solid #d6dbe0;padding:13px;cursor:pointer;font-size:13px}.ibde-multi input{min-height:auto;width:auto}.ibde-multi label:has(input:checked){border-color:#1677ff;background:#eef5ff}.ibde-actions{display:flex;justify-content:space-between;align-items:center;margin-top:45px;padding-top:25px;border-top:1px solid #e2e5e8}.ibde-actions button{border:0;border-radius:0;padding:14px 22px;font-weight:800;cursor:pointer}.ibde-prev{background:#eef0f2}.ibde-next,.ibde-submit{background:#1677ff;color:#fff}.ibde-step-count{font-size:11px;color:#7d8792;margin-right:18px}@media(max-width:800px){.ibde-front{padding:70px 16px}.ibde-front-head{display:block}.ibde-side-note{margin-top:35px}.ibde-form{padding:28px}.ibde-grid,.ibde-grid-2{grid-template-columns:1fr}.ibde-multi>div{grid-template-columns:1fr 1fr}.ibde-step-head h2{font-size:34px}.ibde-actions{gap:15px}.ibde-step-count{display:block;margin:0 0 10px}}@media(max-width:500px){.ibde-front h1{font-size:48px;letter-spacing:-2px}.ibde-multi>div{grid-template-columns:1fr}.ibde-actions{display:block}.ibde-actions>div{margin-top:12px}.ibde-next,.ibde-submit{width:100%}}.ibde-success{max-width:1180px;margin:0 auto 28px;background:#eaf5ff;color:#111820;border-left:4px solid #1677ff;padding:22px 25px;display:flex;flex-direction:column;gap:6px}.ibde-success strong{font-size:18px}.ibde-success span{color:#687482;font-size:14px}

/* IBDIGITAL — MOBILE FORM REFINEMENT */
@media (max-width: 600px){
  html,body{overflow-x:hidden!important;}
  .ibde-front{width:100%;box-sizing:border-box;padding:52px 12px 70px!important;overflow:hidden;}
  .ibde-front-inner{width:100%;max-width:none;box-sizing:border-box;}
  .ibde-front-head{margin-bottom:28px!important;gap:0!important;}
  .ibde-front-head>div:first-child{width:100%;}
  .ibde-kicker{font-size:9px!important;letter-spacing:1.6px!important;margin-bottom:10px!important;}
  .ibde-front h1{font-size:clamp(38px,12vw,52px)!important;line-height:.88!important;letter-spacing:-2.2px!important;margin:10px 0 20px!important;max-width:330px;}
  .ibde-lead{font-size:13px!important;line-height:1.65!important;max-width:320px!important;}
  .ibde-side-note{margin-top:25px!important;padding-left:14px!important;max-width:100%!important;font-size:12px!important;line-height:1.5!important;}
  .ibde-side-note span{font-size:8px!important;line-height:1.5!important;letter-spacing:.9px!important;}

  .ibde-form{width:100%;box-sizing:border-box;padding:20px 14px 18px!important;margin-top:18px!important;background:#fff!important;}
  .ibde-progress{height:2px!important;margin:0 0 25px!important;}
  .ibde-step-head{gap:10px!important;margin-bottom:25px!important;align-items:flex-start!important;}
  .ibde-step-head>span{font-size:10px!important;min-width:22px!important;padding-top:3px;}
  .ibde-step-head small{font-size:8px!important;letter-spacing:1.2px!important;}
  .ibde-step-head h2{font-size:27px!important;line-height:.94!important;letter-spacing:-1.3px!important;margin:7px 0 0!important;max-width:290px!important;}

  .ibde-grid,.ibde-grid-2{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px!important;width:100%!important;}
  .ibde-field{width:100%!important;min-width:0!important;}
  .ibde-field>span,.ibde-multi legend{font-size:8px!important;letter-spacing:.9px!important;margin-bottom:7px!important;line-height:1.3!important;}
  .ibde-field input,.ibde-field select,.ibde-field textarea{width:100%!important;max-width:100%!important;box-sizing:border-box!important;min-height:48px!important;padding:13px 12px!important;font-size:13px!important;line-height:1.35!important;border-color:#cbd1d8!important;}
  .ibde-field textarea{min-height:125px!important;}
  .ibde-wide{grid-column:auto!important;}

  .ibde-multi{width:100%!important;min-width:0!important;}
  .ibde-multi>div{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;}
  .ibde-multi label{width:100%!important;box-sizing:border-box!important;min-height:46px!important;align-items:center!important;padding:11px 12px!important;font-size:12px!important;line-height:1.35!important;}
  .ibde-multi input{flex:0 0 auto!important;width:16px!important;height:16px!important;min-height:16px!important;}

  .ibde-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin-top:30px!important;padding-top:18px!important;}
  .ibde-actions>div{display:flex!important;flex-direction:column!important;gap:9px!important;margin-top:0!important;width:100%!important;}
  .ibde-step-count{display:block!important;order:-1!important;margin:0 0 2px!important;text-align:left!important;font-size:9px!important;}
  .ibde-prev,.ibde-next,.ibde-submit{width:100%!important;min-height:48px!important;box-sizing:border-box!important;padding:13px 15px!important;font-size:12px!important;line-height:1!important;}
  .ibde-prev{order:2!important;}
  .ibde-next{order:1!important;}
  .ibde-submit{order:1!important;}

  .ibde-success{margin:0 0 18px!important;padding:16px 14px!important;border-left-width:3px!important;}
  .ibde-success strong{font-size:15px!important;line-height:1.3!important;}
  .ibde-success span{font-size:12px!important;line-height:1.55!important;}
}

@media (max-width: 380px){
  .ibde-front{padding-left:10px!important;padding-right:10px!important;}
  .ibde-form{padding-left:12px!important;padding-right:12px!important;}
  .ibde-front h1{font-size:38px!important;}
  .ibde-step-head h2{font-size:24px!important;}
  .ibde-field input,.ibde-field select,.ibde-field textarea{font-size:12px!important;}
}

/* IBDIGITAL — MOBILE FULL-WIDTH FORM FIX
   The shortcode can sit inside a constrained WordPress/Spectra container.
   Break the enquiry module out to the actual viewport width on mobile. */
@media (max-width: 767px){
  .ibde-front{
    position:relative!important;
    width:100vw!important;
    max-width:100vw!important;
    min-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding:42px 12px 64px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  .ibde-front-inner{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  .ibde-front-head,
  .ibde-form{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .ibde-form{
    margin-left:0!important;
    margin-right:0!important;
    padding:24px 18px 20px!important;
  }

  .ibde-grid,
  .ibde-grid-2{
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:minmax(0,1fr)!important;
  }

  .ibde-field,
  .ibde-multi{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  .ibde-field input,
  .ibde-field select,
  .ibde-field textarea{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  .ibde-multi>div{
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:1fr!important;
  }

  .ibde-multi label{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .ibde-actions,
  .ibde-actions>div{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .ibde-next,
  .ibde-submit,
  .ibde-prev{
    width:100%!important;
    box-sizing:border-box!important;
  }
}

@media (max-width:380px){
  .ibde-front{
    padding-left:8px!important;
    padding-right:8px!important;
  }

  .ibde-form{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}
