.oasi-application { --app-rust:var(--oasi-color-primary,#9d3e2c); --app-gold:var(--oasi-color-secondary,#c99a21); --app-dark:#201b18; --app-paper:#f7f1e7; color:var(--app-dark); background:var(--oasi-color-bg); }
.oasi-application__hero { padding:clamp(7rem,11vw,10rem) 0 clamp(4rem,7vw,6rem); color:#fff; background:radial-gradient(circle at 84% 15%,rgba(201,154,33,.2),transparent 30%),#201b18; }
.oasi-application__hero-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr); gap:clamp(3rem,8vw,8rem); align-items:end; }
.oasi-application__back { display:inline-block; margin-bottom:3rem; color:#bdb3ac; text-decoration:none; }
.oasi-application__kicker,.oasi-application__aside>span { display:block; color:#dfb534; font-size:.76rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.oasi-application__hero h1 { max-width:760px; margin:.65rem 0 1rem; font-size:clamp(3rem,6.5vw,6rem); line-height:.95; letter-spacing:-.055em; }
.oasi-application__hero p { max-width:680px; color:#d8cfca; font-size:1.16rem; line-height:1.7; }
.oasi-application__hero ol { display:grid; gap:0; margin:0; padding:0; list-style:none; border-top:1px solid #514a46; }
.oasi-application__hero li { display:grid; grid-template-columns:42px 1fr; gap:1rem; padding:1rem 0; border-bottom:1px solid #514a46; }
.oasi-application__hero li span { color:var(--app-gold); font-size:.75rem; }
.oasi-application__layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,330px); gap:clamp(3rem,6vw,6rem); align-items:start; padding-block:clamp(4rem,8vw,8rem); }
.oasi-application__main { min-width:0; }
.oasi-application__account,.oasi-application__form fieldset,.oasi-application__state { margin:0 0 2rem; padding:clamp(1.5rem,3vw,2.5rem); border:1px solid #e3d8c8; border-radius:22px; background:#fff; box-shadow:0 18px 50px rgba(52,35,24,.05); }
.oasi-application__account header,.oasi-application__form legend { display:flex; gap:1rem; align-items:flex-start; margin-bottom:1.5rem; }
.oasi-application__account header>span,.oasi-application__form legend>span { display:grid; place-items:center; flex:0 0 38px; height:38px; border-radius:50%; background:var(--app-paper); color:var(--app-rust); font-weight:800; }
.oasi-application__account h2,.oasi-application__form legend strong { margin:0; font-size:1.35rem; }
.oasi-application__account header p,.oasi-application__form legend small { display:block; margin:.25rem 0 0; color:#746a63; font-size:.9rem; }
.oasi-application__account dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:0 0 1rem; }
.oasi-application__account dl div { padding:1rem; border-radius:12px; background:var(--app-paper); }
.oasi-application__account dt { color:#786d65; font-size:.72rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.oasi-application__account dd { margin:.35rem 0 0; overflow-wrap:anywhere; font-weight:650; }
.oasi-application__account>a { color:var(--app-rust); font-weight:700; }
.oasi-application__form fieldset { min-width:0; }
.oasi-application__form legend { width:100%; padding:0; }
.oasi-application__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.oasi-application__grid>label,.oasi-application__label { display:grid; gap:.5rem; color:#4d443e; font-size:.88rem; font-weight:750; }
.oasi-application__grid input,.oasi-application__grid select,.oasi-application__grid textarea { width:100%; min-height:50px; padding:.8rem .9rem; border:1px solid #cfc2b2; border-radius:10px; background:#fffdfa; color:var(--app-dark); font:inherit; }
.oasi-application__grid textarea { min-height:130px; resize:vertical; }
.oasi-application__grid label>small { justify-self:end; color:#8a8078; font-size:.75rem; font-weight:500; }
.oasi-application__wide { grid-column:1/-1; }
.oasi-application__choices { display:flex; flex-wrap:wrap; gap:.65rem; }
.oasi-application__choices label { position:relative; }
.oasi-application__choices input { position:absolute; opacity:0; }
.oasi-application__choices span { display:block; min-height:44px; padding:.7rem 1rem; border:1px solid #d2c5b5; border-radius:999px; background:#fff; cursor:pointer; }
.oasi-application__choices input:checked+span { border-color:var(--app-rust); background:#f2ded7; color:var(--app-rust); }
.oasi-application__consents { display:grid; gap:1rem; padding:1.5rem; border-radius:16px; background:var(--app-paper); }
.oasi-application__consents label { display:grid; grid-template-columns:24px 1fr; gap:.75rem; align-items:start; color:#5c534d; line-height:1.55; }
.oasi-application__consents input { width:22px; height:22px; accent-color:var(--app-rust); }
.oasi-application__consents a { color:var(--app-rust); }
.oasi-application__submit { display:flex; justify-content:space-between; gap:2rem; align-items:center; margin-top:1.5rem; padding:1.5rem; border-radius:16px; background:var(--app-dark); color:#fff; }
.oasi-application__submit div { display:grid; gap:.2rem; }
.oasi-application__submit div span { color:#bfb5ae; font-size:.84rem; }
.oasi-application__submit button,.oasi-application__state>a { display:inline-flex; justify-content:center; align-items:center; gap:.65rem; min-height:52px; padding:.85rem 1.4rem; border:0; border-radius:999px; background:var(--app-rust); color:#fff; text-decoration:none; font:inherit; font-weight:800; cursor:pointer; }
.oasi-application__aside { position:sticky; top:8rem; padding:2rem; border-left:1px solid #dcd1c3; }
.oasi-application__aside h2 { margin:.6rem 0 1rem; font-size:2rem; }
.oasi-application__aside ul { display:grid; gap:.8rem; padding:0; list-style:none; }
.oasi-application__aside li { padding-bottom:.8rem; border-bottom:1px solid #e1d9cf; }
.oasi-application__aside p { color:#71675f; line-height:1.7; }
.oasi-application__state { grid-column:1/-1; max-width:820px; margin-inline:auto; text-align:center; padding:clamp(3rem,7vw,6rem); }
.oasi-application__state>span { color:var(--app-rust); font-size:.78rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.oasi-application__state h2 { margin:.7rem 0 1rem; font-size:clamp(2.1rem,5vw,4rem); letter-spacing:-.045em; }
.oasi-application__state p { max-width:600px; margin:0 auto 1.5rem; color:#6b615a; line-height:1.75; }
.oasi-application__alert { margin-bottom:1.5rem; padding:1rem 1.2rem; border:1px solid #ddb9ac; border-radius:12px; background:#f8e9e4; color:#6e2a1e; }
.oasi-application__trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.oasi-application a:focus-visible,.oasi-application button:focus-visible,.oasi-application input:focus-visible,.oasi-application select:focus-visible,.oasi-application textarea:focus-visible { outline:3px solid var(--app-gold); outline-offset:3px; }
@media (max-width: 1024px) { .oasi-application__hero-grid,.oasi-application__layout { grid-template-columns:minmax(0,1fr); } .oasi-application__hero ol { grid-template-columns:repeat(3,minmax(0,1fr)); } .oasi-application__hero li { grid-template-columns:minmax(0,1fr); } .oasi-application__aside { position:static; border-left:0; border-top:1px solid #dcd1c3; } }
@media (max-width: 767px) { .oasi-application__hero { padding:6rem 0 3.5rem; } .oasi-application__hero ol,.oasi-application__grid,.oasi-application__account dl { grid-template-columns:minmax(0,1fr); } .oasi-application__hero ol { display:none; } .oasi-application__wide { grid-column:auto; } .oasi-application__submit { align-items:stretch; flex-direction:column; } .oasi-application__submit button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .oasi-application * { scroll-behavior:auto; } }
