:root{--color-ink: #1d1e1b;--color-ink-soft: #454640;--color-muted: #686a63;--color-white: #fff;--color-canvas: #f7f6f1;--color-surface: #fff;--color-surface-warm: #f1eee4;--color-border: #dcdad2;--color-gold: #e4bd2a;--color-gold-hover: #f0cc3d;--color-gold-soft: #fbf4d7;--color-danger: #9a2f2f;--color-control-text: var(--color-ink);--color-control-placeholder: var(--color-muted);--color-control-caret: var(--color-ink);--color-control-disabled-text: var(--color-ink-soft);--color-control-disabled-background: var(--color-surface-warm);--color-control-selection-text: var(--color-ink);--color-control-selection-background: var(--color-gold);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4.5rem;--space-9: 6rem;--radius-sm: .5rem;--radius-md: 1rem;--radius-lg: 1.5rem;--radius-pill: 999px;--shadow-card: 0 16px 50px rgba(29,30,27,.08);--shadow-focus: 0 0 0 4px rgba(228,189,42,.35);--font-sans: Inter, "Segoe UI", Arial, sans-serif;--font-display: Georgia, "Times New Roman", serif;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: clamp(1.8rem,4vw,2.7rem);--text-display: clamp(2.35rem,5vw,4.8rem);--content-width: 1240px;--motion-fast: .16s;--motion-base: .24s}*{box-sizing:border-box}html{color-scheme:light;scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-sans);line-height:1.55}button,input,textarea,select{font:inherit}a{color:inherit}img{display:block;max-width:100%}h1,h2{font-family:var(--font-display);font-weight:500;letter-spacing:-.035em;line-height:1.08}h1{font-size:var(--text-display)}h2{font-size:var(--text-xl)}:focus-visible{border-radius:3px;outline:2px solid var(--color-ink);outline-offset:4px;box-shadow:var(--shadow-focus)}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0)}.site-shell{display:flex;flex-direction:column;min-height:100vh}.page-container{margin-inline:auto;max-width:var(--content-width);padding-inline:clamp(1.25rem,5vw,4rem);width:100%}.brand-header{align-items:center;background:#fffffff5;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;min-height:86px;padding:var(--space-3) clamp(1.25rem,5vw,4rem);position:relative;z-index:2}.brand-logo{height:50px;object-fit:contain;width:154px}.brand-header nav{align-items:center;display:flex;gap:var(--space-5)}.text-link{font-size:var(--text-sm);font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}.badge{background:var(--color-gold-soft);border:1px solid rgba(158,124,0,.2);border-radius:var(--radius-pill);display:inline-flex;font-size:.75rem;font-weight:800;letter-spacing:.04em;padding:.45rem .8rem;text-transform:uppercase}.invitation-hero{align-items:center;display:grid;gap:clamp(2rem,6vw,6rem);grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);padding-block:clamp(4rem,9vw,8rem)}.eyebrow{color:#725d0d;font-size:.75rem;font-weight:850;letter-spacing:.13em;margin:0;text-transform:uppercase}.hero-copy h1{margin:var(--space-4) 0 var(--space-5);max-width:14ch}.hero-copy h1 span{text-decoration:underline;text-decoration-color:var(--color-gold);text-decoration-thickness:.12em;text-underline-offset:.1em}.hero-lead{color:var(--color-ink-soft);font-size:var(--text-lg);max-width:650px}.job-facts{border-top:1px solid var(--color-border);display:grid;gap:var(--space-4);grid-template-columns:1fr 1fr 1.25fr;margin-top:var(--space-7);padding-top:var(--space-5)}.job-facts div{display:flex;flex-direction:column;gap:var(--space-1)}.job-facts span{color:var(--color-muted);font-size:.75rem;font-weight:700;text-transform:uppercase}.job-facts strong{font-size:var(--text-base)}.card{background:var(--color-surface);border:1px solid rgba(29,30,27,.09);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.quote-card{padding:clamp(1.75rem,4vw,3rem);position:relative}.quote-card:before{background:var(--color-gold);content:"";height:6px;left:3rem;position:absolute;right:3rem;top:0}.quote-card blockquote{border:0;font-family:var(--font-display);font-size:clamp(1.25rem,2.4vw,1.75rem);line-height:1.5;margin:var(--space-5) 0 0}.reassurance{background:var(--color-ink);border-radius:var(--radius-lg);color:var(--color-white);display:grid;gap:1px;grid-template-columns:repeat(4,1fr);overflow:hidden}.reassurance div{background:#252622;min-height:180px;padding:var(--space-6)}.reassurance div>span{background:var(--color-gold);border-radius:50%;display:block;height:10px;margin-bottom:var(--space-5);width:10px}.reassurance strong{font-size:.95rem}.reassurance p{color:#cbc9c0;font-size:var(--text-sm);margin-bottom:0}.application-section{display:grid;gap:clamp(2rem,6vw,6rem);grid-template-columns:minmax(240px,.62fr) minmax(0,1.38fr);padding-block:clamp(4rem,9vw,8rem)}.section-heading{align-self:start;position:sticky;top:2rem}.section-heading h2{margin:var(--space-3) 0}.section-heading>p:last-of-type{color:var(--color-muted)}.progress{display:grid;gap:var(--space-2);margin-top:var(--space-6)}.progress span{border-left:3px solid var(--color-border);color:var(--color-muted);font-size:var(--text-sm);padding:.35rem var(--space-3)}.progress .active{border-color:var(--color-gold);color:var(--color-ink);font-weight:750}.form-card{padding:clamp(1.5rem,4vw,3.5rem)}fieldset{border:0;border-top:1px solid var(--color-border);margin:0 0 var(--space-6);padding:var(--space-6) 0 0}legend{font-weight:800;padding-right:var(--space-4)}.field-grid{display:grid;gap:0 var(--space-5);grid-template-columns:1fr 1fr}.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.field>span,.upload-zone>span{font-size:var(--text-sm);font-weight:750}.field b,.consent b,.upload-zone b{color:var(--color-danger)}input,textarea,select{-webkit-text-fill-color:var(--color-control-text);background:var(--color-white);border:1px solid #92938c;border-radius:var(--radius-sm);caret-color:var(--color-control-caret);color:var(--color-control-text);min-height:48px;padding:.75rem .85rem;transition:border-color var(--motion-fast),box-shadow var(--motion-fast);width:100%}textarea{resize:vertical}input:hover,textarea:hover,select:hover{border-color:var(--color-ink)}input::placeholder,textarea::placeholder{color:var(--color-control-placeholder);opacity:1}input::selection,textarea::selection{background:var(--color-control-selection-background);color:var(--color-control-selection-text)}input:disabled,textarea:disabled,select:disabled{-webkit-text-fill-color:var(--color-control-disabled-text);background:var(--color-control-disabled-background);color:var(--color-control-disabled-text);cursor:not-allowed;opacity:1}[aria-invalid=true]{border-color:var(--color-danger)}.error-text{color:var(--color-danger);display:block;font-size:var(--text-sm);font-weight:650}.upload-zone{background:var(--color-surface-warm);border:1px dashed #8c8468;border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-6)}.upload-zone input{background:transparent;border:0;padding:var(--space-3) 0 0}.upload-zone small{color:var(--color-muted)}.consent{align-items:flex-start;display:flex;gap:var(--space-3);line-height:1.5;margin-top:var(--space-5)}.consent input{flex:0 0 22px;height:22px;min-height:0;width:22px}.actions,.state-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-6)}.button{align-items:center;border:1px solid transparent;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;font-weight:800;justify-content:center;min-height:48px;padding:.75rem 1.4rem;text-decoration:none;transition:background var(--motion-fast),transform var(--motion-fast)}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.5}.button--primary{background:var(--color-gold);color:var(--color-ink)}.button--primary:hover:not(:disabled){background:var(--color-gold-hover)}.button--secondary{background:var(--color-white);border-color:var(--color-ink)}.button--quiet{background:transparent;text-decoration:underline;text-underline-offset:4px}.summary dl{background:var(--color-surface-warm);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5)}.summary dl div{border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:var(--space-3) 0}.summary dt{color:var(--color-muted);font-size:.75rem;font-weight:750;text-transform:uppercase}.summary dd{margin:0;text-align:right}.alert{background:#fff2f0;border-left:4px solid var(--color-danger);border-radius:var(--radius-sm);color:#6e2525;margin:var(--space-5) 0;padding:var(--space-4)}.state-page{align-items:center;display:flex;flex:1;justify-content:center;padding:clamp(2rem,8vw,7rem) 1.25rem}.state-card{align-items:center;display:flex;flex-direction:column;max-width:720px;padding:clamp(2rem,6vw,5rem);text-align:center;width:100%}.state-card>img{height:32px;margin-bottom:var(--space-6);object-fit:contain;width:76px}.state-card h1{font-size:clamp(2rem,5vw,3.7rem);margin:var(--space-4) 0}.state-card>p:not(.eyebrow){color:var(--color-muted);max-width:560px}.status-glyph{fill:none;height:58px;margin-bottom:var(--space-5);stroke:var(--color-ink);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;width:58px}.spinner{animation:spin .9s linear infinite;border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--color-gold);height:44px;margin-bottom:var(--space-4);width:44px}.spinner--small{display:inline-block;height:20px;margin:0 var(--space-2) 0 0;width:20px}.brand-footer{align-items:center;background:var(--color-ink);color:var(--color-white);display:grid;gap:var(--space-6);grid-template-columns:1fr auto 1fr;padding:var(--space-6) clamp(1.25rem,5vw,4rem)}.brand-footer .brand-logo{height:38px;width:118px}.brand-footer p{color:#bbbcb5;font-size:.8rem;margin:var(--space-2) 0 0}.brand-footer>p{justify-self:end;max-width:320px;text-align:right}.brand-footer nav{display:flex;gap:var(--space-5)}.brand-footer a{font-size:var(--text-sm);text-underline-offset:4px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:900px){.invitation-hero,.application-section{grid-template-columns:1fr}.hero-copy h1{max-width:16ch}.reassurance{grid-template-columns:1fr 1fr}.section-heading{position:static}.brand-footer{grid-template-columns:1fr 1fr}.brand-footer>p{grid-column:1/-1;justify-self:start;text-align:left}}@media(max-width:600px){.brand-header{min-height:72px}.brand-header .badge{display:none}.brand-header nav{gap:var(--space-3)}.brand-logo{height:42px;width:130px}.invitation-hero{padding-block:var(--space-7)}.job-facts,.field-grid,.reassurance{grid-template-columns:1fr}.reassurance div{min-height:0}.actions,.state-actions{align-items:stretch;flex-direction:column-reverse}.button{width:100%}.summary dl div{align-items:flex-start;flex-direction:column;gap:var(--space-1)}.summary dd{text-align:left}.brand-footer{grid-template-columns:1fr}.brand-footer nav{flex-direction:column;gap:var(--space-3)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.invitation-hero{gap:clamp(2rem,6vw,5rem);grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);padding-block:clamp(3.5rem,7vw,6.5rem)}.hero-copy h1{font-size:clamp(2.35rem,4.4vw,4.3rem)}.hero-action{margin-top:var(--space-4)}.quote-card{padding:clamp(1.75rem,3.5vw,2.65rem)}.quote-card:before{height:5px}.quote-card blockquote{font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.48}.upload-zone{overflow:hidden;position:relative;transition:background var(--motion-fast),border-color var(--motion-fast)}.upload-zone:hover{background:var(--color-gold-soft);border-color:#725d0d}.file-action{align-self:flex-start;background:var(--color-white);border:1px solid var(--color-ink);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:800;margin-top:var(--space-3);padding:.6rem 1rem}.file-input{cursor:pointer;top:0;right:0;bottom:0;left:0;min-height:100%;opacity:0;position:absolute}.upload-zone:has(.file-input:focus-visible){box-shadow:var(--shadow-focus);outline:2px solid var(--color-ink);outline-offset:3px}.state-page{padding:clamp(2rem,6vw,5rem) 1.25rem}.state-card{max-width:680px;padding:clamp(2rem,5vw,4rem)}.state-card>img{height:auto;margin-bottom:var(--space-5);width:110px}.state-card h1{font-size:clamp(2rem,4.2vw,3.35rem)}@media(max-width:600px){.invitation-hero{grid-template-columns:minmax(0,1fr)}.hero-action{width:100%}.reassurance div{align-items:flex-start;display:flex;gap:var(--space-4);padding:var(--space-5)}.reassurance div>span{flex:0 0 9px;height:9px;margin:.4rem 0 0;width:9px}.reassurance p{margin-top:var(--space-2)}.state-actions{align-items:stretch;flex-direction:column;width:100%}.state-card{padding-inline:var(--space-5)}.brand-footer{gap:var(--space-5);padding-block:var(--space-5)}.brand-footer nav{flex-direction:row;flex-wrap:wrap;gap:var(--space-5)}}
