/* Contact: a personal note, with the current project carried into the conversation. */
.contact-section{display:block;padding-top:96px;padding-bottom:0;min-height:max(780px,var(--scene-height,100dvh));background:radial-gradient(ellipse at 11% 27%,#4a326b16,transparent 52%),radial-gradient(ellipse at 91% 58%,#303c6e13,transparent 52%),#0b0c14}
.contact-section [hidden]{display:none!important}.contact-content{max-width:1320px;margin:0 auto;position:relative;z-index:1}.contact-topline{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:45px}.contact-topline .section-kicker{color:#b49cfa;font-size:10px;letter-spacing:.14em}.contact-index{font-size:9px;letter-spacing:.13em;color:#716b80;white-space:nowrap}.contact-layout{display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);gap:clamp(42px,6vw,95px);align-items:start}.contact-story,.contact-form-panel{min-width:0}.contact-title{font-family:'Space Grotesk',sans-serif;font-size:clamp(40px,4.25cqw,70px);font-weight:500;line-height:1.04;letter-spacing:-.065em;margin:0 0 27px;max-width:620px}.contact-description{font-size:16px;line-height:1.8;color:#a6a0b4;max-width:490px;margin:0 0 34px}.contact-project{--contact-glow-x:50%;--contact-glow-y:25%;position:relative;padding:25px 26px 22px;border:1px solid #58466f;border-radius:20px;background:radial-gradient(180px circle at var(--contact-glow-x) var(--contact-glow-y),#a18bdf0c,transparent 80%),linear-gradient(140deg,#211a2f9c,#171522);transition:border-color .3s,box-shadow .3s;overflow:hidden}.contact-project:hover{border-color:#8a6db0;box-shadow:0 0 35px #8062b708}.contact-project:before{content:'';position:absolute;top:-1px;left:25px;right:25px;height:1px;background:linear-gradient(90deg,transparent,#b29bc178,transparent);pointer-events:none}.contact-project-top{display:flex;justify-content:space-between;align-items:center;gap:18px}.contact-project h3{font-family:'Space Grotesk',sans-serif;font-weight:500;font-size:19px;line-height:1.4;letter-spacing:-.035em;margin:0;color:#e5ddf2;overflow-wrap:anywhere}.contact-edit-brief{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-height:44px;max-width:49%;flex:none;padding:3px 0 3px 8px;border:0;background:transparent;color:#b79be7;font-size:10px;font-weight:550;line-height:1.6;letter-spacing:.04em;text-align:right;transition:color .2s}.contact-edit-brief>span:last-child{font-size:18px}.contact-edit-brief:hover{color:#e4d1ff}.contact-project>p{font-size:13px;line-height:1.85;color:#aaa0bd;margin:16px 0 0;overflow-wrap:anywhere}.contact-project-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}.contact-project-tags>span{display:inline-flex;align-items:center;padding:5px 10px;min-height:25px;border-radius:999px;border:1px solid #66507740;background:#9a83b115;color:#c7b9d7;font-size:10px;line-height:1.5}.contact-attachment-toggle{display:block;margin:15px 0 -5px;padding:7px 0;min-height:44px;border:0;background:transparent;color:#82728f;font-size:10px;line-height:1.6;text-align:left;text-decoration:underline;text-underline-offset:3px}.contact-attachment-toggle:hover{color:#ba9ed7}.contact-signature{display:flex;align-items:center;gap:18px;margin-top:29px;min-height:125px}.contact-orbit{position:relative;width:115px;height:115px;flex:none;display:grid;place-items:center}.contact-orbit:before,.contact-orbit-ring{content:'';position:absolute;inset:8px;border:1px solid #81709e26;border-radius:50%;rotate:-24deg;scale:1 .64}.contact-orbit-ring{inset:1px;rotate:33deg;scale:.79 1}.contact-orbit:after{content:'';position:absolute;width:4px;height:4px;right:14px;top:34px;border-radius:50%;background:#aa8ce0;box-shadow:0 0 12px #af85ec66}.contact-orbit img{position:relative;display:block;width:83px;height:83px;object-fit:contain;rotate:-12deg;opacity:.65;filter:drop-shadow(0 7px 15px #6655a833);animation:contact-float 7s ease-in-out infinite}.contact-signature p{font-size:8px;line-height:2;letter-spacing:.12em;color:#9c8bad;margin:0}.contact-signature p>span{color:#635871}.contact-form-panel{position:relative;padding:30px;border:1px solid #3f374d;border-radius:22px;background:linear-gradient(145deg,#18162299,#10101999);box-shadow:0 30px 80px #00000015}.contact-form-panel:before{content:'';position:absolute;top:-1px;left:27px;right:27px;height:1px;background:linear-gradient(90deg,transparent,#a289c85c,transparent);pointer-events:none}.contact-section form,.contact-section fieldset{margin:0;padding:0;border:0;min-width:0}.contact-field{margin:0 0 25px;min-width:0}.contact-field label{display:block;margin-bottom:11px;color:#bdb5ce;font-size:10px;font-weight:550;line-height:1.5;letter-spacing:.1em;text-transform:uppercase}.contact-label-optional{font-size:9px;color:#746a84;font-weight:400;letter-spacing:.04em}.contact-field input,.contact-field textarea,.contact-copy-fallback{display:block;width:100%;border:1px solid #494153;border-radius:12px;background:#0e0e18;color:#eeebf5;font-family:'DM Sans',sans-serif;font-size:14px;line-height:1.65;padding:16px 18px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.contact-field input{height:58px}.contact-field textarea{min-height:148px;max-height:400px;resize:vertical}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#696174;opacity:1}.contact-field input:hover,.contact-field textarea:hover{border-color:#6c5a7f}.contact-field input:focus,.contact-field textarea:focus,.contact-copy-fallback:focus{border-color:#b092e1;box-shadow:0 0 0 3px #9d75cf14;background:#11101c}.contact-field [aria-invalid=true]{border-color:#b77998;box-shadow:0 0 0 3px #bc75970c}.contact-field-error{font-size:10px;line-height:1.7;color:#d3a5bd;margin:8px 0 0}.contact-honeypot{position:absolute;left:-9999px;top:auto;width:1px;height:1px;opacity:0;pointer-events:none}.contact-section button:focus-visible,.contact-section summary:focus-visible{outline:2px solid #c3a6f0;outline-offset:5px}.contact-section button:disabled{cursor:default}.contact-send{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:60px;overflow:hidden;border:1px solid #ccb0ff80;border-radius:13px;padding:16px 22px;background:#b396f4;color:#171020;box-shadow:0 4px 27px #8a5ed210;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:650;letter-spacing:.065em;text-transform:uppercase;transition:background .25s,box-shadow .3s,translate .25s}.contact-send-label,.contact-send-icon{position:relative;z-index:2}.contact-send-icon{font-size:23px;line-height:1;transition:translate .3s,rotate .3s}.contact-send-spark{position:absolute;inset:-100% -30%;background:linear-gradient(110deg,transparent 30%,#ffffff30 48%,transparent 65%);translate:-75% 0;rotate:15deg;transition:translate .7s;pointer-events:none}.contact-send:hover:not(:disabled){background:#c4abff;box-shadow:0 5px 35px #a37ae92c;translate:0 -2px}.contact-send:hover:not(:disabled) .contact-send-spark{translate:75% 0}.contact-send:hover:not(:disabled) .contact-send-icon{translate:3px -3px}.contact-send:active:not(:disabled){translate:0 0}.contact-send.is-loading{cursor:progress;background:#9d84cd}.contact-send.is-loading .contact-send-icon{font-size:0;width:18px;height:18px;border:2px solid #17102033;border-top-color:#24162d;border-radius:50%;animation:contact-spin .8s linear infinite}.contact-send.is-sent{background:#b7a3da;color:#312541;box-shadow:none}.contact-send.is-sent .contact-send-icon{font-size:0}.contact-send.is-sent .contact-send-icon:before{content:'✓';font-size:21px}.contact-attachment-note{margin:16px 0 0;font-size:10px;line-height:1.8;color:#8d819d;text-align:center}.contact-privacy{margin:24px 0 0;font-size:9px;line-height:1.85;color:#6d637d}.contact-privacy a{color:#9f88bd;text-decoration:underline;text-underline-offset:3px}.contact-privacy a:hover{color:#d5b9ff}.contact-feedback{display:flex;align-items:flex-start;gap:13px;margin-top:22px;padding:17px;border:1px solid #68507e;border-radius:12px;background:#7d569b0d;overflow-wrap:anywhere}.contact-feedback-mark{display:grid;place-items:center;flex:none;width:22px;height:22px;border:1px solid #b493d45c;border-radius:50%;color:#d7bafa;font-size:12px}.contact-feedback-mark:before{content:'↗'}.contact-feedback[data-status=success] .contact-feedback-mark:before{content:'✓'}.contact-feedback[data-status=error]{border-color:#9c628b66;background:#9f47720a}.contact-feedback[data-status=error] .contact-feedback-mark:before{content:'!'}.contact-feedback strong{display:block;margin:1px 0 5px;font-family:'Space Grotesk',sans-serif;font-size:13px;line-height:1.4;font-weight:500;color:#dac6ed}.contact-feedback p{margin:0;font-size:11px;line-height:1.8;color:#a390b5}.contact-copy-tools{margin-top:21px;border-top:1px solid #302737;padding-top:9px}.contact-copy-tools summary{display:flex;align-items:center;justify-content:space-between;gap:13px;min-height:40px;list-style:none;cursor:pointer;font-size:10px;color:#8c7b9e;line-height:1.7}.contact-copy-tools summary::-webkit-details-marker{display:none}.contact-copy-tools summary>span{font-size:17px;transition:rotate .2s}.contact-copy-tools[open] summary>span{rotate:90deg}.contact-copy-tools summary:hover{color:#d0b7ed}.contact-copy-actions{display:flex;flex-wrap:wrap;gap:10px;padding:7px 0 4px}.contact-copy-actions button{min-height:42px;padding:9px 15px;border:1px solid #594368;border-radius:999px;background:#8a62ac0b;color:#c6aed8;font:inherit;font-size:10px;cursor:pointer}.contact-copy-actions button:hover{background:#9367b922}.contact-copy-fallback{margin-top:15px;min-height:220px;font-size:11px;resize:vertical}.contact-bottom-row{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:50px;padding-top:25px;border-top:1px solid #302738;color:#73647f;font-size:8px;letter-spacing:.13em}.contact-bottom-row .back-to-top{margin:0;font-size:10px;border-bottom-color:#554261;letter-spacing:0}.contact-footer{max-width:1320px;margin:44px auto 0;padding:26px 0;border-top:1px solid #282333}.contact-enhanced .contact-reveal{opacity:0;translate:0 20px;transition:opacity .75s,translate .75s}.contact-enhanced.is-visible .contact-reveal{opacity:1;translate:0 0}.contact-enhanced .contact-story{transition-delay:.08s}.contact-enhanced .contact-form-panel{transition-delay:.16s}
@keyframes contact-float{0%,100%{translate:0 0;rotate:-12deg}50%{translate:0 -6px;rotate:-8deg}}@keyframes contact-spin{to{rotate:360deg}}
@media(max-width:1050px){.contact-layout{grid-template-columns:1fr;gap:33px;max-width:660px;margin:0 auto}.contact-topline{max-width:660px;margin-left:auto;margin-right:auto;margin-bottom:35px}.contact-title{font-size:clamp(43px,6cqw,64px);max-width:660px;margin-bottom:24px}.contact-description{max-width:590px;margin-bottom:27px;font-size:15px}.contact-project{padding:22px 24px}.contact-signature{display:none}.contact-form-panel{padding:29px}.contact-bottom-row{max-width:660px;margin-left:auto;margin-right:auto}.contact-footer{max-width:660px}.contact-project h3{font-size:21px}.contact-project>p{font-size:14px}}
@media(max-width:700px){.contact-section{padding-top:60px;min-height:0}.contact-topline{gap:12px;margin-bottom:30px}.contact-topline .section-kicker{font-size:8px;letter-spacing:.07em}.contact-index{font-size:8px;letter-spacing:.07em}.contact-layout{gap:28px}.contact-title{font-size:clamp(32px,8.8cqw,52px);line-height:1.08;letter-spacing:-.055em;margin:0 0 23px}.contact-description{font-size:14px;line-height:1.8;margin-bottom:28px}.contact-project{border-radius:17px;padding:18px 19px}.contact-project h3{font-size:19px}.contact-project-top{gap:13px}.contact-edit-brief{font-size:9px;gap:6px;letter-spacing:0}.contact-project>p{font-size:13px;line-height:1.8;margin-top:14px}.contact-project-tags{gap:6px;margin-top:16px}.contact-project-tags>span{font-size:10px;padding:4px 9px}.contact-form-panel{padding:0;border:0;background:transparent;box-shadow:none;border-radius:0}.contact-form-panel:before{display:none}.contact-field{margin-bottom:24px}.contact-field label{font-size:10px;letter-spacing:.06em;margin-bottom:10px}.contact-label-optional{font-size:9px}.contact-field input,.contact-field textarea{font-size:16px;padding:15px 16px}.contact-field input{height:56px}.contact-field textarea{min-height:145px}.contact-send{min-height:59px;border-radius:13px;padding:15px 20px;font-size:12px;letter-spacing:.04em}.contact-attachment-note{font-size:10px;line-height:1.9;margin-top:16px}.contact-feedback{padding:15px;gap:11px}.contact-feedback strong{font-size:13px}.contact-feedback p{font-size:11px}.contact-privacy{font-size:9px;line-height:1.9;margin-top:21px}.contact-bottom-row{margin-top:36px;gap:14px;font-size:6px;letter-spacing:.09em}.contact-bottom-row .back-to-top{font-size:10px;gap:12px}.contact-footer{margin-top:35px}.contact-footer>span:nth-child(2){font-size:6px;line-height:1.8}.contact-copy-tools{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.contact-section *,.contact-section *:before,.contact-section *:after{animation:none!important;transition:none!important}.contact-enhanced .contact-reveal{opacity:1;translate:0 0}}



/* Keep one footer separator and place the marked row directly above it. */
.contact-section .contact-content{display:flex;flex-direction:column}
.contact-section .contact-bottom-row{margin-top:auto;padding-top:100px;border-top:0}
.contact-section .contact-footer{margin-top:20px}
@media(max-width:650px){.contact-section .contact-bottom-row{padding-top:76px}.contact-section .contact-footer{margin-top:21px}}
