
.ics-success-message{max-width:1080px;margin:25px auto;padding:16px 20px;background:#ecfdf5;border-left:5px solid #059669;color:#065f46;font-weight:700}
.ics-custom-form{max-width:1080px;margin:40px auto;padding:0 18px 40px;font-family:"Poppins",Arial,sans-serif;color:#1f2933}
.ics-cover{margin-bottom:28px;box-shadow:0 12px 35px rgba(0,0,0,.12);background:#fff}
.ics-cover-inner{display:grid;grid-template-columns:1.2fr .95fr;min-height:265px;background:linear-gradient(125deg,#0d1720 0%,#162432 58%,#c9a646 58%,#c9a646 100%)}
.ics-cover-copy{padding:34px 36px;color:#fff;display:flex;flex-direction:column;justify-content:center}
.ics-brand{font-size:17px;font-weight:600;letter-spacing:.2px;margin-bottom:14px;color:#f8fafc;opacity:.95}
.ics-cover h1{margin:0;font-size:48px;line-height:1.05;font-weight:800;color:#d4af4c;letter-spacing:1px;text-transform:uppercase}
.ics-cover h1 span{color:#fff}
.ics-version{margin-top:12px;font-size:16px;color:#f5f5f5;font-weight:600}
.ics-cover p{margin-top:16px;font-size:15px;color:#fff;max-width:520px;line-height:1.6}
.ics-pill-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}
.ics-pill-row span{display:inline-flex;align-items:center;justify-content:center;min-width:118px;padding:10px 14px;border:1px solid rgba(255,255,255,.25);border-radius:999px;font-size:13px;font-weight:700;color:#fff;background:rgba(255,255,255,.05)}
.ics-cover-art{min-height:265px}
.ics-section{background:#fff;border:1px solid #d9c48a;margin-bottom:22px;padding:24px 28px 28px;box-shadow:none}
.ics-section h2{background:#101820;color:#fff;margin:-24px -28px 24px;padding:0;font-size:18px;line-height:1.4;font-weight:800;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center}
.ics-section h2 span{background:#c9a646;color:#fff;display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:52px;margin-right:16px;font-weight:800}
.ics-section h3{color:#b38b22;font-size:13px;font-weight:800;margin:18px 0 12px;padding-bottom:6px;border-bottom:1px solid #ead9a7;text-transform:uppercase;letter-spacing:.4px}
.ics-custom-form label{display:block;font-size:13px;font-weight:700;color:#374151;margin:13px 0 7px}
.ics-custom-form .req{color:#e11d48;font-weight:900}
.ics-field{min-width:0}
.ics-custom-form input[type=text],.ics-custom-form input[type=email],.ics-custom-form input[type=tel],.ics-custom-form input[type=date],.ics-custom-form input[type=number],.ics-custom-form textarea,.ics-custom-form select{width:100%;min-height:34px;border:none;border-bottom:1px solid #bdbdbd;border-radius:0;padding:7px 2px 6px;font-size:13px;background:#fff;color:#111827;box-shadow:none;outline:none;box-sizing:border-box}
.ics-custom-form textarea{min-height:68px;resize:vertical;border:1px solid #d8d8d8;padding:10px}
.ics-custom-form input::placeholder,.ics-custom-form textarea::placeholder{color:#9ca3af}
.ics-custom-form input:focus,.ics-custom-form textarea:focus{border-color:#c9a646;box-shadow:none}
.ics-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px;align-items:start}
.ics-note{background:#fbf7ea;border-left:4px solid #c9a646;padding:11px 13px;color:#374151;font-size:13px;margin:0 0 16px}
.ics-options{margin:6px 0 12px}
.ics-options label,.ics-single-check,.ics-slot-check{display:inline-flex;align-items:center;gap:7px;margin:6px 18px 6px 0;font-weight:500;font-size:13px}
.ics-single-check{display:flex;line-height:1.7}
.ics-custom-form input[type=checkbox],.ics-custom-form input[type=radio]{width:18px;height:18px;accent-color:#c9a646;margin:0 6px 0 0;flex:0 0 auto}
.ics-group-error{color:#b00020;font-size:13px;margin-top:6px}
.ics-availability-table{overflow-x:auto;margin:16px 0 20px;border:1px solid #d9c48a}
.ics-availability-table table{width:100%;border-collapse:collapse;margin:0}
.ics-availability-table th{background:#101820;color:#fff;padding:9px;border:1px solid #d9c48a;font-size:12px;text-align:center}
.ics-availability-table td{border:1px solid #d9c48a;padding:8px;text-align:center;background:#fff;font-size:12px}
.ics-availability-table td:first-child{background:#fbf7ea;color:#111827;text-align:left;font-weight:700}
.ics-signature-box{margin:2px 0 18px}.ics-signature-pad{width:100%;height:170px;background:#fff;border:1px solid #d9c48a;display:block;cursor:crosshair;touch-action:none}.ics-clear-signature{margin-top:10px;background:#101820;color:#fff;border:none;padding:12px 20px;font-weight:800;cursor:pointer}.ics-clear-signature:hover{background:#c9a646}
.ics-submit-wrap{text-align:center;margin:30px 0 20px}.ics-submit{background:#c9a646;color:#fff;border:none;padding:16px 44px;border-radius:0;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;box-shadow:none}.ics-submit:hover{background:#101820;color:#fff}
@media(max-width:768px){.ics-grid,.ics-cover-inner{grid-template-columns:1fr}.ics-cover-copy{padding:28px 22px}.ics-cover h1{font-size:36px}.ics-pill-row span{min-width:auto}.ics-section{padding:20px}.ics-section h2{margin:-20px -20px 20px;font-size:15px}.ics-section h2 span{min-width:44px;height:48px}}


/* ===== ICS responsive fix v1.3.0 ===== */
.ics-custom-form,
.ics-custom-form * {
  box-sizing: border-box;
}

.ics-custom-form {
  width: min(100%, 1080px) !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.ics-cover h1 {
  font-size: clamp(32px, 4.7vw, 48px) !important;
  overflow-wrap: normal;
  word-break: normal;
}

.ics-section h2 {
  font-size: clamp(18px, 3.2vw, 38px) !important;
}

.ics-custom-form input,
.ics-custom-form textarea,
.ics-custom-form select,
.ics-signature-pad {
  max-width: 100% !important;
}

.ics-availability-table {
  -webkit-overflow-scrolling: touch;
}

/* Large tablets / iPad landscape and smaller */
@media (max-width: 1180px) {
  .ics-custom-form {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .ics-cover-inner {
    min-height: 240px !important;
  }

  .ics-cover-copy {
    padding: 30px 30px !important;
  }
}

/* iPad portrait and tablets */
@media (max-width: 1024px) {
  .ics-cover-inner {
    grid-template-columns: 1fr !important;
    background: linear-gradient(135deg, #0d1720 0%, #162432 66%, #c9a646 66%, #c9a646 100%) !important;
  }

  .ics-cover-art {
    display: none !important;
  }

  .ics-cover h1 {
    font-size: clamp(34px, 7vw, 46px) !important;
    line-height: 1.08 !important;
  }

  .ics-pill-row {
    gap: 10px !important;
  }

  .ics-pill-row span {
    min-width: 105px !important;
    padding: 9px 12px !important;
  }

  .ics-section {
    padding: 22px !important;
  }

  .ics-section h2 {
    margin: -22px -22px 22px !important;
    font-size: clamp(22px, 5.2vw, 34px) !important;
  }

  .ics-section h2 span {
    min-width: 52px !important;
    height: 58px !important;
    font-size: 28px !important;
    margin-right: 14px !important;
  }
}

/* Small tablets / large phones */
@media (max-width: 900px) {
  .ics-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .ics-custom-form label {
    margin-top: 12px !important;
  }

  .ics-options label,
  .ics-single-check,
  .ics-slot-check {
    margin-right: 12px !important;
  }
}

/* Phones */
@media (max-width: 600px) {
  .ics-custom-form {
    padding-left: 12px !important;
    padding-right: 12px !important;
    margin-top: 24px !important;
  }

  .ics-cover-copy {
    padding: 24px 20px !important;
  }

  .ics-cover h1 {
    font-size: 32px !important;
  }

  .ics-brand {
    font-size: 14px !important;
  }

  .ics-version,
  .ics-cover p {
    font-size: 13px !important;
  }

  .ics-pill-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
  }

  .ics-pill-row span {
    min-width: 0 !important;
    width: 100% !important;
  }

  .ics-section {
    padding: 18px !important;
  }

  .ics-section h2 {
    margin: -18px -18px 18px !important;
    font-size: 28px !important;
    line-height: 1.1 !important;
  }

  .ics-section h2 span {
    min-width: 44px !important;
    height: 54px !important;
    font-size: 24px !important;
    margin-right: 12px !important;
  }

  .ics-custom-form input[type="text"],
  .ics-custom-form input[type="email"],
  .ics-custom-form input[type="tel"],
  .ics-custom-form input[type="date"],
  .ics-custom-form input[type="number"],
  .ics-custom-form textarea,
  .ics-custom-form select {
    font-size: 16px !important; /* prevents iOS zoom */
  }

  .ics-options label {
    width: calc(50% - 14px) !important;
    margin-right: 8px !important;
  }

  .ics-signature-pad {
    height: 160px !important;
  }

  .ics-submit {
    width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* Very small phones */
@media (max-width: 380px) {
  .ics-cover h1 {
    font-size: 28px !important;
  }

  .ics-section h2 {
    font-size: 24px !important;
  }

  .ics-options label {
    width: 100% !important;
  }

  .ics-pill-row {
    grid-template-columns: 1fr !important;
  }
}


/* ===== ICS tablet/mobile layout hard fix v1.7 ===== */
.ics-version{display:none!important;}

/* Prevent theme/container squeeze issues */
.ics-custom-form{
  width:100%!important;
  max-width:1080px!important;
  min-width:0!important;
  overflow:hidden!important;
}
.ics-cover,
.ics-section{
  width:100%!important;
  min-width:0!important;
}

/* Keep the desktop diagonal only on wide screens */
@media (max-width:1024px){
  .ics-custom-form{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .ics-cover-inner{
    display:block!important;
    min-height:auto!important;
    background:#0d1720!important;
    position:relative!important;
    overflow:hidden!important;
    border-bottom:7px solid #c9a646!important;
  }
  .ics-cover-inner:after{
    content:"";
    position:absolute;
    right:-70px;
    bottom:-70px;
    width:210px;
    height:210px;
    background:#c9a646;
    transform:rotate(45deg);
    opacity:.95;
    pointer-events:none;
  }
  .ics-cover-copy{
    position:relative!important;
    z-index:2!important;
    max-width:100%!important;
    padding:30px 28px!important;
  }
  .ics-cover h1{
    max-width:100%!important;
    font-size:clamp(30px,6.2vw,44px)!important;
    line-height:1.06!important;
    letter-spacing:.5px!important;
    overflow-wrap:normal!important;
  }
  .ics-cover p{
    max-width:88%!important;
    font-size:14px!important;
    line-height:1.55!important;
    margin-top:14px!important;
  }
  .ics-pill-row{
    max-width:430px!important;
  }
  .ics-section h2{
    font-size:clamp(24px,5vw,34px)!important;
  }
}

@media (max-width:768px){
  .ics-cover-inner:after{
    width:155px!important;
    height:155px!important;
    right:-62px!important;
    bottom:-62px!important;
    opacity:.82!important;
  }
  .ics-cover-copy{
    padding:26px 22px!important;
  }
  .ics-cover h1{
    font-size:clamp(28px,8.2vw,38px)!important;
    line-height:1.08!important;
  }
  .ics-cover p{
    max-width:100%!important;
    padding-right:36px!important;
  }
  .ics-pill-row{
    display:flex!important;
    gap:9px!important;
  }
  .ics-pill-row span{
    min-width:auto!important;
    width:auto!important;
    padding:8px 12px!important;
    font-size:12px!important;
  }
}

@media (max-width:600px){
  .ics-custom-form{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .ics-cover{
    margin-bottom:20px!important;
  }
  .ics-cover-copy{
    padding:24px 20px!important;
  }
  .ics-brand{
    font-size:13px!important;
    margin-bottom:10px!important;
  }
  .ics-cover h1{
    font-size:31px!important;
    line-height:1.05!important;
  }
  .ics-cover p{
    font-size:12.5px!important;
    line-height:1.48!important;
    margin-top:12px!important;
    padding-right:28px!important;
  }
  .ics-pill-row{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    max-width:245px!important;
  }
  .ics-pill-row span{
    width:100%!important;
    padding:8px 10px!important;
    font-size:11.5px!important;
  }
  .ics-section{
    padding:18px!important;
    margin-bottom:20px!important;
  }
  .ics-section h2{
    margin:-18px -18px 18px!important;
    font-size:26px!important;
    line-height:1.1!important;
    letter-spacing:0!important;
  }
  .ics-section h2 span{
    min-width:42px!important;
    height:52px!important;
    font-size:24px!important;
    margin-right:10px!important;
  }
}

@media (max-width:430px){
  .ics-cover h1{font-size:29px!important;}
  .ics-cover p{padding-right:18px!important;}
  .ics-cover-inner:after{
    width:130px!important;
    height:130px!important;
    right:-58px!important;
    bottom:-58px!important;
  }
  .ics-section h2{font-size:24px!important;}
  .ics-options label{width:calc(50% - 12px)!important;}
}

@media (max-width:360px){
  .ics-cover h1{font-size:26px!important;}
  .ics-pill-row{grid-template-columns:1fr!important;max-width:180px!important;}
  .ics-section h2{font-size:22px!important;}
  .ics-options label{width:100%!important;}
}
