.v2-contact{--bg:#faf9f6;--panel:#fff;--line:#e4e1d8;--line-warm:#e9e0d0;--fg:#14161c;--fg-2:#262a35;--soft:#4b5060;--mute:#6f7384;--brand:#c2570c;--bad:#c53030;--mesh:#d9d5ca;--sans:var(--font-inter),"Inter",system-ui,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--serif:Georgia,"Times New Roman",serif;isolation:isolate;clip-path:inset(0);background:var(--bg);color:var(--fg);font:15.5px/1.55 var(--sans);position:relative;overflow-x:clip}.v2-contact .cv-mesh{z-index:0;pointer-events:none;opacity:.55;width:100%;height:100%;position:fixed;inset:0}.v2-contact .wrap{z-index:1;max-width:1180px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));margin:0 auto;position:relative}.v2-contact h1,.v2-contact h2,.v2-contact p,.v2-contact ul{margin:0}.v2-contact ul{padding:0;list-style:none}.v2-contact a{color:inherit;text-decoration:none}.v2-contact .rq-i{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.v2-contact .cv-g{-moz-column-gap:64px;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);column-gap:64px;padding-block:52px 44px;display:grid}.v2-contact .cv-intro{grid-area:1/1;min-width:0}.v2-contact .cv-card{grid-area:1/2/3;min-width:0}.v2-contact .cv-direct{border-top:1px solid var(--line);flex-direction:column;grid-area:2/1;min-width:0;margin-top:28px;padding-top:26px;display:flex}.v2-contact .eb{font:500 13px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brand);margin-bottom:14px}.v2-contact h1{letter-spacing:-.025em;text-wrap:balance;font-size:clamp(36px,4.6vw,58px);font-weight:600;line-height:1.08}.v2-contact .it{font-family:var(--serif);color:var(--brand);letter-spacing:-.02em;font-style:italic;font-weight:500}.v2-contact .ls{color:var(--soft);max-width:44ch;margin-top:14px;font-size:18.5px}.v2-contact .cv-reply{color:var(--soft);align-items:center;gap:10px;margin-top:20px;font-size:16.5px;display:flex}.v2-contact .cv-reply .rq-i{color:var(--brand)}.v2-contact .cv-direct h2{letter-spacing:-.01em;font-size:18.5px;font-weight:600}.v2-contact .cv-ch{gap:12px;margin-top:16px;display:grid}.v2-contact .cv-ch a{overflow-wrap:anywhere;align-items:center;gap:12px;font-size:18px;display:inline-flex}.v2-contact .cv-ch .rq-i{color:var(--brand)}.v2-contact .cv-ch a:hover span{text-underline-offset:3px;text-decoration:underline}.v2-contact .cv-ch small{color:var(--mute);font-size:15.5px}.v2-contact .cv-two{flex-wrap:wrap;gap:12px 26px;display:flex}.v2-contact .cv-since{color:var(--mute);margin-top:auto;padding-top:28px;font-size:15px}.v2-contact .cv-card{background:var(--panel);border:1px solid var(--line-warm);border-radius:20px;padding:30px;box-shadow:0 26px 60px -40px #5c3a1652}.v2-contact .cv-card h2{letter-spacing:-.02em;scroll-margin-top:96px;font-size:26px;font-weight:600;line-height:1.15}.v2-contact .cv-sub{color:var(--soft);margin-top:5px;font-size:16.5px}.v2-contact .cv-form{margin-top:20px}.v2-contact .cv-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.v2-contact .cv-w{grid-column:1/-1}.v2-contact .cv-f{flex-direction:column;gap:6px;min-width:0;display:flex}.v2-contact .cv-f label{font-size:15px;font-weight:600}.v2-contact .cv-f label i{color:var(--brand);font-style:normal}.v2-contact .cv-f input,.v2-contact .cv-f select,.v2-contact .cv-f textarea{border:1px solid var(--line);width:100%;min-width:0;color:var(--fg);font:16.5px/1.4 var(--sans);background:#fff;border-radius:11px;outline:0;padding:11px 13px;scroll-margin-top:96px;transition:border-color .18s,box-shadow .18s}.v2-contact .cv-f input::-moz-placeholder{color:var(--mute);opacity:1}.v2-contact .cv-f textarea::-moz-placeholder{color:var(--mute);opacity:1}.v2-contact .cv-f input::placeholder,.v2-contact .cv-f textarea::placeholder{color:var(--mute);opacity:1}.v2-contact .cv-f input:hover,.v2-contact .cv-f select:hover,.v2-contact .cv-f textarea:hover{border-color:#d3ccbc}.v2-contact .cv-f input:focus,.v2-contact .cv-f select:focus,.v2-contact .cv-f textarea:focus{border-color:var(--brand);--tw-ring-shadow:0 0 #0000;--tw-ring-offset-shadow:0 0 #0000;outline:0;box-shadow:0 0 0 3px #c2570c24}.v2-contact .cv-f textarea{resize:vertical;display:block}.v2-contact .cv-f select{appearance:none;text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236F7384' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-inline-end:38px}.v2-contact .cv-f select:has(option[value=""]:checked){color:var(--mute)}.v2-contact .cv-f select option{color:var(--fg)}.v2-contact .cv-f [aria-invalid=true]{border-color:var(--bad)}.v2-contact .cv-f [aria-invalid=true]:focus{border-color:var(--bad);box-shadow:0 0 0 3px #c5303021}.v2-contact .cv-e{color:var(--bad);font-size:14.5px}.v2-contact .cv-fail{margin-top:12px}.v2-contact .cv-tg{color:var(--brand);font:600 16px var(--sans);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;margin-top:16px;padding:4px 0;display:inline-flex}.v2-contact .cv-pl{flex:none;width:12px;height:12px;transition:transform .28s;position:relative}.v2-contact .cv-pl:before,.v2-contact .cv-pl:after{content:"";background:currentColor;border-radius:1px;position:absolute}.v2-contact .cv-pl:before{inset:5px 0}.v2-contact .cv-pl:after{inset:0 5px}.v2-contact .cv-tg[aria-expanded=true] .cv-pl{transform:rotate(135deg)}.v2-contact .cv-tg:hover span:last-child{text-underline-offset:3px;text-decoration:underline}.v2-contact .cv-x{grid-template-rows:0fr;transition:grid-template-rows .32s;display:grid}.v2-contact .cv-x.open{grid-template-rows:1fr}.v2-contact .cv-xi{opacity:0;min-height:0;margin-inline:-4px;padding-inline:4px;transition:opacity .24s;overflow:hidden}.v2-contact .cv-x.open .cv-xi{opacity:1}.v2-contact .cv-xg{padding-block:12px 4px}.v2-contact .cv-sb{background:var(--fg);color:#fff;width:100%;font:600 17.5px var(--sans);cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;margin-top:18px;padding:15px 22px;transition:background .18s;display:flex}.v2-contact .cv-sb:hover{background:var(--fg-2)}.v2-contact .cv-sb:disabled{opacity:.6;cursor:not-allowed}.v2-contact .cv-sb .rq-i{width:18px;height:18px;transition:transform .2s}.v2-contact .cv-sb:hover .rq-i{transform:translate(4px)}.v2-contact .cv-priv{color:var(--mute);gap:9px;margin-top:14px;font-size:13.5px;line-height:1.5;display:flex}.v2-contact .cv-priv .rq-i{width:15px;height:15px;margin-top:2px}.v2-contact .cv-priv a{text-underline-offset:2px;text-decoration:underline}.v2-contact .cv-priv a:hover{color:var(--fg)}.v2-contact a:focus-visible,.v2-contact button:focus-visible{outline:2px solid var(--brand);outline-offset:3px;--tw-ring-shadow:0 0 #0000;--tw-ring-offset-shadow:0 0 #0000;border-radius:4px}.v2-contact .cv-sb:focus-visible{border-radius:12px}.v2-contact .cv-info{border-top:1px solid var(--line);flex-wrap:wrap;gap:20px 64px;padding-block:26px 44px;display:flex}.v2-contact .cv-info h2{font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-bottom:9px}.v2-contact .cv-info p{color:var(--soft);font-size:15.5px}.v2-contact .cv-info a:hover{text-underline-offset:3px;text-decoration:underline}@media (max-width:980px){.v2-contact .cv-g{grid-template-rows:none;grid-template-columns:minmax(0,1fr);padding-block:32px 30px}.v2-contact .cv-intro,.v2-contact .cv-card,.v2-contact .cv-direct{grid-area:auto/1}.v2-contact .cv-card{margin-top:24px}}@media (max-width:560px){.v2-contact .cv-card{border-radius:18px;padding:20px 18px}.v2-contact .cv-grid{grid-template-columns:minmax(0,1fr)}.v2-contact .cv-ch a{font-size:17.5px}}@media (prefers-reduced-motion:reduce){.v2-contact *,.v2-contact :before,.v2-contact :after{transition:none!important}}[dir=rtl] .v2-contact *{letter-spacing:0}[dir=rtl] .v2-contact .it,.v2-contact:lang(zh) .it{font-style:normal}[dir=rtl] .v2-contact .eb,[dir=rtl] .v2-contact .cv-info h2{text-transform:none}[dir=rtl] .v2-contact .cv-f select{background-position:12px}[dir=rtl] .v2-contact .cv-f input[dir=ltr]{text-align:right}[dir=rtl] .v2-contact .cv-sb .rq-arr{transform:scaleX(-1)}[dir=rtl] .v2-contact .cv-sb:hover .rq-arr{transform:scaleX(-1)translate(4px)}main:has(.v2-contact)+footer{margin-top:0}
