/* Online Claim System - Elementor-friendly frontend styles */
.ocs-portal{width:100%;font-family:Arial,Helvetica,sans-serif;color:#111;box-sizing:border-box}
.ocs-portal *{box-sizing:border-box}

/* AUTH / PAGE 1 + 2: plugin adds NO background graphics. Elementor controls the page background. */
.ocs-auth-shell{min-height:760px;width:100%;position:relative;overflow:hidden;display:flex;justify-content:flex-end;align-items:flex-start;padding:40px clamp(24px,17vw,300px) 60px 24px;background:transparent}
.ocs-auth-visual{display:none !important}

.ocs-auth-card{position:relative;z-index:2;width:410px;min-height:510px;background:#fff;padding:34px 48px 32px;box-shadow:0 2px 16px rgba(0,0,0,.18)}
.ocs-redline{position:absolute;left:0;right:0;top:0;height:6px;background:#ef1010}
.ocs-language{text-align:right;font-size:14px;font-weight:600;margin-bottom:20px}.ocs-language span{font-size:17px;margin-left:3px}
.ocs-auth-content h2{font-size:20px;color:#616161;margin:0 0 22px;font-weight:800}.ocs-auth-content p{font-size:14px;color:#666;margin:0 0 5px;font-weight:800}.ocs-link{display:block;color:#ef1010;text-decoration:none;font-weight:800;font-size:14px;margin-bottom:31px}
.ocs-auth-content label{display:block;font-size:14px;color:#555;margin:0 0 9px}.ocs-auth-content label span{color:#ef1010}
.ocs-auth-content input{width:100%;height:58px;border:1px solid #cfcfcf;border-radius:3px;background:#fff;padding:0 16px;font-size:14px;outline:none}
.ocs-auth-content input:focus{border-color:#ef1010;box-shadow:0 0 0 1px #ef1010}
.ocs-primary{display:block !important;width:100% !important;max-width:none !important;min-width:100% !important;height:48px !important;border:0 !important;border-radius:9px !important;background:#f10b0b !important;color:#fff !important;font-size:15px !important;font-weight:800 !important;cursor:pointer;margin-top:17px !important;padding:0 16px !important;box-sizing:border-box !important;text-align:center !important}
.ocs-primary:hover{background:#d90909 !important}
.ocs-guest-highlight{margin-top:26px;width:100%}
.ocs-guest-highlight a{display:flex !important;width:100% !important;max-width:none !important;height:50px;align-items:center;justify-content:center;border:1px solid #f10b0b;border-radius:9px;color:#f10b0b;background:#fff;text-decoration:none;font-size:15px;font-weight:800}
.ocs-extra{display:block;text-align:center;color:#f10b0b;font-weight:700;font-size:14px;text-decoration:none;margin-top:18px}
.ocs-verify-form label{margin-top:0}.ocs-verify-form input{margin-bottom:16px}.ocs-error{margin-top:15px;padding:10px 12px;background:#fff0f0;border:1px solid #f3aaaa;color:#c40000;font-size:13px;border-radius:4px}

/* PAGE 3 */
.ocs-claim-shell{min-height:760px;width:100%;display:flex;background:#fff}
.ocs-sidebar{width:210px;flex:0 0 210px;background:#f5f5f7;display:flex;justify-content:center;padding-top:30px}
.ocs-side-logo{width:120px;height:120px;border-radius:50%;background:#ef1111;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-size:28px;font-weight:800;line-height:.9}.ocs-side-logo small{font-size:16px}
.ocs-claim-main{flex:1;padding:38px 5.5% 50px;min-width:0}.ocs-breadcrumb{color:#68717d;font-size:16px;margin-bottom:30px}.ocs-breadcrumb span{margin:0 12px}.ocs-plan{display:flex;gap:12px;align-items:center;font-size:16px}.ocs-plan-icon{width:32px;height:32px;border-radius:50%;background:#ffe2d9;display:flex;align-items:center;justify-content:center}
.ocs-claim-main hr{border:0;border-top:1px solid #eee;margin:25px 0}.ocs-claim-main h3{font-size:15px;color:#f10b0b;margin:0 0 28px}
.ocs-fields{display:grid;grid-template-columns:1fr 1fr;gap:25px 28px;max-width:1280px}.ocs-field label{display:block;font-size:14px;font-weight:700;margin-bottom:9px}.ocs-field label span{color:#f10b0b}
.ocs-readonly,.ocs-field input,.ocs-field select,.ocs-field textarea{width:100%;border:0;border-radius:6px;background:#f7f7f7;color:#4b535e;font-size:14px}.ocs-readonly{height:58px;padding:0 18px;display:flex;align-items:center;justify-content:space-between}.ocs-readonly b{font-size:19px;color:#0abb32}.ocs-field input,.ocs-field select{height:58px;padding:0 18px}.ocs-field textarea{padding:14px 18px}.ocs-mobile{display:flex;gap:12px}.ocs-mobile select{width:140px}.ocs-mobile input{flex:1}
.ocs-optional{display:grid;grid-template-columns:1fr 1fr;gap:25px 28px;max-width:1280px;margin-top:25px}.ocs-actions{display:flex;justify-content:flex-end;gap:18px;border-top:1px solid #eee;margin-top:30px;padding-top:18px;max-width:1280px}.ocs-actions a,.ocs-actions button{width:300px;height:48px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-weight:800;text-decoration:none;font-size:14px}.ocs-actions a{border:1px solid #f20b0b;color:#f20b0b;background:#fff}.ocs-actions button{border:0;background:#c5cbd5;color:#fff;cursor:pointer}.ocs-actions button:hover{background:#f20b0b}

@media(max-width:1200px){.ocs-auth-shell{padding-right:5%}.ocs-visual-circle{left:17%;transform:scale(.9);transform-origin:top left}}
@media(max-width:900px){.ocs-auth-shell{min-height:720px;padding:25px 20px;justify-content:center}.ocs-visual-circle{display:none}.ocs-auth-card{width:100%;max-width:410px}.ocs-sidebar{display:none}.ocs-fields,.ocs-optional{grid-template-columns:1fr}.ocs-claim-main{padding:25px 20px}.ocs-actions{flex-direction:column}.ocs-actions a,.ocs-actions button{width:100%}}
@media(max-width:600px){.ocs-auth-card{padding:30px 24px}.ocs-visual-circle{display:none}.ocs-mobile{flex-direction:column}.ocs-mobile select{width:100%}}

/* HARD OVERRIDE: REQUEST TAC must always be a full-width solid red button. */
.ocs-portal .ocs-auth-card .ocs-auth-content .ocs-tac-button,
.ocs-portal .ocs-auth-card button.ocs-tac-button,
.ocs-portal button.ocs-primary.ocs-tac-button {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  flex:0 0 100% !important;
  height:48px !important;
  min-height:48px !important;
  margin:17px 0 0 0 !important;
  padding:0 16px !important;
  border:1px solid #f10b0b !important;
  border-radius:9px !important;
  background:#f10b0b !important;
  background-image:none !important;
  color:#fff !important;
  -webkit-appearance:none !important;
  appearance:none !important;
  box-shadow:none !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:48px !important;
  text-align:center !important;
  cursor:pointer !important;
  opacity:1 !important;
  visibility:visible !important;
}
.ocs-portal .ocs-auth-card .ocs-auth-content .ocs-tac-button:hover,
.ocs-portal .ocs-auth-card .ocs-auth-content .ocs-tac-button:focus,
.ocs-portal .ocs-auth-card .ocs-auth-content .ocs-tac-button:active {
  width:100% !important;
  max-width:100% !important;
  background:#d90909 !important;
  background-image:none !important;
  color:#fff !important;
  border-color:#d90909 !important;
  box-shadow:none !important;
}


/* v2.2.2: TAC is rendered as a block link instead of a button so theme/Elementor button rules cannot constrain it. */
.ocs-portal .ocs-tac-wrap {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-width:100% !important;
  margin:17px 0 0 0 !important;
  padding:0 !important;
}
.ocs-portal .ocs-auth-card .ocs-auth-content .ocs-tac-wrap .ocs-tac-button,
.ocs-portal .ocs-tac-wrap > a.ocs-tac-button {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:none !important;
  min-width:100% !important;
  height:48px !important;
  min-height:48px !important;
  margin:0 !important;
  padding:0 16px !important;
  box-sizing:border-box !important;
  border:1px solid #f10b0b !important;
  border-radius:9px !important;
  background:#f10b0b !important;
  background-image:none !important;
  color:#fff !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-align:center !important;
  text-decoration:none !important;
  box-shadow:none !important;
  overflow:visible !important;
  opacity:1 !important;
}
.ocs-portal .ocs-tac-wrap > a.ocs-tac-button:hover,
.ocs-portal .ocs-tac-wrap > a.ocs-tac-button:focus,
.ocs-portal .ocs-tac-wrap > a.ocs-tac-button:active {
  width:100% !important;
  max-width:none !important;
  min-width:100% !important;
  background:#d90909 !important;
  color:#fff !important;
  border-color:#d90909 !important;
}

/* Typography correction */
.ocs-login h2{font-size:24px!important;font-weight:700!important;} .ocs-login p{font-size:17px!important;font-weight:700!important;} .ocs-login>a{font-size:17px!important;font-weight:700!important;}

/* v2.2.5: Strong typography + circular confirmation check icons on Page 3 */
.ocs-portal .ocs-auth-content h2,
.ocs-portal .ocs-auth-content p,
.ocs-portal .ocs-auth-content a.ocs-link {
  font-weight: 900 !important;
}
.ocs-portal .ocs-auth-content h2 {
  font-size: 24px !important;
}
.ocs-portal .ocs-auth-content p,
.ocs-portal .ocs-auth-content a.ocs-link {
  font-size: 17px !important;
}

.ocs-portal .ocs-readonly b {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  border-radius: 50% !important;
  background: #0abb32 !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 1px 4px rgba(10, 180, 45, .22) !important;
}

/* v2.2.8: Video-style compact preloader + true circular sidebar logo + dropdown indicators */
.ocs-preloader{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:none !important;
  transition:opacity .22s ease, visibility .22s ease !important;
}
.ocs-preloader.ocs-loaded{opacity:0 !important;visibility:hidden !important}
.ocs-loader-logo-wrap{
  position:relative !important;
  width:42px !important;
  height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.ocs-loader-logo{
  width:34px !important;
  height:34px !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:50% !important;
  position:relative !important;
  z-index:2 !important;
  animation:ocsLogoPulse .9s ease-in-out infinite !important;
}
.ocs-loader-ring{
  position:absolute !important;
  inset:1px !important;
  width:40px !important;
  height:40px !important;
  border:2px solid rgba(239,17,17,.20) !important;
  border-top-color:#ef1111 !important;
  border-right-color:#ef1111 !important;
  border-radius:50% !important;
  animation:ocsLoaderSpin .75s linear infinite !important;
}
@keyframes ocsLoaderSpin{to{transform:rotate(360deg)}}
@keyframes ocsLogoPulse{0%,100%{transform:scale(.94);opacity:.88}50%{transform:scale(1);opacity:1}}

.ocs-side-logo{
  width:126px !important;
  height:126px !important;
  flex:0 0 126px !important;
  border-radius:50% !important;
  background:transparent !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  border:0 !important;
  box-shadow:none !important;
}
.ocs-side-logo img{
  width:126px !important;
  height:126px !important;
  max-width:none !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:50% !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Page 3: the four requested fields use a clean right-side dropdown chevron. */
.ocs-portal .ocs-readonly b{
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#252b31 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:20px !important;
  font-weight:400 !important;
  line-height:1 !important;
  box-shadow:none !important;
  transform:translateY(-1px) !important;
}

/* v2.2.9: Screenshot-matched sidebar logo, breadcrumb home icon and Page 3 controls */
.ocs-side-logo{
  width:150px !important;
  height:150px !important;
  flex:0 0 150px !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:18px !important;
  overflow:visible !important;
}
.ocs-side-logo img{
  width:114px !important;
  height:114px !important;
  max-width:114px !important;
  max-height:114px !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:50% !important;
}
.ocs-breadcrumb{display:flex !important;align-items:center !important;gap:12px !important;}
.ocs-breadcrumb .ocs-home-icon{display:inline-flex !important;align-items:center !important;justify-content:center !important;color:#ef1111 !important;line-height:0 !important;}
.ocs-breadcrumb .ocs-home-icon + span{margin:0 3px !important;color:#7b838c !important;}
.ocs-policy-select,.ocs-policy-date{appearance:auto !important;-webkit-appearance:auto !important;background:#f7f7f7 !important;color:#4b535e !important;}
.ocs-policy-select{cursor:pointer !important;padding-right:40px !important;}
.ocs-policy-date{cursor:pointer !important;}
.ocs-policy-date::-webkit-calendar-picker-indicator{opacity:1 !important;cursor:pointer !important;}
.ocs-readonly .ocs-check{width:24px !important;height:24px !important;min-width:24px !important;border-radius:50% !important;background:#0abb32 !important;color:#fff !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;font-size:14px !important;font-weight:900 !important;line-height:1 !important;}

/* v2.3.0: Claim submission is intentionally blocked with a user notification. */
.ocs-claim-notice{margin:14px 0 18px;padding:12px 16px;border:1px solid #f0b7b7;background:#fff5f5;color:#d71920;border-radius:8px;font-size:14px;font-weight:600;}
.ocs-submit-notice{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:99999;width:min(92vw,420px);padding:20px 22px;background:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 14px 45px rgba(0,0,0,.18);text-align:center;font-size:15px;font-weight:600;color:#333;}
.ocs-submit-notice::before{content:'!';display:flex;width:34px;height:34px;margin:0 auto 10px;border-radius:50%;align-items:center;justify-content:center;background:#ef1111;color:#fff;font-size:20px;font-weight:800;}
.ocs-submit-notice button{margin-top:14px;border:0;border-radius:7px;background:#ef1111;color:#fff;padding:9px 24px;font-weight:700;cursor:pointer;}


/* v2.3.1: Screenshot-matched Page 3 plan header and compact right-side validation icons. */
.ocs-claim-main .ocs-plan{gap:12px !important;align-items:center !important;}
.ocs-claim-main .ocs-plan-icon.ocs-outbound-icon{width:32px !important;height:32px !important;min-width:32px !important;border-radius:50% !important;background:transparent !important;display:flex !important;align-items:center !important;justify-content:center !important;overflow:hidden !important;}
.ocs-claim-main .ocs-plan-icon.ocs-outbound-icon svg{display:block !important;width:32px !important;height:32px !important;}
.ocs-claim-main h3{font-weight:800 !important;}
.ocs-readonly{position:relative !important;}
.ocs-readonly .ocs-check{width:20px !important;height:20px !important;min-width:20px !important;border-radius:50% !important;background:#0abb32 !important;color:#fff !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;font-size:12px !important;font-weight:900 !important;line-height:1 !important;box-shadow:none !important;}

/* v2.3.2: Exact compact validation checks and airplane plan icon. */
.ocs-portal .ocs-readonly .ocs-check{
  position:absolute !important;
  right:16px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  max-width:20px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:#0abb32 !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:20px !important;
  text-align:center !important;
  box-shadow:none !important;
  z-index:3 !important;
}
.ocs-portal .ocs-readonly{padding-right:48px !important;}
.ocs-claim-main .ocs-plan-icon.ocs-outbound-icon{
  width:32px !important;height:32px !important;min-width:32px !important;
  border-radius:50% !important;background:transparent !important;
}
.ocs-claim-main .ocs-plan-icon.ocs-outbound-icon svg{width:32px !important;height:32px !important;}


/* v2.3.3: Pixel-stable validation checks and manual Page 2 policy entry. */
.ocs-portal .ocs-readonly .ocs-check{
  position:absolute !important; right:16px !important; top:50% !important; transform:translateY(-50%) !important;
  width:20px !important; height:20px !important; min-width:20px !important; max-width:20px !important;
  padding:0 !important; margin:0 !important; border:0 !important; border-radius:50% !important;
  background:#0abb32 !important; color:#fff !important; display:flex !important;
  align-items:center !important; justify-content:center !important; line-height:0 !important;
  font-size:0 !important; box-shadow:none !important; z-index:5 !important;
}
.ocs-portal .ocs-readonly .ocs-check svg{width:20px !important;height:20px !important;display:block !important;flex:none !important;}
.ocs-portal .ocs-readonly .ocs-check svg path{stroke:#fff !important;}
.ocs-portal .ocs-readonly{padding-right:48px !important;}
.ocs-claim-main .ocs-plan-icon.ocs-outbound-icon{width:32px !important;height:32px !important;min-width:32px !important;border-radius:50% !important;background:#ffe2d9 !important;overflow:hidden !important;}
.ocs-claim-main .ocs-plan-icon.ocs-outbound-icon svg{width:32px !important;height:32px !important;display:block !important;}


/* v2.3.4: Force screenshot-matched green circular validation checks.
   Use span instead of b so theme typography/reset rules cannot hide the circle. */
.ocs-portal .ocs-readonly > span.ocs-check{
  position:absolute !important;
  right:16px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  max-width:20px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:#08c52b !important;
  color:#fff !important;
  line-height:0 !important;
  font-size:0 !important;
  opacity:1 !important;
  visibility:visible !important;
  overflow:hidden !important;
  z-index:20 !important;
  box-shadow:none !important;
}
.ocs-portal .ocs-readonly > span.ocs-check svg{
  display:block !important;
  width:13px !important;
  height:13px !important;
  min-width:13px !important;
  min-height:13px !important;
  opacity:1 !important;
  visibility:visible !important;
}
.ocs-portal .ocs-readonly > span.ocs-check svg path{
  stroke:#fff !important;
  stroke-width:2.6 !important;
}
.ocs-portal .ocs-readonly{padding-right:48px !important;}


/* v2.3.5: Policy/DOB verification modal, responsive claim form, and no Email check. */
.ocs-policy-error-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:1000000 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:20px !important;
  background:rgba(0,0,0,.62) !important;
}
.ocs-policy-error-box{
  width:min(92vw,550px) !important;
  min-height:315px !important;
  background:#fff !important;
  border:1px solid #ddd !important;
  border-radius:16px !important;
  box-shadow:0 18px 55px rgba(0,0,0,.30) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:34px 28px !important;
}
.ocs-policy-error-icon{
  width:56px !important;
  height:56px !important;
  border-radius:50% !important;
  background:#ef1111 !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:43px !important;
  font-weight:400 !important;
  line-height:1 !important;
  margin-bottom:20px !important;
}
.ocs-policy-error-box h3{
  margin:0 0 10px !important;
  color:#111 !important;
  font-size:21px !important;
  font-weight:800 !important;
}
.ocs-policy-error-box p{
  margin:0 !important;
  color:#929292 !important;
  font-size:16px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
}
.ocs-policy-error-close{
  margin-top:22px !important;
  min-width:136px !important;
  height:49px !important;
  padding:0 25px !important;
  border:0 !important;
  border-radius:9px !important;
  background:#ef1111 !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}
.ocs-policy-error-close:hover{background:#d90909 !important;}

/* Mobile: keep every Page 3 field accessible and stacked vertically. */
.ocs-claim-shell{overflow:visible !important;}
.ocs-claim-main{overflow:visible !important;}
@media(max-width:900px){
  .ocs-claim-shell{display:block !important;min-height:0 !important;width:100% !important;}
  .ocs-sidebar{display:none !important;}
  .ocs-claim-main{display:block !important;width:100% !important;max-width:none !important;padding:24px 20px 40px !important;overflow:visible !important;}
  .ocs-fields{display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:22px !important;width:100% !important;max-width:none !important;}
  .ocs-field{width:100% !important;min-width:0 !important;}
  .ocs-readonly,.ocs-field input,.ocs-field select{width:100% !important;max-width:none !important;}
  .ocs-mobile{display:flex !important;flex-direction:row !important;width:100% !important;gap:10px !important;}
  .ocs-mobile select{width:140px !important;min-width:110px !important;flex:0 0 140px !important;}
  .ocs-mobile input{width:auto !important;flex:1 1 auto !important;min-width:0 !important;}
  .ocs-actions{display:flex !important;flex-direction:column !important;width:100% !important;max-width:none !important;gap:12px !important;margin-top:28px !important;padding-bottom:20px !important;}
  .ocs-actions a,.ocs-actions button{width:100% !important;max-width:none !important;}
}
@media(max-width:480px){
  .ocs-claim-main{padding:22px 16px 36px !important;}
  .ocs-breadcrumb{font-size:14px !important;margin-bottom:24px !important;}
  .ocs-plan{font-size:18px !important;}
  .ocs-claim-main h3{font-size:20px !important;line-height:1.3 !important;margin-bottom:26px !important;}
  .ocs-field label{font-size:16px !important;}
  .ocs-readonly,.ocs-field input,.ocs-field select{height:58px !important;font-size:16px !important;}
  .ocs-mobile select{width:110px !important;min-width:110px !important;flex-basis:110px !important;}
  .ocs-policy-error-box{min-height:290px !important;padding:28px 20px !important;}
  .ocs-policy-error-icon{width:54px !important;height:54px !important;font-size:40px !important;}
  .ocs-policy-error-box h3{font-size:20px !important;}
  .ocs-policy-error-box p{font-size:15px !important;}
  .ocs-policy-error-break{display:none !important;}
}


/* v2.3.6: Force the Page 3 mobile document to grow naturally inside Elementor/WordPress wrappers. */
@media (max-width:900px){
  html,body{height:auto !important;min-height:100% !important;overflow-x:hidden !important;overflow-y:auto !important;}
  .ocs-portal{height:auto !important;min-height:100vh !important;max-height:none !important;overflow:visible !important;}
  .ocs-claim-shell{height:auto !important;min-height:100vh !important;max-height:none !important;overflow:visible !important;}
  .ocs-claim-main{height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;padding-bottom:60px !important;}
  .ocs-fields{height:auto !important;max-height:none !important;overflow:visible !important;}
  .ocs-field{height:auto !important;max-height:none !important;overflow:visible !important;}
  .ocs-actions{height:auto !important;max-height:none !important;overflow:visible !important;}
}

/* v2.3.6: Keep the verification error modal above Elementor/theme layers. */
.ocs-portal .ocs-policy-error-modal{position:fixed !important;z-index:2147483647 !important;}
.ocs-portal .ocs-policy-error-modal .ocs-policy-error-box{position:relative !important;z-index:2147483648 !important;}


/* v2.3.7: Reliable Policy/DOB error popup. */
.ocs-portal .ocs-policy-error-modal{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  min-height:100vh !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:20px !important;
  margin:0 !important;
  background:rgba(0,0,0,.62) !important;
  z-index:2147483647 !important;
  box-sizing:border-box !important;
}
.ocs-portal .ocs-policy-error-box{
  box-sizing:border-box !important;
  width:min(550px,92vw) !important;
  min-height:315px !important;
  max-height:90vh !important;
  overflow:auto !important;
  background:#fff !important;
  border:1px solid #ddd !important;
  border-radius:16px !important;
  box-shadow:0 18px 55px rgba(0,0,0,.30) !important;
  padding:34px 28px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.ocs-portal .ocs-policy-error-icon{
  width:56px !important;height:56px !important;min-width:56px !important;
  border-radius:50% !important;background:#ef1111 !important;color:#fff !important;
  display:flex !important;align-items:center !important;justify-content:center !important;
  font-family:Arial,Helvetica,sans-serif !important;font-size:43px !important;
  font-weight:400 !important;line-height:1 !important;margin:0 0 20px !important;
}
.ocs-portal .ocs-policy-error-box h3{margin:0 0 10px !important;color:#111 !important;font-size:21px !important;font-weight:800 !important;}
.ocs-portal .ocs-policy-error-box p{margin:0 !important;color:#929292 !important;font-size:16px !important;line-height:1.45 !important;font-weight:400 !important;}
.ocs-portal .ocs-policy-error-close{margin-top:22px !important;min-width:136px !important;height:49px !important;padding:0 25px !important;border:0 !important;border-radius:9px !important;background:#ef1111 !important;color:#fff !important;font-size:14px !important;font-weight:800 !important;cursor:pointer !important;}
@media(max-width:480px){
 .ocs-portal .ocs-policy-error-modal{padding:16px !important;}
 .ocs-portal .ocs-policy-error-box{width:92vw !important;min-height:290px !important;padding:28px 20px !important;border-radius:14px !important;}
 .ocs-portal .ocs-policy-error-icon{width:54px !important;height:54px !important;min-width:54px !important;font-size:40px !important;}
 .ocs-portal .ocs-policy-error-box h3{font-size:20px !important;}
 .ocs-portal .ocs-policy-error-box p{font-size:15px !important;}
 .ocs-portal .ocs-policy-error-break{display:none !important;}
}
