@font-face{font-family:'Hanken Grotesk';src:url('/assets/hanken-regular.ttf') format('truetype');font-style:normal;font-weight:100 500;font-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url('/assets/hanken-semibold.ttf') format('truetype');font-style:normal;font-weight:550 900;font-display:swap}
:root{--bg:#f6f3ed;--surface:#fdfbf7;--text:#252a28;--muted:#60635c;--accent:#a43e2d;--accent-hover:#873023;--soft:#e8e5dd;--line:#8d8d82;--positive:#345841;--positive-bg:#e1e9df;--error-bg:#f4e3dd;--font:'Hanken Grotesk',Arial,sans-serif;--display:clamp(3.2rem,6.5vw,6.3rem);--h1:clamp(2.4rem,4vw,4rem);--h2:clamp(1.9rem,2.8vw,2.8rem);--h3:1.25rem;--body-lg:1.2rem;--body:1rem;--body-sm:1rem;--caption:.875rem;--button:1rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--radius:4px;--shadow:0 10px 40px rgb(37 42 40 / .05);--motion:180ms;--ease:cubic-bezier(.2,.7,.3,1)}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:var(--body)/1.55 var(--font);-webkit-font-smoothing:antialiased}
h1,h2,h3,p{margin:0 0 var(--space-5)}
h1,h2,h3{line-height:1.12;font-weight:500;letter-spacing:-.045em}
h1{font-size:var(--h1)}
h2{font-size:var(--h2)}
h3{font-size:var(--h3);letter-spacing:-.02em}
p{max-width:65ch}
a{color:inherit;text-underline-offset:4px;transition:opacity var(--motion) var(--ease)}
a:hover{color:var(--accent)}
button,.button{appearance:none;border:0;border-radius:var(--radius);padding:var(--space-3) var(--space-5);min-height:48px;background:var(--accent);color:var(--surface);font:600 var(--button)/1.5 var(--font);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-5);text-decoration:none;cursor:pointer;transition:transform var(--motion) var(--ease),opacity var(--motion) var(--ease)}
button:hover,.button:hover{background:var(--accent-hover);color:var(--surface)}
button:active,.button:active,a:active{transform:translateY(1px) scale(.99)}
button:disabled{opacity:.5;cursor:not-allowed}
button.secondary,.secondary{background:var(--soft);color:var(--text)}
button.secondary:hover{background:var(--line)}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px}
input:active,select:active,textarea:active{background:var(--bg)}
input:disabled,select:disabled{opacity:.5}
summary{cursor:pointer}
summary:hover{color:var(--accent)}
summary:active{opacity:.7}
main{min-height:70svh}
main:focus{outline:none}
.skip{position:fixed;top:-100px;left:var(--space-4);z-index:10;padding:var(--space-4);background:var(--surface)}
.skip:focus{top:var(--space-4)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding-inline:var(--space-7);border-bottom:1px solid var(--soft)}
.wordmark{display:flex;gap:var(--space-3);align-items:center;font-weight:650;font-size:var(--h3);text-decoration:none;letter-spacing:-.04em;white-space:nowrap}
.brand-mark{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:44px;background:var(--accent);color:var(--surface);font-size:var(--h3);font-weight:500;letter-spacing:-.1em;border-radius:var(--radius)}
.brand-mark span{transform:translateY(5px);margin-left:-3px}
nav{display:flex;align-items:center;gap:var(--space-6)}
nav a{text-decoration:none;font-size:var(--body-sm);min-height:44px;display:flex;align-items:center}
.region{font-size:var(--caption);color:var(--muted)}
.region span{color:var(--accent);margin-left:var(--space-4)}
footer{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-6) var(--space-7);font-size:var(--caption);color:var(--muted);border-top:1px solid var(--soft)}
footer>span:nth-child(2){margin-right:auto;max-width:60ch}
footer>span:first-child{font-weight:650;color:var(--text);white-space:nowrap}
.hero{min-height:calc(100svh - 96px);padding:var(--space-6) var(--space-7) 0;position:relative;display:grid;grid-template-rows:auto 1fr auto;max-height:920px}
.hero-meta{display:flex;justify-content:space-between;font-size:var(--caption);color:var(--muted)}
.hero-content{position:relative;z-index:1;align-self:center;width:100%;padding-block:var(--space-7) var(--space-8)}
.hero h1{font-size:var(--display);line-height:1.01;max-width:14ch;margin-bottom:var(--space-6);letter-spacing:-.065em}
.hero-content p{font-size:var(--body-lg);max-width:44ch;color:var(--muted)}
.actions{display:flex;gap:var(--space-6);align-items:center;flex-wrap:wrap}
.text-link{display:inline-flex;align-items:center;min-height:44px;font-weight:550;text-decoration:none;gap:var(--space-4)}
.hero-bottom{display:flex;justify-content:space-between;padding-block:var(--space-5);border-top:1px solid var(--line);font-size:var(--caption);color:var(--muted)}
.journey-line{position:absolute;right:var(--space-7);top:44%;width:30%;display:flex;align-items:center;gap:var(--space-5);color:var(--accent);font-size:var(--caption);line-height:1.2;letter-spacing:.03em}
.journey-line>span:first-child{display:grid;place-items:center;width:64px;height:64px;border:1px solid var(--accent);border-radius:50%;flex-shrink:0}
.route-line{height:120px;width:100%;border-top:1px dashed var(--accent);border-radius:50%;transform:translateY(58px)}
.route-line:after{content:'↗';position:absolute;right:-6px;top:-16px;font-size:var(--h3)}
.intro-section{padding:var(--space-9) var(--space-7);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-9);background:var(--surface)}
.section-number{display:block;font-size:var(--caption);letter-spacing:.07em;color:var(--accent);margin-bottom:var(--space-6)}
.intro-section>div>p{max-width:37ch;color:var(--muted)}
.process-list{list-style:none;padding:0;margin:0}
.process-list li{display:flex;gap:var(--space-6);padding-block:var(--space-6);border-bottom:1px solid var(--soft)}
.process-list li:first-child{padding-top:0}
.process-list li>span{font-size:var(--caption);font-variant-numeric:tabular-nums;color:var(--accent)}
.process-list h3{margin-bottom:var(--space-2)}
.process-list p{color:var(--muted);margin:0}
.prepare{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-9);padding:var(--space-9) var(--space-7)}
.prepare>div>p{color:var(--muted)}
.service-note{padding:var(--space-7);background:var(--soft);align-self:start}
.narrow{max-width:760px;margin-inline:auto;padding:var(--space-8) var(--space-6) var(--space-9)}
.narrow>p{color:var(--muted)}
.back-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:var(--muted);font-size:var(--caption);margin-bottom:var(--space-6)}
.loading{text-align:center;padding:var(--space-9) var(--space-6)}
.muted{color:var(--muted)}
.lead{font-size:var(--body-lg);color:var(--muted)}
.message{background:var(--soft);padding:var(--space-5);margin-block:var(--space-5)}
.message p{margin:var(--space-2) 0 0}
.message.error{background:var(--error-bg);color:var(--accent-hover)}
.helper{font-size:var(--caption);color:var(--muted);margin-top:var(--space-2)}
.application-layout{display:grid;grid-template-columns:260px minmax(0,1fr) 270px;max-width:1600px;margin:auto}
.application-side{padding:var(--space-7) var(--space-6);background:var(--soft)}
.application-side h2{font-size:var(--h3);letter-spacing:-.02em;margin-bottom:var(--space-2)}
.application-side>p{font-size:var(--caption);color:var(--muted)}
.step-list{list-style:none;padding:0;margin:var(--space-7) 0}
.step-list li{margin-bottom:var(--space-2)}
button.step{width:100%;padding:var(--space-3) var(--space-2);background:transparent;color:var(--text);display:flex;text-align:left;align-items:flex-start;justify-content:flex-start;gap:var(--space-3);font-weight:400}
.step:hover,.step.current{background:var(--surface)}
.step:disabled{opacity:.6}
.step-num{font-size:var(--caption);line-height:1.8;color:var(--accent);font-variant-numeric:tabular-nums}
.step strong{display:block;font-size:var(--body-sm);font-weight:550}
.step small{display:block;color:var(--muted);font-size:var(--caption)}
.side-note{font-size:var(--caption);padding-top:var(--space-6)}
.side-note p{margin-top:var(--space-3);color:var(--muted)}
.application-main{padding:var(--space-7) var(--space-7) var(--space-9);background:var(--surface);min-width:0}
.form-heading{display:flex;justify-content:space-between;gap:var(--space-5);font-size:var(--caption);color:var(--muted);margin-bottom:var(--space-6)}
.form-heading span:first-child{letter-spacing:.05em;color:var(--accent)}
.application-main h1{font-size:var(--h2)}
.summary-side{padding:var(--space-7) var(--space-6);align-self:start;position:sticky;top:0}
.dossier-label{font-size:var(--caption);color:var(--muted);letter-spacing:.05em;margin-bottom:var(--space-5)}
.summary-side h3{margin-bottom:var(--space-6)}
dl{margin:0}
dt{color:var(--muted)}
dd{margin:0;overflow-wrap:anywhere}
.summary-side dl>div{display:flex;justify-content:space-between;gap:var(--space-4);font-size:var(--caption);padding-block:var(--space-3)}
.summary-side dd{text-align:right}
.summary-side .total{border-top:1px solid var(--line);margin-top:var(--space-4);padding-top:var(--space-5);font-size:var(--body);font-variant-numeric:tabular-nums}
.summary-side>p{font-size:var(--caption);color:var(--muted);margin-block:var(--space-6)}
fieldset{border:0;padding:0;margin:var(--space-7) 0}
legend{font-size:var(--h3);font-weight:550;letter-spacing:-.02em;padding:0;margin-bottom:var(--space-5)}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4) var(--space-5)}
.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4);min-width:0}
.field label{font-size:var(--body-sm);font-weight:500}
.field label>span{color:var(--accent)}
input,select,textarea{width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-3);background:var(--surface);color:var(--text);font:var(--body)/1.5 var(--font);accent-color:var(--accent)}
select,input[type=file],input[type=checkbox]{cursor:pointer}
input:hover,select:hover,textarea:hover{border-color:var(--text)}
input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--accent);background:var(--error-bg)}
.field-error{font-size:var(--caption);color:var(--accent-hover)}
.field-error:empty{display:none}
.check{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--body-sm);cursor:pointer}
.check input{width:20px;min-width:20px;min-height:20px;height:20px;margin-top:var(--space-1);padding:0}
.save-choice{margin-top:var(--space-6);color:var(--muted)}
.draft-status{font-size:var(--caption);color:var(--positive);margin-block:var(--space-3)}
.form-actions{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-7);padding-top:var(--space-6);border-top:1px solid var(--soft)}
.upload{padding-block:var(--space-5);border-bottom:1px solid var(--soft)}
.upload label{display:block}
.upload label>span{display:block;font-size:var(--caption);color:var(--muted);margin-block:var(--space-2) var(--space-4)}
.upload input{background:var(--bg);font-size:var(--caption);padding:var(--space-2)}
input::file-selector-button{font:500 var(--caption)/1.5 var(--font);padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius);background:var(--soft);color:var(--text);margin-right:var(--space-3);cursor:pointer}
.upload small{display:block;font-size:var(--caption);overflow-wrap:anywhere;margin-top:var(--space-2)}
details{padding-block:var(--space-5);border-bottom:1px solid var(--line)}
summary{font-size:var(--h3);font-weight:500;min-height:44px;list-style-position:outside;margin-left:var(--space-5)}
.review-list{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);padding-block:var(--space-5)}
.review-list dt{font-size:var(--caption);margin-bottom:var(--space-1)}
.payment-info{background:var(--soft);padding:var(--space-6);margin-block:var(--space-5)}
.payment-info>span{font-size:var(--caption);color:var(--muted);letter-spacing:.04em}
.payment-info h3{margin-block:var(--space-3)}
.upi-id{overflow-wrap:anywhere}
.payment-info .actions{gap:var(--space-3);margin-bottom:var(--space-5)}
.payment-info>p:last-child{font-size:var(--caption);margin:0}
.confirmation .success-mark{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--positive-bg);color:var(--positive);font-size:var(--h2);margin-bottom:var(--space-6)}
.tracking-receipt{background:var(--soft);padding:var(--space-6);margin-block:var(--space-6)}
.tracking-receipt p{font-size:var(--caption);margin-bottom:var(--space-2)}
.tracking-receipt strong{display:block;font-size:var(--h3);margin-bottom:var(--space-5)}
.tracking-receipt code{display:block;word-break:break-all;font-size:var(--body)}
.confirmation>.text-link{margin:var(--space-4)}
.status-result{padding:var(--space-6);background:var(--soft);margin-top:var(--space-6)}
.status-result dl>div{padding-block:var(--space-3)}
.help-list{padding-left:var(--space-5)}
.help-list li{padding:var(--space-3) 0 var(--space-5)}
.help-list h3{margin-bottom:var(--space-3)}
.badge{display:inline-block;font-size:var(--caption);line-height:1.4;background:var(--soft);padding:var(--space-2) var(--space-3);border-radius:var(--radius)}
.badge.verified{background:var(--positive-bg);color:var(--positive)}
.admin-wrap{max-width:1440px;margin:auto;padding:var(--space-7) var(--space-7) var(--space-9)}
.admin-title{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-6);margin-bottom:var(--space-7)}
.admin-title h1{margin:0}
.admin-title .section-number{margin-bottom:var(--space-5)}
.admin-title>p{font-variant-numeric:tabular-nums;margin:0}
.filters{display:grid;grid-template-columns:minmax(0,1fr) 280px auto;gap:var(--space-5);align-items:end;margin-bottom:var(--space-7)}
.filters .field{margin:0}
.filters button{margin-bottom:0}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;text-align:left}
th{font-size:var(--caption);font-weight:500;color:var(--muted);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:var(--space-5) var(--space-4);border-bottom:1px solid var(--soft);font-size:var(--body-sm)}
tbody tr:hover{background:var(--surface)}
.app-name{font-weight:600;text-decoration:none}
.table-sub{display:block;font-size:var(--caption);color:var(--muted);margin-top:var(--space-1)}
.numeric{text-align:right;font-variant-numeric:tabular-nums}
.empty{padding:var(--space-8) var(--space-6);text-align:center;background:var(--surface)}
.empty p{margin-inline:auto;color:var(--muted)}
.empty-number{display:block;font-size:var(--display);font-weight:300;color:var(--accent);letter-spacing:-.07em;margin-bottom:var(--space-5)}
.pagination{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-6);font-size:var(--caption)}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--space-8)}
.detail-layout>div>h2{margin-top:var(--space-7)}
.review-panel{background:var(--surface);padding:var(--space-6);align-self:start;position:sticky;top:var(--space-6)}
.review-panel h2{font-size:var(--h3)}
.review-panel p{font-size:var(--caption);color:var(--muted)}
.utr{font-size:var(--h3);display:block;letter-spacing:.04em;margin-bottom:var(--space-5);font-variant-numeric:tabular-nums}
.document-row{display:flex;justify-content:space-between;gap:var(--space-5);padding-block:var(--space-5);border-bottom:1px solid var(--line);text-decoration:none}
.document-row small{display:block;color:var(--muted);overflow-wrap:anywhere}
.document-row>span:first-child{min-width:0}
.document-row>span:last-child{flex-shrink:0}
.audit-list{padding-left:var(--space-5)}
.audit-list li{padding-block:var(--space-3)}
.audit-list small{display:block;color:var(--muted)}
@media(min-width:1500px){.hero,.intro-section,.prepare{padding-inline:max(var(--space-7),calc((100vw - 1440px)/2))}
}
@media(max-width:1150px){.application-layout{grid-template-columns:220px minmax(0,1fr)}
.summary-side{grid-column:2;position:static;padding-top:0}
.application-main{padding:var(--space-7) var(--space-6)}
header{padding-inline:var(--space-6)}
.region{display:none}
.journey-line{width:24%}
.detail-layout{grid-template-columns:minmax(0,1fr) 300px;gap:var(--space-6)}
}
@media(max-width:800px){header{height:auto;min-height:88px;flex-wrap:wrap;gap:var(--space-2);padding-block:var(--space-4)}
nav{gap:var(--space-5);flex-wrap:wrap}
nav a{font-size:var(--caption)}
.hero{min-height:calc(100svh - 130px);padding-inline:var(--space-6)}
.hero-meta>span:last-child{display:none}
.hero-content{padding-block:var(--space-8)}
.journey-line{display:none}
.hero-content p{max-width:40ch}
.hero-bottom{flex-wrap:wrap;gap:var(--space-2) var(--space-5)}
.intro-section,.prepare{padding:var(--space-8) var(--space-6);gap:var(--space-7);grid-template-columns:1fr}
.intro-section>div>p{max-width:60ch}
.service-note{padding:var(--space-6)}
.application-layout{grid-template-columns:1fr}
.application-side{padding:var(--space-4) var(--space-6)}
.application-side>.back-link,.application-side>h2,.application-side>p,.side-note{display:none}
.step-list{display:flex;margin:0;justify-content:space-between;gap:var(--space-2)}
.step-list li{margin:0;flex:1}
.step{min-height:44px}
.step span:last-child{display:none}
.step-num{margin:auto}
.summary-side{grid-column:1;padding:var(--space-6)}
.application-main{padding:var(--space-6)}
.detail-layout{grid-template-columns:1fr}
.review-panel{position:static;grid-row:1}
.filters{grid-template-columns:1fr 1fr}
.filters>.field:first-child{grid-column:1/-1}
.admin-wrap{padding:var(--space-6)}
.admin-title{align-items:start;flex-direction:column}
.admin-title h1 br{display:none}
.document-row{flex-wrap:wrap}
.table-wrap{max-width:100%}
footer{padding:var(--space-6);flex-wrap:wrap;gap:var(--space-4)}
footer>span:nth-child(2){order:4;flex-basis:100%}
.wordmark{font-size:var(--h3)}
}
@media(max-width:480px){header{padding-inline:var(--space-5)}
nav{width:100%;justify-content:space-between;gap:var(--space-2)}
.hero{padding-inline:var(--space-5)}
.hero h1{font-size:var(--display)}
.hero-content{padding-block:var(--space-7)}
.hero-content p{font-size:var(--body)}
.hero .actions{gap:var(--space-3)}
.hero-bottom span{font-size:var(--caption)}
.hero-meta{font-size:var(--caption)}
.field-grid,.review-list{grid-template-columns:1fr}
.form-heading{font-size:var(--caption)}
.application-main{padding-inline:var(--space-5)}
.narrow{padding-inline:var(--space-5)}
.form-actions{flex-wrap:wrap}
.filters{grid-template-columns:1fr}
.filters>.field:first-child{grid-column:auto}
.pagination button{padding-inline:var(--space-3)}
.pagination{gap:var(--space-2)}
.payment-info{padding:var(--space-5)}
.admin-wrap{padding-inline:var(--space-5)}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media(forced-colors:active){button,.button,input,select,textarea,.badge{border:1px solid ButtonText}
.step.current{outline:2px solid Highlight}
}
.menu-toggle{display:none}
@media(max-width:800px){header{min-height:88px}
.menu-toggle{display:inline-flex;margin-left:auto}
header nav{display:none;width:100%;order:4;flex-direction:column;align-items:stretch;gap:var(--space-1)}
header.menu-open nav{display:flex}
header nav a{font-size:var(--body);padding-inline:var(--space-2)}
.admin-body header>.wordmark>.badge{display:none}
.hero{min-height:calc(100svh - 88px)}
}
