/* Inquiry components inherit the Task 02 palette, type, navigation and buttons. */
.inquiry-page [hidden] { display: none !important; }
.inquiry-page main { background: radial-gradient(circle at 78% 12%, #62302824 0, transparent 27%), linear-gradient(180deg, #151613 0, #10110f 42%, #131410 100%); }
.inquiry-intro { position: relative; padding-top: 28px; padding-bottom: 55px; border-bottom: 1px solid #655847; box-shadow: inset 0 -36px 68px #0505043d; }
.return-link { color: var(--muted); font-size: 13px; margin-bottom: 35px; border: 0; }
.inquiry-intro > .eyebrow { color: var(--red-light); }
.inquiry-intro h1 { font: 500 clamp(42px, 5vw, 68px)/1.12 var(--display); text-transform: uppercase; letter-spacing: -.025em; margin: 18px 0 24px; }
.inquiry-intro h1 > span { font-family: var(--brand); text-transform: none; font-size: .84em; color: var(--cream); }
.inquiry-lead { font-size: 17px; color: var(--muted); }
.inquiry-layout { display: grid; grid-template-columns: .7fr 1.3fr; gap: clamp(36px, 6vw, 88px); padding-top: 58px; padding-bottom: 100px; align-items: start; }
.inquiry-aside { position: sticky; top: 124px; }
.aside-rule { display: block; background: var(--red); width: 54px; height: 4px; margin-bottom: 25px; }
.inquiry-aside h2 { font-size: 29px; line-height: 1.25; margin: 20px 0; }
.inquiry-aside > p:not(.eyebrow) { font-size: 15px; color: var(--muted); }
.inquiry-outline { padding: 0; margin: 30px 0; list-style: none; border-top: 1px solid var(--line); }
.inquiry-outline li { padding: 13px 0; border-bottom: 1px solid var(--line); font: 16px var(--display); }
.inquiry-outline span { color: var(--red-light); margin-right: 16px; }
.demo-notice { border-left: 3px solid var(--red-light); padding-left: 17px; font-size: 14px; }
.demo-notice p { margin-top: 8px; color: var(--muted); }
.inquiry-workspace { min-width: 0; }
#form-controls { border: 0; margin: 0; padding: 0; min-width: 0; }
.form-section { border: 0; border-top: 1px solid #665a4b; margin: 0 0 44px; padding: 27px 0 0; min-width: 0; }
.form-section > legend { padding: 0 15px 0 0; color: var(--cream); font: 24px/1.3 var(--display); text-transform: uppercase; max-width: 100%; }
.form-section > legend > span { color: var(--red-light); font-size: 17px; margin-right: 13px; }
.section-help, .field-hint { color: var(--muted); font-size: 13px; line-height: 1.6; }
.section-help { margin-bottom: 24px; }
.field-hint { margin-top: 9px; }
.type-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.type-option { display: flex; align-items: center; gap: 13px; padding: 20px 18px; min-height: 98px; border: 0; border-top: 1px solid #6f6251; border-bottom: 1px solid #4c473e; background: linear-gradient(145deg, #20211d, #171815); cursor: pointer; box-shadow: inset 0 0 28px #05050438; }
.type-option:has(input:checked) { background: linear-gradient(145deg, var(--color-red-subtle), #171210); border-color: var(--color-red-border); box-shadow: inset 0 -3px var(--red-light), 0 10px 25px #05050438; }
.type-option:has(input:focus-visible) { outline: 3px solid var(--cream); outline-offset: 3px; }
.type-option input { accent-color: var(--color-red-hover); width: 20px; height: 20px; margin: 0; flex: 0 0 20px; }
.type-option strong { display: block; font: 24px/1.2 var(--display); text-transform: uppercase; }
.type-option small { display: block; color: var(--muted); font-size: 12px; line-height: 1.5; margin-top: 6px; }
.field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
.field { margin-bottom: 23px; min-width: 0; }
.field label, .upload-title { display: block; font-size: 15px; font-weight: 600; line-height: 1.55; margin-bottom: 9px; }
.field label span, .upload-title span { font-size: 12px; font-weight: 400; color: var(--muted); }
.field input, .field textarea, .field select { display: block; width: 100%; min-width: 0; min-height: 50px; border: 1px solid #665b4c; border-radius: 0; background: #141512; color: var(--cream); padding: 12px 14px; font: 16px/1.5 var(--body); color-scheme: dark; box-shadow: inset 0 1px 10px #05050452; }
.field input:focus, .field textarea:focus, .field select:focus { border-color: var(--color-red-border); background: #181815; }
.field textarea { resize: vertical; min-height: 110px; }
.field input::placeholder, .field textarea::placeholder { color: #aea696; opacity: 1; }
.field [aria-invalid='true'] { border-color: #efaa93; border-left-width: 3px; }
.field-error { color: #ffc7b5; font-size: 13px; line-height: 1.6; margin-top: 9px; overflow-wrap: anywhere; }
.upload-zone { border: 1px dashed #776a57; background: linear-gradient(145deg, #1e1f1b, #151613); padding: 24px; box-shadow: inset 0 0 34px #05050438; }
.upload-zone > p:not(.field-error) { font-size: 13px; color: var(--muted); }
/* The custom list is the visible selection state; hide the reset native filename text. */
#references { display: block; width: 100%; max-width: 100%; margin-top: 19px; padding: 4px; min-height: 52px; color: transparent; font: 0px/1.6 var(--body); }
#references::file-selector-button { border: 1px solid #94846c; background: #292820; color: var(--cream); padding: 12px 14px; min-height: 44px; margin-right: 12px; font: 14px var(--display); cursor: pointer; }
.file-list { list-style: none; margin: 13px 0 0; padding: 0; }
.file-list li { display: flex; gap: 14px; align-items: center; justify-content: space-between; border-top: 1px solid #665e50; padding-block: 10px; }
.file-info { min-width: 0; font-size: 13px; overflow-wrap: anywhere; }
.file-info small { display: block; color: var(--muted); font-size: 12px; }
.remove-file { min-height: 44px; min-width: 44px; border: 1px solid #827563; background: transparent; color: var(--cream); font: 22px var(--body); cursor: pointer; }
.remove-file:hover { background: var(--red); }
.form-finish { border-top: 1px solid #736553; padding-top: 25px; }
.form-finish > p { font-size: 14px; color: var(--muted); }
.form-finish strong { color: var(--cream); }
.form-finish .button { margin-top: 23px; cursor: pointer; }
.error-summary { padding: 22px; margin-bottom: 30px; border: 1px solid #efaa93; background: #382420; }
.error-summary h2 { font-size: 23px; }
.error-summary ul { margin: 12px 0 0; padding-left: 18px; }
.error-summary a { display: inline-block; padding-block: 10px; min-height: 44px; text-decoration: underline; font-size: 14px; }
.form-unavailable { border: 1px solid var(--red-light); padding: 22px; margin-bottom: 25px; }
.success-panel { background: radial-gradient(circle at 85% 12%, #8d302c2b 0, transparent 34%), linear-gradient(145deg, #24231f, #171815); color: var(--cream); padding: clamp(24px, 4vw, 48px); border-top: 5px solid var(--red); box-shadow: 0 24px 50px #05050442; }
.success-panel .eyebrow { color: var(--red-light); }
.success-check { display: grid; place-items: center; width: 54px; height: 54px; border: 1px solid #8c7763; font-size: 29px; margin: 30px 0 20px; }
.success-panel h2 { font-size: clamp(29px, 3vw, 39px); }
.success-panel .serif-line { font-size: .88em; color: var(--color-brass); }
.success-disclaimer { margin: 24px 0; font-size: 16px; }
.success-disclaimer strong { display: block; margin-bottom: 7px; }
#inquiry-summary { margin: 25px 0; border-top: 1px solid #665b4c; }
#inquiry-summary > div { padding: 15px 0; border-bottom: 1px solid #665b4c; }
#inquiry-summary dt { font: 13px var(--display); text-transform: uppercase; color: var(--red-light); }
#inquiry-summary dd { margin: 6px 0 0; font-size: 15px; overflow-wrap: anywhere; white-space: pre-wrap; }
.success-actions { display: flex; align-items: flex-start; flex-direction: column; gap: 17px; margin-top: 27px; }
.success-actions .button { cursor: pointer; }
.success-panel .button--dark { background: var(--red); border-color: var(--color-red-border); }
.reset-inquiry { border: 0; border-bottom: 1px solid #817564; background: transparent; color: var(--cream); padding: 10px 0; min-height: 44px; font: 13px var(--body); cursor: pointer; }
@media (max-width: 1050px) {
  .inquiry-layout { grid-template-columns: .55fr 1fr; gap: 36px; }
  .field-grid { grid-template-columns: 1fr; }
  .inquiry-aside h2 { font-size: 25px; }
  .type-option { padding: 15px 12px; gap: 10px; }
}
@media (max-width: 760px) {
  .inquiry-intro { padding-top: 12px; padding-bottom: 30px; }
  .return-link { margin-bottom: 20px; }
  .inquiry-intro h1 { font-size: clamp(36px, 8.8vw, 54px); margin-top: 14px; }
  .inquiry-lead { font-size: 15px; }
  .inquiry-lead br { display: none; }
  .inquiry-layout { grid-template-columns: 1fr; gap: 32px; padding-top: 25px; padding-bottom: 56px; }
  .inquiry-aside { position: static; }
  .inquiry-aside > .aside-rule, .inquiry-aside > .eyebrow, .inquiry-aside > h2, .inquiry-aside > p, .inquiry-outline { display: none; }
  .form-section > legend { font-size: 23px; }
  .form-section { padding-top: 20px; margin-bottom: 32px; }
  .type-options { gap: 12px; }
  .type-option { flex-direction: column; align-items: flex-start; padding: 15px 13px; gap: 10px; }
  .type-option strong { font-size: 23px; }
  .type-option small { font-size: 11px; }
  .upload-zone { padding: 18px 14px; }
  .form-finish .button { width: 100%; padding-inline: 15px; font-size: 15px; }
  .success-panel { padding: 24px 21px; }
  .success-panel h2 { font-size: 29px; }
  .success-actions .button { padding-inline: 15px; font-size: 15px; width: 100%; }
}

/* Task 12 correction: tattoo-editorial form treatment without logic changes. */
.inquiry-page main {
  position: relative;
  overflow: clip;
  background:
    linear-gradient(90deg, #090a08 0 63%, #170c0b 63% 100%),
    radial-gradient(circle at 82% 8%, #8d302c44 0, transparent 28%);
}
.inquiry-page main::before {
  content: '';
  position: absolute;
  z-index: 0;
  top: 0;
  right: -11%;
  width: 51%;
  height: 520px;
  background:
    linear-gradient(120deg, #4816154f, transparent 65%),
    repeating-linear-gradient(118deg, transparent 0 89px, #d4a16b14 90px 91px, transparent 92px 179px);
  transform: skewX(-8deg);
  pointer-events: none;
}
.inquiry-intro {
  z-index: 1;
  min-height: 440px;
  padding-top: 48px;
  padding-bottom: 74px;
  border-bottom: 2px solid #684d3a;
  box-shadow: inset 0 -80px 110px #0008;
}
.return-link { margin-bottom: 48px; color: #d4c2aa; }
.inquiry-intro h1 {
  max-width: 900px;
  margin: 16px 0 26px;
  padding-left: 29px;
  border-left: 5px solid var(--red);
  font-size: clamp(66px, 7vw, 96px);
  font-weight: 630;
  line-height: .91;
  letter-spacing: -.055em;
  text-shadow: 0 22px 38px #000b;
}
.inquiry-intro h1 > span { color: var(--color-red-highlight); }
.inquiry-lead { margin-left: 34px; max-width: 630px; color: #d1c1ad; font-size: 18px; }
.inquiry-layout { position: relative; z-index: 1; grid-template-columns: .58fr 1.42fr; gap: clamp(52px, 8vw, 112px); padding-top: 82px; padding-bottom: 126px; }
.inquiry-aside { top: 118px; padding-left: 25px; border-left: 4px solid var(--color-red-dark); }
.aside-rule { width: 72px; height: 5px; background: linear-gradient(90deg, var(--color-red-highlight), var(--color-red-primary)); }
.inquiry-aside h2 { margin: 17px 0 22px; font-size: 37px; line-height: 1.05; letter-spacing: -.035em; }
.inquiry-aside > p:not(.eyebrow) { color: #c7b9a7; }
.inquiry-outline { border-top-color: #7e624d; }
.inquiry-outline li { padding: 16px 0; border-bottom-color: #5d493b; font-size: 17px; letter-spacing: .025em; }
.demo-notice { padding: 20px 18px; border-left: 5px solid var(--color-red-highlight); background: linear-gradient(110deg, var(--color-red-subtle), #15110f); box-shadow: 0 18px 35px #0007; }
.inquiry-workspace { padding-left: clamp(25px, 4vw, 58px); border-left: 1px solid #654b3b; }
.form-section {
  margin-bottom: 48px;
  padding: 32px 30px 36px;
  border-top: 1px solid #9a7658;
  border-left: 5px solid var(--color-red-dark);
  background: linear-gradient(115deg, #151411 0%, #0b0d0b 78%);
  box-shadow: 0 28px 55px #0007, inset 0 0 55px #0004;
}
.form-section > legend {
  padding: 0 18px 0 0;
  font-size: 28px;
  font-weight: 620;
  letter-spacing: .025em;
}
.form-section > legend > span { font-size: 21px; color: var(--color-red-highlight); }
.section-help { color: #c8baa7; }
.type-options { gap: 18px; }
.type-option {
  min-height: 118px;
  padding: 24px 22px;
  border: 0;
  border-top: 1px solid #977456;
  border-bottom: 1px solid #50382d;
  border-left: 4px solid #351817;
  background: linear-gradient(135deg, #1c1915, #0d0f0c);
  box-shadow: 0 18px 35px #0007, inset 0 0 38px #0004;
}
.type-option:has(input:checked) {
  border-left-color: var(--color-red-border);
  background: radial-gradient(circle at 82% 18%, #8d302c3e, transparent 42%), linear-gradient(135deg, var(--color-red-subtle), #11100e);
  box-shadow: inset 0 -4px var(--color-red-hover), 0 22px 42px #0008;
}
.type-option strong { font-size: 29px; letter-spacing: .035em; }
.type-option small { color: #c8b9a5; }
.field input, .field textarea, .field select {
  border: 0;
  border-bottom: 1px solid #82694f;
  background: linear-gradient(180deg, #11120f, #090b09);
  box-shadow: inset 4px 0 #301413, inset 0 12px 25px #0004;
}
.field input:focus, .field textarea:focus, .field select:focus {
  border-bottom-color: var(--color-red-border);
  background: #151411;
  box-shadow: inset 4px 0 var(--color-red-hover), 0 10px 25px #0006;
}
.field label, .upload-title { color: #f1e5d2; letter-spacing: .01em; }
.upload-zone {
  padding: 29px;
  border: 0;
  border-top: 1px dashed #a17d5f;
  border-bottom: 1px dashed #624c3c;
  border-left: 5px solid var(--color-red-dark);
  background: radial-gradient(circle at 90% 5%, #6b211f3b, transparent 32%), linear-gradient(135deg, #181511, #0b0d0b);
  box-shadow: inset 0 0 55px #0007, 0 24px 45px #0006;
}
#references::file-selector-button {
  border: 0;
  border-left: 4px solid var(--color-red-highlight);
  background: var(--color-red-subtle);
  box-shadow: 0 10px 20px #0007;
}
.remove-file { border-color: #927457; background: #0c0d0b; }
.form-finish { padding-top: 30px; border-top-color: #8a6a50; }
.error-summary { border: 0; border-left: 6px solid #f0a084; background: #3a1514; box-shadow: 0 18px 38px #0008; }
.success-panel {
  padding: clamp(32px, 5vw, 64px);
  border-top: 1px solid #a27b5a;
  border-left: 8px solid var(--color-red-primary);
  background: radial-gradient(circle at 87% 14%, #8d302c52, transparent 36%), linear-gradient(140deg, #281713, #0c0e0c);
  box-shadow: 0 38px 78px #000a;
}
.success-check { border-color: #c0936d; background: var(--color-red-subtle); box-shadow: 0 12px 25px #0006; }
.success-panel h2 { font-size: clamp(42px, 4.8vw, 62px); line-height: 1; }

@media (min-width: 761px) and (max-width: 1050px) {
  .inquiry-intro { min-height: 400px; }
  .inquiry-intro h1 { font-size: clamp(60px, 7.8vw, 78px); }
  .inquiry-layout { grid-template-columns: .48fr 1fr; gap: 40px; }
  .inquiry-workspace { padding-left: 30px; }
  .form-section { padding-inline: 24px; }
}

@media (max-width: 760px) {
  .inquiry-page main { background: radial-gradient(circle at 85% 5%, #6b211f42, transparent 25%), linear-gradient(145deg, #090a08, #150c0b); }
  .inquiry-page main::before { width: 100%; height: 440px; opacity: .6; }
  .inquiry-intro { min-height: 0; padding-top: 24px; padding-bottom: 48px; }
  .return-link { margin-bottom: 28px; }
  .inquiry-intro h1 { margin-top: 12px; padding-left: 19px; border-left-width: 4px; font-size: clamp(49px, 14.2vw, 62px); }
  .inquiry-lead { margin-left: 23px; font-size: 15px; }
  .inquiry-layout { grid-template-columns: 1fr; gap: 38px; padding-top: 45px; padding-bottom: 70px; }
  .inquiry-aside { padding-left: 0; border-left: 0; }
  .demo-notice { padding: 18px; }
  .inquiry-workspace { padding-left: 0; border-left: 0; }
  .form-section { margin-bottom: 36px; padding: 25px 16px 29px; border-left-width: 4px; }
  .form-section > legend { font-size: 24px; }
  .form-section > legend > span { font-size: 18px; }
  .type-options { gap: 13px; }
  .type-option { min-height: 124px; padding: 18px 14px; }
  .type-option strong { font-size: 24px; }
  .upload-zone { padding: 22px 15px; border-left-width: 4px; }
  .success-panel { border-left-width: 6px; }
  .success-panel h2 { font-size: 38px; }
}

@media (max-width: 360px) {
  .inquiry-intro h1 { font-size: 46px; }
  .form-section { padding-inline: 13px; }
  .type-option { padding-inline: 11px; }
  .type-option strong { font-size: 22px; }
}
