.contact-page{background:var(--paper);color:var(--ink);padding:100px 28px 0}.contact-frame{border-inline:1px solid var(--border);max-width:1216px;margin:auto}.contact-intro{text-align:center;border-bottom:1px solid var(--border);padding:64px 24px 48px}.contact-page h1{letter-spacing:-.05em;margin:0;font-size:clamp(38px,4.6vw,62px);font-weight:500;line-height:1.08}.contact-intro p{color:var(--muted);margin:20px 0 0;font-size:15px;line-height:1.7}.contact-choices{grid-template-columns:1fr 1fr;gap:22px;padding:44px;display:grid}.contact-choice{text-align:left;color:var(--ink);border:1px solid var(--border);background:0 0;border-radius:10px;flex-direction:column;align-items:flex-start;min-width:0;padding:34px;transition:background .25s,border-color .25s;display:flex}.contact-choice:hover{background:var(--accent-soft);border-color:#3c60b045}.contact-choice>svg{width:30px;height:30px;color:var(--accent-blue);margin-bottom:30px}.contact-choice h2{letter-spacing:-.035em;margin:0 0 14px;font-size:26px;font-weight:500}.contact-choice p{color:var(--muted);max-width:330px;margin:0 0 30px;font-size:14px;line-height:1.75}.contact-choice-action{align-items:center;gap:28px;margin-top:auto;font-size:13px;display:flex}.contact-choice-action>span{color:var(--accent-blue);font-size:21px}.contact-choice-stage{padding-bottom:56px;transition:opacity .26s,filter .26s,transform .26s}.contact-choice-stage.is-leaving{opacity:0;filter:blur(7px);pointer-events:none;transform:translateY(-8px)}.contact-form-stage{animation:contact-arrive .55s var(--ease) both}.contact-split{grid-template-columns:1fr 1fr;display:grid}.contact-copy{padding:56px 44px}.contact-back{color:var(--muted);background:0 0;border:0;margin-bottom:38px;padding:0;font-size:12px}.contact-back:hover{color:var(--accent-blue)}.contact-copy h1{outline:none;max-width:400px;font-size:clamp(36px,4vw,52px)}.contact-copy>p{max-width:340px;color:var(--muted);margin:24px 0 30px;font-size:15px;line-height:1.8}.contact-direct{text-underline-offset:5px;font-size:14px;text-decoration:underline}.contact-form{border-left:1px solid var(--border);flex-direction:column;gap:21px;min-width:0;padding:56px 44px 36px;display:flex}.contact-field-pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form label{min-width:0;font-size:12px;line-height:1.5;display:block}.contact-optional{float:right;color:var(--muted);font-size:10px}.contact-form input,.contact-form select,.contact-form textarea{background:color-mix(in srgb,var(--paper) 60%,white);border:1px solid var(--border);width:100%;min-height:46px;color:var(--ink);font:inherit;border-radius:6px;outline:none;margin-top:8px;padding:12px 13px;font-size:14px;transition:border-color .2s,box-shadow .2s;display:block}.contact-form textarea{resize:vertical;min-height:112px;max-height:360px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px #3c60b012}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted);opacity:.7}.contact-privacy,.contact-email-note{color:var(--muted);margin:0;font-size:11px;line-height:1.7}.contact-privacy a,.contact-faq p a{text-underline-offset:3px;text-decoration:underline}.contact-submit{background:var(--ink);min-height:48px;color:var(--paper);border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:20px;padding:13px 18px;font-size:13px;transition:background .2s;display:flex}.contact-submit:hover{background:var(--accent-blue)}.contact-submit svg{width:22px;height:22px}.contact-email-note{margin-top:-10px}.contact-info{border-block:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.contact-info>div{padding:30px 32px}.contact-info>div+div{border-left:1px solid var(--border)}.contact-info h2{color:var(--muted);margin:0 0 12px;font-size:12px;font-weight:500}.contact-info p,.contact-info a{margin:0;font-size:14px;line-height:1.7}.contact-info a:hover,.contact-direct:hover{color:var(--accent-blue)}.contact-faq{grid-template-columns:1fr 1.3fr;gap:52px;padding:60px 44px 72px;display:grid}.contact-faq h2{letter-spacing:-.035em;margin:0;font-size:30px;font-weight:500;line-height:1.15}.contact-faq details{border-bottom:1px solid var(--border)}.contact-faq details:first-child{border-top:1px solid var(--border)}.contact-faq summary{cursor:pointer;justify-content:space-between;gap:20px;padding:22px 0;font-size:14px;line-height:1.5;list-style:none;display:flex}.contact-faq summary::-webkit-details-marker{display:none}.contact-faq summary span{color:var(--accent-blue);font-size:20px;transition:transform .2s}.contact-faq details[open] summary span{transform:rotate(45deg)}.contact-faq p{color:var(--muted);margin:0 22px 22px 0;font-size:13px;line-height:1.8}@keyframes contact-arrive{0%{opacity:0;filter:blur(6px);transform:translateY(12px)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (max-width:1000px){.contact-page{padding-inline:20px}.contact-copy,.contact-form{padding:40px 26px}.contact-choices{padding:32px}.contact-choice{padding:28px}.contact-info>div{padding:26px 22px}.contact-faq{gap:30px;padding:48px 26px}}@media (max-width:760px){.contact-page{padding:80px 16px 0}.contact-intro{padding:38px 20px 30px}.contact-intro p{font-size:13px}.contact-choices{grid-template-columns:1fr;gap:14px;padding:22px 16px}.contact-choice{padding:24px}.contact-choice>svg{width:26px;height:26px;margin-bottom:20px}.contact-choice h2{font-size:23px}.contact-choice p{margin-bottom:20px;font-size:13px}.contact-choice-stage{padding-bottom:20px}.contact-split{grid-template-columns:1fr}.contact-copy{padding:30px 22px}.contact-copy h1{font-size:38px}.contact-back{margin-bottom:24px}.contact-copy>p{margin:18px 0;font-size:13px}.contact-form{border-left:0;border-top:1px solid var(--border);padding:28px 22px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}.contact-field-pair{grid-template-columns:1fr;gap:21px}.contact-info{grid-template-columns:1fr}.contact-info>div{padding:22px}.contact-info>div+div{border-left:0;border-top:1px solid var(--border)}.contact-faq{grid-template-columns:1fr;gap:24px;padding:38px 22px 48px}.contact-faq h2{font-size:28px}.contact-faq summary{font-size:13px}}@media (prefers-reduced-motion:reduce){.contact-form-stage{animation:none}.contact-choice-stage{transition:none}.contact-choice-stage.is-leaving{filter:none;transform:none}}.contact-page{isolation:isolate;padding-top:120px;position:relative;overflow:hidden}.contact-page>.hero-dot-layer{z-index:-1;filter:invert()brightness(.35);opacity:1;max-height:850px;-webkit-mask-image:linear-gradient(#000 60%,#0000);mask-image:linear-gradient(#000 60%,#0000)}.contact-frame{border-color:#15182325}.contact-intro{border-bottom:0;padding:64px 24px 46px}.contact-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:960px;margin:0 auto;padding:28px 30px 0}.contact-choice{text-align:center;border:0;background:#f7f5efc9;border-block:1px solid #15182325;border-radius:0;align-items:center;padding:30px 20px}.contact-choice+.contact-choice{border-left:1px solid #15182325}.contact-choice>svg{width:28px;height:28px;margin-bottom:20px}.contact-choice h2{margin-bottom:12px;font-size:24px}.contact-choice p{margin-bottom:22px;font-size:13px;line-height:1.5}.contact-choice-action{gap:14px;font-size:12px}.contact-choice-stage{padding-bottom:70px}.contact-faq{border-top:1px solid #15182325;padding:60px 30px 84px;display:block}.contact-faq h2{text-align:center;max-width:500px;margin:0 auto 38px;font-size:clamp(28px,3vw,40px)}.contact-faq>div{max-width:760px;margin:auto}.contact-faq details,.contact-faq details:first-child{border-color:#15182325}.contact-choice:focus-visible,.contact-back:focus-visible,.contact-faq summary:focus-visible{outline:2px solid var(--accent-blue);outline-offset:5px}@media (max-width:760px){.contact-page{padding-top:90px}.contact-intro{padding:36px 20px 26px}.contact-choices{grid-template-columns:1fr;padding:12px 20px 0}.contact-choice{padding:24px 18px}.contact-choice+.contact-choice{border-top:0;border-left:0}.contact-choice>svg{margin-bottom:14px}.contact-choice h2{font-size:22px}.contact-choice p{margin-bottom:14px}.contact-choice-stage{padding-bottom:40px}.contact-faq{padding:38px 22px 52px}.contact-faq h2{margin-bottom:28px}.contact-page>.hero-dot-layer{max-height:1100px}}.contact-badge{color:#7b7e83;background:#fffdf9;border:1px solid #15182322;border-radius:999px;place-items:center;width:52px;height:36px;margin-bottom:18px;display:grid;box-shadow:0 1px 2px #1518230a}.contact-badge svg{width:22px;height:22px}.contact-badge--client{color:var(--accent-blue)}.contact-form-shell{border-left:1px solid var(--border);min-width:0;height:var(--contact-form-height,auto);background:color-mix(in srgb,var(--paper) 90%,transparent);transition:height .7s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden}.contact-form-shell .contact-form{transform-origin:top;border-left:0;transition:opacity .3s,transform .65s cubic-bezier(.22,1,.36,1)}.contact-form-shell[data-state=sending],.contact-form-shell[data-state=sent]{height:max(320px,calc(var(--contact-form-height) * .5))}.contact-form-shell:not([data-state=idle]) .contact-form{opacity:0;pointer-events:none;transform:translateY(-22px)scaleY(.8)}.contact-delivery{text-align:center;animation:contact-delivery-in .5s var(--ease) both;outline:none;flex-direction:column;justify-content:center;align-items:center;padding:34px 24px;display:flex;position:absolute;inset:0}.contact-delivery.is-sending{animation-delay:.25s}.contact-sending-logo{object-fit:contain;width:64px;height:64px;animation:1.8s linear infinite contact-logo-spin}.contact-sent-mark{width:80px;height:80px;color:var(--accent-blue);margin-bottom:25px;overflow:visible}.contact-sent-ring{fill:var(--accent-soft);stroke:currentColor;stroke-width:1px;stroke-opacity:.28;stroke-dasharray:1;animation:.65s both contact-check-draw}.contact-sent-tick{stroke:currentColor;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;animation:.65s cubic-bezier(.22,1,.36,1) .25s both contact-check-draw}.contact-delivery h2{letter-spacing:-.045em;animation:contact-delivery-in .5s var(--ease) .3s both;margin:0 0 17px;font-size:clamp(28px,3vw,37px);font-weight:500;line-height:1.1}.contact-delivery p{color:var(--muted);animation:contact-delivery-in .5s var(--ease) .4s both;margin:0;font-size:14px;line-height:1.75}.contact-sent-back{border:0;border-bottom:1px solid var(--border);color:var(--ink);font:inherit;animation:contact-delivery-in .5s var(--ease) .5s both;background:0 0;margin-top:25px;padding:0 0 4px;font-size:11px}.contact-sent-back:hover{color:var(--accent-blue)}.contact-sent-back:focus-visible{outline:2px solid var(--accent-blue);outline-offset:5px}.contact-submit:disabled,.contact-back:disabled{cursor:default}@keyframes contact-logo-spin{to{transform:rotate(360deg)}}@keyframes contact-check-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes contact-delivery-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:760px){.contact-form-shell{border-left:0;border-top:1px solid var(--border)}.contact-form-shell .contact-form{border-top:0}.contact-delivery{padding:28px 22px}.contact-sent-mark{width:70px;height:70px;margin-bottom:20px}}@media (prefers-reduced-motion:reduce){.contact-form-shell,.contact-form-shell .contact-form{transition:none}.contact-form-shell:not([data-state=idle]) .contact-form{transform:none}.contact-delivery,.contact-delivery h2,.contact-delivery p,.contact-sent-back,.contact-sending-logo,.contact-sent-ring,.contact-sent-tick{animation:none}}
