.ibco-semca { --ink:#102630; --navy:#063749; --blue:#075675; --cyan:#00a8c6; --gold:#f5c542; max-width:760px; margin:1.4rem auto; border:1px solid #dce6ec; background:#fff; color:var(--ink); font:16px/1.55 Arial,Helvetica,sans-serif; }
.ibco-semca *, .ibco-semca *::before, .ibco-semca *::after { box-sizing:border-box; }
.ibco-semca-brand { padding:clamp(16px,4vw,30px); background:#fff; }
.ibco-semca-brand img { display:block; width:min(100%,490px); height:auto; margin:auto; }
.ibco-semca-hero { padding:clamp(20px,5vw,40px); border-top:5px solid var(--cyan); background:var(--navy); color:#fff; }
.ibco-semca-hero h2 { margin:0 0 12px; color:#fff; font:700 clamp(26px,5vw,42px)/1.14 Arial,Helvetica,sans-serif; }
.ibco-semca-hero p { max-width:55ch; margin:0; color:#e4f1f7; }
.ibco-semca-hero .ibco-semca-kicker { margin:0 0 12px; font-size:.78rem; letter-spacing:.08em; font-weight:700; color:var(--gold); }
.ibco-semca-body { padding:clamp(20px,5vw,40px); }
.ibco-semca-body p { margin:0 0 1rem; }
.ibco-semca-notice { padding:14px 16px; border-left:4px solid var(--gold); background:#fff7e2; }
.ibco-semca-success { background:#eaf5f8; border-color:var(--blue); }
.ibco-semca-notice p { margin:5px 0 0; }
.ibco-semca-form { position:relative; }
.ibco-semca-form label { display:block; margin:1rem 0 .3rem; color:var(--ink); font-weight:700; }
.ibco-semca-form label span, .ibco-semca-form small { color:#495f6c; font-weight:400; font-size:.87rem; }
.ibco-semca-form input, .ibco-semca-form select { display:block; width:100%; min-height:44px; padding:9px 11px; border:1px solid #8ca4b4; border-radius:4px; background:#fff; color:var(--ink); font:inherit; }
.ibco-semca-form small { display:block; margin-top:4px; }
.ibco-semca-form :focus-visible { outline:3px solid var(--blue); outline-offset:3px; }
.ibco-semca-form .ibco-semca-purpose { margin:1.2rem 0; color:#405865; font-size:.9rem; }
.ibco-semca-form a { color:var(--blue); text-decoration:underline; }
.ibco-semca-form button { padding:12px 20px; min-height:44px; border:0; border-radius:4px; background:var(--gold); color:var(--ink); font:700 1rem/1.4 Arial,Helvetica,sans-serif; cursor:pointer; }
.ibco-semca-form button:disabled { opacity:.55; cursor:not-allowed; }
.ibco-semca-trap { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
