.institution-page { background: var(--paper); }
.institution-header { color: var(--green-dark); background: rgba(243,240,232,.94); }
.institution-home { font-size: var(--text-sm); font-weight: 600; }
.inquiry-hero { min-height: 42rem; padding-top: calc(var(--header-h) + clamp(6rem,10vw,11rem)); padding-bottom: clamp(5rem,8vw,8rem); display: grid; grid-template-columns: .72fr 2.65fr; gap: var(--gap); align-content: center; }
.inquiry-hero h1, .inquiry-aside h2, .inquiry-result h2 { margin: 0; font-family: var(--font-display); font-weight: 400; letter-spacing: -.06em; line-height: 1.04; }
.inquiry-hero h1 { font-size: var(--title-lg); }
.inquiry-hero h1 span { display: block; margin-left: .5em; }
.inquiry-hero > div:last-child > p { width: min(30rem,70%); margin: 2.5rem 0 0 auto; color: var(--muted); }
.inquiry-layout { padding-block: var(--section-y); display: grid; grid-template-columns: minmax(18rem,.72fr) minmax(0,1.55fr); gap: clamp(4rem,9vw,10rem); align-items: start; background: var(--paper-light); }
.inquiry-aside { position: sticky; top: calc(var(--header-h) + 2rem); }
.aside-kicker { margin: 0 0 2rem; color: var(--orange); font-size: .72rem; letter-spacing: .08em; }
.inquiry-aside h2 { font-size: var(--title-sm); }
.inquiry-aside > p:not(.aside-kicker) { max-width: 26rem; margin: 2rem 0 0; color: var(--muted); }
.channel-status { margin-top: 4rem; padding-top: 1.3rem; display: grid; grid-template-columns: auto 1fr; gap: 1rem; border-top: 1px solid var(--line); }
.channel-status i { width: .75rem; height: .75rem; margin-top: .35rem; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 1px var(--orange); }
.channel-status strong, .channel-status span { display: block; }
.channel-status strong { font-size: var(--text-sm); }
.channel-status span { margin-top: .35rem; color: var(--muted); font-size: .72rem; }
.inquiry-panel { min-width: 0; }
.inquiry-panel form { display: grid; gap: 4.5rem; }
.inquiry-panel fieldset { margin: 0; padding: 0; border: 0; }
.inquiry-panel legend { width: 100%; margin-bottom: 2rem; padding-bottom: 1rem; display: flex; gap: 1rem; border-bottom: 1px solid var(--ink); font-family: var(--font-display); font-size: clamp(1.5rem,2.3vw,2.4rem); }
.inquiry-panel legend span { padding-top: .45rem; color: var(--orange); font-family: var(--font-body); font-size: .68rem; }
.field-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; }
.field-wide { grid-column: 1 / -1; }
.form-field { display: grid; gap: .7rem; }
.form-field > span, .size-fields > p, .document-options p { margin: 0; font-weight: 700; font-size: var(--text-sm); }
.form-field b, .form-field small, .size-fields small, .document-options small { color: var(--orange); font-size: .66rem; font-weight: 600; }
.form-field > small { margin-top: -.25rem; color: var(--muted); font-size: .7rem; }
.form-field input, .form-field select, .form-field textarea, .size-fields input { width: 100%; min-height: 3.75rem; padding: .8rem 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; color: var(--ink); background: transparent; font: inherit; }
.form-field textarea { min-height: 8rem; resize: vertical; }
.form-field input:focus, .form-field select:focus, .form-field textarea:focus, .size-fields input:focus { outline: 0; border-color: var(--green); box-shadow: 0 1px 0 var(--green); }
.was-validated :is(input,select,textarea):invalid { border-color: var(--orange); }
.size-fields { margin-top: 2.5rem; padding-top: 1.5rem; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1rem 1.5rem; border-top: 1px solid var(--line); align-items: end; }
.size-fields > p { grid-column: 1 / -1; }
.size-fields > label:not(.size-unknown) { display: grid; grid-template-columns: auto 1fr auto; gap: .7rem; align-items: center; color: var(--muted); }
.size-fields > label b { font-size: .75rem; }
.size-unknown { align-self: center; }
.check-option { min-height: 3rem; display: flex; align-items: center; gap: .7rem; cursor: pointer; font-size: var(--text-sm); }
.check-option input { width: 1.15rem; height: 1.15rem; accent-color: var(--green); }
.linked-product { padding: 1.4rem; display: grid; grid-template-columns: auto 1fr auto; gap: 1rem; align-items: center; color: #fff; background: var(--green); }
.linked-product span { color: rgba(255,255,255,.65); font-size: .7rem; }
.linked-product strong { font-family: var(--font-display); font-size: 1.3rem; font-weight: 500; }
.linked-product a { font-size: .72rem; }
.document-options { margin-top: 2.5rem; padding-top: 1.5rem; display: grid; grid-template-columns: .8fr 1.2fr; gap: 2rem; border-top: 1px solid var(--line); }
.document-options > div:first-child > span { display: block; margin-top: .7rem; color: var(--muted); font-size: .72rem; }
.check-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: .25rem 1rem; }
.message-field { margin-top: 2.5rem; }
.form-submit { padding-top: 1.5rem; display: grid; grid-template-columns: 1fr minmax(15rem,.7fr); gap: 2rem; align-items: center; border-top: 1px solid var(--ink); }
.form-submit p { margin: 0; color: var(--muted); font-size: .72rem; }
.form-submit button, .inquiry-result button { min-height: 4rem; padding: 0 1.3rem; display: flex; align-items: center; justify-content: space-between; color: #fff; background: var(--orange); border: 1px solid var(--orange); cursor: pointer; font: inherit; font-weight: 700; }
.form-submit button:hover { color: var(--orange); background: transparent; }
.form-submit button:disabled { color: #fff; background: var(--orange); opacity: .58; cursor: wait; }
.inquiry-result { min-height: 32rem; padding: clamp(3rem,6vw,6rem); color: #fff; background: var(--green); }
.inquiry-result:focus { outline: 0; }
.inquiry-result > p:first-child { margin: 0; color: var(--yellow); font-size: .72rem; letter-spacing: .08em; }
.inquiry-result h2 { max-width: 13ch; margin-top: 3rem; font-size: var(--title-sm); }
.inquiry-result > p:not(:first-child) { max-width: 30rem; margin: 2rem 0 4rem; color: rgba(255,255,255,.72); }
.inquiry-result button { width: min(20rem,100%); color: var(--green); background: #fff; border-color: #fff; }

@media (max-width: 900px) {
  .institution-home { display: none; }
  .inquiry-hero { min-height: 39rem; grid-template-columns: 1fr; align-content: end; }
  .inquiry-hero h1 { font-size: clamp(3.2rem,14.5vw,5.2rem); }
  .inquiry-hero > div:last-child > p { width: 84%; }
  .inquiry-layout { grid-template-columns: 1fr; gap: 5rem; }
  .inquiry-aside { position: static; }
  .field-grid { grid-template-columns: 1fr; }
  .field-wide { grid-column: auto; }
  .size-fields { grid-template-columns: 1fr 1fr; }
  .size-unknown { grid-column: 1 / -1; }
  .linked-product { grid-template-columns: 1fr; gap: .45rem; }
  .document-options { grid-template-columns: 1fr; }
  .form-submit { grid-template-columns: 1fr; }
  .form-submit button { min-height: 4.25rem; }
}

@media (max-width: 520px) {
  .inquiry-hero { min-height: 100svh; }
  .inquiry-hero h1 { font-size: clamp(2.85rem,13vw,4rem); }
  .size-fields, .check-grid { grid-template-columns: 1fr; }
  .size-unknown { grid-column: auto; }
}
