/* International Expert Witness Access Portal v1.1.0 */
.iew-access,
.iew-access *{box-sizing:border-box}

.iew-access{
    width:100%;
    max-width:1000px;
    margin:clamp(20px,5vw,56px) auto;
    padding:0 clamp(12px,3vw,24px);
    font-family:inherit;
    color:#17243b;
    overflow-x:clip;
}

.iew-access-card{
    width:100%;
    min-width:0;
    background:#fff;
    border:1px solid #dde5ef;
    border-radius:clamp(14px,2vw,22px);
    box-shadow:0 18px 55px rgba(20,45,78,.10);
    padding:clamp(20px,4vw,42px);
    overflow:hidden;
}

.iew-access-brand{margin:0 0 clamp(22px,4vw,32px)}
.iew-access-brand span{
    display:block;
    margin:0 0 8px;
    color:#3569a8;
    font-size:clamp(11px,1.3vw,12px);
    font-weight:700;
    letter-spacing:.12em;
    line-height:1.5;
    text-transform:uppercase;
}
.iew-access-brand h1{
    margin:0 0 10px;
    color:#102b4e;
    font-size:clamp(27px,5vw,38px);
    line-height:1.12;
    overflow-wrap:anywhere;
}
.iew-access-brand p{
    max-width:760px;
    margin:0;
    color:#5d6c80;
    font-size:clamp(15px,2vw,17px);
    line-height:1.65;
}

.iew-access-form{
    display:grid;
    min-width:0;
    gap:18px;
    margin:0;
}
.iew-access-form label{
    display:grid;
    min-width:0;
    gap:7px;
    margin:0;
    color:#213752;
    font-weight:650;
    line-height:1.45;
}
.iew-access-form input:not([type="checkbox"]):not([type="radio"]),
.iew-access-form textarea,
.iew-access-form select{
    display:block;
    width:100%;
    max-width:100%;
    min-width:0;
    min-height:48px;
    margin:0;
    padding:12px 14px;
    border:1px solid #cbd7e5;
    border-radius:10px;
    background:#fff;
    color:#17243b;
    font:inherit;
    line-height:1.4;
    appearance:auto;
}
.iew-access-form textarea{min-height:130px;resize:vertical}
.iew-access-form input:focus,
.iew-access-form textarea:focus,
.iew-access-form select:focus{
    outline:3px solid rgba(47,105,168,.16);
    outline-offset:1px;
    border-color:#2f69a8;
}
.iew-access-form small{
    color:#65758a;
    font-size:13px;
    font-weight:400;
    line-height:1.5;
}

.iew-access-form button,
.iew-access-button{
    display:inline-flex;
    width:auto;
    max-width:100%;
    min-height:48px;
    justify-content:center;
    align-items:center;
    padding:13px 20px;
    border:0;
    border-radius:10px;
    background:#153f70;
    color:#fff!important;
    font:inherit;
    font-weight:750;
    line-height:1.35;
    text-align:center;
    text-decoration:none!important;
    white-space:normal;
    cursor:pointer;
}
.iew-access-form button:hover,
.iew-access-button:hover{background:#0f3158;color:#fff!important}
.iew-access-form button:focus-visible,
.iew-access-button:focus-visible,
.iew-access a:focus-visible{outline:3px solid rgba(47,105,168,.28);outline-offset:3px}

.iew-access-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    min-width:0;
}

.iew-access-check{
    display:flex!important;
    width:100%;
    min-width:0;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding:14px 15px;
    border:1px solid #d8e1ec;
    border-radius:10px;
    background:#fbfdff;
    cursor:pointer;
}
.iew-access-check span{
    flex:1 1 auto;
    min-width:0;
    font-weight:500;
    overflow-wrap:anywhere;
}
.iew-access-check input[type="checkbox"],
.iew-access-check input[type="radio"]{
    order:2;
    flex:0 0 20px;
    width:20px!important;
    height:20px!important;
    min-width:20px;
    margin:1px 0 0!important;
    padding:0!important;
    accent-color:#153f70;
}

