@import url("glass-material.css");
:root{--night:#14232c;--white:#eeeFE9;--muted:#acbbb9;--sage:#b7cdc5;--paper:#f4f1e9;--ink:#263c3b;--quiet:#697673;--rule:#d9dcd2;--ease:cubic-bezier(.22,1,.36,1);font-family:'Segoe UI',Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{min-width:280px;scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--white);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.6}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}svg{display:block}button:focus-visible,a:focus-visible{outline:2px solid var(--sage);outline-offset:5px}input:focus-visible,textarea:focus-visible{outline:none}::selection{background:#b7cdc5;color:#14232c}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:16px;z-index:20;background:var(--paper);color:var(--ink);padding:12px 18px}.skip-link:focus{top:12px}
.atmosphere{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 3% 12%,#28413f55,transparent 62%),linear-gradient(130deg,#14232c,#182a32 70%,#1b3034)}.glow{position:absolute;width:75vw;height:75vw;border-radius:50%;filter:blur(90px);opacity:.12;will-change:transform}.glow-one{left:-30vw;top:10vh;background:radial-gradient(circle,#7caba0,transparent 65%);animation:drift 25s ease-in-out infinite alternate}.glow-two{right:-40vw;bottom:-45vw;background:radial-gradient(circle,#788ea8,transparent 60%);animation:drift 32s ease-in-out infinite alternate-reverse}.grain{position:absolute;inset:0;opacity:.14;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23ffffff' filter='url(%23n)' opacity='.3' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.site-shell{width:min(1440px,100%);padding:0 clamp(24px,5vw,80px);margin:auto}.masthead{height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d3e2da25;gap:20px}.wordmark{font:27px/1 Georgia,'Times New Roman',serif;letter-spacing:-1px;white-space:nowrap}.wordmark i{font-weight:400}.masthead-right{display:flex;align-items:center;gap:36px}.section-label{font-size:10px;letter-spacing:.2em;color:var(--muted)}.data-link{display:flex;gap:18px;align-items:center;font-size:12px;border:1px solid #bbd1c74a;border-radius:50px;padding:9px 17px;transition:background .3s,border-color .3s}.data-link:hover{background:#b7cdc51c;border-color:#bbd1c79a}.data-link svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.2;transition:transform .4s var(--ease)}.data-link:hover svg{transform:translate(2px,-2px)}
.contact-layout{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:clamp(40px,6vw,94px);padding:64px 0 66px;align-items:center}.invitation{padding:10px 0 0;position:relative}.eyebrow{font-size:10px;letter-spacing:.24em;display:flex;align-items:center;gap:12px;margin:0 0 28px;color:var(--sage)}.eyebrow-line{width:28px;height:1px;background:var(--sage)}h1{font:clamp(48px,4.3vw,69px)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-2.9px;font-weight:400;margin:0 0 27px}h1>span,h1>em{display:block}h1 em{font-size:1.23em;line-height:1.05;color:var(--sage);font-weight:400;margin-top:5px;letter-spacing:-3px}.invitation-copy{font-size:14px;line-height:1.9;color:#c0ccc9;max-width:350px;margin:0 0 27px}.delivery-note{display:flex;gap:10px;align-items:flex-start;max-width:330px}.small-dot{width:5px;height:5px;flex:0 0 5px;border-radius:50%;margin-top:8px;background:var(--sage);box-shadow:0 0 12px #a1bfb333}.delivery-note p{font-size:12px;line-height:1.85;color:var(--muted);margin:0}.correspondence-art{position:relative;max-width:400px;margin:8px -10px 11px -20px;height:170px}.correspondence-art svg{width:100%;height:100%;overflow:visible}.flight-path{stroke-dasharray:7 6;animation:line-travel 32s linear infinite}.orbit-mark{transform-origin:304px 78px;animation:postmark-float 9s ease-in-out infinite}.art-caption{position:absolute;bottom:7px;left:20px;font-size:8px;letter-spacing:.23em;color:#93aaa4a8}.research-links{display:flex;flex-wrap:wrap;gap:25px;font-size:12px}.research-links a{display:flex;align-items:center;gap:12px;padding-bottom:7px;border-bottom:1px solid #c6d6ce35;transition:border-color .3s,color .3s}.research-links a:hover{color:#d2e3db;border-color:#c6d6ce}.research-links a span{transition:transform .35s var(--ease)}.research-links a:hover span{transform:translate(2px,-2px)}
.letter-wrap{position:relative;perspective:1600px;min-width:0}.sheet-shadow{position:absolute;inset:12px -8px -8px 12px;background:#d4ded11a;transform:rotate(1.3deg);border:1px solid #d4ded12b;pointer-events:none}.letter{position:relative;background:var(--paper);color:var(--ink);color-scheme:light;padding:34px 38px 26px;box-shadow:0 28px 80px #050e163b;min-width:0;border-top:3px solid #adc3b6;transform-origin:50% 12%;transition:box-shadow .6s;isolation:isolate}.letter:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,#fff4,transparent 45%,#ced2ba10)}.letter-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.paper-eyebrow{font-size:9px;letter-spacing:.19em;color:var(--quiet);margin:0 0 4px}h2{font:34px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-1px;font-weight:400;margin:0}.postage{border:1px solid #b4bcae;outline:1px dashed #b4bcae;outline-offset:3px;width:43px;height:52px;display:flex;align-items:center;justify-content:center;position:relative;margin-right:7px;color:#688271;transform:rotate(5deg)}.postage span{font:italic 23px Georgia,serif}.postage svg{position:absolute;width:48px;right:22px;bottom:-6px;fill:none;stroke:#91a18b;stroke-width:.8}.recipient{display:flex;align-items:center;gap:19px;padding-bottom:18px;border-bottom:1px solid var(--rule);margin-bottom:23px}.recipient>span:first-child{font-size:9px;letter-spacing:.14em;color:var(--quiet)}.recipient-name{font-size:12px;letter-spacing:.01em}.recipient-name span{color:var(--quiet);font-size:10px;margin-left:10px}.recipient-mark{margin-left:auto;color:#6c8574;font-size:15px}.field{min-width:0}.identity-row{display:grid;grid-template-columns:1fr 1fr;gap:27px}.field label{display:block;font-size:11px;font-weight:600;letter-spacing:.01em;margin:0 0 4px}.field input,.field textarea{border:0;border-radius:0;border-bottom:1px solid #cbd1c6;background:transparent;color:var(--ink);width:100%;padding:8px 0 10px;font-size:13px;line-height:1.55;transition:border-color .25s,box-shadow .25s;box-shadow:none}.field input::placeholder,.field textarea::placeholder{color:#88918a;opacity:1}.field input:focus,.field textarea:focus{border-color:#4c7466;box-shadow:0 1px 0 #4c7466}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#a4543c}.field-error{font-size:11px;color:#a14d36;line-height:1.6;display:block}.field-error:not(:empty){margin-top:5px}.subject-field{margin-top:19px}.message-field{margin-top:19px}.field textarea{resize:vertical;min-height:139px;max-height:420px;padding-bottom:8px}.message-meta{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;min-height:23px}.message-meta>span:last-child{font-size:9px;color:#88918a;white-space:nowrap;margin-top:4px}.attachments{margin-top:10px;border:1px dashed #bfc9bc;padding:13px 14px 11px;transition:background .25s,border-color .25s}.attachments.dragging{border-color:#47725f;background:#e5ebdf}.attachment-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.attach-button{border:0;background:none;color:var(--ink);padding:0;display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;min-height:26px}.attach-button svg{width:16px;height:16px;fill:none;stroke:#45675a;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}.attach-button:hover{color:#3c7359}.optional{font-size:9px;font-weight:400;color:#788679}.file-count{font-size:10px;color:#788679}.attachment-hint{font-size:10px;color:#6c7a70;margin:2px 0 1px;line-height:1.6}.attachment-limits{font-size:9px;line-height:1.7;color:#889186;margin:0}.file-list{list-style:none;margin:0;padding:0}.file-list:not(:empty){margin-top:10px;border-top:1px solid #cbd4c6}.file-item{display:flex;align-items:center;gap:9px;padding-top:8px;animation:file-arrive .4s var(--ease) both}.file-type{font-size:8px;font-weight:600;border:1px solid #b6c3b2;border-radius:2px;padding:3px 4px;color:#536f5d;flex-shrink:0}.file-info{min-width:0;flex:1}.file-name{display:block;font-size:11px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.file-size{font-size:9px;color:#84907f}.remove-file{border:0;background:none;color:#7b8778;width:30px;height:30px;display:grid;place-items:center;font-size:19px;line-height:1}.remove-file:hover{color:#9a4935;background:#e9e4d9}.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px}.urgency{display:flex;align-items:center;gap:10px;cursor:pointer;position:relative}.urgency input{position:absolute;opacity:0;width:32px;height:32px;margin:0;cursor:pointer}.urgency-label{font-size:11px;display:block;line-height:1.4}.urgency small{display:block;color:#85907f;font-size:9px;margin-top:3px;line-height:1.4}.switch{width:29px;height:17px;border:1px solid #a8b7a5;border-radius:20px;position:relative;transition:background .25s,border-color .25s;flex:0 0 29px}.switch:before{content:'';width:9px;height:9px;background:#9aac97;position:absolute;top:3px;left:3px;border-radius:50%;transition:transform .3s var(--ease),background .3s}.urgency input:checked+.switch{background:#aa6c49;border-color:#aa6c49}.urgency input:checked+.switch:before{transform:translateX(12px);background:#fff9ee}.urgency input:focus-visible+.switch{outline:2px solid #3d705b;outline-offset:3px}.send-button{border:0;border-radius:2px;background:#284b40;color:#f5f4e9;padding:12px 13px 12px 20px;display:flex;align-items:center;gap:20px;font-size:11px;min-height:48px;white-space:nowrap;box-shadow:0 3px 8px #284b4014;transition:background .3s,transform .3s,box-shadow .3s}.send-button:hover{background:#1f3d34;box-shadow:0 5px 18px #284b402b;transform:translateY(-2px)}.send-button:active{transform:translateY(0)}.send-icon{width:25px;height:25px;border:1px solid #adc4b54d;border-radius:50%;display:grid;place-items:center;overflow:hidden}.send-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.3;transition:transform .4s var(--ease)}.send-button:hover .send-icon svg{transform:translateX(2px)}.send-button:disabled{opacity:.65;cursor:wait;transform:none}.sending .send-icon{border-color:#adc4b570;border-top-color:#f5f4e9;animation:spin 1s linear infinite}.sending .send-icon svg{visibility:hidden}.privacy-note{font-size:9px;line-height:1.7;color:#8a9385;margin:17px 0 0;max-width:400px}.trap{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.service-note{font-size:10px;color:#7e6c4c;background:#ece6d5;padding:7px 10px;border-left:2px solid #b9a47c;margin:-9px 0 18px;line-height:1.7}.form-status{font-size:12px;line-height:1.7;margin-top:16px;border-left:2px solid #a4543c;padding:10px 12px;background:#eee5d9;color:#81452e;outline:none}.form-status[data-kind=preview]{border-color:#72927b;background:#e5ebdf;color:#45614b}.sent-panel{padding:40px 0 70px;text-align:center;min-height:410px;outline:none;animation:sheet-arrive .7s var(--ease) both}.sent-mark{width:80px;height:80px;margin:15px auto 25px;border:1px solid #9eb29c;border-radius:50%;display:grid;place-items:center}.sent-mark svg{width:44px;height:44px;fill:none;stroke:#53795f;stroke-width:1.4;stroke-dasharray:60;stroke-dashoffset:60;animation:draw-check .7s ease .2s forwards}.sent-panel h2{font-size:40px;line-height:1.15;margin-top:13px}.sent-panel>p:not(.paper-eyebrow){font-size:12px;line-height:1.8;color:var(--quiet);max-width:330px;margin:23px auto 0}.sent-reference{font-size:10px!important}.write-again{background:none;border:0;border-bottom:1px solid #9eb29c;color:var(--ink);font-size:12px;padding:7px 0;margin-top:25px}
.site-footer{border-top:1px solid #d3e2da25;min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:11px;color:#a7bbb5}.site-footer>a{display:flex;align-items:center;gap:12px;white-space:nowrap;color:#d3dfd8}.site-footer>a:hover{color:#fff}.footer-signature{font-size:10px;color:#849b94;text-align:center}.footer-signature>span:first-child{margin:0 10px}.footer-year{font-size:10px;color:#849b94;white-space:nowrap}.noscript-note{padding:20px;background:var(--paper);color:var(--ink);text-align:center}
.js .masthead{animation:fade-up .85s var(--ease) both}.js .invitation>*{animation:fade-up 1s var(--ease) both}.js .invitation>.eyebrow{animation-delay:.08s}.js .invitation>h1{animation-delay:.15s}.js .invitation>.invitation-copy{animation-delay:.22s}.js .invitation>.delivery-note{animation-delay:.29s}.js .invitation>.correspondence-art{animation-delay:.36s}.js .invitation>.research-links{animation-delay:.42s}.js .letter-wrap{animation:sheet-arrive 1.15s var(--ease) .2s both}.js .site-footer{animation:fade-up 1s var(--ease) .5s both}
@keyframes fade-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes sheet-arrive{from{opacity:0;transform:translateY(28px) rotateX(5deg) rotateZ(1deg)}to{opacity:1;transform:none}}@keyframes drift{to{transform:translate(10vw,-7vh) scale(1.1)}}@keyframes line-travel{to{stroke-dashoffset:-130}}@keyframes postmark-float{50%{transform:translate(304px,74px) rotate(-3deg)}}@keyframes file-arrive{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes draw-check{to{stroke-dashoffset:0}}
body.page-hidden .glow,body.page-hidden .flight-path,body.page-hidden .orbit-mark{animation-play-state:paused}
@media(min-width:1550px){.contact-layout{padding-block:80px}.letter{padding:40px 44px 30px}.field textarea{min-height:160px}h1{font-size:72px}}
@media(max-width:1100px){.site-shell{padding-inline:35px}.contact-layout{gap:40px;grid-template-columns:.8fr 1.2fr;padding-block:46px}h1{font-size:51px;letter-spacing:-2px}.letter{padding:28px 27px 24px}.invitation-copy{font-size:13px}.correspondence-art{height:145px}.form-bottom{gap:10px}.send-button{gap:12px;padding-left:15px}.identity-row{gap:20px}}
@media(max-width:850px){.site-shell{padding-inline:30px}.masthead{height:88px}.masthead-right{gap:22px}.contact-layout{grid-template-columns:1fr;gap:35px;max-width:650px;margin:auto;padding-top:43px;padding-bottom:50px}.invitation{padding:0}.eyebrow{margin-bottom:18px}h1{font-size:54px;line-height:1.06;letter-spacing:-1.9px;margin-bottom:22px}h1>span{display:inline}h1>span:first-child:after{content:' ' }h1>em{display:inline;margin-left:7px;font-size:1.15em}.invitation-copy{max-width:500px;font-size:13px;line-height:1.8;margin-bottom:16px}.delivery-note{max-width:470px}.correspondence-art{display:none}.research-links{margin-top:22px;font-size:11px;gap:24px}.letter{padding:32px 35px 26px}.identity-row{gap:25px}.field textarea{min-height:145px}.site-footer{min-height:85px}.footer-signature{max-width:210px}.footer-signature>span:last-child{display:block}.footer-signature>span:first-child{display:none}}
@media(max-width:480px){.site-shell{padding-inline:22px}.masthead{height:80px;gap:12px}.wordmark{font-size:22px;letter-spacing:-.7px}.section-label{display:none}.masthead-right{gap:17px}.data-link{font-size:10px;padding:7px 11px;gap:8px}.data-link svg{width:12px;height:12px}.contact-layout{padding-top:32px;gap:29px}h1{font-size:43px;line-height:1.12;letter-spacing:-1.7px;margin-bottom:17px}h1>em{display:inline-block;font-size:1.18em;margin-left:0}.eyebrow{font-size:8px;letter-spacing:.19em;margin-bottom:18px}.invitation-copy{font-size:12px;line-height:1.85;margin-bottom:14px}.delivery-note p{font-size:11px}.research-links{font-size:10px;gap:23px;margin-top:19px}.letter{padding:26px 22px 23px}.letter-heading{margin-bottom:22px}h2{font-size:31px}.paper-eyebrow{font-size:8px}.postage{width:36px;height:44px;margin-right:4px}.postage span{font-size:21px}.recipient{gap:15px;margin-bottom:22px}.recipient-name{font-size:11px}.recipient-name span{font-size:9px;margin-left:8px}.identity-row{grid-template-columns:1fr;gap:18px}.field label{font-size:11px}.field input,.field textarea{font-size:16px}.field input::placeholder,.field textarea::placeholder{font-size:12px}.field textarea{min-height:150px}.subject-field,.message-field{margin-top:18px}.attachments{padding:11px 11px}.optional{display:none}.attachment-limits{font-size:8px}.form-bottom{align-items:flex-start;flex-direction:column;gap:22px;margin-top:22px}.urgency{gap:11px}.urgency-label{font-size:11px}.urgency small{font-size:9px}.send-button{justify-content:space-between;width:100%;font-size:12px;padding-left:18px;min-height:49px}.privacy-note{font-size:9px;margin-top:15px}.sheet-shadow{inset:9px -5px -6px 7px;transform:rotate(.8deg)}.site-footer{flex-wrap:wrap;min-height:105px;padding:23px 0;gap:15px;font-size:10px}.footer-signature{order:3;flex-basis:100%;max-width:none;text-align:left;font-size:9px}.footer-signature>span:last-child{display:inline}.footer-signature>span:first-child{display:inline;margin:0 6px}.footer-year{margin-left:auto;font-size:9px}}
@media(max-width:350px){.site-shell{padding-inline:17px}.wordmark{font-size:19px}.masthead-right{gap:10px}.data-link{padding:6px 9px}.letter{padding-inline:17px}h1{font-size:38px}.research-links{gap:16px}.recipient-name span{margin-left:4px}.attachment-hint{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.sent-mark svg{stroke-dashoffset:0}.glow{will-change:auto}.sheet-shadow{transform:none}}

/* Quiet typography and a shorter composition. */
h1{font-size:clamp(78px,8vw,118px);line-height:.97;letter-spacing:-5px;margin-bottom:32px}h1 em{font-size:1em;margin-top:0;letter-spacing:-5px}.delivery-note{max-width:290px}.delivery-note p{font-size:13px}.correspondence-art{margin-top:24px}.letter-heading{margin-bottom:24px}.site-footer{min-height:80px}.privacy-note{margin-top:13px}.footer-signature{text-align:center}.sent-panel h2{white-space:pre-line}
@media(max-width:850px){h1{font-size:78px;letter-spacing:-3px}h1>span,h1>em{display:inline}h1>em{margin-left:12px;letter-spacing:-3px}.delivery-note{max-width:400px}.delivery-note p{font-size:12px}.research-links{margin-top:20px}}
@media(max-width:480px){h1{font-size:67px;margin-bottom:20px}h1>em{margin-left:10px}.eyebrow{margin-bottom:16px}.delivery-note p{font-size:12px}.footer-signature{display:none}.site-footer{min-height:74px;padding-block:20px}.form-bottom{flex-direction:row;align-items:center;gap:16px}.send-button{width:auto;min-width:155px}.letter-heading h2{font-size:30px}}
@media(max-width:350px){h1{font-size:59px}.send-button{min-width:140px;gap:10px;padding-left:13px}.form-bottom{gap:8px}}

.skip-link{top:12px;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;padding:0}.skip-link:focus{clip-path:none;width:auto;height:auto;padding:12px 18px}
.attach-button{min-height:32px}.urgency{min-height:36px}.attachment-limits{color:#6b776b}.privacy-note{color:#707d6a}.field input::placeholder,.field textarea::placeholder{color:#6f7d73}
@media(max-width:480px){.attach-button{min-height:40px}.urgency{min-height:44px}.research-links a{min-height:32px}.attachment-limits{font-size:9px}}

body{position:relative;isolation:isolate;min-height:100vh}.atmosphere{position:absolute}.grain{opacity:.065}.research-links{margin-top:40px}
@media(min-width:851px){.masthead{height:88px}.contact-layout{padding-block:40px}.letter{padding:28px 34px 22px}.letter-heading{margin-bottom:16px}.postage{height:44px;width:36px}.recipient{padding-bottom:12px;margin-bottom:16px}.service-note{margin:-4px 0 14px}.field input{padding:6px 0 8px}.subject-field,.message-field{margin-top:15px}.field textarea{min-height:112px}.attachments{padding:10px 13px}.form-bottom{margin-top:18px}.privacy-note{margin-top:11px}}
@media(max-width:850px){.research-links{margin-top:20px}}

/* The same quiet glass used on the homepage and Data. */
.data-link{background:var(--frost-fill);border:1px solid var(--frost-edge);box-shadow:var(--frost-shadow);backdrop-filter:var(--frost-filter);-webkit-backdrop-filter:var(--frost-filter);border-radius:10px;gap:12px;padding:8px 14px;min-height:40px}
.data-link:hover{background:var(--frost-fill-hover);border-color:var(--frost-edge)}

/* Compact attachments on every screen; the file picker hint remains accessible. */
.attachments{padding:6px 10px 7px;margin-top:8px}
.attachment-top{min-height:30px}.attach-button{min-height:30px}
.attachment-hint{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}
.attachment-limits{font-size:9px;line-height:1.45;margin:1px 0 0}
.file-list:not(:empty){margin-top:6px}.file-item{padding-top:5px}
@media(max-width:480px){.attachments{padding:5px 9px 7px}.attachment-top,.attach-button{min-height:36px}.attachment-limits{font-size:9px}}

/* A single attachment row; details are available to assistive technology and on hover. */
.attachments{padding:3px 9px;margin-top:8px}
.attachment-top,.attach-button{min-height:30px}.attach-button{gap:7px;font-weight:500}
.attachment-limits{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}
.attachment-top{gap:12px}.file-count{white-space:nowrap;flex-shrink:0}
@media(max-width:480px){.attachments{padding:2px 9px}.attachment-top,.attach-button{min-height:38px}}

/* Center the compact picker, with a quiet one-line limits caption. */
.attachment-top{justify-content:center;gap:14px}
.attachment-limits{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal;text-align:center;font-size:9px;line-height:1.45;margin:0 0 3px;color:#6b776b}
.file-count{font-size:9px}.attachments{padding:2px 9px 3px}
@media(max-width:480px){.attachment-limits{font-size:8px;letter-spacing:-.1px}.attachments{padding:1px 7px 3px}}

/* One row, vertically centered; the count stays at the right edge. */
.attachment-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.attach-button{flex-shrink:0;font-size:11px;gap:6px;min-height:32px}
.attachment-limits{flex:1;min-width:0;white-space:nowrap;margin:0;text-align:left;font-size:9px;line-height:1.4}
.file-count{font-size:9px}.attachments{padding:2px 9px}
@media(max-width:480px){.attachment-top{gap:5px}.attach-button{font-size:10px;gap:4px;min-height:38px}.attach-button svg{width:13px;height:13px}.attachment-limits{font-size:8px;letter-spacing:-.15px}.file-count{font-size:8px}.attachments{padding:1px 7px}}

.attachments .field-error{margin:0}.attachments .field-error:not(:empty){margin-top:6px}.attachments .file-list:empty{display:none}

/* Validation lives inside each control and never adds a row to the page. */
.field{position:relative}
.field>.field-error{position:absolute;right:0;bottom:10px;margin:0;padding:2px 4px;background:var(--paper);font-size:10px;line-height:1.3;pointer-events:none}
.field-error:empty{display:none}
.field-error[data-placement=placeholder]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;padding:0}
.field input.has-inline-error{padding-right:105px}
.field input[aria-invalid=true]::placeholder,.field textarea[aria-invalid=true]::placeholder{color:#a14d36}

/* On stacked layouts, the writing surface reaches both screen edges. */
@media(max-width:850px){.site-shell{--page-gutter:30px;padding-inline:var(--page-gutter)}.contact-layout{max-width:none;margin-inline:calc(-1 * var(--page-gutter))}.invitation{padding-inline:var(--page-gutter)}.sheet-shadow{display:none}.letter{border-radius:0}.letter-wrap{min-width:0}}
@media(max-width:480px){.site-shell{--page-gutter:22px}}
@media(max-width:350px){.site-shell{--page-gutter:17px}}
