/* Presentation only: scoped to the student admissions page. */
.admissions-page {
    --ad-ink: #000; --ad-muted: #000; --ad-wine: #800d20;
    --ad-wine-dark: #610b19; --ad-gold: #d8b576; --ad-line: #e4e4e4;
    margin: 0; background: #fff;
}
.admissions-shell *, .admissions-shell *::before, .admissions-shell *::after { box-sizing: border-box; }
.admissions-shell a { color: var(--ad-wine); }
.admissions-shell :focus-visible { outline: 3px solid #ad743c; outline-offset: 4px; }
.admissions-shell { max-width: 1440px; margin: auto; padding: 0 56px; text-align: left; color: var(--ad-ink); font: 15px/1.6 roboto, Arial, sans-serif; }
.admissions-brand { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 25px 0; }
.admissions-wordmark { display: flex; gap: 14px; align-items: center; text-decoration: none; font-size: 12px; font-weight: 700; letter-spacing: 1.7px; }
.admissions-monogram { display: grid; place-items: center; width: 53px; height: 53px; background: var(--ad-wine); color: white; border-radius: 50% 50% 7px 7px; font: 700 16px baskerville, Georgia, serif; letter-spacing: 0; }
.admissions-wordmark small { display: block; color: var(--ad-muted); font-size: 11px; font-weight: 400; letter-spacing: .4px; margin-top: 3px; }
.admissions-header-tag { border: 1px solid var(--ad-line); border-radius: 30px; padding: 8px 16px; color: var(--ad-muted); font-size: 12px; }
.admissions-hero { position: relative; display: grid; grid-template-columns: 1.5fr 1fr; overflow: hidden; background: var(--ad-wine-dark); color: #fff8ed; border-radius: 22px; min-height: 340px; }
.admissions-hero-copy { position: relative; z-index: 1; padding: 47px 48px; }
.admissions-page .admissions-eyebrow { font: 700 10px/1.5 roboto, Arial, sans-serif; letter-spacing: 2.4px; margin: 0 0 14px; color: var(--ad-wine); }
.admissions-hero .admissions-eyebrow { color: var(--ad-gold); }
.admissions-hero h1 { font: 400 clamp(29px, 3.4vw, 48px)/1.24 baskerville, Georgia, serif; letter-spacing: -1.6px; margin: 0 0 20px; }
.admissions-hero h1 em { color: #edd1a1; font-weight: 400; }
.admissions-hero-copy > p:not(.admissions-eyebrow) { max-width: 450px; color: #e3cdd3; font-size: 14px; margin: 0 0 25px; line-height: 1.8; }
.admissions-page .admissions-start { display: inline-flex; gap: 30px; align-items: center; border: 1px solid #d5b69a; border-radius: 7px; padding: 11px 20px; color: #fff8ed; text-decoration: none; font-size: 13px; font-weight: 700; }
.admissions-start:hover { background: #ffffff12; }
.admissions-hero-art { position: relative; min-height: 330px; background: radial-gradient(ellipse at 70% 70%, #b27b4238, transparent 65%); overflow: hidden; }
.admissions-orbit { position: absolute; width: 300px; height: 370px; border: 1px solid #d8b57655; border-radius: 50% 50% 0 0; bottom: -80px; left: 15%; transform: rotate(-16deg); }
.admissions-orbit-two { width: 250px; height: 330px; bottom: -45px; left: 25%; transform: rotate(12deg); }
.admissions-page .admissions-art-star { position: absolute; left: 43%; top: 28px; color: var(--ad-gold); font-size: 70px; font-weight: 400; }
.admissions-page .admissions-art-caption { position: absolute; left: 23%; top: 147px; font: 400 29px/1.35 baskerville, Georgia, serif; letter-spacing: 4px; }
.admissions-art-year { position: absolute; bottom: 32px; left: 23%; color: #d8b576; font-size: 9px; letter-spacing: 2.7px; }
.admissions-layout { display: grid; grid-template-columns: 230px minmax(0,1fr); gap: 36px; align-items: start; margin: 42px 0 60px; }
.admissions-sidebar { position: sticky; top: 22px; }
.admissions-sidebar h2 { font: 400 25px baskerville, Georgia, serif; margin: 0 0 12px; }
.admissions-sidebar > p:not(.admissions-eyebrow) { font-size: 13px; color: var(--ad-muted); line-height: 1.8; margin: 0 0 22px; }
.admissions-nav { display: flex; flex-direction: column; gap: 5px; }
.admissions-page .admissions-nav a { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 8px; text-decoration: none; font-size: 12px; color: #000; font-weight: 500; border: 1px solid transparent; }
.admissions-page .admissions-nav a span { font: 500 10px roboto, Arial, sans-serif; color: #000; }
.admissions-nav a:hover { background: #eee8e1; }
.admissions-page .admissions-nav a[aria-current="location"] { color: var(--ad-wine); background: #eee1e2; border-color: #e4d2d6; font-weight: 700; }
.admissions-tip { background: #eee9df; border-radius: 12px; padding: 21px; margin-top: 27px; }
.admissions-tip > span { color: var(--ad-wine); font-size: 25px; }
.admissions-tip h3 { font-size: 13px; margin: 8px 0; }
.admissions-tip p, .admissions-tip small { color: var(--ad-muted); font-size: 12px; line-height: 1.8; }
.admissions-main { min-width: 0; scroll-margin-top: 24px; }
.admissions-form-intro { margin: 0 0 24px; }
.admissions-form-intro h2 { font: 400 31px/1.4 baskerville, Georgia, serif; margin: 0 0 8px; letter-spacing: -.8px; }
.admissions-form-intro > p:last-child { margin: 0; color: var(--ad-muted); font-size: 13px; max-width: 600px; }
.admissions-page #Form1 { counter-reset: application-section; width: 100%; }
.admissions-page #Form1 > table { width: 100%; max-width: 100%; }
.admissions-page #Form1 fieldset { min-width: 0; width: 100%; margin: 0 0 24px; padding: 24px; background: #fff; border: 1px solid var(--ad-line); border-radius: 14px; box-shadow: 0 3px 14px #33221b03; scroll-margin-top: 24px; }
.admissions-page #Form1 legend { float: left; display: flex; align-items: center; width: 100%; padding: 0 0 20px; margin: 0 0 12px; border-bottom: 1px solid var(--ad-line); color: var(--ad-ink); }
.admissions-page #Form1 legend::before { counter-increment: application-section; content: counter(application-section, decimal-leading-zero); display: grid; place-items: center; width: 32px; height: 32px; flex-shrink: 0; margin-right: 12px; border-radius: 8px; color: var(--ad-wine); background: #f5edef; font: 700 11px roboto, Arial, sans-serif; }
.admissions-page #Form1 legend h3 { font: 700 15px/1.5 roboto, Arial, sans-serif; margin: 0; }
.admissions-page #Form1 table { border-collapse: separate; border-spacing: 0; max-width: 100%; }
.admissions-page #Form1 table.user_entry_main { width: 100%; clear: both; table-layout: auto; }
.admissions-page #Form1 td { font: 400 13px/1.6 roboto, Arial, sans-serif; color: var(--ad-ink); padding: 9px 6px; vertical-align: top; }
.admissions-page #Form1 .user_entry_main > tbody > tr > td:first-child { width: 8px; padding: 0; }
.admissions-page #Form1 .user_entry_main > tbody > tr > td:nth-child(2) { width: 27%; font-weight: 500; font-size: 12px; padding: 12px 10px 10px 0; }
.admissions-page #Form1 .user_entry_main > tbody > tr > td:nth-child(3) { width: 43%; }
.admissions-page #Form1 td.user_help { width: 25%; font-size: 11px; line-height: 1.7; color: var(--ad-muted); }
.admissions-page #Form1 input:not([type]), .admissions-page #Form1 input[type="text"], .admissions-page #Form1 input[type="email"], .admissions-page #Form1 input[type="date"], .admissions-page #Form1 input[type="number"], .admissions-page #Form1 input[type="tel"], .admissions-page #Form1 select, .admissions-page #Form1 textarea {
    width: 100%; max-width: 100%; min-height: 42px; height: auto; margin: 0; padding: 10px 12px; background: #fcfbfa; border: 1px solid #dcd5d1; border-radius: 7px; box-shadow: none; color: var(--ad-ink); font: 400 13px/1.5 roboto, Arial, sans-serif;
}
.admissions-page #Form1 input::placeholder { color: #000; }
.admissions-page #Form1 input:focus, .admissions-page #Form1 select:focus, .admissions-page #Form1 textarea:focus { border-color: var(--ad-wine); outline: 2px solid #702b3b22; outline-offset: 1px; background: white; }
.admissions-page #Form1 input:disabled, .admissions-page #Form1 select:disabled { background: #eeeae7; color: #000; cursor: not-allowed; }
.admissions-page #Form1 input[type="checkbox"], .admissions-page #Form1 input[type="radio"] { accent-color: var(--ad-wine); width: 16px; height: 16px; vertical-align: middle; margin: 4px 7px 4px 0; }
.admissions-page #Form1 input[type="button"], .admissions-page #Form1 input[type="submit"], .admissions-page #Form1 input[type="reset"], .admissions-page #Form1 button { border: 1px solid #d9ceca; border-radius: 7px; background: #fff; color: var(--ad-wine); padding: 9px 14px; min-height: 40px; font: 500 12px/1.5 roboto, Arial, sans-serif; cursor: pointer; margin: 3px 3px 3px 0; white-space: normal; }
.admissions-page #Form1 input[type="button"]:hover, .admissions-page #Form1 button:hover { background: #f3ebec; }
.admissions-page #Form1 #cmdOkay { background: var(--ad-wine); color: white; border-color: var(--ad-wine); padding: 13px 22px; min-height: 48px; font-weight: 700; box-shadow: 0 4px 10px #702b3b20; }
.admissions-page #Form1 #cmdOkay:hover { background: var(--ad-wine-dark); }
.admissions-international .sticknote-1 { border: 1px solid #e9ddc3; border-left: 3px solid #bd944d; background: #fff9ed; border-radius: 8px; padding: 16px 19px; margin: 15px 0 24px; }
.admissions-international .user_text { font: 400 12px/1.8 roboto, Arial, sans-serif; }
.admissions-shell .user_title.topic-title, .admissions-page #Form1 td.user_title { color: var(--ad-wine); }
.admissions-page #Form1 .user_data { width: 100%; border: 1px solid var(--ad-line); border-radius: 8px; overflow: hidden; }
.admissions-page #Form1 .grid_title td { background: #f4efec; font-size: 10px; font-weight: 700; color: #6d5356; letter-spacing: .6px; padding: 12px 8px; }
.admissions-page #Form1 .user_data td { border-bottom: 1px solid #eee7e3; padding: 9px 8px; }
.admissions-page #Form1 .user_data input, .admissions-page #Form1 .user_data select { min-width: 80px; padding: 8px; }
.admissions-page #Family, .admissions-page #Education, .admissions-page #admissions-review { scroll-margin-top: 28px; }
.admissions-page #Form1 hr { border: 0; border-top: 1px solid var(--ad-line); margin: 15px 0; }
.admissions-page #Form1 .user_legend { color: var(--ad-muted); font-size: 11px; }
.admissions-footer-note { border-top: 1px solid var(--ad-line); padding: 24px 0 32px; text-align: center; font-size: 11px; color: var(--ad-muted); letter-spacing: .5px; }
.admissions-footer-note span { padding: 0 10px; }
.admissions-skip { position: fixed; top: -100px; left: 16px; padding: 12px 20px; background: white; z-index: 100000; border-radius: 8px; }
.admissions-skip:focus { top: 12px; }
.admissions-page .ui-dialog { border: 1px solid var(--ad-line); border-radius: 14px; padding: 8px; box-shadow: 0 20px 80px #27121633; font-family: roboto, Arial, sans-serif; }
.admissions-page .ui-dialog .ui-dialog-titlebar { background: #f4edef; border: 0; color: var(--ad-wine); border-radius: 8px; padding: 12px; }
@media (max-width: 1150px) {
    .admissions-shell { padding: 0 28px; }
    .admissions-layout { grid-template-columns: 195px minmax(0,1fr); gap: 24px; }
    .admissions-page #Form1 td.user_help { width: 18%; }
    .admissions-hero-copy { padding: 40px 32px; }
}
@media (max-width: 900px) {
    .admissions-layout { display: block; margin-top: 28px; }
    .admissions-sidebar { position: static; margin-bottom: 28px; }
    .admissions-sidebar > h2, .admissions-sidebar > p, .admissions-tip { display: none; }
    .admissions-nav { flex-direction: row; overflow-x: auto; padding: 3px 0 10px; }
    .admissions-page .admissions-nav a { flex-shrink: 0; white-space: nowrap; }
    .admissions-hero { grid-template-columns: 1.6fr 1fr; }
    .admissions-art-caption { font-size: 21px !important; }
}
@media (max-width: 620px) {
    .admissions-shell { padding: 0 16px; }
    .admissions-brand { padding: 18px 0; }
    .admissions-wordmark { font-size: 10px; letter-spacing: 1px; gap: 10px; }
    .admissions-monogram { width: 42px; height: 42px; }
    .admissions-header-tag { display: none; }
    .admissions-hero { display: block; min-height: 0; border-radius: 15px; }
    .admissions-hero-copy { padding: 30px 24px; }
    .admissions-hero h1 { font-size: 30px; letter-spacing: -.8px; }
    .admissions-hero-art { display: none; }
    .admissions-form-intro h2 { font-size: 27px; }
    .admissions-page #Form1 fieldset { padding: 18px 14px; }
    .admissions-page #Form1 .user_entry_main > tbody > tr { display: block; padding: 8px 0; }
    .admissions-page #Form1 .user_entry_main > tbody > tr > td { display: block; width: 100% !important; padding: 4px 0; }
    .admissions-page #Form1 .user_entry_main > tbody > tr > td:first-child:empty { display: none; }
    .admissions-page #Form1 .user_entry_main > tbody > tr > td:nth-child(2) { padding: 4px 0; }
    .admissions-page #Form1 td.user_help { font-size: 11px; }
    .admissions-page #Form1 .user_data { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .admissions-page #Form1 .user_data td { min-width: 100px; }
    .admissions-page #Form1 #cmdOkay { width: 100%; }
    .admissions-page #Form1 > table:first-child { font-size: 11px; }
    .admissions-page .ui-dialog { max-width: calc(100vw - 24px); }
}
@media (prefers-reduced-motion: reduce) { .admissions-page { scroll-behavior: auto; } .admissions-shell { scroll-behavior: auto; } }
@media print {
    .admissions-page { background: white; }
    .admissions-shell { max-width: none; padding: 0; }
    .admissions-hero, .admissions-sidebar, .admissions-skip, .admissions-header-tag { display: none; }
    .admissions-layout { display: block; }
    .admissions-page #Form1 fieldset { box-shadow: none; break-inside: avoid; }
}
/* Override the legacy white heading text and fixed layout widths. */
.admissions-page #Form1 legend, .admissions-page #Form1 legend h3 { background: transparent; color: var(--ad-ink); }
.admissions-page .admissions-shell { width: 100%; min-width: 0; }
.admissions-page #Form1 > table:first-child > tbody > tr > td > div > table { width: auto; max-width: 100%; }
@media (max-width: 620px) {
    .admissions-page #Form1 > table:first-child > tbody > tr > td > div > table > tbody > tr { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
    .admissions-page #Form1 > table:first-child td { font-size: 11px; padding: 3px; }
    .admissions-page #Form1 .user_entry_main td > table:not(.user_data) { width: 100%; table-layout: fixed; }
    .admissions-page #Form1 .user_entry_main td > table:not(.user_data) td { overflow-wrap: anywhere; }
}
.admissions-page .admissions-nav a[hidden] { display: none; }
.admissions-page #Form1 .user_text { font-weight: 400; }
.admissions-page #Form1 input[type="button"]:disabled, .admissions-page #Form1 button:disabled { opacity: .55; cursor: not-allowed; }
/* Current-format preview details. */
.admissions-form-reference { text-align: right; color: var(--ad-muted); font-size: 11px; }
.admissions-form-reference > span { color: var(--ad-wine); font-weight: 700; letter-spacing: .5px; }
.admissions-form-reference small { display: block; margin: 3px 0; font-size: 10px; }
.admissions-form-reference a { font-size: 11px; }
.admissions-address-stack { display: grid; gap: 9px; }
.admissions-check-option { display: block; margin: 7px 0; line-height: 1.7; }
.admissions-preview-hint { clear: both; font-size: 12px; color: var(--ad-muted); margin: 0 0 15px; }
.admissions-privacy-copy { line-height: 1.8; }
.admissions-page #Form1 .user_data { display: block; overflow-x: auto; }
.admissions-page #Form1 .user_data input[type="text"], .admissions-page #Form1 .user_data select { min-width: 105px; }
.admissions-page #Form1 input[type="file"] { max-width: 100%; font-size: 12px; padding: 8px 0; }
.admissions-page #Form1 input[type="file"]::file-selector-button { border: 1px solid var(--ad-line); padding: 8px 10px; border-radius: 6px; background: #f4edef; color: var(--ad-wine); margin-right: 8px; cursor: pointer; }
@media (max-width: 620px) { .admissions-brand { flex-wrap: wrap; } .admissions-form-reference { text-align: left; padding-left: 52px; } }

/* HAU visual direction. These rules target only the application area. */
@font-face { font-family: "HAU Application Heading"; src: url("../fonts/roboto/Roboto_Condensed-Bold.ttf") format("truetype"); font-weight: 700; font-style: normal; font-display: swap; }
.admissions-welcome { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 28px; padding: 26px 30px; background: #f8f8f8; border-top: 3px solid var(--ad-wine); border-bottom: 1px solid var(--ad-line); }
.admissions-welcome h1 { font: 700 clamp(25px, 2.7vw, 36px)/1.15 "HAU Application Heading", "Arial Narrow", Arial, sans-serif; color: #000; margin: 0 0 10px; letter-spacing: .3px; }
.admissions-welcome p:last-child { color: var(--ad-muted); font-size: 13px; margin: 0; max-width: 620px; }
.admissions-shell .admissions-welcome-link { display: inline-flex; align-items: center; gap: 22px; flex-shrink: 0; color: white; background: var(--ad-wine); padding: 13px 18px; text-decoration: none; font: 700 13px/1.4 "HAU Application Heading", Arial, sans-serif; letter-spacing: .7px; }
.admissions-welcome-link:hover { background: var(--ad-wine-dark); }
.admissions-layout { margin-top: 30px; }
.admissions-sidebar { top: 125px; }
.admissions-sidebar h2, .admissions-form-intro h2 { font: 700 27px/1.2 "HAU Application Heading", "Arial Narrow", Arial, sans-serif; letter-spacing: .4px; }
.admissions-form-intro h2 { font-size: 31px; }
.admissions-page #Form1 fieldset { border-radius: 5px; box-shadow: none; border-top: 3px solid var(--ad-wine); }
.admissions-page #Form1 legend h3 { font: 700 20px/1.4 "HAU Application Heading", Arial, sans-serif; color: var(--ad-wine); }
.admissions-page #Form1 legend::before { background: #800d20; color: white; border-radius: 3px; }
.admissions-page .admissions-nav a { border-radius: 3px; border-left: 3px solid transparent; }
.admissions-page .admissions-nav a[aria-current="location"] { background: #f9edef; border-color: transparent; border-left-color: var(--ad-wine); }
.admissions-tip { border-radius: 3px; background: #f6f6f6; border-top: 2px solid var(--ad-wine); }
.admissions-page #Form1 input[type="text"], .admissions-page #Form1 input[type="email"], .admissions-page #Form1 input[type="date"], .admissions-page #Form1 input[type="number"], .admissions-page #Form1 input[type="tel"], .admissions-page #Form1 select, .admissions-page #Form1 textarea { border-radius: 4px; background: white; }
.admissions-page #Form1 #cmdOkay { border-radius: 3px; box-shadow: none; }
.admissions-page #Form1 .grid_title td { color: white; background: #800d20; letter-spacing: .3px; }
.admissions-page #Form1 #Family, .admissions-page #Form1 #Education { scroll-margin-top: 135px; }
.admissions-page #Form1 fieldset, .admissions-main, .admissions-page #admissions-survey, .admissions-page #admissions-review { scroll-margin-top: 135px; }
@media (max-width: 900px) { .admissions-sidebar { position: static; } .admissions-welcome { align-items: flex-start; flex-direction: column; gap: 18px; } }
@media (max-width: 620px) { .admissions-welcome { margin-top: 18px; padding: 20px; } .admissions-shell .admissions-welcome-link { font-size: 12px; } }
@media print { .admissions-welcome { display: none; } }
.admissions-shell { box-sizing: border-box; }
/* Existing HeaderMain content and actions, styled only on the admissions page. */
.admissions-page #HeaderMain.admissions-site-header { box-sizing: border-box; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; width: 100%; height: auto; min-height: 100px; padding: 18px clamp(18px, 4vw, 56px); background: white; border-bottom: 3px solid #800d20; box-shadow: 0 3px 16px #00000008; }
.admissions-page #HeaderMain > .HeaderMain-icon, .admissions-page #HeaderMain > .HeaderMain-title, .admissions-page #HeaderMain > .HeaderMain-btns { box-sizing: border-box; position: static; width: auto; min-width: 0; height: auto; margin: 0; padding: 0; }
.admissions-page #HeaderMain > .HeaderMain-icon { display: flex; align-items: center; gap: 12px; flex: 0 1 260px; }
.admissions-page #HeaderMain .HeaderMain-icon > img { display: block; width: 250px; max-width: 100%; height: auto; object-fit: contain; cursor: pointer; }
.admissions-page #HeaderMain > .HeaderMain-title { flex: 1 1 250px; text-align: center; }
.admissions-page #HeaderMain .HeaderMain-title h1 { margin: 0; color: #800d20; font: 700 clamp(23px, 2vw, 30px)/1.2 "HAU Application Heading", Arial, sans-serif; }
.admissions-page #HeaderMain .HeaderMain-title h2 { margin: 5px 0 0; color: #000; font: 400 13px/1.5 roboto, Arial, sans-serif; }
.admissions-page #HeaderMain .HeaderMain-btns { flex: 0 1 auto; }
.admissions-page #HeaderMain #myTopMenu { width: auto; max-width: 100%; margin: 0; border-collapse: separate; border-spacing: 10px 0; }
.admissions-page #HeaderMain #myTopMenu td { padding: 0; vertical-align: middle; font: 400 12px/1.5 roboto, Arial, sans-serif; }
.admissions-page #HeaderMain #myTopMenu .container { box-sizing: border-box; width: auto; max-width: 225px; padding: 10px 13px; background: #faf7f7; border: 1px solid #eadbdd; border-left: 3px solid #800d20; border-radius: 4px; }
.admissions-page #HeaderMain .container .line { margin: 2px 0; color: #000; font: 400 10px/1.6 roboto, Arial, sans-serif; }
.admissions-page #HeaderMain .container .label { font-weight: 700; }
.admissions-page #HeaderMain #myTopMenu a { display: inline-block; padding: 9px 10px; color: #800d20; font: 500 12px/1.5 roboto, Arial, sans-serif; text-decoration: none; border-radius: 4px; }
.admissions-page #HeaderMain #myTopMenu a:hover { background: #f8ecef; }
.admissions-page #HeaderMain a:focus-visible { outline: 2px solid #800d20; outline-offset: 3px; }
.admissions-page #MainContent { box-sizing: border-box; min-width: 0; max-width: 100%; }
/* A narrow form column must also stack before phone width. Inline legacy widths
   are overridden only within Form1; hidden controls and data-grid scrolling remain. */
@media (max-width: 900px) {
    .admissions-page #HeaderMain.admissions-site-header { position: relative; top: auto; left: auto; gap: 16px; }
    .admissions-page #HeaderMain > .HeaderMain-title { text-align: right; }
    .admissions-page #HeaderMain > .HeaderMain-btns { flex-basis: 100%; }
    .admissions-page #HeaderMain #myTopMenu { float: none; width: 100%; border-spacing: 0; }
    .admissions-page #HeaderMain #myTopMenu > tbody > tr { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
    .admissions-page #HeaderMain #myTopMenu > tbody > tr > td { display: block; }
    .admissions-page #Form1 .user_entry_main { width: 100% !important; min-width: 0 !important; table-layout: fixed; }
    .admissions-page #Form1 .user_entry_main > tbody > tr { display: block; height: auto; padding: 9px 0; }
    .admissions-page #Form1 .user_entry_main > tbody > tr > td { display: block; box-sizing: border-box; width: 100% !important; min-width: 0; max-width: 100%; padding: 4px 0; overflow-wrap: anywhere; }
    .admissions-page #Form1 .user_entry_main > tbody > tr > td:first-child:empty { display: none; }
    .admissions-page #Form1 .user_entry_main > tbody > tr > td:nth-child(2) { width: 100%; padding: 4px 0; }
    .admissions-page #Form1 .user_entry_main td > table:not(.user_data) { width: 100% !important; min-width: 0 !important; max-width: 100%; table-layout: fixed; }
    .admissions-page #Form1 .user_entry_main td > table:not(.user_data) td { box-sizing: border-box; min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
    .admissions-page #Form1 input:not([type]), .admissions-page #Form1 input[type="text"], .admissions-page #Form1 input[type="email"], .admissions-page #Form1 input[type="date"], .admissions-page #Form1 input[type="number"], .admissions-page #Form1 input[type="tel"], .admissions-page #Form1 input[type="password"], .admissions-page #Form1 input[type="file"], .admissions-page #Form1 select, .admissions-page #Form1 textarea { box-sizing: border-box; width: 100% !important; min-width: 0 !important; max-width: 100% !important; margin-left: 0; margin-right: 0; font-size: 16px; }
    .admissions-page #Form1 textarea { resize: vertical; }
    .admissions-page #Form1 #tblPresentAddr input, .admissions-page #Form1 #tblPresentAddr select, .admissions-page #Form1 #tblPermaAddr input, .admissions-page #Form1 #tblPermaAddr select { margin-bottom: 7px; }
    .admissions-page #Form1 .user_data { display: block; box-sizing: border-box; width: 100%; max-width: 100%; overflow-x: auto; }
    .admissions-page #Form1 .user_data > tbody { display: table; min-width: 650px; width: 100%; }
    .admissions-page #Form1 .user_data input[type="text"], .admissions-page #Form1 .user_data select { min-width: 90px !important; }
    .admissions-page #Form1 .user_data td { min-width: 90px; }
    .admissions-page #Form1 input[type="button"], .admissions-page #Form1 input[type="submit"], .admissions-page #Form1 input[type="reset"], .admissions-page #Form1 button { max-width: 100% !important; white-space: normal; overflow-wrap: anywhere; }
}
@media (max-width: 620px) {
    .admissions-page #HeaderMain > .HeaderMain-icon { flex-basis: 100%; justify-content: center; }
    .admissions-page #HeaderMain .HeaderMain-icon > img { width: 220px; }
    .admissions-page #HeaderMain > .HeaderMain-title { flex-basis: 100%; text-align: center; }
    .admissions-page #HeaderMain #myTopMenu > tbody > tr { justify-content: center; }
    .admissions-page #HeaderMain #myTopMenu .container { max-width: 100%; }
}
/* Block the outer legacy table itself so nested grids cannot set its min width. */
@media (max-width: 900px) {
    .admissions-page #Form1 table.user_entry_main, .admissions-page #Form1 table.user_entry_main > tbody { display: block; box-sizing: border-box; width: 100% !important; min-width: 0 !important; max-width: 100%; }
    .admissions-page #Form1 table.user_entry_main > tbody > tr { box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; }
}
.admissions-preview-wordmark { font: 700 20px/1.3 Georgia, serif; letter-spacing: 2px; color: #000; }
/* Query-driven attachments: one card per existing file input, always one column. */
.admissions-attachment-note { clear: both; display: flex; align-items: center; gap: 12px; padding: 13px 16px; margin: 0 0 16px; border: 1px solid #ecdde0; border-radius: 5px; background: #fcf7f8; color: #000; }
.admissions-attachment-note > span { display: grid; place-items: center; flex: 0 0 28px; height: 28px; background: #f3e5e9; color: #800d20; border-radius: 4px; font-size: 20px; }
.admissions-attachment-note p { margin: 0; font: 400 12px/1.7 roboto, Arial, sans-serif; }
.admissions-page #Form1 #admissions-requirements table.user_entry_main, .admissions-page #Form1 #admissions-requirements table.user_entry_main > tbody { display: block; width: 100% !important; min-width: 0 !important; max-width: 100%; }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card { display: grid; grid-template-columns: minmax(0,1fr); width: 100%; max-width: 100%; gap: 14px; padding: 17px; margin: 0 0 12px; border: 1px solid #e9d9de; border-radius: 7px; background: #fff; }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card.has-file { border-color: #b98390; background: #fffafb; }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card > td { display: block; box-sizing: border-box; width: 100% !important; min-width: 0; max-width: 100%; padding: 0; }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card > td:empty { display: none; }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card .admissions-attachment-title { position: relative; padding: 0 95px 0 46px; color: #000; font: 500 13px/1.6 roboto, Arial, sans-serif; }
.admissions-document-icon { position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 34px; height: 37px; border-radius: 5px; background: #faf0f3; border: 1px solid #eddce2; color: #800d20; }
.admissions-document-icon svg { width: 22px; height: 22px; }
.admissions-attachment-meta { display: block; color: #000; font: 400 10px/1.6 roboto, Arial, sans-serif; margin-top: 3px; }
.admissions-attachment-badge { position: absolute; right: 0; top: 4px; background: #f1f2f3; color: #000; border-radius: 20px; padding: 4px 8px; font: 700 8px/1.5 roboto, Arial, sans-serif; text-transform: uppercase; letter-spacing: .5px; }
.admissions-attachment-badge.is-required { background: #fff0f0; color: #a00c26; }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-control { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 16px; }
.admissions-attachment-filename { min-width: 0; flex: 1 1 150px; color: #000; font: 500 11px/1.6 roboto, Arial, sans-serif; overflow-wrap: anywhere; }
.has-file .admissions-attachment-filename { color: #800d20; }
.admissions-file-picker { position: relative; flex: 0 0 110px; display: inline-grid; place-items: center; min-height: 38px; background: #800d20; border-radius: 4px; color: white; font: 700 11px/1.5 roboto, Arial, sans-serif; overflow: hidden; }
.admissions-file-picker:hover { background: #610b19; }
.admissions-file-picker:focus-within { outline: 3px solid #b77587; outline-offset: 3px; }
.admissions-file-picker.is-disabled { opacity: .55; }
.admissions-page #Form1 #admissions-requirements .admissions-file-picker > input[type="file"] { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; min-width: 0 !important; max-width: 100% !important; padding: 0; margin: 0; opacity: 0; cursor: pointer; }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card > td.user_help { font-size: 10px; color: #000; }
@media (max-width: 620px) {
    .admissions-page #Form1 #admissions-requirements .admissions-attachment-card { padding: 14px; }
    .admissions-page #Form1 #admissions-requirements .admissions-attachment-card .admissions-attachment-title { padding-right: 80px; font-size: 12px; }
}
@media print { .admissions-page #Form1 #admissions-requirements .admissions-attachment-card { break-inside: avoid; } }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card > td.admissions-attachment-control { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 16px; }
.admissions-file-picker { min-width: 110px; padding: 9px 14px; }
/* Progressive CSS fallback: cards are visible before/without JS enhancement. */
.admissions-page #Form1 #admissions-requirements .user_entry_main > tbody > tr:has(input[type="file"]):not(.admissions-attachment-card) { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; box-sizing: border-box; width: 100%; padding: 18px; margin-bottom: 12px; background: white; border: 1px solid #e9d9de; border-radius: 7px; }
.admissions-page #Form1 #admissions-requirements .user_entry_main > tbody > tr:has(input[type="file"]):not(.admissions-attachment-card) > td { display: block; box-sizing: border-box; width: 100% !important; max-width: 100%; min-width: 0; padding: 0; }
.admissions-page #Form1 #admissions-requirements .user_entry_main > tbody > tr:has(input[type="file"]):not(.admissions-attachment-card) > td:empty { display: none; }
.admissions-page #Form1 #admissions-requirements .user_entry_main > tbody > tr:has(input[type="file"]):not(.admissions-attachment-card) > td:nth-child(2) { color: #000; font-weight: 500; }
.admissions-page #Form1 #admissions-requirements input[type="file"]::file-selector-button { background: #800d20; color: white; border-color: #800d20; padding: 10px 18px; font-weight: 700; }
/* Legacy .user_entry tr { height: 25px } must not constrain attachment grids. */
.admissions-page #Form1 #admissions-requirements table.user_entry_main,
.admissions-page #Form1 #admissions-requirements table.user_entry_main > tbody { height: auto !important; }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card,
.admissions-page #Form1 #admissions-requirements .user_entry_main > tbody > tr:has(input[type="file"]) {
    height: auto !important;
    min-height: 0;
    grid-template-rows: none;
    grid-auto-rows: auto;
    align-content: start;
    overflow: visible;
}
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card > td {
    height: auto !important;
    min-height: 0;
    float: none;
    position: static;
    align-self: start;
}
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card > td.admissions-attachment-title { position: relative; min-height: 37px; }
.admissions-page #Form1 #admissions-requirements .admissions-attachment-card > td.admissions-attachment-control { min-height: 38px; }

/* Readable black text; retain burgundy accents and white button captions. */
.admissions-page #Form1 input::placeholder, .admissions-page #Form1 textarea::placeholder { color: #000; opacity: 1; }
.admissions-attachment-note p, .admissions-page #Form1 #admissions-requirements .admissions-attachment-meta, .admissions-page #Form1 #admissions-requirements .admissions-attachment-filename, .admissions-page #Form1 #admissions-requirements .admissions-attachment-card > td.user_help { color: #000; font-weight: 400; }
/* Family, education, survey and privacy: readable icon-led subsection headings. */
.admissions-section-icon { display: inline-grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; border: 1px solid #e8cdd4; border-radius: 7px; background: #f8edf0; color: #800d20; vertical-align: middle; }
.admissions-section-icon svg { display: block; width: 23px; height: 23px; }
.admissions-page #Form1 .user_entry_main > tbody > tr.admissions-section-heading { display: grid; grid-template-columns: 36px minmax(0,1fr); gap: 12px; align-items: center; box-sizing: border-box; width: 100%; height: auto !important; padding: 13px 15px; margin: 24px 0 15px; background: #fcf8f9; border: 1px solid #eedee3; border-left: 3px solid #800d20; border-radius: 5px; scroll-margin-top: 135px; }
.admissions-page #Form1 .user_entry_main > tbody > tr.admissions-section-heading > td { display: block; box-sizing: border-box; width: 100% !important; padding: 0; min-width: 0; }
.admissions-page #Form1 .user_entry_main > tbody > tr.admissions-section-heading > td.user_help:empty { display: none; }
.admissions-page #Form1 .admissions-section-heading .user_title a { color: #800d20; font: 700 21px/1.35 "HAU Application Heading", Arial, sans-serif; text-decoration: none; }
.admissions-page #Form1 .admissions-section-heading .user_title a[href]:hover { text-decoration: underline; text-underline-offset: 4px; }
.admissions-page #Form1 legend:has(> .admissions-section-icon)::before { display: none; }
.admissions-page #Form1 legend > .admissions-section-icon { margin-right: 12px; }
@media (max-width:620px) { .admissions-page #Form1 .user_entry_main > tbody > tr.admissions-section-heading { padding: 12px; gap: 10px; } }
/* Keep native desktop table layout: the bar lives inside one full-span cell. */
.admissions-page #Form1 .user_entry_main > tbody > tr.admissions-section-heading { display: table-row; padding: 0; margin: 0; background: transparent; border: 0; }
.admissions-page #Form1 .user_entry_main > tbody > tr.admissions-section-heading > td.admissions-section-heading-cell { display: table-cell; width: auto !important; padding: 18px 0 14px; }
.admissions-section-heading-bar { display: flex; align-items: center; gap: 12px; box-sizing: border-box; width: 100%; min-width: 0; padding: 13px 15px; background: #fcf8f9; border: 1px solid #eedee3; border-left: 3px solid #800d20; border-radius: 5px; }
.admissions-section-heading-bar > a[name] { flex: 0 0 0; width: 0; margin: 0; }
.admissions-section-heading-bar > .admissions-section-icon { flex: 0 0 36px; }
.admissions-section-heading-bar > a:not([name]) { min-width: 0; overflow-wrap: break-word; }
@media (max-width:900px) {
 .admissions-page #Form1 .user_entry_main > tbody > tr.admissions-section-heading { display: block; }
 .admissions-page #Form1 .user_entry_main > tbody > tr.admissions-section-heading > td.admissions-section-heading-cell { display: block; width: 100% !important; }
}

/* Emphasize the international applicant notice, including its email link. */
.admissions-page .admissions-international .user_text, .admissions-page .admissions-international .user_text a { font-weight: 700; }
/* Full-width editable grids with a contained scroll surface. */
.admissions-page #Form1 .user_entry_main > tbody > tr > td.admissions-table-cell { width: auto !important; padding: 10px 0 16px; }
.admissions-table-frame { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; border: 1px solid #e8dce0; border-radius: 9px; background: white; box-shadow: 0 3px 12px #800d2006; margin: 10px 0; }
.admissions-table-frame:focus-visible { outline: 2px solid #800d20; outline-offset: 3px; }
.admissions-page #Form1 .admissions-table-frame > table.user_data { display: table; width: 100%; max-width: none; border: 0; border-radius: 0; border-collapse: separate; border-spacing: 0; table-layout: fixed; overflow: visible; }
.admissions-page #Form1 .admissions-table-frame > table.user_data > tbody { display: table-row-group; width: auto; min-width: 0; }
.admissions-page #Form1 .admissions-table-frame .user_data tr { height: auto; }
.admissions-page #Form1 .admissions-table-frame .user_data td { padding: 13px 10px; border: 0; border-bottom: 1px solid #eee5e8; border-right: 1px solid #f1e9eb; color: #000; font-size: 12px; line-height: 1.7; vertical-align: middle; min-width: 0; overflow-wrap: anywhere; }
.admissions-page #Form1 .admissions-table-frame .user_data .grid_title td { padding: 14px 10px; color: white; background: #800d20; border-bottom: 0; border-right-color: #ffffff20; font-size: 10px; font-weight: 700; letter-spacing: .7px; }
.admissions-page #Form1 .admissions-table-frame .user_data tr:not(.grid_title):nth-child(odd) td { background: #fcf8f9; }
.admissions-page #Form1 .admissions-table-frame .user_data tr:not(.grid_title):hover td { background: #faf0f3; }
.admissions-page #Form1 .admissions-table-frame .user_data tr:last-child td { border-bottom: 0; }
.admissions-page #Form1 .admissions-table-frame .user_data input[type="text"], .admissions-page #Form1 .admissions-table-frame .user_data select, .admissions-page #Form1 .admissions-table-frame .user_data textarea { min-width: 0; width: 100%; min-height: 40px; background: white; border: 1px solid #d9cbd0; border-radius: 5px; padding: 9px; color: black; font-weight: 400; }
.admissions-page #Form1 #TableDeps .grid_title td:first-child, .admissions-page #Form1 #TableEduc .grid_title td:first-child { width: 6%; }
.admissions-page #Form1 #TableDeps .grid_title td:last-child, .admissions-page #Form1 #TableEduc .grid_title td:last-child { width: 10%; }
.admissions-page #Form1 #TableEduc .grid_title td:nth-child(2), .admissions-page #Form1 #TableEduc .grid_title td:nth-child(3) { width: 8%; }
.admissions-page #Form1 #TableSurvey .grid_title td:first-child { width: 4%; }
.admissions-page #Form1 #TableSurvey .grid_title td:nth-child(2) { width: 48%; }
.admissions-page #Form1 #cmdDepsDel, .admissions-page #Form1 #cmdEducDel { color: #800d20; border-color: #e5cbd2; background: #fff8fa; }
@media (max-width:900px) {
 .admissions-page #Form1 .admissions-table-frame > #TableDeps { min-width: 760px; }
 .admissions-page #Form1 .admissions-table-frame > #TableEduc { min-width: 900px; }
 .admissions-page #Form1 .admissions-table-frame > #TableSurvey { min-width: 500px; }
 .admissions-page #Form1 .admissions-table-frame .user_data td { min-width: 0; }
 .admissions-page #Form1 .admissions-table-frame .user_data input[type="text"], .admissions-page #Form1 .admissions-table-frame .user_data select { min-width: 0 !important; }
}
/* Explicit education column sizes override legacy HTML width attributes. */
.admissions-page #Form1 .admissions-table-frame > #TableEduc { min-width: 1120px; }
.admissions-page #Form1 #TableEduc .grid_title td:nth-child(1) { width: 12% !important; }
.admissions-page #Form1 #TableEduc .grid_title td:nth-child(2), .admissions-page #Form1 #TableEduc .grid_title td:nth-child(3) { width: 9% !important; white-space: nowrap; }
.admissions-page #Form1 #TableEduc .grid_title td:nth-child(4) { width: 16% !important; }
.admissions-page #Form1 #TableEduc .grid_title td:nth-child(5), .admissions-page #Form1 #TableEduc .grid_title td:nth-child(6) { width: 20% !important; }
.admissions-page #Form1 #TableEduc .grid_title td:nth-child(7) { width: 13% !important; }
.admissions-page #Form1 #TableEduc .grid_title td:nth-child(8) { width: 9% !important; }
.admissions-page #Form1 .admissions-table-frame .user_data tr.grid_title { background: #800d20; }
.admissions-page #Form1 .admissions-table-frame .user_data tr.grid_title td { background: #800d20 !important; }
.admissions-page #Form1 .admissions-table-frame .user_data input:not([type]), .admissions-page #Form1 .admissions-table-frame .user_data input[type="text"], .admissions-page #Form1 .admissions-table-frame .user_data select, .admissions-page #Form1 .admissions-table-frame .user_data textarea { box-sizing: border-box; width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
.admissions-page #Form1 #TableSurvey .grid_title td:nth-child(3) { width: 48% !important; }
/* Keep a wide education grid inside its scroll frame rather than widening the form. */
.admissions-table-frame { contain: inline-size; }
@media (max-width:900px) {
 .admissions-page #Form1 .user_entry_main > tbody > tr > td.user_help { height: auto !important; min-height: 0; max-height: none; line-height: 1.7; overflow: visible; }
 .admissions-page #Form1 .admissions-present-address-row > td, .admissions-page #Form1 .admissions-permanent-address-row > td { height: auto !important; max-height: none; }
 .admissions-page #Form1 #tblPresentAddr tr, .admissions-page #Form1 #tblPermaAddr tr, .admissions-page #Form1 #tblPresentAddr td, .admissions-page #Form1 #tblPermaAddr td { height: auto !important; max-height: none; }
 .admissions-page #Form1 .admissions-address-hints { padding: 10px 0 14px; }
 .admissions-page #Form1 .admissions-same-address { display: flex; align-items: flex-start; gap: 9px; line-height: 1.7; padding: 8px 0; color: black; }
 .admissions-page #Form1 .admissions-same-address input[type="checkbox"] { flex: 0 0 16px; margin: 5px 0 0; }
 .admissions-page #Form1 .admissions-same-address span { min-width: 0; font-weight: 400; }
}
