.chu-application-page {
	--app-teal: #168c8a;
	--app-deep: #123f73;
	--app-navy: #123b4d;
	--app-coral: #d6a238;
	--app-gold: #e0ad43;
	--app-red: #b8443d;
	--app-paper: #fff8ec;
	--app-line: rgba(18, 63, 115, .14);
	padding-top: 78px;
	overflow: clip;
	color: var(--app-navy);
	background: linear-gradient(rgba(22,140,138,.035) 1px,transparent 1px), linear-gradient(90deg,rgba(22,140,138,.035) 1px,transparent 1px), #f4efe2;
	background-size: 32px 32px;
}

.chu-application-hero {
	position: relative;
	min-height: min(660px,72vh);
	display: grid;
	grid-template-columns: minmax(0,1.35fr) minmax(280px,.65fr);
	align-items: center;
	padding: clamp(4.5rem,8vw,8rem) max(clamp(1.5rem,7vw,8rem), calc((100vw - 1480px)/2));
	overflow: hidden;
	background-image: linear-gradient(90deg,rgba(255,250,240,.98) 0%,rgba(255,250,240,.96) 38%,rgba(255,250,240,.76) 56%,rgba(255,250,240,.22) 78%,rgba(255,250,240,.08) 100%),url("../media/hero-copy-artwork-cobalt-gold.png");
	background-size: cover;
	background-position: center 58%;
	background-repeat: no-repeat;
}
.chu-application-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 17% 18%,rgba(224,173,67,.17),transparent 23%),linear-gradient(115deg,rgba(18,63,115,.035),transparent 34% 100%); }
.chu-application-hero::after { content: ""; position: absolute; left: -9rem; bottom: -14rem; width: 36rem; aspect-ratio: 1; border: 1px solid rgba(22,140,138,.18); border-radius: 50%; box-shadow: 0 0 0 70px rgba(18,63,115,.03),0 0 0 140px rgba(224,173,67,.035); }
.chu-application-hero-copy { position: relative; z-index: 1; max-width: 900px; }
.chu-application-back { display: inline-flex; gap: .55rem; margin-bottom: clamp(2.2rem,4vw,4.2rem); color: rgba(18,59,77,.58); font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.chu-application-eyebrow { margin: 0 0 1.1rem; color: var(--app-red); font-size: .68rem; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.chu-application-kicker { margin: 0 0 .9rem; color: var(--app-navy); font: 500 clamp(1.05rem,1.7vw,1.4rem) Georgia,"Songti SC",serif; letter-spacing: .13em; }
.chu-application-hero h1 { max-width: 760px; margin: 0; font-family: "Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC",sans-serif; font-size: clamp(4rem,6.7vw,6.7rem); line-height: .95; }
.chu-application-hero h1 span { display: block; width: fit-content; color: var(--app-navy); font-size: .76em; font-weight: 600; letter-spacing: .16em; }
.chu-application-hero h1 em { width: fit-content; display: flex; align-items: center; gap: clamp(1rem,2vw,2rem); margin-top: clamp(1rem,1.7vw,1.6rem); margin-left: clamp(.25rem,1.5vw,1.2rem); color: var(--app-red); font-size: .62em; font-style: normal; font-weight: 500; letter-spacing: .2em; white-space: nowrap; }
.chu-application-hero h1 em::after { content: ""; width: clamp(3rem,7vw,7rem); height: 1px; background: linear-gradient(90deg,rgba(215,163,58,.9),rgba(215,163,58,0)); }
.chu-application-lead { max-width: 620px; margin: 1.8rem 0 0; color: rgba(71,40,42,.66); font-size: 1rem; line-height: 1.8; }
.chu-application-hero-mark { position: relative; z-index: 1; justify-self: center; width: min(270px,23vw); aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.58); border-radius: 50%; color: #fffaf0; background: linear-gradient(145deg,rgba(18,63,115,.94),rgba(30,97,136,.9)); box-shadow: 0 0 0 34px rgba(255,255,255,.14),0 0 0 68px rgba(22,140,138,.07),0 24px 70px rgba(18,63,115,.22); }
.chu-application-hero-mark span { white-space: nowrap; font: 600 clamp(2.5rem,4.4vw,4.5rem)/1 "Microsoft YaHei UI","Microsoft YaHei","PingFang SC",sans-serif; letter-spacing: .035em; }
.chu-application-hero-mark small { position: absolute; right: 2%; bottom: 8%; width: 64px; aspect-ratio: 1; display: grid; place-items: center; border: 4px solid #fff8e8; border-radius: 50%; background: var(--app-gold); color: var(--app-deep); font: italic 1.55rem Georgia,serif; }

.chu-application-shell { width: min(1480px,calc(100% - 2.8rem)); display: grid; grid-template-columns: minmax(230px,280px) minmax(0,1fr); gap: clamp(2rem,4vw,4rem); margin: 0 auto; padding: var(--section-space-y) 0; }
.chu-application-index { align-self: start; position: sticky; top: 105px; padding: 1.5rem; overflow: hidden; border: 1px solid rgba(224,173,67,.28); border-radius: 22px; color: white; background: radial-gradient(circle at 105% -5%,rgba(224,173,67,.2),transparent 35%),linear-gradient(155deg,#123f73,#1f668c); box-shadow: 0 22px 55px rgba(18,63,115,.2); }
.chu-application-index > p { margin: 0 0 1rem; color: rgba(255,255,255,.5); font-size: .62rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.chu-application-index ol { margin: 0; padding: 0; list-style: none; }
.chu-application-index li { border-top: 1px solid rgba(255,255,255,.12); }
.chu-application-index li:last-child { border-bottom: 1px solid rgba(255,255,255,.12); }
.chu-application-index a { display: grid; grid-template-columns: 30px 1fr; gap: .7rem; padding: 1rem 0; }
.chu-application-index a > span { grid-row: 1 / span 2; color: #ffd58a; font: italic .82rem Georgia,serif; }
.chu-application-index b { color: white; font: 500 .94rem Georgia,"Songti SC",serif; }
.chu-application-index small { color: rgba(255,255,255,.42); font-size: .58rem; letter-spacing: .08em; text-transform: uppercase; }

.chu-application-form { min-width: 0; display: grid; gap: 1.4rem; }
.chu-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.chu-form-error { display: grid; gap: .35rem; padding: 1rem 1.2rem; border: 1px solid rgba(184,68,61,.25); border-radius: 14px; color: var(--app-red); background: rgba(184,68,61,.06); }
.chu-form-error span { color: rgba(71,40,42,.68); font-size: .82rem; line-height: 1.55; }
.chu-form-section { scroll-margin-top: 110px; padding: clamp(1.6rem,4vw,3.3rem); border: 1px solid rgba(18,63,115,.1); border-radius: 28px; background: rgba(255,252,245,.9); box-shadow: 0 20px 55px rgba(18,63,115,.07); backdrop-filter: blur(10px); }
.chu-form-section + .chu-form-section { padding-top: clamp(1.6rem,4vw,3.3rem); border-top: 1px solid rgba(18,63,115,.1); }
.chu-form-section > header { display: flex; align-items: center; gap: 1rem; margin-bottom: clamp(2rem,4vw,3rem); padding-bottom: 1.5rem; border-bottom: 1px solid var(--app-line); }
.chu-form-section > header > span { flex: 0 0 auto; width: 48px; aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(184,68,61,.34); border-radius: 50%; color: var(--app-red); font: italic 1rem Georgia,serif; }
.chu-form-section > header p { margin: .1rem 0 .3rem; color: var(--app-red); font-size: .63rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.chu-form-section > header h2 { margin: 0; font: 500 clamp(2rem,3.6vw,3.6rem)/1 Georgia,"Songti SC",serif; letter-spacing: -.03em; }

.chu-photo-row { display: grid; grid-template-columns: minmax(220px,270px) minmax(0,1fr); gap: clamp(1.6rem,3vw,3rem); align-items: stretch; }
.chu-photo-field { position: relative; min-height: 260px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1.6rem; overflow: hidden; isolation: isolate; border: 1px dashed rgba(22,140,138,.44); border-radius: 20px; text-align: center; cursor: pointer; background: linear-gradient(145deg,rgba(22,140,138,.06),rgba(224,173,67,.075)); transition: transform .2s ease,border-color .2s ease,background .2s ease; }
.chu-photo-field:hover { transform: translateY(-2px); border-color: var(--app-deep); background: rgba(18,63,115,.055); }
.chu-photo-field input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.chu-photo-field > img { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 28%; }
.chu-photo-field > img[hidden] { display: none; }
.chu-photo-field.has-preview { min-height: 340px; justify-content: flex-end; border-style: solid; border-color: rgba(18,63,115,.28); background: var(--app-deep); }
.chu-photo-field.has-preview::after { content: ""; position: absolute; z-index: 1; inset: 36% 0 0; background: linear-gradient(180deg,transparent,rgba(8,31,50,.42) 36%,rgba(8,31,50,.9)); pointer-events: none; }
.chu-photo-field > span,
.chu-photo-field > strong,
.chu-photo-field > small,
.chu-photo-field > em { position: relative; z-index: 2; }
.chu-photo-field.has-preview > span,
.chu-photo-field.has-preview > small,
.chu-photo-field.has-preview > em { display: none; }
.chu-photo-field.has-preview strong { padding: .7rem 1rem; border: 1px solid rgba(255,255,255,.42); border-radius: 999px; color: white; background: rgba(8,31,50,.66); box-shadow: 0 8px 22px rgba(8,31,50,.22); backdrop-filter: blur(8px); }
.chu-photo-field.has-preview:has(input[required]) strong::after { content: none; }
.chu-photo-field > span { width: 62px; aspect-ratio: 1; display: grid; place-items: center; margin-bottom: 1rem; border-radius: 50%; background: var(--app-deep); color: white; font: 500 1.25rem Georgia,"Songti SC",serif; box-shadow: 0 9px 22px rgba(18,63,115,.2); }
.chu-photo-field strong { font: 500 1.1rem Georgia,"Songti SC",serif; }
.chu-photo-field small { margin-top: .35rem; color: rgba(71,40,42,.5); font-size: .64rem; }
.chu-photo-field em { margin-top: 1.1rem; color: var(--app-red); font-size: .62rem; font-style: normal; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }

.chu-field-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.35rem; }
.chu-field-grid-wide { margin-top: 1.4rem; }
.chu-field-grid label,.chu-field-grid fieldset,.chu-choice-field { min-width: 0; margin: 0; padding: 0; border: 0; }
.chu-conditional-field[hidden] { display: none; }
.chu-field-grid label > span,.chu-field-grid legend,.chu-choice-field legend { display: block; margin-bottom: .55rem; color: var(--app-navy); font: 500 .92rem Georgia,"Songti SC",serif; }
.chu-field-grid small,.chu-choice-field small { color: rgba(71,40,42,.42); font: 700 .56rem "Avenir Next","Segoe UI",sans-serif; letter-spacing: .06em; text-transform: uppercase; }
.chu-photo-field:has(input[required]) strong::after,.chu-field-grid > label:has(> input[required],> select[required],> textarea[required]) > span::after,.chu-field-grid > fieldset:has(input[required]) > legend::after,.chu-choice-field:has(input[required]) > legend::after,.chu-choice-other:has(> input[type="text"][required]) > span::after,.chu-declarations > label:has(> input[required]) b::after { content: " *"; color: #c72f3a; font-family: "Avenir Next","Segoe UI",sans-serif; font-size: .85em; font-style: normal; font-weight: 800; }
.chu-field-grid input,.chu-field-grid textarea,.chu-field-grid select,.chu-choice-other > input { width: 100%; min-height: 54px; padding: .85rem 1rem; border: 1px solid rgba(71,40,42,.15); border-radius: 11px; outline: none; color: var(--app-navy); background: rgba(255,255,255,.8); font: 400 .95rem "Avenir Next","Segoe UI",sans-serif; box-shadow: inset 0 1px 0 rgba(255,255,255,.75); transition: border-color .2s ease,box-shadow .2s ease,background .2s ease; }
.chu-field-grid textarea { min-height: 104px; resize: vertical; }
.chu-field-grid input:focus,.chu-field-grid textarea:focus,.chu-field-grid select:focus,.chu-choice-other > input:focus { border-color: var(--app-teal); background: white; box-shadow: 0 0 0 3px rgba(22,140,138,.11); }
.chu-span-2 { grid-column: 1 / -1; }
.chu-fee-column { display: grid; grid-template-columns: 1fr; gap: 0; margin-top: .2rem; overflow: hidden; border: 1px solid rgba(18,63,115,.13); border-radius: 18px; background: rgba(255,255,255,.55); box-shadow: 0 14px 36px rgba(18,63,115,.055); }
.chu-fee-column > header { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: 1.15rem 1.3rem; color: white; background: linear-gradient(125deg,#123f73,#1f668c); }
.chu-fee-column > header p { margin: 0; font: 600 1rem "Microsoft YaHei UI","Microsoft YaHei","PingFang SC",sans-serif; letter-spacing: .08em; }
.chu-fee-column > header small { color: rgba(255,255,255,.62); font-size: .58rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.chu-fee-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(140px,190px); align-items: center; gap: 1.25rem; padding: 1rem 1.3rem; border-top: 1px solid rgba(18,63,115,.1); transition: background .2s ease; }
.chu-fee-select { display: grid; grid-template-columns: minmax(0,1fr) 110px; align-items: center; gap: 1rem; cursor: pointer; }
.chu-fee-select > span,.chu-fee-total > span { margin: 0; color: var(--app-navy); font: 500 .92rem Georgia,"Songti SC",serif; }
.chu-fee-included { justify-self: center; padding: .4rem .62rem; border-radius: 999px; color: var(--app-teal); background: rgba(22,140,138,.08); font: 800 .52rem "Avenir Next","Segoe UI",sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.chu-fee-row output[data-fee-rate] { justify-self: stretch; padding: .9rem 1rem; border: 1px solid rgba(18,63,115,.13); border-radius: 12px; color: var(--app-navy); background: rgba(255,255,255,.62); font: 700 .75rem "Avenir Next","Segoe UI",sans-serif; text-align: right; }
.chu-fee-select > span small,.chu-fee-total > span small { display: block; margin-top: .2rem; color: rgba(71,40,42,.42); font: 700 .56rem "Avenir Next","Segoe UI",sans-serif; letter-spacing: .06em; text-transform: uppercase; }
.chu-field-grid .chu-fee-select > input[type="checkbox"] { justify-self: center; width: 20px; height: 20px; min-height: 20px; margin: 0; padding: 0; border-radius: 5px; accent-color: var(--app-teal); box-shadow: none; }
.chu-fee-quantity-select { cursor: default; }
.chu-fee-stepper { display: grid; grid-template-columns: 34px 40px 34px; align-items: center; overflow: hidden; border: 1px solid rgba(18,63,115,.18); border-radius: 999px; background: rgba(255,255,255,.78); box-shadow: 0 7px 18px rgba(18,63,115,.07); }
.chu-fee-stepper button { width: 34px; height: 38px; padding: 0; border: 0; color: var(--app-navy); background: transparent; font: 500 1.1rem/1 "Avenir Next","Segoe UI",sans-serif; cursor: pointer; transition: color .2s ease,background .2s ease; }
.chu-fee-stepper button:hover:not(:disabled),.chu-fee-stepper button:focus-visible { color: white; background: var(--app-teal); outline: none; }
.chu-fee-stepper button:disabled { color: rgba(18,63,115,.24); cursor: default; }
.chu-field-grid .chu-fee-stepper > input[data-fee-quantity] { width: 40px; height: 38px; min-height: 38px; padding: 0; border: 0; border-right: 1px solid rgba(18,63,115,.1); border-left: 1px solid rgba(18,63,115,.1); border-radius: 0; text-align: center; background: transparent; box-shadow: none; font-weight: 700; appearance: textfield; }
.chu-field-grid .chu-fee-stepper > input[data-fee-quantity]::-webkit-inner-spin-button,.chu-field-grid .chu-fee-stepper > input[data-fee-quantity]::-webkit-outer-spin-button { margin: 0; appearance: none; }
.chu-field-grid .chu-fee-row > input[data-fee-amount],.chu-field-grid .chu-fee-total > input { min-height: 48px; text-align: right; }
.chu-fee-row.is-excluded { background: rgba(18,63,115,.025); }
.chu-fee-row.is-excluded .chu-fee-select > span { color: rgba(18,63,115,.48); }
.chu-fee-total { border-top-color: rgba(184,68,61,.24); background: rgba(184,68,61,.045); }
.chu-fee-total > span { color: var(--app-red); font-weight: 600; }
.chu-field-grid .chu-fee-total > input[readonly] { color: var(--app-red); font-weight: 700; background: rgba(255,255,255,.6); cursor: default; }
.chu-choice-field { margin-top: 1.6rem; }
.chu-choice-row { display: flex; flex-wrap: wrap; gap: .7rem; }
.chu-choice-row label { position: relative; cursor: pointer; }
.chu-choice-row label > input[type="radio"] { position: absolute; opacity: 0; }
.chu-choice-row label > span { min-height: 48px; display: grid; align-content: center; padding: .7rem 1rem; border: 1px solid rgba(71,40,42,.14); border-radius: 999px; color: rgba(71,40,42,.72); background: rgba(255,255,255,.72); font-size: .76rem; line-height: 1.25; }
.chu-choice-row label > input[type="radio"]:checked + span { border-color: var(--app-deep); color: white; background: var(--app-deep); box-shadow: 0 8px 20px rgba(18,63,115,.17); }
.chu-choice-other { display: grid; grid-template-columns: auto minmax(130px,1fr); gap: .65rem; align-items: center; }
.chu-choice-other > input[type="text"] { min-width: 130px; }

.chu-person-block { padding: 0 0 2.3rem; }
.chu-person-block + .chu-person-block { padding-top: 2.3rem; border-top: 1px solid var(--app-line); }
.chu-person-block > p { display: flex; align-items: center; gap: .7rem; margin: 0 0 1.5rem; }
.chu-person-block > p span { width: 30px; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: var(--app-red); color: white; font-size: .68rem; }
.chu-person-block > p strong { font: 500 1.08rem Georgia,"Songti SC",serif; }
.chu-person-block > p small { color: rgba(71,40,42,.43); font-size: .6rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }

.chu-declarations { display: grid; gap: .75rem; }
.chu-declarations > label,.chu-religious-option { display: grid; grid-template-columns: 26px minmax(0,1fr); gap: .9rem; align-items: start; padding: 1.2rem; border: 1px solid rgba(71,40,42,.12); border-radius: 13px; cursor: pointer; background: rgba(255,255,255,.6); }
.chu-declarations input,.chu-religious-option input { width: 20px; height: 20px; margin-top: .2rem; accent-color: var(--app-teal); }
.chu-declarations b,.chu-religious-option b { display: block; margin-bottom: .35rem; color: var(--app-navy); font: 500 .96rem/1.55 Georgia,"Songti SC",serif; }
.chu-declarations small,.chu-religious-option small { display: block; color: rgba(71,40,42,.54); font-size: .7rem; line-height: 1.55; }
.chu-religious-option { margin: .75rem 0 1.7rem; border-color: rgba(224,173,67,.32); background: rgba(224,173,67,.065); }
.chu-signatures { margin-top: 1.6rem; }

.chu-official-use { margin: 0; padding: 0 1.5rem; border: 1px solid rgba(18,63,115,.12); border-radius: 18px; background: rgba(255,252,245,.78); box-shadow: 0 12px 35px rgba(18,63,115,.05); }
.chu-official-use summary { display: grid; grid-template-columns: 120px minmax(180px,1fr) auto; gap: 1.2rem; align-items: center; padding: 1.35rem 0; cursor: pointer; list-style: none; }
.chu-official-use summary:focus { outline: none; }
.chu-official-use summary:focus-visible { border-radius: 10px; box-shadow: 0 0 0 3px rgba(18,63,115,.12); }
.chu-official-use summary::-webkit-details-marker { display: none; }
.chu-official-use summary > span { color: var(--app-red); font-size: .6rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.chu-official-use summary b { font: 500 .96rem Georgia,"Songti SC",serif; }
.chu-official-use summary small { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: .45rem; color: rgba(71,40,42,.5); font-size: .58rem; letter-spacing: .08em; text-align: right; text-transform: uppercase; }
.chu-official-use summary small strong { padding: .28rem .48rem; border-radius: 999px; color: var(--app-red); background: rgba(198,42,52,.07); font-size: .52rem; letter-spacing: .1em; }
.chu-official-grid { display: grid; grid-template-columns: 1.08fr 1.15fr 1fr 1fr; padding: 0 0 1.3rem; border-top: 1px solid var(--app-line); }
.chu-official-field { display: flex; min-width: 0; min-height: 142px; margin: 0; padding: 1.15rem 1.2rem; flex-direction: column; align-items: stretch; border: 0; border-left: 1px solid var(--app-line); }
.chu-official-field:first-child { border-left: 0; }
.chu-official-field > small,.chu-official-field > legend { display: flex; min-height: 25px; margin: 0 0 .7rem; padding: 0; align-items: baseline; gap: .35rem; color: rgba(71,40,42,.72); font: 700 .62rem/1.35 "Avenir Next","Segoe UI",sans-serif; letter-spacing: .04em; text-transform: none; }
.chu-official-field > small span,.chu-official-field > legend span { color: rgba(71,40,42,.82); font-size: .7rem; white-space: nowrap; }
.chu-official-field > small em,.chu-official-field > legend em { color: rgba(71,40,42,.48); font-size: .55rem; font-style: normal; letter-spacing: .09em; text-transform: uppercase; white-space: nowrap; }
.chu-official-field > input { width: 100%; min-height: 50px; padding: .78rem .9rem; border: 1px solid rgba(71,40,42,.14); border-radius: 12px; outline: none; color: var(--app-navy); background: rgba(255,255,255,.78); font: 500 .77rem "Avenir Next","Segoe UI",sans-serif; box-shadow: inset 0 1px 0 rgba(255,255,255,.8); }
.chu-official-field > input:focus { border-color: var(--app-teal); box-shadow: 0 0 0 3px rgba(22,140,138,.1); }
.chu-official-field > input[readonly] { color: rgba(18,63,115,.62); background: rgba(18,63,115,.035); }
.chu-official-hint { margin-top: .45rem; color: rgba(71,40,42,.42); font: 600 .52rem/1.35 "Avenir Next","Segoe UI",sans-serif; letter-spacing: .07em; text-transform: uppercase; }
.chu-official-status > div { display: grid; min-height: 50px; grid-template-columns: 1fr; align-content: center; gap: .45rem; }
.chu-official-status label { display: flex; align-items: center; gap: .55rem; color: var(--app-navy); font: 500 .78rem Georgia,"Songti SC",serif; cursor: pointer; }
.chu-official-status input { width: 18px; height: 18px; margin: 0; accent-color: var(--app-teal); }
.chu-official-field input:disabled { opacity: .48; cursor: not-allowed; }

.chu-form-submit { display: flex; justify-content: space-between; align-items: center; gap: 2rem; padding: 1.7rem; border-radius: 20px; color: white; background: linear-gradient(125deg,#123f73,#1f668c); box-shadow: 0 18px 44px rgba(18,63,115,.2); }
.chu-form-submit p { margin: 0; }
.chu-form-submit p strong,.chu-form-submit p span { display: block; }
.chu-form-submit p strong { margin-bottom: .5rem; color: white; font-size: .94rem; font-weight: 800; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.chu-form-submit p span { color: rgba(255,255,255,.78); font-size: .88rem; line-height: 1.6; }
.chu-form-submit button { display: inline-flex; align-items: center; gap: .8rem; flex: 0 0 auto; padding: .65rem .7rem .65rem 1.2rem; border: 0; border-radius: 999px; color: white; background: rgba(255,255,255,.12); cursor: pointer; transition: transform .2s ease,background .2s ease; }
.chu-form-submit button:hover { transform: translateY(-2px); background: rgba(255,255,255,.18); }
.chu-form-submit button:disabled,.chu-form-submit button:disabled:hover { opacity: .46; transform: none; background: rgba(255,255,255,.08); cursor: not-allowed; }
.chu-form-submit button span { font: 500 .86rem Georgia,"Songti SC",serif; }
.chu-form-submit button b { display: inline-flex; align-items: center; gap: .5rem; padding: .72rem .9rem; border-radius: 999px; color: var(--app-deep); background: white; font-size: .62rem; letter-spacing: .05em; text-transform: uppercase; }

.chu-application-form.is-reviewing > :not(.chu-application-review) { display: none; }
.chu-application-shell.is-reviewing { grid-template-columns: 1fr; max-width: 1160px; }
.chu-application-shell.is-reviewing > .chu-application-index { display: none; }
.chu-application-review[hidden] { display: none; }
.chu-application-review { overflow: hidden; border: 1px solid rgba(18,63,115,.13); border-radius: 28px; color: var(--app-navy); background: rgba(255,252,245,.96); box-shadow: 0 24px 70px rgba(18,63,115,.13); }
.chu-review-hero { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 2rem; align-items: end; padding: 2.5rem 2.7rem; color: white; background: linear-gradient(125deg,#123f73 0%,#1d668a 68%,#178985 100%); }
.chu-review-hero small { color: #ffd37a; font-size: .65rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.chu-review-hero h2 { margin: .65rem 0 .45rem; color: white; font: 500 clamp(2.25rem,5vw,4.2rem)/.98 Georgia,"Songti SC",serif; letter-spacing: .03em; }
.chu-review-hero p { margin: 0; color: rgba(255,255,255,.74); font-size: .9rem; }
.chu-review-reference { min-width: 250px; padding: 1.15rem 1.3rem; border: 1px solid rgba(255,255,255,.2); border-radius: 16px; background: rgba(255,255,255,.08); }
.chu-review-reference small,.chu-review-reference strong,.chu-review-reference span { display: block; }
.chu-review-reference strong { margin: .4rem 0; color: white; font: 600 1rem "Avenir Next","Segoe UI",sans-serif; letter-spacing: .03em; }
.chu-review-reference span { color: rgba(255,255,255,.57); font-size: .64rem; line-height: 1.5; }
.chu-review-grid { display: grid; grid-template-columns: 1fr 1fr; }
.chu-review-grid article { min-width: 0; padding: 2rem 2.35rem 2.25rem; border-bottom: 1px solid var(--app-line); }
.chu-review-grid article:nth-child(odd) { border-right: 1px solid var(--app-line); }
.chu-review-grid article > header { display: flex; align-items: center; gap: .8rem; margin-bottom: 1.45rem; }
.chu-review-grid article > header > span { color: var(--app-red); font: italic 500 1.15rem Georgia,serif; }
.chu-review-grid article > header small { color: var(--app-teal); font-size: .58rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.chu-review-grid article > header h3 { margin: .18rem 0 0; color: var(--app-navy); font: 500 1.45rem Georgia,"Songti SC",serif; }
.chu-review-grid dl { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 0; }
.chu-review-grid dl > div { min-width: 0; padding: .85rem 0; border-top: 1px solid rgba(18,63,115,.09); }
.chu-review-grid dl > div:nth-child(odd):not(.chu-review-wide) { padding-right: 1rem; }
.chu-review-grid dl > div:nth-child(even):not(.chu-review-wide) { padding-left: 1rem; border-left: 1px solid rgba(18,63,115,.09); }
.chu-review-grid dl > .chu-review-wide { grid-column: 1 / -1; }
.chu-review-grid dt { margin-bottom: .32rem; color: rgba(71,40,42,.48); font: 700 .56rem "Avenir Next","Segoe UI",sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.chu-review-grid dd { margin: 0; overflow-wrap: anywhere; color: var(--app-navy); font: 500 .92rem/1.55 Georgia,"Songti SC",serif; white-space: pre-line; }
.chu-review-grid dd.chu-review-total { color: var(--app-red); font-size: 1.18rem; }
.chu-review-actions { display: flex; justify-content: space-between; align-items: center; gap: 2rem; padding: 1.6rem 2.35rem 1.8rem; background: rgba(224,173,67,.065); }
.chu-review-actions button { border: 0; cursor: pointer; }
.chu-review-edit { display: inline-flex; align-items: baseline; gap: .5rem; padding: .85rem 1rem; border-radius: 999px; color: var(--app-navy); background: transparent; font: 600 .88rem "Avenir Next","Segoe UI",sans-serif; }
.chu-review-edit small { color: rgba(71,40,42,.48); font-size: .58rem; letter-spacing: .08em; text-transform: uppercase; }
.chu-review-actions > div { display: flex; align-items: center; gap: 1rem; }
.chu-review-actions > div > small { max-width: 160px; color: rgba(71,40,42,.46); font-size: .58rem; line-height: 1.4; text-align: right; text-transform: uppercase; }
.chu-review-final { display: inline-flex; align-items: center; gap: .75rem; padding: .8rem 1rem .8rem 1.2rem; border-radius: 999px; color: white; background: var(--app-red); }
.chu-review-final span { font: 500 .9rem Georgia,"Songti SC",serif; }
.chu-review-final b { padding: .5rem .7rem; border-radius: 999px; color: var(--app-red); background: white; font-size: .56rem; letter-spacing: .06em; text-transform: uppercase; }
.chu-review-final:disabled { opacity: .46; cursor: not-allowed; }
.chu-submission-confirmation { width: min(880px,calc(100% - 2rem)); margin: clamp(3rem,7vw,6rem) auto; padding: clamp(2rem,5vw,4.5rem); border: 1px solid rgba(18,63,115,.12); border-radius: 30px; text-align: center; background: rgba(255,252,245,.86); box-shadow: 0 26px 70px rgba(18,63,115,.1); }
.chu-confirmation-mark { display: grid; width: 72px; height: 72px; margin: 0 auto 1.4rem; place-items: center; border-radius: 50%; color: white; background: var(--app-teal); font: 700 2rem/1 "Avenir Next","Segoe UI",sans-serif; box-shadow: 0 14px 30px rgba(22,140,138,.2); }
.chu-submission-confirmation h2 { margin: .6rem 0 1rem; color: var(--app-navy); font: 500 clamp(2.3rem,5vw,4.2rem)/1 Georgia,"Songti SC",serif; }
.chu-submission-confirmation > p:not(.chu-application-eyebrow) { max-width: 650px; margin: 0 auto; color: rgba(18,63,85,.72); font-size: 1rem; line-height: 1.8; }
.chu-submission-confirmation > div { display: grid; gap: .4rem; max-width: 540px; margin: 2rem auto; padding: 1.4rem; border-radius: 18px; color: white; background: linear-gradient(125deg,#123f73,#1f668c); }
.chu-submission-confirmation > div small,.chu-submission-confirmation > div span { color: rgba(255,255,255,.68); font-size: .65rem; letter-spacing: .07em; }
.chu-submission-confirmation > div strong { color: white; font: 700 clamp(1.1rem,3vw,1.6rem) "Avenir Next","Segoe UI",sans-serif; letter-spacing: .06em; }
.chu-submission-confirmation > a { display: inline-flex; padding: .8rem 1.15rem; border: 1px solid rgba(18,63,115,.2); border-radius: 999px; color: var(--app-navy); font-size: .75rem; font-weight: 800; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }

@media (max-width: 1050px) {
	.chu-application-hero { grid-template-columns: 1fr .42fr; }
	.chu-application-hero-mark { width: min(220px,22vw); }
	.chu-application-shell { grid-template-columns: 1fr; }
	.chu-application-index { position: static; }
	.chu-application-index ol { display: grid; grid-template-columns: repeat(4,1fr); }
	.chu-application-index li { border-bottom: 1px solid rgba(255,255,255,.12); }
	.chu-application-index a { padding-right: .8rem; }
}

@media (max-width: 720px) {
	.chu-application-page { padding-top: 70px; }
	.chu-application-hero { min-height: 540px; display: block; padding: 2.6rem 1.4rem 3.8rem; background-image: linear-gradient(0deg,rgba(255,250,240,.99) 0%,rgba(255,250,240,.94) 50%,rgba(255,250,240,.48) 78%,rgba(255,250,240,.12) 100%),url("../media/hero-copy-artwork-cobalt-gold.png"); background-position: 58% center; }
	.chu-application-back { margin-bottom: 1.75rem; }
	.chu-application-hero h1 { font-size: clamp(3.6rem,16vw,5.3rem); }
	.chu-application-hero h1 em { gap: .8rem; margin-top: 1rem; margin-left: 0; letter-spacing: .14em; }
	.chu-application-hero h1 em::after { width: 2.8rem; }
	.chu-application-lead { max-width: 86%; margin-top: 1.4rem; }
	.chu-application-hero-mark { position: absolute; right: 1rem; bottom: 1.7rem; width: 150px; opacity: .9; }
	.chu-application-hero-mark small { width: 46px; font-size: 1.05rem; }
	.chu-application-shell { width: calc(100% - 1.6rem); padding: 3rem 0; }
	.chu-application-index { display: none; }
	.chu-form-section { padding: clamp(1.1rem,5vw,1.3rem); border-radius: 20px; }
	.chu-form-section + .chu-form-section { padding-top: 1.3rem; }
	.chu-form-section > header { display: grid; grid-template-columns: 42px minmax(0,1fr); align-items: start; gap: .85rem; margin-bottom: 1.8rem; padding-bottom: 1.25rem; }
	.chu-form-section > header > span { width: 42px; }
	.chu-form-section > header p { margin-top: .05rem; letter-spacing: .13em; }
	.chu-form-section > header h2 { font-size: clamp(1.8rem,8vw,2rem); line-height: 1.05; }
	.chu-photo-row,.chu-field-grid { grid-template-columns: 1fr; }
	.chu-photo-field { min-height: 220px; }
	.chu-span-2 { grid-column: auto; }
	.chu-fee-column { grid-column: auto; }
	.chu-fee-column > header { align-items: center; padding: 1rem 1.05rem; }
	.chu-fee-row { grid-template-columns: 1fr; gap: .75rem; padding: 1rem 1.05rem; }
	.chu-fee-select { gap: .75rem; }
	.chu-fee-row output[data-fee-rate] { justify-self: stretch; text-align: left; }
	.chu-field-grid .chu-fee-row > input[data-fee-amount],.chu-field-grid .chu-fee-total > input { text-align: left; }
	.chu-choice-row { display: grid; grid-template-columns: 1fr 1fr; }
	.chu-choice-row label > span { height: 100%; }
	.chu-choice-other { grid-column: 1 / -1; }
	.chu-official-use { padding: 0 1rem; }
	.chu-official-use summary { grid-template-columns: 1fr; gap: .3rem; }
	.chu-official-use summary small { justify-content: flex-start; text-align: left; }
	.chu-official-grid { grid-template-columns: 1fr 1fr; }
	.chu-official-field:nth-child(3) { border-left: 0; }
	.chu-declarations > label,.chu-religious-option { grid-template-columns: 22px minmax(0,1fr); gap: .8rem; padding: 1rem; }
	.chu-declarations input,.chu-religious-option input { width: 19px; height: 19px; }
	.chu-form-submit { align-items: stretch; flex-direction: column; padding: 1.3rem; }
	.chu-form-submit button { justify-content: space-between; }
	.chu-review-hero { grid-template-columns: 1fr; align-items: start; padding: 2rem 1.4rem; }
	.chu-review-reference { min-width: 0; }
	.chu-review-grid { grid-template-columns: 1fr; }
	.chu-review-grid article { padding: 1.6rem 1.4rem 1.8rem; border-right: 0 !important; }
	.chu-review-actions { align-items: stretch; flex-direction: column; padding: 1.3rem 1.4rem 1.5rem; }
	.chu-review-actions > div { justify-content: space-between; }
}

@media (max-width: 430px) {
	.chu-application-hero { min-height: 540px; }
	.chu-official-grid { grid-template-columns: 1fr; }
	.chu-official-field { border-left: 0; border-top: 1px solid var(--app-line); }
	.chu-official-field:first-child { border-top: 0; }
	.chu-fee-select { grid-template-columns: minmax(0,1fr) 110px; }
	.chu-fee-stepper { grid-column: auto; }
	.chu-application-lead { max-width: 100%; font-size: .9rem; }
	.chu-choice-row { grid-template-columns: 1fr; }
	.chu-choice-other { grid-column: auto; grid-template-columns: 1fr; }
	.chu-person-block > p { display: grid; grid-template-columns: 30px minmax(0,1fr); align-items: center; gap: .35rem .7rem; }
	.chu-person-block > p span { grid-column: 1; grid-row: 1 / span 2; }
	.chu-person-block > p strong,.chu-person-block > p small { grid-column: 2; }
	.chu-form-submit button { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; text-align: left; }
	.chu-review-grid dl { grid-template-columns: 1fr; }
	.chu-review-grid dl > div,.chu-review-grid dl > div:nth-child(odd):not(.chu-review-wide),.chu-review-grid dl > div:nth-child(even):not(.chu-review-wide) { grid-column: auto; padding-right: 0; padding-left: 0; border-left: 0; }
	.chu-review-actions > div { align-items: stretch; flex-direction: column; }
	.chu-review-actions > div > small { max-width: none; text-align: left; }
	.chu-review-final { justify-content: space-between; }
}

@media (max-width: 350px) {
	.chu-form-section > header { grid-template-columns: 36px minmax(0,1fr); gap: .7rem; }
	.chu-form-section > header > span { width: 36px; }
	.chu-form-section > header h2 { font-size: 1.5rem; }
	.chu-form-section > header p { font-size: .56rem; letter-spacing: .1em; }
	.chu-fee-column > header small { letter-spacing: .08em; }
	.chu-form-submit { padding: 1.1rem; }
	.chu-form-submit button { gap: .45rem; padding-left: .9rem; }
	.chu-form-submit button b { padding-inline: .72rem; }
}
