.ila{--ila-blue:var(--gcid-primary-color,#1e3c8f);--ila-ink:#24313a;--ila-line:#ccd4e6;--ila-muted:#536071;display:grid;grid-template-columns:minmax(0,1fr);max-width:1180px;margin:32px auto;border:2px solid var(--ila-blue);border-radius:56px 0 56px 0;background:#fff;color:var(--ila-ink);font:400 17px/1.65 Inter,system-ui,sans-serif;overflow:hidden;text-align:left}
.ila *{box-sizing:border-box}
.ila [hidden]{display:none!important}
.ila a{color:var(--ila-blue);text-decoration:underline;text-underline-offset:3px}
.ila p{padding:0;margin:0 0 22px}
.ila .ila-eyebrow{font-size:11px;font-weight:700;letter-spacing:1.6px;color:var(--ila-blue);margin-bottom:14px}
.ila h2,.ila h3{font-family:Lora,Georgia,serif;color:var(--ila-blue);font-weight:600;letter-spacing:-.9px;line-height:1.2;padding:0;margin:0 0 24px}
.ila h2{font-size:clamp(28px,3vw,38px)}
.ila h3{font-size:clamp(30px,3.2vw,44px)}
.ila .ila-main{min-width:0;padding:48px 60px}
.ila .ila-progress{margin-bottom:40px;color:var(--ila-muted);font-size:12px}
.ila .ila-progress>div{display:flex;justify-content:space-between;gap:16px;margin-bottom:10px}
.ila progress{appearance:none;width:100%;height:4px;border:0;border-radius:3px;overflow:hidden;background:#e9edf6;display:block}
.ila progress::-webkit-progress-bar{background:#e9edf6}
.ila progress::-webkit-progress-value{background:var(--ila-blue);transition:width .25s}
.ila progress::-moz-progress-bar{background:var(--ila-blue)}
.ila small{font-size:12px;font-weight:400;color:var(--ila-muted)}
.ila form{margin:0}
.ila .ila-hint{font-size:13px;color:var(--ila-muted);line-height:1.6;margin:8px 0 12px}
.ila .ila-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:32px 0 24px}
.ila .ila-choice-card{display:block;min-width:0;position:relative;cursor:pointer}
.ila .ila-choice-card>input{position:absolute;top:30px;left:22px;accent-color:var(--ila-blue);width:18px;height:18px;margin:0}
.ila .ila-choice-card>span{display:block;height:100%;padding:24px 42px 26px 58px;border:1px solid var(--ila-line);border-radius:24px 0 24px 0;transition:background .15s,border-color .15s}
.ila .ila-choice-card strong{display:block;font:600 22px/1.3 Lora,Georgia,serif;hyphens:auto;overflow-wrap:anywhere;color:var(--ila-blue);margin-bottom:10px}
.ila .ila-choice-card small{display:block;font-size:14px;line-height:1.6}
.ila .ila-choice-card b{position:absolute;right:20px;top:24px;font-weight:400;color:var(--ila-blue)}
.ila .ila-choice-card>input:checked+span{background:#f2f5fc;border-color:var(--ila-blue);box-shadow:inset 0 0 0 1px var(--ila-blue)}
.ila .ila-choice-card:has(input:focus-visible){outline:3px solid #1e3c8f88;outline-offset:3px;border-radius:24px 8px 24px 8px}
.ila .ila-field{margin:0 0 22px;min-width:0}
.ila .ila-field label,.ila .ila-upload>label{display:block;font-weight:600;font-size:15px;margin-bottom:9px}
.ila .ila-field input,.ila .ila-field textarea{display:block;width:100%;max-width:100%;border:1px solid var(--ila-line);border-radius:9px;background:#fff;color:var(--ila-ink);padding:12px 14px;min-height:48px;font:inherit;font-size:16px;box-shadow:none}
.ila .ila-field textarea{resize:vertical;min-height:110px}
.ila .ila-field input:hover,.ila .ila-field textarea:hover{border-color:var(--ila-blue)}
.ila input:focus-visible,.ila textarea:focus-visible,.ila button:focus-visible,.ila a:focus-visible{outline:3px solid #1e3c8f88;outline-offset:3px}
.ila .ila-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.ila .ila-grid>.ila-field{display:flex;flex-direction:column}
.ila .ila-grid>.ila-field>label{min-height:3.2em}
.ila .ila-field>.ila-hint{margin:8px 0 0}
.ila .ila-error:empty{margin-top:0}
@supports(grid-template-rows:subgrid){
  .ila .ila-grid>.ila-field{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;align-content:start}
  .ila .ila-grid>.ila-field>label{grid-row:1;min-height:0;align-self:start}
  .ila .ila-grid>.ila-field>input{grid-row:2;align-self:start}
  .ila .ila-grid>.ila-field>.ila-hint{grid-row:3;align-self:start}
  .ila .ila-grid>.ila-field>.ila-error{grid-row:4;align-self:start}
}
.ila fieldset{padding:0;border:0;margin:22px 0;min-width:0}
.ila legend{font-weight:600;font-size:15px;margin-bottom:12px;padding:0;width:100%}
.ila .ila-option{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.6;padding:12px 13px;border:1px solid var(--ila-line);border-radius:9px;margin:0 0 9px;cursor:pointer}
.ila .ila-option:has(input:checked){border-color:var(--ila-blue);background:#f2f5fc}
.ila .ila-option input{flex-shrink:0;width:18px;height:18px;accent-color:var(--ila-blue);margin:2px 0 0}
.ila .ila-option:has(input:disabled){opacity:.65}
.ila .ila-scale{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0}
.ila .ila-scale label{position:relative;flex:1 0 36px;max-width:46px;cursor:pointer}
.ila .ila-scale input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.ila .ila-scale span{display:grid;place-items:center;min-height:43px;border-radius:8px;border:1px solid var(--ila-line);font-size:14px}
.ila .ila-scale input:checked+span{background:var(--ila-blue);color:#fff;border-color:var(--ila-blue)}
.ila .ila-scale input:focus-visible+span{outline:3px solid #1e3c8f88;outline-offset:2px}
.ila .ila-skip{border:0;background:none!important;padding-left:0}
.ila .ila-upload{border:1px dashed #9daed1;background:#f6f8fd;border-radius:18px;padding:20px;margin-bottom:24px}
.ila .ila-upload p{font-size:13px;margin-bottom:12px}
.ila .ila-upload input{font:inherit;font-size:12px;max-width:100%}
.ila .ila-upload>.ila-file-button{display:inline-flex;align-items:center;min-height:44px;padding:9px 18px;border:1px solid #9daed1;border-radius:999px;background:#fff;color:var(--ila-blue);cursor:pointer;font-size:14px;margin:0 0 8px}
.ila .ila-upload:has(.ila-file-input:focus-visible)>.ila-file-button{outline:3px solid #1e3c8f88;outline-offset:3px}
.ila input::file-selector-button{border:1px solid #9daed1;background:white;color:var(--ila-ink);padding:8px 12px;border-radius:999px;margin-right:10px;cursor:pointer}
.ila [data-file-list]{list-style:none;padding:0!important;margin:0!important}
.ila [data-file-list] li{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--ila-line);padding:10px 0;font-size:12px;overflow-wrap:anywhere}
.ila [data-file-list] button{font:inherit;color:var(--ila-blue);background:white;border:1px solid var(--ila-line);border-radius:999px;padding:5px 8px;cursor:pointer;flex-shrink:0}
.ila .ila-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:32px;border-top:1px solid #e4e9f3;padding-top:24px}
.ila button{font-family:inherit}
.ila .ila-next{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--ila-blue);color:white;border:1px solid var(--ila-blue);border-radius:999px;padding:15px 28px;font-size:16px;font-weight:650;text-decoration:none;cursor:pointer;min-height:54px;margin-left:auto}
.ila .ila-next:hover{background:#162e70}
.ila .ila-next:disabled{opacity:.55;cursor:wait}
.ila .ila-back{background:none;border:0;padding:12px 0;color:var(--ila-muted);font-size:14px;cursor:pointer;min-height:48px}
.ila .ila-review{margin:24px 0;overflow-wrap:anywhere}
.ila .ila-review dt{font-size:12px;color:var(--ila-muted);margin-top:16px}
.ila .ila-review dd{font-size:14px;white-space:pre-wrap;margin:4px 0 0;padding-bottom:12px;border-bottom:1px solid #e4e9f3}
.ila .ila-consent{margin:30px 0 22px}
.ila .ila-consent p{font-size:12px;margin:12px 0}
.ila .ila-error{display:block;color:#a32424;font-size:12px;line-height:1.5;margin-top:6px}
.ila [aria-invalid=true]{border-color:#a32424!important}
.ila .ila-summary-error,.ila .ila-notice{background:#fff6e9;border:1px solid #e2b77a;border-radius:9px;padding:16px;color:#6c4615;font-size:14px;margin-bottom:22px}
.ila .ila-send-status{font-size:12px;color:var(--ila-muted);margin:14px 0 0;min-height:20px}
.ila .ila-success{padding-top:30px}
.ila .ila-success-icon{display:grid;place-items:center;background:#edf2fc;color:var(--ila-blue);border-radius:50%;width:60px;height:60px;font-size:30px;margin-bottom:30px}
.ila .ila-success .ila-next{margin-top:20px}
.ila .ila-honey{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.ila .ila-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:850px){.ila{grid-template-columns:1fr;margin:16px auto;border-radius:40px 0 40px 0}
.ila .ila-choice{grid-template-columns:minmax(0,1fr)}
.ila h2{font-size:28px;margin-bottom:14px}
.ila .ila-main{padding:36px 32px}
.ila .ila-progress{margin-bottom:30px}}
@media(max-width:480px){.ila{border-radius:28px 8px 28px 8px;font-size:16px}
.ila .ila-main{padding:30px 20px}
.ila .ila-grid{grid-template-columns:1fr;gap:0}
.ila .ila-scale{gap:7px}
.ila .ila-scale label{flex-basis:40px}
.ila .ila-choice-card>span{padding-right:30px}
.ila .ila-actions{gap:12px}
.ila .ila-next{gap:16px;padding:14px 22px}
.ila .ila-upload{padding:16px}
.ila .ila-progress{font-size:11px}}
@media(prefers-reduced-motion:reduce){.ila *{transition:none!important;scroll-behavior:auto!important}}

.ila .ila-success { scroll-margin-top: 110px; }

/* Mobile choice cards: reserve a separate row for the radio and arrow so the
   title and description can use the full card width. These are plugin fields. */
@media (max-width:480px) {
  .ila .ila-main { padding-left:16px; padding-right:16px; }
  .ila .ila-choice-card>span { padding:54px 16px 20px; }
  .ila .ila-choice-card>input { top:19px; left:16px; }
  .ila .ila-choice-card b { top:14px; right:16px; }
  .ila .ila-choice-card strong { font-size:20px; overflow-wrap:normal; hyphens:none; }
  .ila .ila-choice-card small { overflow-wrap:normal; hyphens:auto; }
}
