/* A handwritten invitation and a note with room to answer. */
body.contact-live .shared-header{margin-bottom:56px}
body.contact-live .contact-composition:not(.contact-confirmation){
 width:min(560px,calc(100% - 48px));
 grid-template-columns:minmax(0,1fr);gap:36px 0;
 align-items:start;margin:0 auto 64px;
}
body.contact-live .contact-heading h1{
 font-size:clamp(42px,calc(32px + 2.4vw),68px);
 line-height:1.12;letter-spacing:0;text-wrap:normal;
 color:#53e5fd;
}
body.contact-live .contact-heading h1>span{display:inline}
body.contact-live .contact-heading h1>span:last-child{display:block;white-space:normal}
body.contact-live .contact-heart{width:clamp(22px,2vw,28px);height:clamp(22px,2vw,28px);margin-left:4px}
body.contact-live .contact-heart{color:#F519AF}
body.contact-live .contact-form{width:100%;max-width:560px;margin:0}
body.contact-live .note-row{
 display:grid;grid-template-columns:minmax(0,1fr);
 gap:10px;align-items:start;margin:0;
}
body.contact-live .note-row+.note-row{margin-top:32px}
body.contact-live .note-row>label{
 font-size:clamp(24px,calc(22px + .45vw),28px);
 line-height:1.3;overflow-wrap:anywhere;
}
body.contact-live .note-field-wrap{width:100%;min-width:0}
body.contact-live .note-answer{
 min-height:56px;padding:8px 1px 10px;
 font-size:26px;line-height:1.4;
 color:#d2bbf2;caret-color:#d2bbf2;
}
body.contact-live .note-answer:not([aria-invalid=true]){border-bottom-color:transparent;cursor:text}
body.contact-live .note-answer:focus-visible{outline-color:#d2bbf2}
body.contact-live textarea.note-answer{
 min-height:96px;padding-top:10px;padding-bottom:12px;
 overflow-y:auto;resize:vertical;
}
body.contact-live .note-error{margin-top:10px}
body.contact-live .note-actions{margin-top:36px}
body.contact-live .note-status{max-width:42ch}
@media(min-width:761px){
 body.contact-live .contact-composition:not(.contact-confirmation){width:min(560px,calc(100% - 64px))}
}
@media(min-width:1120px){
 body.contact-live .contact-composition:not(.contact-confirmation){
  width:min(980px,calc(100% - 80px));
  grid-template-columns:minmax(0,320px) minmax(0,560px);
  gap:0 100px;margin-bottom:80px;
 }
 body.contact-live .contact-form{margin-top:28px}
 body.contact-live .contact-heading{align-self:center;margin-top:28px}
}
@media(max-width:760px){
 body.contact-live .shared-header{margin-bottom:44px}
 body.contact-live .note-actions{margin-top:32px}
}
@media(max-width:359px){
 body.contact-live .contact-composition:not(.contact-confirmation){width:calc(100% - 40px)}
}

/* The handwriting carries the note; helpers stay quiet and readable. */
body.contact-live .note-answer::placeholder{font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:400;line-height:1.4;color:#A196AC;opacity:1}
body.contact-live form[novalidate] textarea.note-answer{min-height:58px;padding-top:8px;padding-bottom:10px;resize:none;overflow:hidden}
body.contact-live .contact-form .note-send{color:#A196AC;transition:color 160ms ease-out;opacity:1}
body.contact-live .contact-form .note-send::before{opacity:0;transform:none;transition:opacity 160ms ease-out,transform 160ms ease-out}
body.contact-live .contact-form:is([data-ready=true],:not([novalidate]):valid) .note-send:not(:disabled){color:#111}
body.contact-live .contact-form:is([data-ready=true],:not([novalidate]):valid) .note-send:not(:disabled)::before{opacity:1}
body.contact-live .contact-form:is([data-ready=true],:not([novalidate]):valid) .note-send:not(:disabled):hover::before{transform:rotate(-1deg) scaleX(1.025)}
body.contact-live .contact-form:is([data-ready=true],:not([novalidate]):valid) .note-send:not(:disabled):active::before{transform:rotate(0) scaleX(.98)}
body.contact-live .contact-form .note-send:disabled{cursor:default;opacity:1}
body.contact-live .contact-form[data-delivery-state=sending] .note-send{color:#111}
body.contact-live .contact-form[data-delivery-state=sending] .note-send::before{opacity:.72}
body.contact-live .contact-form[data-delivery-state=submitted] .note-send{color:var(--page-ink)}
@media(prefers-reduced-motion:reduce){body.contact-live .contact-form .note-send,body.contact-live .contact-form .note-send::before{transition:none}}
