/* The public application desk extends the existing café, without dashboard styles. */
.application-page .application-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center;padding:32px 0 88px;min-height:550px}
.application-page .application-hero h1{font-size:clamp(2.8rem,5vw,4.8rem);max-width:none;margin-bottom:32px}
.application-page .application-hero h1 .reading-hand{font-size:clamp(2rem,3.5vw,3.5rem);text-transform:none;letter-spacing:normal;max-width:21ch;transform:rotate(-2deg);margin-top:18px}
.application-page .application-hero .reading-lead{font-size:21px;max-width:43ch;line-height:1.6}
.application-page .application-hero-photo{margin:8px 14px 0;padding:10px 10px 45px;background:var(--reading-ink);border-radius:14px;transform:rotate(3deg);box-shadow:7px 18px 30px #0005;position:relative}
.application-page .application-hero-photo img{width:100%;height:auto;border-radius:8px}
.application-page .application-hero-photo figcaption{font:600 30px/1.15 Caveat,cursive;color:#211e1c;position:absolute;bottom:7px;left:12px;right:12px;text-align:center}
.application-page .staff-photo{max-width:310px;justify-self:center;transform:rotate(-4deg)}
.application-page .application-requirements{display:grid;grid-template-columns:1fr 1.25fr;gap:80px;border-block:1px solid var(--reading-line);padding:48px 0}
.application-page .application-requirements>div>p{color:var(--reading-muted);max-width:42ch}
.application-page .application-policy{border-bottom:1px solid var(--reading-line)}
.application-page .application-policy:first-child{border-top:1px solid var(--reading-line)}
.application-page .application-policy summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:75px;font-weight:600;list-style:none}
.application-page .application-policy summary::-webkit-details-marker{display:none}
.application-page .application-policy summary:after{content:'+';font-size:25px;color:var(--reading-rose)}
.application-page .application-policy[open] summary:after{content:'−'}
.application-page .policy-count{font-size:14px;color:var(--reading-muted);font-weight:400;margin-left:auto;white-space:nowrap}
.application-page .application-policy ol{margin:0;padding:12px 8px 14px 26px}
.application-page .application-policy li{padding:0 0 13px 8px;line-height:1.6}
.application-page .application-policy li::marker{color:var(--reading-rose);font-size:14px;font-variant-numeric:tabular-nums}
.application-page .application-policy h3{font-size:19px;margin:0 0 7px}
.application-page .application-policy p{color:var(--reading-muted);font-size:17px;margin:0}
.application-page .application-writing{padding:64px 0 80px}
.application-page .application-writing-intro{max-width:66ch;margin-bottom:30px}
.application-page .application-writing-intro p,.application-page .application-help,.application-page .staff-privacy{color:var(--reading-muted)}
.application-page .application-paper,.application-page .staff-writing-area{background:#211e1c;border:1px solid var(--reading-line);border-radius:14px;padding:34px 38px;min-width:0}
.application-page .application-paper{max-width:850px;margin-inline:auto}
.application-page .form-heading{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--reading-line);padding-bottom:24px;margin-bottom:24px}
.application-page .form-heading .handwritten{font:600 36px/1.2 Caveat,cursive;color:var(--reading-rose)}
.application-page .letter-from{font-size:15px;color:var(--reading-muted);margin:10px 0 0}
.application-page .letter-stamp{display:none}
.application-page .letter-progress{display:flex;justify-content:space-between;gap:14px;margin-bottom:27px;padding-bottom:17px;border-bottom:1px solid var(--reading-line);font-size:14px;color:var(--reading-muted)}
.application-page .letter-progress .is-complete{color:var(--reading-rose);text-decoration:underline;text-underline-offset:5px}
.application-page .sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.application-page .form-grid,.application-page .desk-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}
.application-page .form-group-title,.application-page .form-wide,.application-page .desk-wide{grid-column:1/-1}
.application-page h3.form-group-title{font-size:21px;margin:12px 0 0}
.application-page .form-field,.application-page .desk-field{min-width:0;display:flex;flex-direction:column;gap:8px}
.application-page label{font-size:16px;font-weight:600;line-height:1.5}
.application-page input:not([type=checkbox]),.application-page textarea,.application-page select{width:100%;min-height:48px;border:1px solid transparent;border-radius:9px;padding:12px 14px;background:#dedbd2;color:#252525;font:400 17px/1.5 'Source Sans 3',sans-serif;color-scheme:light;caret-color:#252525}
.application-page input::placeholder,.application-page textarea::placeholder{color:#5e5b55;opacity:1}
.application-page textarea{resize:vertical;min-height:110px}
.application-page input:focus-visible,.application-page textarea:focus-visible,.application-page select:focus-visible{outline:3px solid var(--reading-rose);outline-offset:3px}
.application-page [aria-invalid=true]{outline:2px solid #ed7775;outline-offset:2px}
.application-page .optional{font-weight:400;color:var(--reading-muted);font-size:14px}
.application-page .field-caption{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--reading-muted)}
.application-page .field-error,.application-page .desk-error{color:#ed7775;font-size:15px;line-height:1.5}
.application-page .field-error:empty,.application-page .desk-error:empty{display:none}
.application-page .website-field{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.application-page .form-consent,.application-page .desk-consent{display:flex;align-items:flex-start;gap:13px;margin:28px 0 8px}
.application-page input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:3px 0 0;accent-color:var(--reading-rose)}
.application-page .form-consent label,.application-page .desk-consent{font-size:15px;font-weight:400;line-height:1.7}
.application-page .form-submit-row,.application-page .desk-submit{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:25px}
.application-page .form-submit-row .handwritten{font:600 24px/1.2 Caveat,cursive;color:var(--reading-rose)}
.application-page button[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;border:0;border-radius:9px;background:var(--reading-ink);color:#211e1c;padding:14px 22px;font:700 14px/1.4 Manrope,sans-serif;cursor:pointer}
.application-page button[type=submit]:hover{background:#e8dcd0}
.application-page button[type=submit]:disabled{opacity:.65;cursor:wait}
.application-page .desk-submit>span{font-size:14px;color:var(--reading-muted)}
.application-page .form-status,.application-page .desk-status{margin:20px 0 0;line-height:1.65}
.application-page .form-status:empty,.application-page .desk-status:empty{display:none}
.application-page .application-success,.application-page .desk-success{padding:35px 0;text-align:left}
.application-page .application-success h3,.application-page .desk-success h3{font-size:28px}
.application-page .application-reference,.application-page .desk-reference{font-variant-numeric:tabular-nums;color:var(--reading-rose);overflow-wrap:anywhere}
.application-page .success-mark{display:none}
.application-page .application-help{font-size:15px;margin-top:24px;text-align:center}
.application-page .staff-application{display:grid;grid-template-columns:minmax(230px,1fr) minmax(0,1.7fr);gap:60px;align-items:start}
.application-page .staff-expectations{scroll-margin-top:30px}
.application-page .staff-expectations h2{font-size:23px;line-height:1.3}
.application-page .staff-expectations ul{padding-left:20px}
.application-page .staff-expectations li{padding-left:5px;margin-bottom:21px;color:var(--reading-muted);font-size:17px;line-height:1.65}
.application-page .staff-expectations strong{display:block;color:var(--reading-ink);font-weight:600}
.application-page .staff-expectations>p{color:var(--reading-rose);font-size:17px}
.application-page .staff-writing-area h2{font-size:28px}
.application-page .staff-privacy{font-size:15px;line-height:1.65;margin-bottom:25px}
.application-page .ink{fill:none;stroke:currentColor;stroke-width:2;max-width:100%}
.application-links{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding-block:55px;border-top:1px solid var(--reading-line,#f3ede229)}
.application-links h2{font:italic 800 clamp(2.2rem,4vw,3.6rem)/1.08 Barlow,sans-serif;margin:0 0 18px}
.application-links h2 .reading-hand{display:block;font:600 clamp(2rem,3vw,3rem)/1.15 Caveat,cursive;color:var(--reading-rose,#d9a5a7);text-transform:none;letter-spacing:normal;margin-top:8px}
.application-links p{color:var(--reading-muted,#c7bcb3);max-width:36ch}
.application-links ul{list-style:none;padding:0;margin:0}
.application-links li{border-bottom:1px solid var(--reading-line,#f3ede229);margin:0}
.application-links li:first-child{border-top:1px solid var(--reading-line,#f3ede229)}
.application-links li a{display:grid;grid-template-columns:1fr auto;gap:7px 22px;padding:24px 0;min-height:105px;text-decoration:none;color:inherit}
.application-links li a>span{font-size:21px;font-weight:600}
.application-links li a>small{font-size:16px;line-height:1.5;color:var(--reading-muted,#c7bcb3)}
.application-links li a>svg{grid-column:2;grid-row:1/3;align-self:center;width:24px;height:24px;color:var(--reading-rose,#d9a5a7)}
.application-links li a:hover>span{text-decoration:underline;text-underline-offset:5px}
.footer-application-links{display:grid;gap:8px;font-size:14px}.footer-application-links>a{min-height:44px;display:flex;align-items:center}
.staff-apply-link{text-decoration:none}
@media(max-width:1000px){.application-page .application-hero{gap:45px}.application-page .application-requirements{gap:40px}.application-page .staff-application{gap:35px;grid-template-columns:1fr 1.5fr}.application-page .staff-writing-area{padding:28px}.application-page .desk-grid{grid-template-columns:1fr}.application-links{gap:40px}}
@media(max-width:700px){.application-page .application-hero{grid-template-columns:1fr;gap:35px;padding:20px 0 60px;min-height:0}.application-page .application-hero h1{font-size:clamp(2.8rem,10vw,4.8rem);max-width:none}.application-page .application-hero .reading-lead{font-size:19px}.application-page .application-hero-photo{width:calc(100% - 24px);max-width:470px;justify-self:center;margin:0}.application-page .staff-photo{max-width:260px}.application-page .application-hero-photo figcaption{font-size:27px}.application-page .application-requirements,.application-page .staff-application{grid-template-columns:1fr;gap:25px}.application-page .application-writing{padding:42px 0 55px}.application-page .form-grid,.application-page .desk-grid{grid-template-columns:1fr}.application-page .application-paper,.application-page .staff-writing-area{padding:24px 20px}.application-page .letter-progress{font-size:12px;gap:8px}.application-page .form-heading .handwritten{font-size:30px}.application-page .reading-actions{gap:15px}.application-page .application-policy summary{gap:12px;font-size:17px}.application-page .policy-count{font-size:12px}.application-page .form-submit-row{align-items:start;flex-direction:column}.application-page .form-submit-row button,.application-page .desk-submit button{width:100%}.application-links{grid-template-columns:1fr;gap:15px}.application-links li a{min-height:100px}.application-page .application-help{text-align:left}}
