/* The last section resolves the site's motion into a conversation. */
.contact-hub{--cf-accent:#c3c9ff;padding:112px clamp(24px,6.5vw,120px) 44px;background:radial-gradient(ellipse at 83% 41%,#6572b716,transparent 54%),#0a0d15;overflow:hidden;isolation:isolate}
.cf-topline{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:64px;border-top:1px solid #293142;padding-top:24px}
.cf-topline .eyebrow{margin:0;color:#a0a9be}
.cf-topline>span{font-size:11px;color:#6f7c94}
.cf-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:clamp(48px,6.5vw,116px);align-items:center}
.cf-copy{min-width:0}
.contact-hub .cf-copy h2{font-size:clamp(47px,5.45vw,87px);font-weight:400;line-height:1.035;letter-spacing:-.065em;margin:0 0 30px}
.cf-copy h2 span{color:var(--cf-accent)}
.cf-copy>p{font-size:16px;line-height:1.8;color:#a8b2c5;max-width:420px;margin:0}
.cf-copy>p.cf-aside{margin-top:27px;color:#78869e;font-size:12px;line-height:1.8}
.cf-panel{position:relative;border:1px solid #3a425c;border-radius:5px;min-width:0;width:100%;padding:0 28px 26px;background:linear-gradient(135deg,#1b2132d9,#101520 75%);box-shadow:0 24px 80px #0003}
.cf-panel:before{content:"";position:absolute;top:-1px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,#c3c9ff80,transparent);pointer-events:none}
.cf-panel-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2f374b;padding:20px 0;font:10px var(--mono);color:#94a2be;letter-spacing:-.025em;gap:16px}
.cf-indicator{width:5px;height:5px;background:var(--cf-accent);border-radius:50%;box-shadow:0 0 12px #c3c9ff55}
.cf-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:31px 0 24px}
.cf-panel-heading h3{margin:0;font-size:24px;font-weight:400;letter-spacing:-.04em}
.cf-bracket{font:34px var(--mono);color:#596580;font-weight:300}
.cf-intents{display:grid}
.cf-intent{position:relative;display:grid;grid-template-columns:20px 1fr 28px;gap:14px;align-items:center;text-align:left;padding:21px 0;min-width:0;min-height:92px;background:transparent;border:0;border-top:1px solid #2c354a;color:#dfe5f3;transition:background .22s,color .22s}
.cf-intent:last-child{border-bottom:1px solid #2c354a}
.cf-intent:before{content:"";position:absolute;inset:8px -12px;background:#a7b0ff0a;border-radius:3px;opacity:0;transition:opacity .2s;pointer-events:none}
.cf-intent:hover:before,.cf-intent:focus-visible:before{opacity:1}
.cf-intent-number{font:9px var(--mono);color:#67748c}
.cf-intent-copy{min-width:0;display:grid;gap:7px}
.cf-intent-copy strong{font-size:15px;font-weight:400;letter-spacing:-.025em}
.cf-intent-copy>span{font-size:10px;line-height:1.55;color:#8290a7}
.cf-intent-mark{display:flex;align-items:center;justify-content:center;width:27px;height:27px;border:1px solid #3e4861;border-radius:50%;font:19px var(--mono);color:#b8c3e6;transition:transform .25s,border-color .25s,background .25s}
.cf-intent:hover .cf-intent-mark,.cf-intent:focus-visible .cf-intent-mark{transform:scale(1.08);border-color:#a7b3e5;background:#a7b0ff12}
.cf-conversation-path{display:flex;align-items:center;gap:10px;margin:29px 0 20px;font:7px var(--mono);letter-spacing:.08em;color:#7e8ba4;white-space:nowrap}
.cf-conversation-path i{height:1px;flex:1;position:relative;background:#343f58;overflow:hidden}
.cf-conversation-path i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#d0d5ff,transparent);transform:translateX(-102%)}
.cf-entered .cf-conversation-path i:after{animation:cf-signal 1.4s cubic-bezier(.3,.1,.25,1) .12s both}
.cf-entered .cf-conversation-path i:nth-of-type(2):after{animation-delay:.78s}
@keyframes cf-signal{to{transform:translateX(102%)}}
.cf-local-note{margin:0;color:#7988a1;font-size:11px;line-height:1.75}
.cf-noscript{color:#b6c3dc;font-size:12px;line-height:1.6}
.cf-baseline{display:flex;gap:24px;align-items:center;margin-top:86px;color:#68768e;font-size:10px;line-height:1.6}
.cf-baseline>span:nth-child(2){margin-left:auto}
.cf-code-end{font:22px var(--mono);color:#9ca9d6;letter-spacing:-.15em;margin-left:16px}

/* A native dialog provides focus containment. Only its layer moves. */
.brief-flow{--bf-accent:#c3c9ff;--bf-muted:#8c99b0;position:fixed;padding:0;width:min(850px,calc(100% - 32px));max-width:850px;max-height:calc(100svh - 32px);max-height:calc(100dvh - 32px);margin:auto;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#414c68 #111623;border:1px solid #46516f;border-radius:6px;background:linear-gradient(135deg,#181e2e,#101521 70%);color:#edf1fa;box-shadow:0 34px 160px #0008;isolation:isolate}
.brief-flow:not([open]){display:none}
.brief-flow::backdrop{background:#050810da;animation:bf-backdrop-in .25s ease-out both}
@keyframes bf-backdrop-in{from{opacity:0}to{opacity:1}}
.brief-flow [hidden]{display:none!important}
.bf-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:9px 18px 9px 30px;border-bottom:1px solid #2d354b;background:#141b29;font:9px var(--mono);color:#8e9cba;letter-spacing:.12em}
.bf-close{display:flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;padding:0;border:1px solid transparent;border-radius:3px;color:#a6b1c8;background:transparent;transition:color .2s,border-color .2s,background .2s}
.bf-close span{font:27px/1 var(--sans);font-weight:300}
.bf-close:hover{color:#fff;border-color:#424c65;background:#b4bfff08}
.bf-header{padding:29px 30px 0}
.bf-header h2{font-size:36px;font-weight:400;line-height:1.13;letter-spacing:-.055em;margin:0 0 11px}
.bf-header>p{font-size:12px;line-height:1.7;color:var(--bf-muted);margin:0}
.bf-progress{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;margin:27px 0 0;gap:14px}
.bf-progress li{position:relative;padding:13px 0 12px;border-top:1px solid #38425a;font-size:11px;color:#75829c;transition:color .2s}
.bf-progress li:before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--bf-accent);transform:scaleX(0);transform-origin:left;transition:transform .36s cubic-bezier(.2,.7,.2,1)}
.bf-progress li[aria-current="step"]{color:#d7def1}
.bf-progress li[aria-current="step"]:before,.bf-progress li.bf-complete:before{transform:scaleX(1)}
.bf-progress li>span{font:9px var(--mono);margin-right:10px;color:#75839f}
.bf-progress li[aria-current="step"]>span{color:var(--bf-accent)}
.bf-form{padding:22px 30px 29px}
.bf-stage{min-height:299px}
.bf-stage-title{font-size:20px;font-weight:400;letter-spacing:-.03em;line-height:1.3;margin:0 0 22px;outline:none}
.bf-stage-description{font-size:12px;line-height:1.7;color:var(--bf-muted);margin:-10px 0 23px}
.bf-source{font:10px/1.6 var(--mono);color:#b6c3e2;border-left:1px solid #7680ac;padding-left:10px;margin:-7px 0 22px;overflow-wrap:anywhere}
.bf-question-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:26px}
.bf-kinds{margin:0;padding:0;border:0;min-width:0}
.bf-label{display:block;font-size:11px;line-height:1.5;color:#b2bed4;margin:0 0 10px}
.bf-label>span{font-size:10px;color:#6e7c96;margin-left:7px}
.bf-kinds legend{padding:0}
.bf-kind-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.bf-choice{position:relative;display:block;min-width:0;cursor:pointer}
.bf-choice--recovery{grid-column:1/-1}
.bf-choice input{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}
.bf-choice-body{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:71px;height:100%;gap:6px;padding:13px 12px 13px 28px;border:1px solid #323d54;border-radius:3px;background:#0d1420;color:#acb8d0;transition:border-color .18s,background .18s,color .18s}
.bf-choice-body strong{font-size:11px;font-weight:400;line-height:1.35;letter-spacing:-.015em}
.bf-choice-body>span:last-child{font-size:8px;line-height:1.4;color:#6f7e97}
.bf-choice-dot{position:absolute;top:17px;left:11px;width:5px;height:5px;border:1px solid #5c6982;border-radius:50%;transition:background .18s,border-color .18s}
.bf-choice:hover .bf-choice-body{border-color:#7380a3;background:#1c2434}
.bf-choice input:checked+.bf-choice-body{background:#c3c9ff12;border-color:#929ed2;color:#e0e5ff}
.bf-choice input:checked+.bf-choice-body>.bf-choice-dot{background:var(--bf-accent);border-color:var(--bf-accent);box-shadow:0 0 8px #b0baff44}
.bf-choice input:checked+.bf-choice-body>span:last-child{color:#91a0bf}
.bf-choice input:focus-visible+.bf-choice-body{outline:2px solid var(--bf-accent);outline-offset:3px}
.brief-flow input[type="text"],.brief-flow textarea{display:block;width:100%;min-width:0;max-width:100%;border:1px solid #35415a;border-radius:3px;padding:13px 14px;background:#0b121e;color:#e1e8f6;font-family:var(--sans);font-size:16px;line-height:1.55;transition:border-color .2s;outline-offset:3px}
.brief-flow input[type="text"]{min-height:49px}
.brief-flow textarea{resize:vertical}
.brief-flow input::placeholder,.brief-flow textarea::placeholder{color:#65748f;opacity:1}
.brief-flow input[type="text"]:hover,.brief-flow textarea:hover{border-color:#556481}
.brief-flow textarea[aria-invalid="true"]{border-color:#ce968d}
.bf-goal-field{min-width:0}
.bf-goal-field textarea{min-height:196px;height:196px}
.bf-hint{font-size:10px;line-height:1.6;color:#7989a4;margin:11px 0 0}
.bf-error{font-size:11px;line-height:1.55;color:#edb1a7;margin:9px 0 0}
.bf-fields-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.bf-field{min-width:0}
.bf-note-field{margin-top:22px}
.bf-note-field textarea{min-height:100px}
.bf-navigation{display:flex;align-items:center;gap:20px;border-top:1px solid #2f3a50;margin-top:27px;padding-top:21px}
.bf-navigation-note{font-size:10px;line-height:1.6;color:#70809b}
.bf-primary{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;border:1px solid #d4d8fd;border-radius:3px;background:#d4d8fd;padding:13px 21px;color:#151b31;font-size:12px;line-height:1.4;font-weight:500;transition:background .2s,border-color .2s}
.bf-primary:hover{background:#f0f1ff;border-color:#f0f1ff}
.bf-navigation .bf-primary{margin-left:auto;min-width:155px}
.bf-back,.bf-save{min-height:44px;padding:10px 0;border:0;background:transparent;color:#9daccc;font-size:11px;line-height:1.5;text-align:left;transition:color .2s}
.bf-back:hover,.bf-save:hover{color:#f0f3ff}
.bf-ready-heading{display:flex;align-items:center;gap:12px;margin:0 0 13px}
.bf-ready-heading .bf-stage-title{margin:0}
.bf-ready-check{position:relative;display:block;width:22px;height:22px;border:1px solid #8194be;border-radius:50%;flex-shrink:0}
.bf-ready-check:after{content:"";position:absolute;left:6px;top:5px;width:7px;height:4px;border-left:1px solid #cad5f6;border-bottom:1px solid #cad5f6;transform:rotate(-45deg)}
.bf-ready>.bf-stage-description{margin:0 0 20px}
.brief-flow .bf-preview{font-size:13px;line-height:1.75;min-height:245px;max-height:380px;color:#b9c7df;padding:18px 20px;resize:vertical;background:#0b121deb;border-color:#303c54;tab-size:2}
.bf-ready-actions{display:flex;align-items:center;gap:22px;margin-top:20px}
.bf-ready-actions .bf-save{margin-left:auto}
.bf-status{font-size:11px;line-height:1.7;color:#b7c8ef;margin:14px 0 0;min-height:19px}
.bf-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;clip-path:inset(50%)}

@media(max-width:1000px){.cf-grid{gap:42px}.contact-hub .cf-copy h2{font-size:60px}.cf-panel{padding-left:22px;padding-right:22px}.cf-intent{grid-template-columns:15px 1fr 25px;gap:10px}.cf-intent-copy strong{font-size:13px}.cf-intent-copy>span{font-size:9px}.cf-copy>p{font-size:14px}.cf-panel-heading h3{font-size:22px}}
@media(max-width:800px){.contact-hub{padding-top:76px}.cf-topline{margin-bottom:42px}.cf-grid{grid-template-columns:1fr;gap:39px}.cf-copy{max-width:610px}.contact-hub .cf-copy h2{font-size:clamp(48px,8.6vw,70px);margin-bottom:25px}.cf-copy>p{max-width:460px;font-size:15px}.cf-copy>p.cf-aside{margin-top:18px}.cf-panel{max-width:570px;justify-self:end;padding-left:28px;padding-right:28px}.cf-intent-copy strong{font-size:16px}.cf-intent-copy>span{font-size:11px}.cf-intent{grid-template-columns:20px 1fr 28px;gap:15px}.cf-baseline{margin-top:48px}.bf-header h2{font-size:32px}.bf-choice-body strong{font-size:11px}.bf-question-grid{gap:20px}}
@media(max-width:620px){.brief-flow{width:calc(100% - 20px);max-height:calc(100svh - 20px);max-height:calc(100dvh - 20px)}.bf-toolbar{padding:7px 12px 7px 20px}.bf-header{padding:23px 20px 0}.bf-header h2{font-size:29px;max-width:320px}.bf-header>p{font-size:11px;max-width:330px}.bf-progress{margin-top:23px;gap:10px}.bf-progress li{font-size:10px}.bf-progress li>span{font-size:8px;margin-right:7px}.bf-form{padding:18px 20px 22px}.bf-question-grid{grid-template-columns:1fr;gap:24px}.bf-stage{min-height:0}.bf-stage-title{font-size:20px;margin-bottom:19px}.bf-kind-grid{gap:7px}.bf-choice-body{min-height:64px;padding-top:11px;padding-bottom:11px}.bf-choice-body strong{font-size:12px}.bf-choice-body>span:last-child{font-size:9px}.bf-goal-field textarea{height:146px;min-height:125px}.bf-fields-row{grid-template-columns:1fr;gap:18px}.bf-note-field{margin-top:18px}.bf-stage-description{font-size:11px}.bf-label>span{float:right;margin-left:8px}.bf-navigation{margin-top:24px;gap:14px}.bf-navigation-note{font-size:9px}.bf-navigation .bf-primary{min-width:135px}.bf-ready-actions{gap:15px;flex-wrap:wrap}.bf-ready-actions .bf-primary{width:100%;order:-1}.bf-ready-actions .bf-save{margin-left:auto}.brief-flow .bf-preview{font-size:13px;padding:14px;min-height:250px}.bf-ready>.bf-stage-description{font-size:11px}.bf-status{margin-top:6px}.bf-source{font-size:9px}}
@media(max-width:540px){.contact-hub{padding:57px 24px 31px}.cf-topline{gap:18px;padding-top:21px;margin-bottom:35px}.cf-topline .eyebrow{font-size:8px}.cf-topline>span{font-size:9px;text-align:right;max-width:120px;line-height:1.6}.contact-hub .cf-copy h2{font-size:clamp(43px,10.9vw,58px);line-height:1.08;margin-bottom:22px}.cf-copy>p{font-size:13px;line-height:1.85}.cf-copy>p.cf-aside{font-size:11px}.cf-grid{gap:32px}.cf-panel{padding:0 20px 23px;max-width:none}.cf-panel-top{padding:17px 0;font-size:9px}.cf-panel-heading{padding:26px 0 19px}.cf-panel-heading h3{font-size:23px}.cf-bracket{font-size:29px}.cf-intent{grid-template-columns:14px 1fr 24px;gap:11px;padding:21px 0;min-height:93px}.cf-intent-copy strong{font-size:14px;line-height:1.4}.cf-intent-copy>span{font-size:9px;line-height:1.6}.cf-intent-mark{width:24px;height:24px;font-size:17px}.cf-conversation-path{font-size:6px;gap:8px;margin-top:25px}.cf-local-note{font-size:10px}.cf-baseline{gap:12px;margin-top:35px;font-size:8px;align-items:flex-start}.cf-baseline>span:nth-child(2){max-width:130px;text-align:right}.cf-code-end{font-size:20px;margin-left:3px}}
@media(max-width:350px){.contact-hub{padding-left:18px;padding-right:18px}.contact-hub .cf-copy h2{font-size:41px}.cf-panel{padding-left:16px;padding-right:16px}.cf-intent{gap:9px;grid-template-columns:13px 1fr 23px}.cf-intent-copy strong{font-size:13px}.cf-intent-copy>span{font-size:8px}.cf-panel-heading h3{font-size:21px}.cf-conversation-path{gap:6px;font-size:5.7px}.cf-baseline{font-size:7px;gap:10px}.cf-code-end{font-size:18px}.brief-flow{width:calc(100% - 14px);max-height:calc(100dvh - 14px)}.bf-header{padding-left:16px;padding-right:16px}.bf-form{padding-left:16px;padding-right:16px}.bf-toolbar{padding-left:16px}.bf-header h2{font-size:28px}.bf-kind-grid{gap:6px}.bf-choice-body{padding-left:24px;padding-right:8px;min-height:67px}.bf-choice-dot{left:10px}.bf-choice-body strong{font-size:10px}.bf-choice-body>span:last-child{font-size:8px}.bf-navigation-note{max-width:72px}.bf-navigation .bf-primary{min-width:130px;padding-left:15px;padding-right:15px}.bf-progress li{font-size:9px}}
@media(prefers-reduced-motion:reduce){.cf-entered .cf-conversation-path i:after{animation:none;transform:translateX(102%)}.brief-flow::backdrop{animation:none}.bf-progress li:before{transition:none}.cf-intent:hover .cf-intent-mark,.cf-intent:focus-visible .cf-intent-mark{transform:none}}

/* Direct contact remains usable without the brief composer. */
.cf-email-list{display:grid;grid-template-columns:1fr;gap:18px;margin:32px 0 0;padding-top:26px;border-top:1px solid #29354b;max-width:420px}
.cf-email-list>div{display:grid;gap:5px}
.cf-email-list dt{font-size:10px;line-height:1.6;letter-spacing:.02em;color:#8494ae}
.cf-email-list dd{margin:0}
.cf-email-list a{display:inline-block;padding:3px 0;color:#d8defb;font-size:clamp(18px,2vw,24px);line-height:1.35;font-weight:400;letter-spacing:-.025em;text-decoration:none;text-underline-offset:5px;transition:color .2s}
.cf-email-list a:hover{color:#fff;text-decoration:underline}
.cf-email-list a:focus-visible{outline:2px solid #c3c9ff;outline-offset:5px;border-radius:2px}
.cf-email-list>div+div a{font-size:16px;color:#a9b8d4}
.cf-email-list>div+div a:hover{color:#e1e8ff}
@media(max-width:540px){.cf-email-list{margin-top:25px;padding-top:21px;gap:16px}.cf-email-list a{font-size:22px}.cf-email-list>div+div a{font-size:16px}}

.bf-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.bf-primary:disabled{opacity:.6;cursor:wait}
