.contact-page{max-width:760px;padding-top:24px}.contact-field{display:grid;gap:6px;margin:20px 0}.contact-field label{font-size:16px}.contact-field input,.contact-field textarea{font:inherit;color:#292929;border:1px solid #ccc;border-radius:10px;padding:10px 12px;width:100%;background:#fafafa}.contact-field textarea{resize:vertical}.contact-field input:focus-visible,.contact-field textarea:focus-visible{outline:2px solid #fa5c08;outline-offset:3px}.privacy-field{display:flex;align-items:center;flex-direction:row-reverse;justify-content:flex-end;flex-wrap:wrap}.privacy-field input{width:20px;height:20px;accent-color:#fa5c08}.errorlist{color:#9d3200;padding-left:20px}.contact-note{font-size:14px;color:#555}.contact-page button,.contact-confirmation button{font:inherit;min-height:44px;border:0;border-radius:10px;background:#fa5c08;color:#181818;padding:10px 24px;cursor:pointer}.contact-page a{color:#b34000}
.contact-page{margin-inline:auto;width:100%;box-sizing:border-box;padding-bottom:40px}.contact-page h1{margin-bottom:12px}.contact-intro{line-height:1.65;margin-bottom:28px}.contact-page form{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.contact-field{margin:0;min-width:0}.contact-field input,.contact-field textarea{box-sizing:border-box}.contact-field:has(#id_subject),.contact-field:has(#id_message),.privacy-field,.contact-note,.contact-page form>.errorlist{grid-column:1/-1}.contact-note{margin:0;line-height:1.6}.contact-page button[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:10px;justify-self:start;grid-column:1/-1}.contact-page button:disabled{opacity:.65;cursor:wait}.contact-page [role=status]{padding:24px;border:1px solid #fa5c08;border-radius:14px}.contact-page input[aria-invalid=true],.contact-page textarea[aria-invalid=true]{border-color:#fa5c08}@media(max-width:600px){.contact-page form{grid-template-columns:1fr}.contact-page button[type=submit]{width:100%}}
.contact-flying-envelope{position:fixed;top:0;left:0;z-index:10001;pointer-events:none;filter:drop-shadow(0 3px 3px #0002)}.contact-confirmation{box-sizing:border-box;width:min(440px,calc(100vw - 32px));border:1px solid #fa5c08;border-radius:20px;padding:28px;color:#292929;background:white;text-align:center;font:inherit;box-shadow:0 16px 60px #0002}.contact-confirmation::backdrop{background:#0006;backdrop-filter:blur(3px)}.contact-confirmation>svg{color:#fa5c08}.contact-confirmation p{line-height:1.6}.contact-confirmation[open]{animation:contact-confirm-in .25s ease-out}@keyframes contact-confirm-in{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.contact-confirmation[open]{animation:none}}
.contact-page{animation:contact-content-enter 520ms 100ms cubic-bezier(.22,1,.36,1) backwards}
@keyframes contact-content-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
body:has([data-public-motion][aria-pressed=true]) .contact-page{animation:none}
@media(prefers-reduced-motion:reduce){.contact-page{animation:none}}
.contact-required-note{grid-column:1/-1;margin:0;font-size:14px}.required-mark{color:#fa5c08}.contact-field:has(#id_phone){grid-column:1/-1}
.contact-confirmation{overflow:visible;border-color:#e5e5e5;border-radius:14px;padding:28px;box-shadow:0 12px 40px #0002}.contact-confirmation h2{font-size:24px;margin:0 0 12px}.contact-confirmation p{font-size:16px;margin:0 0 22px}.contact-confirmation[open]{animation:contact-modal-fade 180ms ease-out}.contact-perched-envelope{position:absolute;left:69px;top:49px;transform:rotate(12deg)}@keyframes contact-modal-fade{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.contact-confirmation[open]{animation:none}}
.contact-phone-group{display:flex;gap:10px;min-width:0}.contact-phone-group>input{flex:1;min-width:0}.contact-prefix{position:relative;flex:0 0 106px}.contact-prefix select{appearance:none;width:100%;height:100%;min-height:44px;padding:10px 32px 10px 12px;border:1px solid #ccc;border-radius:10px;background:#fff;color:#292929;font:inherit;cursor:pointer;transition:border-color .18s,box-shadow .18s}.contact-prefix>svg{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#fa5c08;pointer-events:none}.contact-prefix select:hover{border-color:#fa5c08}.contact-prefix select:focus-visible{outline:2px solid #fa5c08;outline-offset:3px}.contact-prefix select[aria-invalid=true]{border-color:#fa5c08}
.contact-field:has(#id_subject),.contact-field:has(#id_phone){grid-column:auto}.contact-prefix{flex-basis:112px}.contact-prefix>[hidden]{display:none}.phone-country-picker{position:relative;height:100%}.phone-country-picker summary{display:flex;align-items:center;gap:7px;min-height:44px;height:100%;padding:10px;border:1px solid #ccc;border-radius:10px;font:inherit;cursor:pointer;list-style:none;background:white}.phone-country-picker summary::-webkit-details-marker{display:none}.phone-country-picker summary:after{content:'';width:6px;height:6px;border-right:1.5px solid #fa5c08;border-bottom:1.5px solid #fa5c08;transform:rotate(45deg);margin-left:auto;transition:transform .2s}.phone-country-picker[open] summary:after{transform:rotate(225deg)}.phone-country-picker summary:hover,.phone-country-picker[open] summary{border-color:#fa5c08}.phone-country-picker summary:focus-visible{outline:2px solid #fa5c08;outline-offset:3px}.phone-country-options{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:min(260px,65vw);max-height:230px;overflow:auto;padding:5px;border:1px solid #ddd;border-radius:12px;background:#fff;box-shadow:0 8px 24px #0002}.phone-country-options button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;min-height:40px;background:white;color:#292929;text-align:left;font-size:14px;border-radius:7px}.phone-country-options button:hover,.phone-country-options button[aria-pressed=true]{background:#fff4ec;color:#b34000}.phone-country-picker img,.phone-country-flag{width:24px;height:24px;flex-shrink:0;object-fit:contain;font:22px/24px 'Apple Color Emoji','Segoe UI Emoji',sans-serif}.phone-country-picker[open] .phone-country-options{animation:phone-options-in .2s ease-out}@keyframes phone-options-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.phone-country-picker[open] .phone-country-options{animation:none}.phone-country-picker summary:after{transition:none}}@media(max-width:600px){.contact-field:has(#id_subject),.contact-field:has(#id_phone){grid-column:1/-1}}
.titlebar:has(+.contact-page){align-items:center;column-gap:24px;padding-bottom:20px}
.titlebar:has(+.contact-page) h1{margin:0;align-self:center;transform:translateY(-2px)}
main>.contact-page{padding-top:18px}
.contact-page .contact-intro{margin:0 0 14px;line-height:1.5}
.contact-page form{row-gap:12px}
.contact-page .contact-required-note{margin:0;line-height:1.4}
.phone-country-picker summary:after{flex-shrink:0;margin-left:4px}
@media(max-width:600px){.titlebar:has(+.contact-page){column-gap:14px}.titlebar:has(+.contact-page) h1{flex-basis:auto}main>.contact-page{padding-top:16px}}
.contact-page form>.privacy-field{grid-column:1;align-self:center}.contact-page form>.contact-required-note{grid-column:2;align-self:center;justify-self:end;text-align:right}.privacy-field .errorlist{flex-basis:100%}@media(max-width:600px){.contact-page form>.privacy-field,.contact-page form>.contact-required-note{grid-column:1/-1}}
.contact-phone-group .contact-prefix{flex:0 0 auto;width:max-content;min-width:96px}.contact-prefix .phone-country-picker summary{padding-inline:8px;gap:5px}.contact-prefix .phone-country-picker summary:after{margin-left:1px}
