.page-view[hidden]{display:none!important}
body[data-page="portal"] main{padding-top:0!important}
#client-portal-frame{display:block;width:100%;height:calc(100svh - 88px);border:0;background:#091323}
.page-view:focus{outline:none}
@media(max-width:760px){#client-portal-frame{height:calc(100svh - 76px)}}
.page-view h1{text-wrap:balance}
#navigation [data-page-link="contact"]{display:none}
@media(max-width:760px){#navigation [data-page-link="contact"]{display:block}}
body[data-page]:not([data-page="home"]) main{min-height:calc(100svh - 215px);padding-top:88px}
body[data-page]:not([data-page="home"]) .page-view>.section:first-child{padding-top:78px}
.page-view .section-heading h1,.page-intro h1,.contact-page h1{font-size:clamp(32px,4.4vw,62px);font-weight:500;line-height:1.28;letter-spacing:-1.5px;max-width:900px;margin:18px 0 24px}
.page-view h1:focus{outline:none}
.page-intro{padding-bottom:48px}.page-intro>p{max-width:760px;color:#bfcee5;font-size:18px;line-height:1.9}.company-name{display:block;color:#a9a2ed;margin-top:28px;font-size:13px;letter-spacing:.5px}
body[data-page="about"] .approach{padding-top:42px}
.home-directory{background:#091323c9}.home-directory h2{font-size:clamp(28px,3vw,42px);font-weight:500;margin:20px 0 32px}
.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.directory-grid a{display:flex;justify-content:space-between;align-items:center;padding:32px 26px;background:#102039;border:1px solid #354662;font-size:23px;color:#e4e9f5;transition:border-color .2s,transform .2s}.directory-grid a:hover{border-color:#b6afff;transform:translateY(-4px)}.directory-grid b{color:#c0baff;font-weight:400}
.contact-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:65px;align-items:start}.contact-copy>p,.contact-form>p{color:#afc0da;line-height:1.9}.contact-email{display:block;margin:34px 0;color:#d2baff;font-size:clamp(18px,2.4vw,30px);overflow-wrap:anywhere}.contact-form{padding:32px;background:#0d1b31f5;border:1px solid #405578}.contact-form h2{font-weight:500;font-size:26px;margin:0 0 12px}.contact-form form{margin-top:26px}.contact-form label{display:block;margin-bottom:20px}.contact-form input,.contact-form select,.contact-form textarea{max-width:100%;width:100%}.contact-form small{display:block;margin-top:20px;line-height:1.7}
.contact-form input{background:#0c192d;color:#dce5f5;border:1px solid #415879;border-radius:3px;padding:11px 12px;min-width:0}
.contact-form input:focus-visible{outline:2px solid #b8aaff;outline-offset:3px}
/* Keep browser-saved contact details in the site's dark palette. */
.contact-form input{color-scheme:dark;caret-color:#d1c5ff}
.contact-form input:autofill{background:#0c192d;color:#dce5f5;box-shadow:inset 0 0 0 1000px #0c192d}
.contact-form input:-webkit-autofill,.contact-form input:-webkit-autofill:hover,.contact-form input:-webkit-autofill:focus,.contact-form input:-webkit-autofill:active{-webkit-text-fill-color:#dce5f5;-webkit-box-shadow:inset 0 0 0 1000px #0c192d;box-shadow:inset 0 0 0 1000px #0c192d;caret-color:#d1c5ff}
.contact-form textarea{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default;cursor:text;caret-color:#d1c5ff}
.contact-form textarea::selection{background:#665b9b;color:#fff}
.enquiry-upload{min-width:0;padding:14px;border:1px dashed #465777;border-radius:6px}
.enquiry-upload h3{font:inherit;font-size:14px;font-weight:500;color:#bdcbe0;margin:0 0 10px}
.enquiry-file-choose{background:#192842;color:#d8d0ff;border:1px solid #6b648f;border-radius:4px;padding:8px 14px;font-size:13px}
.enquiry-file-choose:hover{border-color:#c3b5ff}
.enquiry-file-help,.enquiry-file-pending,.enquiry-file-error{font-size:12px;line-height:1.7;margin:10px 0 0;color:#a7b8d1}
.enquiry-file-error{color:#f3b8c8;overflow-wrap:anywhere}.enquiry-file-error:empty{display:none}
.enquiry-file-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.enquiry-file-list:not(:empty){margin-top:10px}
.enquiry-file-list li{display:flex;align-items:center;gap:9px;min-width:0;padding:6px 8px;background:#17253e;border-radius:4px;font-size:12px}
.enquiry-file-list bdi{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dce3f2}
.enquiry-file-list li>span{font-size:11px;color:#9eafc9;white-space:nowrap}
.enquiry-file-list button{flex-shrink:0;min-width:30px;min-height:30px;background:transparent;border:1px solid transparent;color:#d0c2f2;border-radius:4px;font-size:20px;line-height:1}
.enquiry-file-list button:hover{border-color:#9e8bce}
.enquiry-file-list li.has-error{flex-wrap:wrap;border:1px solid #786493;background:#19213a}
.enquiry-file-inline-error{display:flex;align-items:flex-start;gap:7px;flex:0 0 100%;margin:2px 0 3px;padding-top:8px;border-top:1px solid #625781;color:#dfd4ff;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.enquiry-file-inline-error>span:last-child{flex:1;min-width:0}
@media(pointer:coarse){.enquiry-file-list button{min-width:44px;min-height:44px}}
.enquiry-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.contact-form button:disabled{opacity:.65;cursor:wait;transform:none}
.contact-form .form-status{color:#d1c5ff;overflow-wrap:anywhere}
.contact-form .form-status[data-state="error"]{color:#f3b8c8}
#enquiry-success{width:min(380px,calc(100% - 32px));padding:32px 28px 26px;border:1px solid #6b6598;border-radius:18px;background:#0e1c32;color:#e4eafa;text-align:center;box-shadow:0 24px 90px #02081599}
#enquiry-success::backdrop{background:#040b18b3;backdrop-filter:none}
.enquiry-success-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 16px;border:1px solid #9282cd;border-radius:50%;background:#262b4c;color:#d2c4ff}
.enquiry-success-icon svg{width:28px;height:28px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#enquiry-success h2{margin:0 0 12px;font-size:22px;line-height:1.5;font-weight:500;letter-spacing:0}
#enquiry-success p{margin:0;color:#b8c5dc;font-size:14px;line-height:1.8}
.enquiry-success-reference{display:block;margin:15px 0 24px;padding:10px 8px;border:1px solid #3e4a6b;border-radius:7px;background:#0a1527;color:#d8cfff;font-size:14px;letter-spacing:.7px;overflow-wrap:anywhere;user-select:text}
.enquiry-success-done{width:100%;min-height:42px;padding:9px 18px;border:1px solid #b5a7ff;border-radius:22px;background:#b5a7ff;color:#111d35;font-size:14px;font-weight:500}
.enquiry-success-done:hover{background:#c9bfff;border-color:#c9bfff}
.enquiry-success-done:focus-visible{outline:2px solid #d9cfff;outline-offset:4px}
.contact-form .enquiry-field-error{display:flex;align-items:flex-start;gap:7px;margin-top:8px;padding:8px 10px;border:1px solid #625781;border-radius:5px;background:#19213a;color:#dfd4ff;font-size:12px;line-height:1.6;font-weight:400;overflow-wrap:anywhere}
.contact-form .enquiry-field-error[hidden]{display:none}
.enquiry-error-icon{display:inline-grid;place-items:center;flex:0 0 15px;width:15px;height:15px;margin-top:2px;border:1px solid #bba6f2;border-radius:50%;color:#d6c5ff;font-size:10px;font-weight:600;line-height:1}
.contact-form input[aria-invalid="true"],.contact-form textarea[aria-invalid="true"]{border-color:#a58bdd;background:#111c32;box-shadow:0 0 0 1px #a58bdd26}
.contact-form input,.contact-form textarea{scroll-margin-top:120px}
@media(max-width:1000px){.enquiry-identity{grid-template-columns:1fr;gap:0}}
.header a.contact-button{display:inline-flex;align-items:center;gap:24px;text-decoration:none}.header a.contact-button[aria-current="page"]{border-color:#c0baff;color:#d4cfff}
body[data-page] .solution-tabs{flex-wrap:wrap;gap:16px 32px}
@media(max-width:760px){body[data-page]:not([data-page="home"]) main{padding-top:76px}body[data-page]:not([data-page="home"]) .page-view>.section:first-child{padding-top:44px}.page-view .section-heading h1,.page-intro h1,.contact-page h1{font-size:34px;letter-spacing:-.5px}.contact-page{grid-template-columns:1fr;gap:25px}.contact-form{padding:23px}.directory-grid{grid-template-columns:1fr}.directory-grid a{font-size:22px;padding:26px}.page-intro>p{font-size:16px}.header a.contact-button{display:none}}
@media(prefers-reduced-motion:reduce){.directory-grid a{transition:none}}
