.contact-page{background:var(--yellow)}
.contact-page header{position:relative;height:108px}.back-home{font-size:14px;font-weight:800}.back-home span{margin-left:14px}
.letter-layout{max-width:1300px;margin:22px auto 90px;padding:0 5vw;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:7vw;align-items:start}
.letter-intro{position:sticky;top:35px;padding-top:22px}.letter-intro h1{font-size:clamp(42px,5vw,66px);line-height:1.35;letter-spacing:-.045em;margin:22px 0}.letter-description{font-size:16px;line-height:2}.letter-cat{position:relative;margin:35px -30px -10px;max-width:420px}.letter-cat img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.letter-cat>span{position:absolute;right:0;top:0;font-weight:800;font-size:17px;transform:rotate(6deg);border-bottom:2px dashed #54352165;padding-bottom:8px}.direct-email{display:inline-flex;gap:18px;font-family:Outfit,sans-serif;font-size:18px;border-bottom:1px solid;padding-bottom:5px;margin:12px 0}
.letter-paper{min-width:0;background:var(--cream);padding:34px 38px 38px;border-radius:12px 12px 30px 30px;box-shadow:9px 12px 0 #b7872830;border-top:8px solid var(--blue)}.letter-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px dashed #54352140;padding-bottom:22px;margin-bottom:30px;font-size:13px;font-weight:700}.letter-stamp{border:2px solid #54352160;padding:10px;transform:rotate(8deg);font:700 12px/1.3 Outfit,sans-serif;letter-spacing:2px;text-align:center;background:#b8dce970}.letter-paper h2{font-size:28px;margin:0 0 10px}.required-note,.after-note{font-size:13px;line-height:1.9}.required-note{margin-bottom:28px}.field{margin-bottom:24px}.field label{display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px;margin-bottom:10px}.field label>span{font-size:11px;font-weight:700;background:#eee3ce;padding:2px 7px;border-radius:4px}.field input,.field select,.field textarea{font:inherit;font-size:16px;color:var(--ink);width:100%;min-height:50px;padding:13px 15px;border:1px solid #54352155;background:#fffdf7;border-radius:9px;transition:border-color .2s,box-shadow .2s}.field textarea{resize:vertical;min-height:180px;line-height:1.8}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #886238;outline-offset:2px}.field ::placeholder{color:#8a7c6e;opacity:1;font-size:14px}.field small{display:block;margin-top:7px;font-size:12px}.character-count{text-align:right}.privacy-note{border-block:1px solid #54352130;padding:17px 0;margin:25px 0 20px;font-size:13px;line-height:1.9}.privacy-note summary{cursor:pointer;font-size:14px;font-weight:700}.privacy-note p{margin:12px 0 0}.consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.8;cursor:pointer}.consent input{flex:0 0 18px;width:18px;height:18px;margin-top:4px;accent-color:#543521}.send-letter{display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--cream);border:0;border-radius:30px;padding:18px 26px;font-size:16px;font-weight:800;width:100%;margin-top:28px;transition:background .2s}.send-letter:hover{background:#775032}.send-letter:disabled{opacity:.6;cursor:wait}.after-note{color:#79634e}.form-error{background:#ffe5dd;border-left:3px solid #ae4128;color:#823421;padding:14px;font-size:14px;line-height:1.8}.form-success{padding:36px 0 70px}.form-success h2{font-size:40px;line-height:1.5}.form-success p{line-height:2}.receipt{margin:30px 0;font-size:12px;overflow-wrap:anywhere}.website-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-page footer{min-height:100px;height:auto;padding:30px 5vw;border-top:1px solid #54352130;font-size:14px;display:flex;justify-content:space-between;gap:20px}.contact-page [hidden]{display:none!important}
@media(max-width:800px){.contact-page header{height:85px}.letter-layout{grid-template-columns:1fr;gap:20px;margin:10px auto 55px;padding:0 5vw}.letter-intro{position:relative;top:auto;padding-top:0;min-height:310px}.letter-intro h1{font-size:39px;margin:14px 0;position:relative;z-index:1}.letter-description{font-size:14px;line-height:1.9;position:relative;z-index:1;max-width:65%}.letter-cat{position:absolute;width:48%;right:-1%;bottom:32px;margin:0}.letter-cat>span{font-size:12px;right:8px;top:0;transform:rotate(5deg)}.direct-email{font-size:16px;margin-top:16px}.letter-paper{padding:25px 23px 30px;box-shadow:5px 7px 0 #b7872830}.letter-top{margin-bottom:24px}.letter-paper h2{font-size:26px}.contact-page footer{font-size:12px}.back-home{font-size:12px}}
@media(prefers-reduced-motion:reduce){.contact-page *{transition:none!important;scroll-behavior:auto!important}}
