:root{
  --bg:var(--ctg-public-surface-dark);--bg2:#272a30;--surface:#2b2e34;--line:rgba(255,255,255,.10);
  --text:var(--ctg-public-heading-dark);--muted:var(--ctg-public-body-dark);--muted2:#7e8794;--accent:var(--ctg-public-eyebrow-primary);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body.audit-page{min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--ctg-public-font-body)}
body.audit-page::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#000,transparent 88%)}
body.audit-page::after{content:"";position:fixed;width:60vw;height:60vw;right:-24vw;top:-27vw;border-radius:50%;background:radial-gradient(circle,rgba(184,198,255,.08),transparent 66%);filter:blur(12px);pointer-events:none}
.audit-shell{position:relative;z-index:1;width:min(calc(100% - (2 * var(--ctg-public-gutter))),1240px);margin:0 auto;padding:36px 0 72px}
.audit-brand{height:60px;display:flex;align-items:flex-start;border-bottom:1px solid var(--line)}
.audit-brand img{width:176px;height:auto;filter:invert(1) grayscale(1) brightness(1.08)}
.audit-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(480px,1.08fr);gap:clamp(64px,8vw,120px);align-items:start;padding:86px 0 40px}
.audit-intro{position:sticky;top:42px;padding-top:8px}
.audit-eyebrow{color:var(--ctg-public-eyebrow-primary);font-family:var(--ctg-public-font-body);font-size:var(--ctg-public-type-eyebrow);line-height:1.4;font-weight:750;letter-spacing:.14em;text-transform:uppercase}
.audit-intro h1,.audit-confirmation h1{margin:20px 0 0;color:var(--ctg-public-heading-dark);font-family:var(--ctg-public-font-heading);font-size:var(--ctg-public-type-h1);line-height:1.1;letter-spacing:-.06em;font-weight:520;text-wrap:balance}
.audit-intro>p{max-width:570px;margin:28px 0 0;color:var(--ctg-public-body-dark);font:400 var(--ctg-public-type-body)/1.7 var(--ctg-public-font-body);text-wrap:pretty}
.audit-intro-rule{width:92px;height:1px;margin:38px 0 0;background:linear-gradient(90deg,var(--accent),transparent)}
.audit-intro .audit-intro-note{max-width:510px;margin-top:22px;color:var(--ctg-public-body-dark);font:400 var(--ctg-public-type-body)/1.7 var(--ctg-public-font-body)}
.audit-form-wrap{position:relative;min-width:0}
.audit-form{padding:32px;border-width:1px;border-style:solid;border-radius:22px}
.audit-form:not(.ctg-public-form-panel){border-color:rgba(255,255,255,.12);background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));box-shadow:0 30px 90px rgba(0,0,0,.18)}
.audit-form.ctg-public-form{--ctg-form-control-font:var(--ctg-public-font-body);--ctg-form-control-font-weight:500;--ctg-form-label-inline:15px;--ctg-form-error-color:#ffd2d2}
.audit-fields.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.audit-field{min-width:0;margin-bottom:18px}
.audit-form:not(.ctg-public-form) .audit-field label{display:flex;justify-content:space-between;gap:12px;margin:0 0 9px;color:#e0e3e8;font-size:14px;font-weight:650}
.audit-form:not(.ctg-public-form) .audit-field label span{color:var(--muted2);font-size:12px;font-weight:500}
.audit-field input,.audit-field select,.audit-field textarea{width:100%;max-width:100%;border:var(--ctg-form-control-border,1px solid rgba(255,255,255,.14));border-radius:10px;background-color:var(--ctg-form-control-bg,#25282e);color:var(--ctg-form-control-color,#f7f7f5);font:500 16px/1.4 var(--ctg-public-font-body);outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.audit-field input,.audit-field select{height:54px;padding:14px 15px 0}
.audit-field select{padding-right:44px}
.audit-field textarea{min-height:122px;padding:28px 15px 10px;resize:vertical}
.audit-field input::placeholder,.audit-field textarea::placeholder{color:var(--ctg-form-placeholder-color,#737b87)}
.audit-form:not(.ctg-public-form) .audit-field input:focus,.audit-form:not(.ctg-public-form) .audit-field select:focus,.audit-form:not(.ctg-public-form) .audit-field textarea:focus{border-color:rgba(184,198,255,.62);background:#282b32;box-shadow:0 0 0 3px rgba(184,198,255,.07)}
.audit-field .ctg-form-field__error{margin-top:7px;font-size:12px}
.audit-submit{width:100%;justify-content:center;margin-top:6px}
.audit-assurance{margin-top:16px;color:#858e9b;font-size:12px;line-height:1.5;font-weight:650;letter-spacing:.012em}
.audit-privacy{margin:11px 0 0;color:#707986;font-size:12px;line-height:1.6}
.audit-error{margin-bottom:16px;padding:13px 15px;border:1px solid rgba(255,133,133,.28);border-radius:10px;background:rgba(105,36,43,.28);color:#ffd2d2;font-size:14px;line-height:1.5}
.audit-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.audit-confirmation{width:min(100%,820px);margin:0 auto;padding:clamp(90px,12vw,150px) 0 60px;text-align:center}
.audit-confirmation>p{max-width:680px;margin:28px auto 0;color:var(--ctg-public-body-dark);font:400 var(--ctg-public-type-body)/1.7 var(--ctg-public-font-body)}
.audit-next{display:grid;grid-template-columns:42px 1fr;gap:0 18px;width:min(100%,620px);margin:50px auto 0;text-align:left;border-top:1px solid var(--line)}
.audit-next span,.audit-next p{padding:17px 0;border-bottom:1px solid var(--line)}
.audit-next span{color:var(--accent);font-size:12px;letter-spacing:.12em;font-weight:750}
.audit-next p{margin:0;color:#c8cdd4;font-size:15px;line-height:1.55}
.audit-confirmation .audit-assurance{text-align:center;margin-top:28px}
@media(max-width:900px){.audit-layout{grid-template-columns:1fr;gap:46px;padding-top:62px}.audit-intro{position:relative;top:auto}.audit-intro h1{max-width:760px}.audit-intro>p{max-width:690px}.audit-form-wrap{max-width:720px}}
@media(max-width:620px){.audit-shell{padding-top:24px}.audit-brand{height:52px}.audit-brand img{width:158px}.audit-layout{padding-top:44px}.audit-intro>p{margin-top:22px}.audit-form{padding:22px 18px;border-radius:18px}.audit-fields.two-col{grid-template-columns:1fr;gap:0}.audit-submit{width:100%;max-width:none}.audit-assurance{font-size:11px}.audit-confirmation{padding-top:70px}}

@media(max-width:767px){
  .contact-page .audit-shell{padding-block:0;}
  .contact-page .audit-layout,
  .contact-page .audit-confirmation{padding-block:var(--ctg-public-section-block);}
}
@media(max-width:420px){.audit-submit.ctg-cta{min-height:56px;padding-inline:16px;font-size:14px;letter-spacing:.025em}.audit-submit .ctg-cta__label{min-width:0}.audit-assurance,.audit-privacy{overflow-wrap:anywhere}}

/* Lead System V2 usability */
.audit-field input[data-valid="true"]{
  border-color:rgba(184,198,255,.28);
}
.audit-field input[type="tel"]{
  font-variant-numeric:tabular-nums;
}
