
.structure-orbit{padding:65px 0 45px;background:#fff}.orbit-caption{text-align:center;max-width:760px;margin:0 auto 30px}.orbit-caption .campaign-kicker{font-size:9px;margin-bottom:17px}.orbit-caption h2{font-size:41px;line-height:1.15}.orbit-caption p{font-size:16px;max-width:630px;margin:22px auto 0}.interactive-orbit{position:relative;max-width:760px;aspect-ratio:1;margin:auto}.orbital-ring{position:absolute;inset:8%;border:1px solid #cbdaf1;border-radius:50%;box-shadow:inset 0 0 65px #eef3fb55}.orbital-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:115px;height:115px;border:1px solid #e2e9f6;border-radius:50%;display:grid;place-items:center}.orbital-core>span{width:76px;height:76px;border-radius:50%;background:linear-gradient(135deg,#001ab9,#02dbf3);box-shadow:0 0 40px #028bdc25}.orbital-core>span:after{content:'';display:block;width:35px;height:35px;border-radius:50%;background:#ffffff75;margin:20px}.orbital-item{position:absolute;left:var(--node-x);top:var(--node-y);transform:translate(-50%,-50%);width:122px;padding:0;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:10px;color:#526987;cursor:pointer}.orbital-icon{display:grid;place-items:center;width:60px;height:60px;border:1px solid #cddbf0;background:#fff;border-radius:50%;box-shadow:0 3px 17px #133b7010;transition:background .18s,border-color .18s,box-shadow .18s;color:#001ab9}.orbital-icon svg{width:24px;height:24px}.orbital-icon img{width:43px;height:32px;object-fit:contain}.orbital-label{font-size:12px;line-height:1.3;text-align:center;padding:2px 5px;background:#ffffffdf}.orbital-item[aria-expanded=true] .orbital-icon{background:#001ab9;color:white;border-color:#001ab9;box-shadow:0 0 28px #001ab92b}.orbital-item[aria-expanded=true] .orbital-label{color:#001ab9;font-weight:600}.orbital-item:focus-visible{outline:2px solid #028bdc;outline-offset:5px;border-radius:12px}.orbital-hint{position:absolute;top:61%;left:50%;transform:translateX(-50%);font-size:11px;color:#8191aa;white-space:nowrap}.interactive-orbit:has(.resource-details:not([hidden])) .orbital-hint{display:none}.resource-details{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:310px;padding:30px 25px 24px;border:1px solid #cad8ed;border-radius:18px;background:#fff;box-shadow:0 20px 60px #08264d14;z-index:2}.resource-details[hidden]{display:none}.resource-close{position:absolute;right:12px;top:8px;background:none;border:0;padding:4px 8px;color:#7c8ea9;font-size:25px;line-height:1}.resource-eyebrow{display:block;font-size:8px;letter-spacing:1px;color:#001ab9;margin-bottom:16px}.resource-details h3{font-size:23px;line-height:1.15;margin:0 0 14px}.resource-details p{font-size:13px;line-height:1.75;color:#647590}.resource-contact{display:flex;justify-content:space-between;gap:12px;background:#001ab9;color:#fff;border-radius:100px;padding:12px 16px;font-size:12px;margin-top:23px}.home-contact{padding:85px 0;background:#f2f5fb;scroll-margin-top:100px}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:75px}.contact-layout h2{font-size:43px;line-height:1.12}.contact-layout>div>p{margin:25px 0;font-size:17px}.contact-layout>div>a{color:#001ab9;font-size:14px}.contact-layout form{background:#fff;padding:32px;border:1px solid #dde5f1;border-radius:24px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.contact-layout label{display:block;font-size:12px;color:#435777;margin-bottom:17px}.contact-layout input,.contact-layout textarea,.contact-layout select{display:block;width:100%;margin-top:7px;padding:12px;font:inherit;font-size:14px;background:#f8faff;color:#142447;border:1px solid #d5e0f0;border-radius:8px;min-width:0}.contact-layout textarea{resize:vertical}.contact-layout :is(input,textarea,select):focus{outline:2px solid #028bdc;outline-offset:2px}.contact-privacy{font-size:11px!important;line-height:1.6;margin:8px 0 20px!important}.contact-privacy a{text-decoration:underline;color:#001ab9}.contact-delivery,.contact-status{font-size:11px;margin-top:14px;line-height:1.7}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-layout button:disabled{opacity:.6;cursor:wait}
@media(hover:hover){.orbital-item:hover .orbital-icon{border-color:#809fe3;box-shadow:0 0 25px #001ab91a}}
@media(max-width:900px){.contact-layout{gap:35px}.resource-details{width:285px}.orbital-item{width:110px}}
@media(max-width:650px){.structure-orbit{padding:45px 0}.orbit-caption h2{font-size:32px}.orbit-caption p{font-size:15px}.interactive-orbit{margin:20px auto 0;max-width:400px}.orbital-item{width:76px;gap:5px}.orbital-icon{width:40px;height:40px}.orbital-icon svg{width:19px;height:19px}.orbital-icon img{width:30px;height:22px}.orbital-label{font-size:8px}.orbital-core{width:78px;height:78px}.orbital-core>span{width:53px;height:53px}.orbital-core>span:after{width:25px;height:25px;margin:14px}.orbital-hint{font-size:9px;top:65%}.resource-details{position:relative;left:auto;top:auto;transform:none;width:100%;margin-top:100%;padding:26px;box-shadow:0 10px 30px #08264d0a}.interactive-orbit:has(.resource-details:not([hidden])){aspect-ratio:auto;min-height:0}.interactive-orbit:has(.resource-details:not([hidden])) .orbital-items,.interactive-orbit:has(.resource-details:not([hidden])) .orbital-ring{height:calc((100vw - 36px)*.84);top:calc((100vw - 36px)*.08)}.interactive-orbit:has(.resource-details:not([hidden])) .orbital-items{height:calc(100vw - 36px);width:100%;top:0;position:absolute}.interactive-orbit:has(.resource-details:not([hidden])) .orbital-core{top:calc((100vw - 36px)*.5)}.home-contact{padding:50px 0}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-layout h2{font-size:35px}.contact-layout>div>p{font-size:16px}.contact-layout form{padding:23px}.contact-fields{grid-template-columns:1fr}.contact-layout .button{font-size:12px}}
@media(max-width:650px){.interactive-orbit,.interactive-orbit:has(.resource-details:not([hidden])){--orbit-size:min(calc(100vw - 36px),400px);aspect-ratio:auto;padding-top:var(--orbit-size);width:var(--orbit-size)}.interactive-orbit .orbital-items,.interactive-orbit:has(.resource-details:not([hidden])) .orbital-items{position:absolute;inset:0 auto auto 0;width:var(--orbit-size);height:var(--orbit-size)}.interactive-orbit .orbital-ring,.interactive-orbit:has(.resource-details:not([hidden])) .orbital-ring{inset:auto;left:8%;top:calc(var(--orbit-size)*.08);width:84%;height:calc(var(--orbit-size)*.84)}.interactive-orbit .orbital-core,.interactive-orbit:has(.resource-details:not([hidden])) .orbital-core{top:calc(var(--orbit-size)*.5)}.interactive-orbit .orbital-hint{top:calc(var(--orbit-size)*.65)}.interactive-orbit .resource-details{margin:24px 0 0}}

/* Continuous orbit with counter-rotation to keep every label upright. */
.interactive-orbit{--orbit-period:160.714286s}
.orbital-items{position:absolute;inset:0;width:100%;height:100%;transform-origin:50% 50%;animation:conversion-orbit var(--orbit-period) linear infinite;animation-play-state:paused}
.orbital-item{animation:conversion-counter-orbit var(--orbit-period) linear infinite;animation-play-state:paused}
.interactive-orbit.orbit-visible .orbital-items,.interactive-orbit.orbit-visible .orbital-item{animation-play-state:running}
.orbital-core{width:182px;height:182px;background:#fff;border:1px solid #dae4f4;box-shadow:0 0 0 13px #f5f8fd,0 0 65px #028bdc10;pointer-events:none}
.orbital-core>img{width:150px;height:auto}
@keyframes conversion-orbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes conversion-counter-orbit{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(-360deg)}}
@media(max-width:650px){.orbital-core{width:105px;height:105px;box-shadow:0 0 0 8px #f5f8fd,0 0 35px #028bdc10}.orbital-core>img{width:90px}.orbital-hint{top:69%!important}.interactive-orbit .orbital-items{inset:0 auto auto 0}}
@media(prefers-reduced-motion:reduce){.interactive-orbit .orbital-items,.interactive-orbit .orbital-item{animation:none!important}}

/* Restore the orbital nucleus using Conversion's original brand palette. */
.orbital-core{width:115px;height:115px;background:transparent;border:1px solid #001ab91c;box-shadow:none}
.orbital-core>span{width:76px;height:76px;background:linear-gradient(135deg,#001ab9 12%,#028bdc 60%,#02dbf3);box-shadow:0 0 35px #028bdc24}
.orbital-core>span:after{width:35px;height:35px;margin:20px;background:#ffffff80}
@media(max-width:650px){.orbital-core{width:78px;height:78px;box-shadow:none}.orbital-core>span{width:53px;height:53px}.orbital-core>span:after{width:25px;height:25px;margin:14px}}

/* Woven Light Hero: projected particle weave, clipped to the orbital circle. */
.woven-light-field{position:absolute;inset:8%;width:84%;height:84%;border-radius:50%;overflow:hidden;pointer-events:none;opacity:.65}
.woven-thread,.woven-stars{transform-origin:100px 100px;animation:conversion-woven-spin 100s linear infinite;animation-play-state:paused}
.woven-thread{fill:#028bdc}.woven-thread-1{fill:#001ab9;animation-duration:125s;animation-direction:reverse;opacity:.55}.woven-thread-2{fill:#02dbf3;animation-duration:80s;opacity:.8}
.woven-stars{fill:#028bdc;animation-duration:160s}.woven-stars-1{fill:#001ab9;animation-duration:120s;animation-direction:reverse;opacity:.55}
.interactive-orbit.orbit-visible .woven-thread,.interactive-orbit.orbit-visible .woven-stars{animation-play-state:running}
.orbital-core>span{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 72% 72%,#02dbf3, #028bdc 43%,#001ab9 78%);box-shadow:0 0 35px #028bdc35,inset 0 0 12px #ffffff25}
.orbital-core>span:before{content:'';position:absolute;inset:-25%;border-radius:50%;background:radial-gradient(circle at 23% 38%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 65% 25%,#02dbf3 0 1px,transparent 1.8px),radial-gradient(circle at 78% 56%,#fff 0 .8px,transparent 1.5px),radial-gradient(circle at 42% 72%,#fff 0 1px,transparent 1.6px),radial-gradient(circle at 37% 19%,#fff 0 .7px,transparent 1.4px),radial-gradient(circle at 60% 62%,#02dbf3 0 .8px,transparent 1.5px);animation:conversion-woven-spin 28s linear infinite;animation-play-state:paused}
.interactive-orbit.orbit-visible .orbital-core>span:before{animation-play-state:running}
.orbital-core>span:after{position:relative;background:radial-gradient(circle at 30% 25%,#ffffff85,#ffffff28);box-shadow:inset 0 0 8px #ffffff30}
@keyframes conversion-woven-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@media(max-width:650px){.woven-light-field{inset:auto;left:8%;top:calc(var(--orbit-size)*.08);width:84%;height:calc(var(--orbit-size)*.84)}}
@media(prefers-reduced-motion:reduce){.interactive-orbit .woven-thread,.interactive-orbit .woven-stars,.interactive-orbit .orbital-core>span:before{animation:none}}

/* Only the visible icon circle accepts pointer input; labels remain readable. */
.orbital-item{pointer-events:none}
.orbital-icon{pointer-events:auto;clip-path:circle(50%)}
.orbital-label{pointer-events:none}

@media(hover:hover) and (pointer:fine){
 .orbital-icon.orbital-near{border-color:#028bdc;background:#e8faff;color:#001ab9}
 .orbital-item[aria-expanded=true] .orbital-icon.orbital-near{background:#001ab9;color:#fff}
}

/* Individual particle paths replace the old rigid rotating layers. */
.woven-light-field.woven-reactive{opacity:.85}
.woven-reactive .woven-thread,.woven-reactive .woven-stars{animation:none!important}

/* Sequential contact experience: one clear question at a time. */
.contact-wizard-section{padding:100px 0;background:linear-gradient(180deg,#f7fbff,#eef7fc)}
.contact-wizard-section .contact-layout{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);align-items:center;gap:90px}
.contact-intro h2{max-width:460px}.contact-intro>p{max-width:500px}.contact-intro>a{display:inline-flex;align-items:center;gap:8px;font-size:14px}
.contact-layout .contact-wizard{min-height:520px;padding:0;border:1px solid #c8ddee;border-top:3px solid #087be8;border-radius:24px;background:#fff;box-shadow:0 24px 70px rgba(20,73,122,.11);overflow:hidden}
.contact-wizard-head{display:flex;align-items:center;gap:18px;padding:24px 30px 0}.contact-wizard-head>span{flex:0 0 auto;color:#1746c8;font-size:11px;font-weight:700;letter-spacing:.12em}.contact-wizard-progress{height:3px;flex:1;border-radius:4px;background:#e6eef7;overflow:hidden}.contact-wizard-progress i{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1747d1,#20d5df);transform:scaleX(.2);transform-origin:left;transition:transform 260ms cubic-bezier(.23,1,.32,1)}
.contact-step{display:none;padding:72px 64px 52px}.contact-step.is-active{display:block;animation:contactStepIn 300ms cubic-bezier(.23,1,.32,1) both}.contact-step-label{display:block;margin-bottom:18px;color:#16718c;font-size:11px;font-weight:700;letter-spacing:.14em}.contact-step>label,.contact-step legend{display:block;margin:0 0 28px;color:#071a3a;font-size:32px;font-weight:600;line-height:1.2;letter-spacing:-.035em}.contact-step fieldset{margin:0;padding:0;border:0}
.contact-layout .contact-step :is(input:not([type=radio]),textarea){width:100%;margin:0;padding:16px 2px 13px;border:0;border-bottom:2px solid #b9cde1;border-radius:0;background:transparent;color:#10284a;font-size:24px;line-height:1.35;outline:0;transition:border-color 180ms ease,box-shadow 180ms ease}.contact-layout .contact-step :is(input:not([type=radio]),textarea):focus{border-color:#1748d0;box-shadow:0 2px 0 #27d1dd}.contact-layout .contact-step :is(input,textarea)::placeholder{color:#9aabc0}.contact-layout .contact-step textarea{min-height:125px;resize:vertical;font-size:18px}
.contact-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-choice{margin:0!important}.contact-choice input{position:absolute;opacity:0;pointer-events:none}.contact-choice span{display:flex;align-items:center;min-height:52px;padding:12px 15px;border:1px solid #cbdbea;border-radius:10px;background:#f8fbfe;color:#2c4464;font-size:14px;font-weight:600;cursor:pointer;transition:border-color 160ms ease,background-color 160ms ease,color 160ms ease,box-shadow 160ms ease}.contact-choice input:checked+span{border-color:#17bfcf;background:#eafcfd;color:#073da9;box-shadow:inset 0 0 0 1px #17bfcf}.contact-choice input:focus-visible+span{outline:3px solid rgba(23,72,208,.2);outline-offset:2px}
.contact-step-actions{display:flex;align-items:center;gap:12px;margin-top:34px}.contact-step-actions .button{min-height:50px;padding:0 22px;border-radius:9px;font-size:15px}.contact-step-actions small{color:#8595aa;font-size:10px}.contact-back{display:grid;place-items:center;width:50px;height:50px;border:1px solid #ccdbea;border-radius:9px;background:#f7faff;color:#1746c8;font-size:20px;cursor:pointer}.contact-step-error{min-height:20px;margin:10px 0 0!important;color:#b42318;font-size:12px!important}.contact-step .contact-privacy{max-width:600px;margin:20px 0 0!important;font-size:10px!important}.contact-wizard>.contact-status{padding:0 64px 28px;margin:0;font-size:12px;color:#176b61}
@keyframes contactStepIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.contact-wizard-section .contact-layout{grid-template-columns:1fr;gap:42px}.contact-intro h2{max-width:620px}.contact-layout .contact-wizard{min-height:500px}}
@media(max-width:650px){.contact-wizard-section{padding:64px 0}.contact-wizard-section .contact-layout{gap:30px}.contact-layout .contact-wizard{min-height:470px;border-radius:18px}.contact-wizard-head{padding:20px 20px 0}.contact-step{padding:52px 22px 35px}.contact-step>label,.contact-step legend{margin-bottom:22px;font-size:26px}.contact-layout .contact-step :is(input:not([type=radio]),textarea){font-size:20px}.contact-choices{grid-template-columns:1fr}.contact-choice span{min-height:48px;font-size:13px}.contact-step-actions{flex-wrap:wrap;margin-top:28px}.contact-step-actions small{width:100%;padding-left:62px}.contact-wizard>.contact-status{padding:0 22px 22px}}
@media(prefers-reduced-motion:reduce){.contact-step.is-active{animation:fadeIn 180ms ease both}.contact-wizard-progress i{transition:none}}

/* Borderless conversational surface with a typewriter cue on the first answer. */
.contact-layout .contact-wizard{border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.contact-input-shell{position:relative;display:block}
.contact-input-shell .typewriter-caret{position:absolute;left:154px;top:50%;width:2px;height:27px;border-radius:2px;background:#18cbd6;transform:translateY(-50%);animation:contactCaretBlink 1s steps(1,end) infinite;pointer-events:none}
.contact-input-shell input:focus+.typewriter-caret{background:#1748d0}
.contact-input-shell input:not(:placeholder-shown)+.typewriter-caret{display:none}
@keyframes contactCaretBlink{0%,46%{opacity:1}47%,100%{opacity:0}}
@media(max-width:650px){.contact-input-shell .typewriter-caret{left:130px;height:23px}}
@media(prefers-reduced-motion:reduce){.contact-input-shell .typewriter-caret{animation:none}}

/* Align the contact introduction and conversational flow from the same top edge. */
.contact-wizard-section .contact-layout{align-items:start}

/* Refined first-answer cue: smaller prompt and an explicit blinking caret. */
.contact-layout #contact-name{font-size:19px;caret-color:#1748d0}
.contact-layout #contact-name:placeholder-shown{caret-color:transparent}
.contact-input-shell .typewriter-caret{left:126px;width:2px;height:23px;background:#08bfcf;animation:contactCaretBlink .78s steps(1,end) infinite}
@media(max-width:650px){.contact-layout #contact-name{font-size:18px}.contact-input-shell .typewriter-caret{left:119px;height:21px}}
@media(prefers-reduced-motion:reduce){.contact-input-shell .typewriter-caret{animation:contactCaretBlink 1.4s steps(1,end) infinite}}

/* Empty first answer: the blinking caret is the only writing cue. */
.contact-input-shell .typewriter-caret{left:2px}
@media(max-width:650px){.contact-input-shell .typewriter-caret{left:2px}}

/* The first field cue now follows validity, with no placeholder dependency. */
.contact-layout #contact-name:invalid{caret-color:transparent}
.contact-layout #contact-name:valid{caret-color:#1748d0}
.contact-input-shell input:valid+.typewriter-caret{display:none}

/* Every conversational answer starts with the same solitary vertical caret. */
.contact-input-shell:not(.has-value) .typewriter-caret{display:block}
.contact-input-shell.has-value .typewriter-caret{display:none}
.contact-input-shell:not(.has-value) :is(input,textarea){caret-color:transparent}
.contact-input-shell.has-value :is(input,textarea){caret-color:#1748d0}
.contact-textarea-shell .typewriter-caret{top:18px;transform:none}

/* Reliable caret rendered by the field shell itself. */
.contact-input-shell .typewriter-caret{display:none!important}
.contact-input-shell:not(.has-value)::after{content:'';position:absolute;z-index:5;left:2px;top:50%;width:2px;height:23px;border-radius:2px;background:#08bfcf;transform:translateY(-50%);animation:contactShellCaret .9s steps(1,end) infinite;pointer-events:none}
.contact-textarea-shell:not(.has-value)::after{top:18px;transform:none}
@keyframes contactShellCaret{0%,72%{opacity:1}73%,100%{opacity:0}}
@media(max-width:650px){.contact-input-shell:not(.has-value)::after{height:21px}}
@media(prefers-reduced-motion:reduce){.contact-input-shell:not(.has-value)::after{animation:contactShellCaret 1.5s steps(1,end) infinite}}

/* Final acknowledgement replaces the questions after submission. */
.contact-wizard.is-complete{display:grid;place-items:center;min-height:520px}
.contact-thanks{max-width:520px;padding:52px;text-align:center;outline:0}
.contact-thanks>span{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 24px;border-radius:50%;background:#e2fbf7;color:#087f72;font-size:25px}
.contact-thanks>small{display:block;color:#16718c;font-size:11px;font-weight:700;letter-spacing:.15em}
.contact-thanks h3{margin:16px 0 10px;color:#071a3a;font-size:34px;line-height:1.15;letter-spacing:-.035em}
.contact-thanks p{color:#536982;font-size:17px;line-height:1.6}
@media(max-width:650px){.contact-wizard.is-complete{min-height:420px}.contact-thanks{padding:36px 20px}.contact-thanks h3{font-size:29px}.contact-thanks p{font-size:16px}}

/* Balance both contact columns within the same vertical footprint. */
.contact-wizard-section .contact-layout{align-items:center}

/* Optical baseline alignment between both blue contact labels. */
@media(min-width:901px){.contact-wizard-section .contact-intro{transform:translateY(9px)}}

/* Progress follows the exact horizontal bounds of the active question. */
.contact-wizard-head{padding-left:64px;padding-right:64px}
@media(max-width:650px){.contact-wizard-head{padding-left:22px;padding-right:22px}}

/* Step label and progress now share one aligned row. */
.contact-step-top{display:grid;grid-template-columns:auto minmax(180px,1fr);align-items:center;gap:22px;margin-bottom:18px}
.contact-step-top .contact-step-label{margin:0;color:var(--blue);white-space:nowrap}
.contact-progress-slot{min-width:0}
.contact-progress-slot .contact-wizard-head{display:flex;padding:0;gap:12px}
.contact-progress-slot .contact-wizard-head>span{font-size:9px}
@media(max-width:650px){.contact-step-top{grid-template-columns:1fr;gap:10px}.contact-progress-slot .contact-wizard-head{padding:0}.contact-progress-slot{width:100%}}

/* Match the three visual baselines across both contact columns. */
@media(min-width:901px){
  .contact-wizard-section .contact-layout{align-items:start}
  .contact-wizard-section .contact-intro{padding-top:74px;transform:none}
  .contact-intro .campaign-kicker{margin-bottom:18px}
  .contact-intro>p{margin:12px 0 0!important;line-height:1.4}
  .contact-intro>a{transform:translateY(-24px)}
}
