/* Contact uses the visual-first homepage foundation and its shared tokens. */
.contact-partner{--field-radius:12px;--field-border:#93969c;--error:#943b2e;--contact-pad:clamp(28px,4.5vw,68px)}
.hello-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:1440px;margin:4px auto 0;padding:0 28px;gap:20px;align-items:stretch}
.hello-art{position:relative;isolation:isolate;overflow:hidden;border-radius:32px;padding:var(--contact-pad);background:radial-gradient(ellipse at 70% 50%,var(--surface),transparent 68%),linear-gradient(145deg,var(--sage),var(--paper) 65%,var(--sage));display:flex;flex-direction:column;min-height:750px}
.hello-intro{position:relative;z-index:2}.hello-intro .eyebrow{color:var(--muted);font-size:9px}.hello-intro h2{font-size:clamp(52px,5vw,76px);line-height:1.04;margin-top:25px;letter-spacing:-.065em}.hello-intro h2 span{color:var(--green)}
.hello-illustration{position:relative;height:320px;margin:12px -10px 0;flex:1;min-height:260px;max-height:390px}
.hello-ring{position:absolute;border:1px solid color-mix(in srgb,var(--green) 13%,transparent);border-radius:50%;width:330px;height:330px;left:50%;top:48%;transform:translate(-50%,-50%)}.ring-two{width:410px;height:410px}
.hello-tile{position:absolute;left:50%;top:46%;width:192px;height:192px;display:grid;place-items:center;transform:translate(-50%,-50%) rotate(-12deg);border-radius:44px;background:linear-gradient(135deg,var(--surface),var(--sage));border:1px solid var(--surface);box-shadow:inset 0 2px 1px var(--surface),0 32px 50px -20px color-mix(in srgb,var(--green) 27%,transparent)}.hello-tile svg{width:118px;height:118px;color:var(--green);filter:drop-shadow(0 2px 0 var(--surface))}
.hello-message{position:absolute;display:flex;align-items:center;gap:12px;padding:14px 18px;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--surface);border-radius:18px;box-shadow:var(--shadow);backdrop-filter:blur(12px);font-size:12px;font-weight:500;white-space:nowrap}.message-you{top:14%;left:0;transform:rotate(-5deg)}.message-us{bottom:14%;right:0;transform:rotate(4deg);background:var(--ink);color:var(--surface);border-color:var(--dark-line)}.message-avatar{width:31px;height:31px;display:grid;place-items:center;background:var(--sage);color:var(--green);border-radius:50%;font-size:8px}.message-us .message-avatar{background:var(--signal);color:var(--ink)}.message-avatar svg{width:19px;height:19px}.message-dot{width:6px;height:6px;background:var(--green);border-radius:50%;margin-left:12px}
.hello-people{display:flex;gap:15px;align-items:center;margin-top:24px;position:relative;z-index:2}.people-initials{display:flex;padding-left:0}.people-initials span{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:3px solid var(--sage);background:var(--surface);color:var(--green);font-size:12px}.people-initials span+span{margin-left:-10px;background:var(--ink);color:var(--surface)}.hello-people p{font-size:12px;font-weight:600;line-height:1.5}.hello-people small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:2px}
.hello-form{padding:30px var(--contact-pad) 26px;max-width:690px;width:100%;margin:auto}.form-heading .eyebrow{font-size:9px;color:var(--muted)}.form-heading h1{font-size:clamp(38px,3.5vw,53px);margin:16px 0;letter-spacing:-.06em}.form-heading>p:last-child{font-size:13px;color:var(--muted);margin-bottom:30px}
#brief-form{display:grid;gap:19px}#brief-form[hidden],#brief-result[hidden],[hidden]{display:none}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}#brief-form label{display:block;font-size:12px;font-weight:500;line-height:1.5}#brief-form input:not([type=hidden]):not([type=checkbox]),#brief-form textarea,#brief-form select{display:block;width:100%;min-width:0;border:1px solid var(--field-border);border-radius:var(--field-radius);background:var(--surface);color:var(--ink);font:13px/1.5 var(--font);padding:13px 14px;margin-top:8px;transition:border-color .2s,box-shadow .2s}#brief-form textarea{min-height:104px;resize:vertical}#brief-form input::placeholder,#brief-form textarea::placeholder{color:var(--muted);font-weight:400}#brief-form input:hover,#brief-form textarea:hover,#brief-form select:hover{border-color:var(--green)}#brief-form input:focus-visible,#brief-form textarea:focus-visible,#brief-form select:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-color:var(--green);box-shadow:0 0 0 5px var(--sage)}#brief-form input:user-invalid,#brief-form textarea:user-invalid{border-color:var(--error)}#brief-form fieldset{padding:0;margin:0;border:0;min-width:0}#brief-form legend{font-size:11px;color:var(--muted);margin-bottom:10px}.service-choices{display:flex;flex-wrap:wrap;gap:8px}.service-choices label{position:relative;cursor:pointer}.service-choices input{position:absolute;opacity:0;width:1px;height:1px}.service-choices span{display:flex;align-items:center;min-height:42px;padding:9px 15px;border:1px solid var(--field-border);border-radius:var(--pill);font-size:11px;background:transparent;transition:background .2s,border-color .2s}.service-choices label:hover span{background:var(--sage)}.service-choices input:checked+span{background:var(--sage);border-color:var(--green);color:var(--ink)}.service-choices input:checked+span:before{content:'✓' / '';margin-right:7px;color:var(--green)}.service-choices input:focus-visible+span{outline:2px solid var(--green);outline-offset:3px}
.optional-details{font-size:11px}.optional-details summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;width:fit-content;color:var(--muted)}.optional-details summary:before{content:'+';font-size:18px;color:var(--ink)}.optional-details[open] summary:before{content:'−'}.optional-details summary>span{font-size:9px;margin-left:6px}.optional-fields{display:grid;gap:15px;padding-top:12px}.form-note{font-size:10px;color:var(--muted)}.form-note a{text-decoration:underline;text-underline-offset:3px}.button-dark{background:var(--ink);color:var(--surface);border:0;width:100%;box-shadow:var(--shadow)}.button-dark:hover{background:var(--dark-line)}.button-dark:active{transform:translateY(0)}.button-dark span{margin-left:auto}.button-dark:disabled{opacity:.6;cursor:wait;transform:none}.inquiry-error{border-radius:var(--field-radius);padding:14px;background:color-mix(in srgb,var(--error) 6%,var(--surface));color:var(--error);font-size:12px;border:1px solid var(--error)}.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.hello-direct{display:flex;flex-direction:column;gap:3px;margin-top:25px;font-size:11px;color:var(--muted)}.hello-direct a{color:var(--ink);font-weight:500;overflow-wrap:anywhere;width:fit-content;min-height:32px}.hello-direct a:hover{text-decoration:underline;text-underline-offset:4px}.hello-direct a span{margin-left:6px}#brief-result{padding:25px 0;min-height:340px;outline-offset:8px}#brief-result .result-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--sage);color:var(--green);font-size:30px;margin-bottom:25px}#brief-result h2{font-size:35px}#brief-result p{margin:18px 0 24px;font-size:14px;color:var(--muted)}#brief-result a{font-size:13px;text-decoration:underline;text-underline-offset:5px}.hello-footer{display:flex;align-items:center;gap:28px;max-width:1440px;margin:0 auto;padding:22px 34px;font-size:10px;color:var(--muted)}.hello-footer>span{margin-right:auto}.hello-footer a:hover{color:var(--ink)}
@media(min-width:900px){.hello-tile{animation:hello-arrive 1.2s var(--ease) both}.hello-message{animation:message-arrive .9s var(--ease) both}.message-us{animation-delay:.18s}}
@keyframes hello-arrive{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}@keyframes message-arrive{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@media(max-width:1050px){.hello-layout{padding:0 20px;gap:8px}.hello-art{padding:32px;min-height:740px}.hello-form{padding:28px}.hello-message{padding:11px 12px;font-size:10px;gap:8px}.hello-tile{width:160px;height:160px}.hello-tile svg{width:100px;height:100px}}
@media(max-width:800px){.hello-layout{grid-template-columns:1fr;gap:28px;padding:0 22px;max-width:650px}.hello-form{grid-row:1;padding:22px 0 0;max-width:none}.form-heading h1{font-size:46px}.form-heading h1 br{display:none}.form-heading>p:last-child{margin-bottom:26px}.hello-art{min-height:0;padding:32px}.hello-intro h2{font-size:46px}.hello-intro h2 br:first-child{display:none}.hello-illustration{height:290px;flex:auto;margin-top:5px}.hello-people{margin-top:0}.hello-footer{flex-wrap:wrap;padding:26px 24px;gap:18px}.hello-footer>span{width:100%}#brief-form input:not([type=hidden]):not([type=checkbox]),#brief-form textarea,#brief-form select{font-size:16px}.hello-direct{font-size:12px}.hello-direct a{min-height:44px}.service-choices span{min-height:44px;padding-inline:14px}.form-heading h1{max-width:460px}}
@media(max-width:390px){.form-row{grid-template-columns:1fr}.form-heading h1{font-size:39px}.hello-art{padding:25px}.hello-intro .eyebrow{font-size:7px}.hello-intro h2{font-size:42px}.hello-message{padding:10px}.hello-footer{font-size:10px}.service-choices span{font-size:10px}.message-dot{margin-left:0}.message-us{right:-8px}.message-you{left:-5px}}
@media(prefers-reduced-motion:reduce){.hello-tile,.hello-message{animation:none}}