.iew-access-links{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    gap:12px 20px;
    margin-top:22px;
}
.iew-access-links a,
.iew-access-centre a{color:#245f9f;text-underline-offset:3px}
.iew-access-centre{text-align:center;margin:22px 0 0;overflow-wrap:anywhere}

.iew-access-choices{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    min-width:0;
}
.iew-access-choice{
    display:flex;
    min-width:0;
    min-height:200px;
    flex-direction:column;
    gap:11px;
    padding:22px;
    border:1px solid #d8e2ee;
    border-radius:14px;
    background:#fbfdff;
    color:#1a2f49!important;
    text-decoration:none!important;
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.iew-access-choice:hover{
    transform:translateY(-3px);
    border-color:#6b97c6;
    box-shadow:0 12px 28px rgba(26,67,110,.10);
}
.iew-access-choice strong{color:#123d6b;font-size:19px;line-height:1.3;overflow-wrap:anywhere}
.iew-access-choice span{flex:1;color:#607086;line-height:1.55;overflow-wrap:anywhere}
.iew-access-choice b{color:#245f9f}

.iew-access-notice{
    width:100%;
    margin:0 0 20px;
    padding:13px 15px;
    border-radius:10px;
    line-height:1.55;
    overflow-wrap:anywhere;
}
.iew-access-success{border:1px solid #b9e0c6;background:#edf9f1;color:#205e35}
.iew-access-error,.iew-access-warning{border:1px solid #efc2c2;background:#fff1f1;color:#842828}
.iew-access-info{border:1px solid #bdd8f4;background:#eef6ff;color:#24547e}

.iew-account-summary{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    min-width:0;
    margin:0 0 26px;
}
.iew-account-summary div{
    min-width:0;
    padding:16px;
    border:1px solid #e4ebf3;
    border-radius:12px;
    background:#f4f8fc;
}
.iew-account-summary span{
    display:block;
    margin-bottom:6px;
    color:#68788c;
    font-size:12px;
    letter-spacing:.06em;
    line-height:1.4;
    text-transform:uppercase;
}
.iew-account-summary strong{
    display:block;
    color:#17324f;
    line-height:1.45;
    overflow-wrap:anywhere;
    word-break:break-word;
}

.iew-account-sections{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    min-width:0;
}
.iew-account-panel{
    min-width:0;
    padding:clamp(18px,3vw,26px);
    border:1px solid #e0e8f1;
    border-radius:14px;
    background:#fbfdff;
}
.iew-account-panel h2{margin:0 0 17px!important}

.iew-access h2{
    margin:30px 0 15px;
    color:#153f70;
    font-size:clamp(20px,3vw,24px);
    line-height:1.25;
}

/* Keep registration forms supplied by the Expert Hub and Client Gateway responsive. */
.iew-access-embedded{width:100%;min-width:0;overflow:hidden}
.iew-access-embedded form,
.iew-access-embedded fieldset,
.iew-access-embedded table,
.iew-access-embedded .form-table,
.iew-access-embedded [class*="grid"],
.iew-access-embedded [class*="row"]{max-width:100%;min-width:0}
.iew-access-embedded input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.iew-access-embedded textarea,
.iew-access-embedded select{max-width:100%;min-width:0}
.iew-access-embedded img{max-width:100%;height:auto}
.iew-access-embedded table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}

@media (max-width:900px){
    .iew-access-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
    .iew-access-choice:last-child{grid-column:1/-1;min-height:auto}
    .iew-account-sections{grid-template-columns:1fr}
}

@media (max-width:700px){
    .iew-access{margin:20px auto;padding:0 10px}
    .iew-access-card{padding:20px 16px;border-radius:14px}
    .iew-access-grid,
    .iew-access-choices,
    .iew-account-summary{grid-template-columns:1fr}
    .iew-access-choice,
    .iew-access-choice:last-child{grid-column:auto;min-height:auto;padding:18px}
    .iew-access-links{flex-direction:column;align-items:stretch;text-align:center}
    .iew-access-links a{display:block;padding:4px}
    .iew-access-form button,
    .iew-access-button{width:100%}
    .iew-account-summary{gap:10px}
    .iew-account-summary div{padding:14px}
}

@media (max-width:420px){
    .iew-access{padding:0 8px}
    .iew-access-card{padding:18px 13px}
    .iew-access-brand h1{font-size:26px}
    .iew-access-check{gap:12px;padding:13px}
    .iew-account-panel{padding:16px 13px}
    .iew-access-form{gap:15px}
}

@media (prefers-reduced-motion:reduce){
    .iew-access-choice{transition:none}
    .iew-access-choice:hover{transform:none}
}

/* Two-option registration gateway */
.iew-account-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.iew-account-actions .iew-access-button{width:auto;margin:0}
@media (max-width:680px){.iew-account-actions{display:grid}.iew-account-actions .iew-access-button{width:100%}}

.iew-access-choices-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 680px) { .iew-access-choices-two { grid-template-columns: 1fr; } }
