/* Scan request — one native form, with Studio handling print estimates. */
.industrial-home .scan-request-section { background: #0f151c; border-block: 1px solid #26313d; }
.studio-price-banner { display: flex; align-items: center; gap: 1rem; background: linear-gradient(110deg, rgba(124, 58, 237, .075), rgba(13, 148, 136, .035)), #131922; border: 1px solid #343345; border-radius: 16px; padding: 1.4rem 1.6rem; margin-bottom: 3.5rem; }
.studio-price-banner__icon { display: flex; align-items: center; justify-content: center; flex-shrink: 0; height: 44px; width: 44px; background: rgba(124, 58, 237, .10); color: #a78bfa; border: 1px solid rgba(124, 58, 237, .18); border-radius: 12px; font-size: 1.1rem; }
.studio-price-banner > div { flex: 1; min-width: 0; }
.studio-price-banner strong { display: block; color: #e0e8f2; font-size: .9rem; font-weight: 600; margin-bottom: .25rem; }
.studio-price-banner p { color: #8190a3; font-size: .76rem; line-height: 1.7; }
.industrial-home .studio-price-banner .btn { flex-shrink: 0; font-size: .77rem; padding: .75rem 1rem; border-color: #464258; }
.scan-request-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 4.5rem; align-items: start; }
.scan-request-intro { min-width: 0; padding-top: .5rem; }
.scan-request-intro h2 { font-size: clamp(2rem, 3.1vw, 2.6rem); font-weight: 700; letter-spacing: -.045em; line-height: 1.15; margin-bottom: 1.2rem; }
.scan-request-intro h2 em { font-style: normal; color: #2dd4bf; }
.scan-request-intro > p { font-size: .88rem; color: #8e9eb1; line-height: 1.8; max-width: 460px; }
.scan-request-visual { position: relative; border: 1px solid #2b3b46; border-radius: 14px; margin-top: 1.7rem; background-color: #131c25; background-image: linear-gradient(rgba(45, 212, 191, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(45, 212, 191, .035) 1px, transparent 1px); background-size: 22px 22px; height: 230px; overflow: hidden; }
.scan-request-visual img { position: absolute; top: -17%; left: 11%; width: 78%; height: 126%; object-fit: contain; filter: drop-shadow(0 15px 14px rgba(0, 0, 0, .35)); }
.scan-request-visual__top, .scan-request-visual__bottom { position: absolute; left: 1rem; right: 1rem; display: flex; align-items: center; justify-content: space-between; gap: .5rem; z-index: 1; }
.scan-request-visual__top { top: .85rem; font-size: .54rem; color: #63847e; letter-spacing: .06em; }
.scan-request-visual__top span:first-child { color: #84c2b6; }
.scan-request-visual__top i { margin-right: .25rem; }
.scan-request-visual__bottom { bottom: .85rem; font-size: .55rem; color: #78989c; }
.scan-request-visual__bottom > span:first-child { display: flex; align-items: center; gap: .4rem; }
.scan-request-visual__bottom > span:last-child { color: #a5bbc6; border: 1px solid #31414c; border-radius: 5px; padding: .15rem .4rem; background: #131c25; }
.scan-request-visual__corner { position: absolute; height: 17px; width: 17px; border-color: #1ba995; border-style: solid; border-width: 0; opacity: .7; }
.scan-request-visual__corner--tl { left: 19%; top: 23%; border-left-width: 1px; border-top-width: 1px; }
.scan-request-visual__corner--tr { right: 19%; top: 23%; border-right-width: 1px; border-top-width: 1px; }
.scan-request-visual__corner--bl { left: 19%; bottom: 23%; border-left-width: 1px; border-bottom-width: 1px; }
.scan-request-visual__corner--br { right: 19%; bottom: 23%; border-right-width: 1px; border-bottom-width: 1px; }
.scan-request-benefits { list-style: none; margin: 1.7rem 0 0; padding: 0; display: grid; gap: 1rem; }
.scan-request-benefits li { display: flex; gap: .8rem; align-items: flex-start; }
.scan-request-benefits li > span { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 30px; height: 30px; border-radius: 8px; color: #2dd4bf; background: rgba(13, 148, 136, .06); border: 1px solid #253a39; font-size: .72rem; }
.scan-request-benefits strong { display: block; color: #c6d4e2; font-size: .78rem; font-weight: 500; margin-bottom: .18rem; }
.scan-request-benefits p { color: #74859a; font-size: .7rem; line-height: 1.65; }
.scan-form-card { min-width: 0; background: #131922; border: 1px solid #303b48; border-radius: 18px; padding: 1.8rem; box-shadow: 0 20px 64px rgba(0, 0, 0, .15); }
.scan-form-card__heading { display: flex; gap: .8rem; align-items: center; padding-bottom: 1.3rem; margin-bottom: 1.5rem; border-bottom: 1px solid #27323e; }
.scan-form-card__icon { display: flex; align-items: center; justify-content: center; height: 39px; width: 39px; border-radius: 11px; flex-shrink: 0; background: rgba(13, 148, 136, .08); border: 1px solid #244a43; color: #2dd4bf; font-size: .95rem; }
.scan-form-card__heading h3 { font-size: 1.05rem; font-weight: 600; letter-spacing: -.025em; margin-bottom: .2rem; }
.scan-form-card__heading p { font-size: .7rem; color: #7e8ea3; }
.scan-form-flash { display: flex; align-items: flex-start; gap: .6rem; padding: .8rem .9rem; margin: 0 0 1.25rem; color: #9ed8cd; background: rgba(13, 148, 136, .055); border: 1px solid #2c5b52; border-radius: 9px; font-size: .73rem; line-height: 1.7; overflow-wrap: anywhere; }
.scan-form-flash > i { margin-top: .25rem; flex-shrink: 0; }
.scan-form-flash--error { color: #f2b4bc; background: rgba(190, 73, 97, .055); border-color: #63333e; }
.scan-honeypot { position: absolute; width: 1px; height: 1px; padding: 0; border: 0; clip-path: inset(50%); overflow: hidden; white-space: nowrap; }
.scan-field { margin-bottom: 1.25rem; min-width: 0; }
.scan-field > label { display: flex; align-items: center; gap: .3rem; color: #c3d0e0; font-size: .75rem; font-weight: 500; margin-bottom: .5rem; }
.scan-field > label > span { color: #2dd4bf; }
.scan-field > label > .scan-field__optional { color: #6f8196; font-size: .64rem; font-weight: 400; margin-left: auto; }
.industrial-home .scan-field > .input { background: #10161e; border: 1px solid #303c4a; padding: .75rem .85rem; border-radius: 9px; font: inherit; font-size: .77rem; color: #dce6f2; width: 100%; min-width: 0; line-height: 1.5; }
.industrial-home .scan-field > textarea.input { resize: vertical; min-height: 118px; }
.industrial-home .scan-field > .input::placeholder { color: #61758c; }
.industrial-home .scan-field > .input:focus { background: #141d27; border-color: #0d9488; box-shadow: 0 0 0 3px rgba(13, 148, 136, .08); }
.scan-field__hint { margin-top: .5rem; font-size: .66rem; color: #6f8196; line-height: 1.65; }
.scan-upload { border: 1px dashed #354958; border-radius: 11px; background: #10161e; padding: 1rem; }
.scan-upload__heading { display: flex; gap: .7rem; align-items: center; margin-bottom: .75rem; }
.scan-upload__heading > i { color: #76bfb3; font-size: 1.25rem; }
.scan-upload__heading strong { display: block; color: #b8cada; font-weight: 500; font-size: .76rem; margin-bottom: .15rem; }
.scan-upload__heading span { display: block; color: #6e8297; font-size: .63rem; }
.scan-upload__input { width: 100%; min-width: 0; font-family: inherit; font-size: .66rem; color: #8398ac; cursor: pointer; }
.scan-upload__input::file-selector-button { font-family: inherit; font-size: .65rem; font-weight: 500; background: #192a2c; color: #89d1c5; border: 1px solid #30544e; padding: .45rem .65rem; border-radius: 6px; margin-right: .7rem; cursor: pointer; }
.scan-upload__input::file-selector-button:hover { background: #1e3837; }
.scan-upload > p { color: #61788e; font-size: .59rem; margin-top: .75rem; line-height: 1.5; }
.scan-files { list-style: none; margin: .65rem 0 0; padding: 0; display: grid; gap: .4rem; }
.scan-files li { display: flex; align-items: center; gap: .45rem; padding: .4rem .65rem; background: #19212b; border: 1px solid #2a3a47; border-radius: 7px; font-size: .64rem; color: #a2b6c9; min-width: 0; }
.scan-files li > i { color: #71b7aa; flex-shrink: 0; }
.scan-files li > span { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.scan-files li > small { flex-shrink: 0; color: #6e8297; font-size: .59rem; }
.scan-file-error { color: #fda4af; font-size: .68rem; line-height: 1.6; margin-top: .55rem; }
.scan-form-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: .85rem; }
.scan-consent { display: flex; gap: .6rem; align-items: flex-start; margin: .25rem 0 1.25rem; font-size: .66rem; line-height: 1.65; color: #8092a7; cursor: pointer; }
.scan-consent > input { flex-shrink: 0; width: 14px; height: 14px; margin: .2rem 0 0; accent-color: #0d9488; cursor: pointer; }
.scan-consent a { color: #67c4b5; text-decoration: underline; text-underline-offset: 2px; }
.scan-consent a:hover { color: #2dd4bf; }
.industrial-home .scan-submit { width: 100%; justify-content: space-between; font-size: .8rem; padding: .9rem 1rem; }
.scan-form-note { display: flex; justify-content: center; align-items: center; gap: .35rem; font-size: .59rem; line-height: 1.6; color: #6a8195; margin-top: .8rem; text-align: center; }
.scan-form-note i { color: #64ad9f; flex-shrink: 0; }
@media (max-width: 1100px) {
  .scan-request-grid { grid-template-columns: .82fr 1.18fr; gap: 2.5rem; }
  .scan-form-card { padding: 1.4rem; }
  .scan-request-intro h2 { font-size: 2rem; }
}
@media (max-width: 860px) {
  .studio-price-banner { flex-wrap: wrap; margin-bottom: 2.5rem; }
  .industrial-home .studio-price-banner .btn { margin-left: 60px; }
  .scan-request-grid { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .scan-request-intro > p { max-width: 650px; }
  .scan-request-visual { max-width: 520px; }
  .scan-request-benefits { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
  .scan-request-benefits li { flex-direction: column; gap: .6rem; }
  .scan-form-card { max-width: none; }
}
@media (max-width: 600px) {
  .studio-price-banner { align-items: flex-start; padding: 1.1rem; gap: .75rem; border-radius: 12px; }
  .studio-price-banner__icon { width: 34px; height: 34px; border-radius: 9px; font-size: .9rem; }
  .studio-price-banner strong { font-size: .81rem; line-height: 1.5; }
  .studio-price-banner p { font-size: .68rem; }
  .industrial-home .studio-price-banner .btn { margin-left: 0; width: 100%; }
  .scan-request-intro h2 { font-size: 2rem; }
  .scan-request-intro > p { font-size: .84rem; }
  .scan-request-visual { height: 205px; }
  .scan-request-benefits { grid-template-columns: minmax(0, 1fr); gap: .9rem; }
  .scan-request-benefits li { flex-direction: row; gap: .7rem; }
  .scan-form-card { padding: 1.15rem; border-radius: 13px; }
  .scan-form-card__heading { padding-bottom: 1rem; margin-bottom: 1.2rem; }
  .scan-form-card__heading h3 { font-size: .97rem; }
  .scan-form-card__heading p { font-size: .65rem; }
  .scan-form-row { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .industrial-home .scan-field > .input { font-size: 16px; }
  .scan-upload { padding: .85rem; }
  .scan-upload__input { font-size: .62rem; }
  .scan-upload__input::file-selector-button { margin-right: .45rem; font-size: .61rem; padding: .4rem .5rem; }
  .scan-form-note { font-size: .55rem; }
}
@media (prefers-reduced-motion: reduce) {
  .industrial-home [data-aos] { opacity: 1 !important; transform: none !important; }
}
