/* CAMERA flagship and module page */
.camera-page,
.camera-page * { box-sizing: border-box; }
.camera-page { overflow-x: hidden; color: #11283d; background: #fff; }
.camera-page img { display: block; max-width: 100%; height: auto; }
.camera-container { width: min(1160px, calc(100% - 40px)); margin: 0 auto; }
.camera-section { padding: clamp(72px, 8vw, 116px) 0; }
.camera-section--soft { background: #f3f6f8; }
.camera-section--navy { background: #0e2133; color: #fff; }
.camera-kicker { display: block; margin-bottom: 16px; color: #a97109; font: 600 13px/1.4 Oswald, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.camera-heading { max-width: 880px; margin: 0 0 22px; color: #0d2740; font-size: clamp(30px, 4vw, 48px); font-weight: 700; line-height: 1.35; letter-spacing: 0; }
.camera-section--navy .camera-heading { color: #fff; }
.camera-lead { max-width: 880px; margin: 0; color: #4d6172; font-size: clamp(16px, 1.7vw, 19px); line-height: 1.9; }
.camera-lead--follow { margin-top: 18px; }
.camera-section--navy .camera-lead { color: #d8e2e9; }
.camera-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.camera-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 12px 20px; border: 1px solid #c69226; background: #c69226; color: #0e2133; font-weight: 700; text-decoration: none; transition: background .2s ease, color .2s ease, border-color .2s ease; }
.camera-button:hover,
.camera-button:focus { background: #e2b456; border-color: #e2b456; color: #091725; text-decoration: none; }
.camera-button--outline { background: transparent; color: #fff; }
.camera-button--outline:hover,
.camera-button--outline:focus { background: #fff; border-color: #fff; color: #0e2133; }
.camera-button--dark-outline { border-color: #19364e; background: transparent; color: #19364e; }
.camera-button--dark-outline:hover,
.camera-button--dark-outline:focus { border-color: #19364e; background: #19364e; color: #fff; }
.camera-text-link,
.camera-technical-link { display: inline-flex; align-items: center; gap: 8px; color: #0b6072; font-weight: 700; text-decoration: none; }
.camera-text-link:hover,
.camera-text-link:focus,
.camera-technical-link:hover,
.camera-technical-link:focus { color: #8e6209; text-decoration: underline; }

.camera-he1-hero { position: relative; overflow: hidden; border-bottom: 4px solid #c69226; background: #eef2f5; }
.camera-he1-hero__inner { width: min(1320px, calc(100% - 40px)); min-height: 640px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(500px, 1fr); align-items: center; gap: clamp(34px, 4vw, 58px); padding: clamp(50px, 5.5vw, 74px) 0; }
.camera-he1-hero__visual { min-width: 0; margin: 0; border-top: 4px solid #c69226; background: #091725; box-shadow: 0 24px 52px rgba(9, 23, 37, .2); }
.camera-he1-hero__visual img { width: 100%; aspect-ratio: 675 / 451; object-fit: contain; }
.camera-he1-hero__copy { min-width: 0; }
.camera-hero__eyebrow { display: block; margin-bottom: 14px; color: #9a6a0d; font: 600 13px/1.5 Oswald, sans-serif; letter-spacing: .13em; }
.camera-status { display: inline-flex; align-items: center; width: fit-content; min-height: 28px; padding: 5px 9px; border: 1px solid currentColor; font: 600 10px/1.35 Roboto, sans-serif; letter-spacing: .04em; }
.camera-status--available { color: #0b746a; background: #eef8f5; }
.camera-status--progress { color: #d5a13b; background: rgba(213, 161, 59, .1); }
.camera-status--vision { color: #bac8d3; background: rgba(186, 200, 211, .08); }
.camera-he1-hero h1 { margin: 18px 0 0; color: #0d2740; font-size: clamp(43px, 5.2vw, 68px); line-height: 1.16; font-weight: 700; letter-spacing: 0; }
.camera-he1-hero__tagline { margin: 20px 0 0; color: #9a6a0d; font-size: clamp(23px, 2.5vw, 34px); font-weight: 700; line-height: 1.45; }
.camera-he1-hero__lead { margin: 24px 0 0; color: #30495e; font-size: clamp(16px, 1.4vw, 18px); line-height: 1.9; }
.camera-he1-hero__note { margin: 16px 0 0; padding-left: 16px; border-left: 3px solid #c69226; color: #52687a; font-size: 14px; line-height: 1.75; }
.camera-technical-link { margin-top: 22px; }

.camera-he1-values { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 46px; }
.camera-he1-value { min-width: 0; padding: 30px 26px; border-top: 3px solid #c69226; background: #f4f7f9; }
.camera-he1-value__no { color: #a97109; font: 600 13px/1.4 Oswald, sans-serif; letter-spacing: .1em; }
.camera-he1-value h3 { margin: 16px 0 10px; color: #0d2740; font-size: 22px; line-height: 1.5; }
.camera-he1-value p { margin: 0; color: #597080; font-size: 15px; line-height: 1.8; }
.camera-he1-deployment { max-width: 900px; margin: 54px auto 0; border-top: 4px solid #0c6873; background: #07100b; }
.camera-he1-deployment img { width: 100%; }
.camera-he1-deployment figcaption { padding: 13px 16px; background: #fff; color: #647887; font-size: 12px; line-height: 1.6; text-align: center; }

.camera-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 46px; border: 1px solid #345064; }
.camera-flow__step { min-width: 0; padding: 26px 22px 30px; border-right: 1px solid #345064; background: #142f45; }
.camera-flow__step:last-child { border-right: 0; }
.camera-flow__no { display: block; margin-bottom: 16px; color: #d8ad53; font: 600 13px/1.4 Oswald, sans-serif; }
.camera-flow__step h3 { margin: 20px 0 8px; color: #fff; font-size: 23px; line-height: 1.4; }
.camera-flow__step p { margin: 0; color: #cfdae2; font-size: 14px; line-height: 1.7; }

.camera-partnership { display: grid; grid-template-columns: minmax(220px, .65fr) minmax(0, 1.8fr); gap: clamp(36px, 7vw, 88px); align-items: center; }
.camera-partnership__brand { margin: 0; padding: 34px; border-top: 3px solid #c69226; border-bottom: 1px solid #d8e0e6; background: #fff; }
.camera-partnership__brand img { width: min(250px, 100%); margin: 0 auto; }
.camera-partnership__subhead { margin: -8px 0 18px; color: #0c6873; font-size: 19px; font-weight: 700; line-height: 1.6; }
.camera-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 28px; margin: 28px 0 0; padding: 0; list-style: none; }
.camera-facts li { position: relative; padding: 10px 0 10px 20px; border-bottom: 1px solid #d6e0e6; color: #253f53; line-height: 1.6; }
.camera-facts li::before { content: ""; position: absolute; left: 0; top: 19px; width: 7px; height: 7px; background: #c69226; }
.camera-trademark-note { margin: 24px 0 0; color: #667987; font-size: 13px; line-height: 1.75; }

.camera-lineup__intro { margin-bottom: 44px; }
.camera-products { display: grid; gap: 22px; }
.camera-products--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.camera-product { display: grid; grid-template-rows: 240px auto; min-width: 0; border: 1px solid #cbd7de; border-top: 4px solid #0c5b6d; background: #fff; }
.camera-product__media { position: relative; min-width: 0; margin: 0; overflow: hidden; background: #f7f9fb; }
.camera-product__media img { width: 100%; height: 100%; object-fit: contain; }
.camera-product__flag { position: absolute; z-index: 1; top: 12px; left: 12px; max-width: calc(100% - 24px); padding: 7px 9px; background: #0e2133; color: #fff; font: 600 10px/1.35 Oswald, sans-serif; letter-spacing: .05em; }
.camera-product__body { min-width: 0; padding: 26px 24px 28px; }
.camera-product__type { margin: 0 0 10px; color: #0c6873; font: 600 12px/1.4 Oswald, sans-serif; letter-spacing: .08em; }
.camera-product h3 { margin: 0; min-height: 3em; color: #0d2740; font-size: 23px; line-height: 1.5; }
.camera-product__copy { min-height: 5.4em; margin: 14px 0 20px; color: #4d6172; font-size: 15px; line-height: 1.8; }
.camera-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px 16px; margin: 0 0 24px; padding: 0; list-style: none; }
.camera-specs li { position: relative; min-width: 0; padding: 5px 0 5px 14px; border-bottom: 1px solid #e0e7eb; color: #294257; font-size: 13px; line-height: 1.5; }
.camera-specs li::before { content: ""; position: absolute; left: 0; top: 13px; width: 5px; height: 5px; background: #c69226; }

.camera-solution { display: grid; grid-template-columns: minmax(360px, .95fr) minmax(0, 1.1fr); gap: clamp(38px, 7vw, 78px); align-items: center; }
.camera-solution__media { position: relative; margin: 0; border-top: 4px solid #c69226; background: #fff; }
.camera-solution__media img { width: 100%; aspect-ratio: 900 / 620; object-fit: contain; }
.camera-solution__media figcaption { padding: 12px 14px; color: #677b89; font-size: 12px; line-height: 1.6; text-align: center; }
.camera-solution .camera-text-link { margin-top: 24px; }

.camera-deployment { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 46px 0 0; padding: 0; border: 1px solid #d0dbe2; background: #d0dbe2; list-style: none; }
.camera-deployment li { min-width: 0; padding: 28px 24px; background: #fff; }
.camera-deployment span { color: #a97109; font: 600 12px/1.4 Oswald, sans-serif; letter-spacing: .08em; }
.camera-deployment h3 { margin: 14px 0 10px; color: #0d2740; font-size: 22px; line-height: 1.45; }
.camera-deployment p { margin: 0; color: #5c7181; font-size: 14px; line-height: 1.8; }

.camera-oem { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr); gap: clamp(38px, 7vw, 80px); align-items: center; }
.camera-oem__media { margin: 0; border-top: 4px solid #c69226; background: #f7f9fb; }
.camera-oem__media img { width: 100%; aspect-ratio: 900 / 620; object-fit: contain; }
.camera-oem__media figcaption { padding: 12px 16px; background: #fff; color: #667987; font-size: 12px; text-align: center; }
.camera-bullets { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 20px; margin: 28px 0; padding: 0; list-style: none; }
.camera-bullets li { position: relative; padding: 10px 0 10px 20px; border-bottom: 1px solid #3a5265; color: #d9e3ea; line-height: 1.6; }
.camera-bullets li::before { content: ""; position: absolute; left: 0; top: 18px; width: 7px; height: 7px; border: 2px solid #c69226; }

.camera-faq { max-width: 920px; margin: 42px auto 0; border-top: 1px solid #cbd7de; }
.camera-faq details { border-bottom: 1px solid #cbd7de; }
.camera-faq summary { position: relative; padding: 24px 52px 24px 0; cursor: pointer; color: #0d2740; font-size: 18px; font-weight: 700; line-height: 1.6; list-style: none; }
.camera-faq summary::-webkit-details-marker { display: none; }
.camera-faq summary::after { content: "+"; position: absolute; right: 8px; top: 20px; color: #a97109; font-size: 27px; font-weight: 400; }
.camera-faq details[open] summary::after { content: "−"; }
.camera-faq p { margin: 0; padding: 0 48px 24px 0; color: #536979; font-size: 16px; line-height: 1.85; }
.camera-contact { text-align: center; }
.camera-contact .camera-heading,
.camera-contact .camera-lead { margin-left: auto; margin-right: auto; }
.camera-contact .camera-actions { justify-content: center; }

@media (max-width: 1199px) {
  .header_aera .navbar-nav > li > a { padding-left: 9px; padding-right: 9px; font-size: 12px; }
  .camera-he1-hero__inner { grid-template-columns: minmax(0, 1fr) minmax(480px, 1fr); }
  .camera-products--three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .camera-product:last-child { grid-column: 1 / -1; width: calc(50% - 11px); justify-self: center; }
  .camera-deployment { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .camera-he1-hero__inner { min-height: 0; grid-template-columns: 1fr; gap: 38px; }
  .camera-he1-hero__visual { order: 1; max-width: 760px; margin: 0 auto; }
  .camera-he1-hero__copy { order: 2; max-width: 760px; }
  .camera-he1-values { grid-template-columns: 1fr; }
  .camera-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .camera-flow__step:nth-child(2) { border-right: 0; }
  .camera-flow__step:nth-child(-n+2) { border-bottom: 1px solid #345064; }
  .camera-partnership,
  .camera-solution,
  .camera-oem { grid-template-columns: 1fr; }
  .camera-partnership__brand { max-width: 420px; }
}
@media (max-width: 767px) {
  .camera-container,
  .camera-he1-hero__inner { width: min(100% - 28px, 1160px); }
  .camera-section { padding: 62px 0; }
  .camera-he1-hero__inner { padding: 46px 0 58px; }
  .camera-he1-hero h1 { font-size: clamp(38px, 11vw, 52px); }
  .camera-he1-hero__tagline { font-size: 24px; }
  .camera-he1-hero__lead { font-size: 15px; line-height: 1.85; }
  .camera-actions { align-items: stretch; flex-direction: column; }
  .camera-button { width: 100%; }
  .camera-flow { grid-template-columns: 1fr; }
  .camera-flow__step { border-right: 0; border-bottom: 1px solid #345064; }
  .camera-flow__step:last-child { border-bottom: 0; }
  .camera-facts,
  .camera-products--three,
  .camera-deployment,
  .camera-bullets { grid-template-columns: 1fr; }
  .camera-product:last-child { grid-column: auto; width: auto; justify-self: stretch; }
  .camera-product { grid-template-rows: 220px auto; }
  .camera-product__body { padding: 24px 20px 27px; }
  .camera-product h3,
  .camera-product__copy { min-height: 0; }
  .camera-specs { grid-template-columns: 1fr; }
  .camera-partnership__brand { padding: 28px; }
  .camera-solution__media { order: 2; }
  .camera-faq summary { padding-right: 42px; font-size: 17px; }
  .camera-faq p { padding-right: 0; }
}


/* CAMERA strategy extension 2026-08-01 */
.camera-he1-hero__subcopy { margin: 12px 0 0; color: #16344e; font-size: clamp(18px, 1.8vw, 23px); font-weight: 700; line-height: 1.65; }
.camera-he1-hero__body { margin-top: 22px; }
.camera-he1-hero__body p { margin: 0 0 10px; color: #30495e; font-size: clamp(15px, 1.25vw, 17px); line-height: 1.85; }
.camera-copy-pair { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: clamp(24px, 5vw, 72px); align-items: start; }
.camera-issue-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-top: 44px; }
.camera-issue { min-width: 0; padding: 26px 22px; border-top: 3px solid #c69226; background: #f3f6f8; }
.camera-issue > span,
.camera-capability > span { color: #a97109; font: 600 12px/1.4 Oswald, sans-serif; letter-spacing: .08em; }
.camera-issue h3 { margin: 13px 0 10px; color: #0d2740; font-size: 19px; line-height: 1.55; }
.camera-issue p { margin: 0; color: #536979; font-size: 14px; line-height: 1.8; }
.camera-capability-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1px; margin-top: 46px; border: 1px solid #345064; background: #345064; }
.camera-capability { min-width: 0; padding: 28px 21px; background: #142f45; }
.camera-capability h3 { margin: 14px 0 10px; color: #fff; font-size: 18px; line-height: 1.45; }
.camera-capability p { margin: 0; color: #d2dde5; font-size: 14px; line-height: 1.75; }
.camera-scope-note,
.camera-loop-note { max-width: 920px; margin: 34px 0 0; padding-left: 18px; border-left: 3px solid #c69226; color: #d8e2e9; font-size: 15px; line-height: 1.85; }
.camera-section--soft .camera-loop-note { color: #465e70; }
.camera-isp-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin-top: 44px; }
.camera-isp-panel { min-width: 0; padding: 30px 28px; border: 1px solid #cbd7de; border-top: 4px solid #0c6873; background: #fff; }
.camera-isp-panel--roadmap { border-top-color: #c69226; background: #f7f5ef; }
.camera-isp-panel h3 { margin: 18px 0; color: #0d2740; font-size: 22px; line-height: 1.45; }
.camera-isp-panel ul { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.camera-isp-panel li { position: relative; padding: 8px 0 8px 18px; border-bottom: 1px solid #dde5ea; color: #435b6c; line-height: 1.6; }
.camera-isp-panel li::before { content: ""; position: absolute; left: 0; top: 17px; width: 6px; height: 6px; background: #c69226; }
.camera-isp-panel > p { margin: 22px 0 0; color: #203e57; font-weight: 700; line-height: 1.75; }
.camera-challenge-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px 28px; margin: 40px 0 0; padding: 0; list-style: none; }
.camera-challenge-grid li { position: relative; min-width: 0; padding: 15px 12px 15px 26px; border-bottom: 1px solid #365166; color: #e0e8ed; font-size: 16px; line-height: 1.65; }
.camera-challenge-grid li::before { content: ""; position: absolute; left: 3px; top: 24px; width: 8px; height: 8px; border: 2px solid #c69226; }
.camera-deployment--detailed li { padding-bottom: 30px; }
.camera-deployment--detailed ul { display: grid; gap: 5px; margin: 14px 0 0; padding: 0; list-style: none; }
.camera-deployment--detailed ul li { position: relative; padding: 5px 0 5px 15px; border-bottom: 1px solid #e1e7eb; color: #536979; font-size: 13px; line-height: 1.5; }
.camera-deployment--detailed ul li::before { content: ""; position: absolute; left: 0; top: 13px; width: 5px; height: 5px; background: #c69226; }
.camera-process-note { margin: 22px 0 0; color: #657987; font-size: 13px; line-height: 1.75; }
.camera-growth-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin-top: 44px; border: 1px solid #cbd7de; background: #cbd7de; }
.camera-growth-stage { min-width: 0; padding: 28px 23px; background: #fff; }
.camera-growth-stage--now { border-top: 4px solid #0b746a; }
.camera-growth-stage--future { border-top: 4px dashed #8a99a4; background: #f7f8f9; }
.camera-growth-stage > span { color: #a97109; font: 600 12px/1.4 Oswald, sans-serif; letter-spacing: .08em; }
.camera-growth-stage h3 { margin: 14px 0 9px; color: #0d2740; font-size: 20px; line-height: 1.45; }
.camera-growth-stage p { margin: 0; color: #536979; font-size: 14px; line-height: 1.75; }
.camera-platform-note { margin-top: 32px; }
#product-to-platform .camera-text-link { margin-top: 22px; }

@media (max-width: 1199px) {
  .camera-capability-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .camera-issue-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .camera-copy-pair,
  .camera-isp-grid { grid-template-columns: 1fr; }
  .camera-growth-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .camera-he1-hero__subcopy { font-size: 18px; }
  .camera-he1-hero__body p { font-size: 15px; }
  .camera-issue-grid,
  .camera-capability-grid,
  .camera-challenge-grid,
  .camera-growth-grid { grid-template-columns: 1fr; }
  .camera-issue,
  .camera-capability,
  .camera-isp-panel,
  .camera-growth-stage { padding: 24px 20px; }
  .camera-capability-grid { border: 0; gap: 1px; }
  .camera-challenge-grid { gap: 0; }
}

/* English hero compaction */
html[lang="en"] .camera-he1-hero h1 { font-size: clamp(42px, 4vw, 58px); }
html[lang="en"] .camera-he1-hero__body p { font-size: 15px; line-height: 1.68; }
html[lang="en"] .camera-he1-hero .camera-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
html[lang="en"] .camera-he1-hero .camera-button { min-width: 0; padding: 10px 12px; line-height: 1.35; text-align: center; }
@media (max-width: 767px) {
  html[lang="en"] .camera-he1-hero h1 { font-size: clamp(36px, 10vw, 48px); }
  html[lang="en"] .camera-he1-hero .camera-actions { grid-template-columns: 1fr; }
}

/* HOLONIC Eyes + HOLONIC Edge AI bridge section */
.camera-eye-edge { border-top: 1px solid #d9e2e7; }
.camera-eye-edge__intro { max-width: 980px; }
.camera-eye-edge__copy { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: clamp(24px, 5vw, 68px); align-items: start; }
.camera-eye-edge__brand { max-width: 900px; margin: 26px 0 0; padding: 16px 18px; border-left: 3px solid #c69226; background: #fff; color: #30495e; font-size: 15px; line-height: 1.8; }
.camera-eye-edge__visual { max-width: 1120px; margin: 42px auto 0; border: 1px solid #d6e0e6; border-top: 4px solid #c69226; background: #fff; box-shadow: 0 18px 42px rgba(9, 23, 37, .09); }
.camera-eye-edge__visual img { width: 100%; aspect-ratio: 1424 / 538; object-fit: contain; }
.camera-eye-edge__visual figcaption { padding: 13px 18px 7px; color: #40596c; font-size: 13px; font-weight: 700; line-height: 1.6; text-align: center; }
.camera-eye-edge__note { margin: 0; padding: 0 18px 14px; color: #72828e; font-size: 11px; line-height: 1.6; text-align: center; }
.camera-eye-edge__cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; max-width: 980px; margin: 28px auto 0; }
.camera-eye-edge__card { min-width: 0; padding: 28px 26px 30px; border: 1px solid #d2dde4; border-top: 4px solid #0b746a; background: #fff; }
.camera-eye-edge__card--edge { border-top-color: #c69226; }
.camera-eye-edge__card h3 { margin: 18px 0 13px; color: #0d2740; font-size: 23px; line-height: 1.45; }
.camera-eye-edge__card ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.camera-eye-edge__card li { position: relative; padding: 5px 0 5px 17px; border-bottom: 1px solid #e0e7eb; color: #435b6c; font-size: 14px; line-height: 1.65; }
.camera-eye-edge__card li::before { content: ""; position: absolute; left: 0; top: 14px; width: 6px; height: 6px; background: #c69226; }
.camera-eye-edge__actions { max-width: 980px; margin-right: auto; margin-left: auto; justify-content: center; }

@media (max-width: 991px) {
  .camera-eye-edge__copy { grid-template-columns: 1fr; gap: 14px; }
}
@media (max-width: 767px) {
  .camera-eye-edge__visual { width: 100%; margin-left: 0; margin-top: 32px; }
  .camera-eye-edge__visual figcaption { padding-right: 12px; padding-left: 12px; font-size: 12px; }
  .camera-eye-edge__cards { grid-template-columns: 1fr; gap: 14px; margin-top: 22px; }
  .camera-eye-edge__card { padding: 24px 20px 26px; }
  .camera-eye-edge__card h3 { font-size: 21px; }
  .camera-eye-edge__brand { font-size: 14px; }
}
/* CAMERA integrated commercial page v1.0 — 2026-08-01 */
.camera-v1 { overflow: clip; background: #fff; color: #0b2134; }
.camera-v1 *, .camera-v1 *::before, .camera-v1 *::after { box-sizing: border-box; }
.camera-v1 section[id] { scroll-margin-top: 150px; }
.camera-v1 .camera-container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.camera-v1 .camera-section { padding-block: 88px; }
.camera-v1 .camera-section--soft { background: #f3f7f9; }
.camera-v1 .camera-section--navy { background: #071b2c; color: #fff; }
.camera-v1 .camera-section--navy .camera-heading,
.camera-v1 .camera-section--navy .camera-lead,
.camera-v1 .camera-section--navy .camera-kicker { color: #fff; }
.camera-v1 .camera-heading { max-width: 900px; margin: 14px 0 22px; color: #0a2137; font-size: 2.35rem; line-height: 1.45; font-weight: 700; letter-spacing: 0; }
.camera-v1 .camera-lead { max-width: 940px; margin: 0 0 30px; color: #41566a; font-size: 1.08rem; line-height: 1.9; letter-spacing: 0; }
.camera-v1 .camera-kicker { display: block; color: #997018; font-size: .78rem; font-weight: 700; line-height: 1.5; letter-spacing: .08em; }
.camera-v1 .camera-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 28px; }
.camera-v1 .camera-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; border: 1px solid #c79627; border-radius: 4px; padding: 12px 20px; background: #c79627; color: #081a2a; font-weight: 700; line-height: 1.45; text-decoration: none; }
.camera-v1 .camera-button:hover, .camera-v1 .camera-button:focus-visible { background: #e4b94e; color: #081a2a; text-decoration: none; }
.camera-v1 .camera-button--outline { border-color: #17496e; background: transparent; color: #0b3b5d; }
.camera-v1 .camera-section--navy .camera-button--outline { border-color: #8eacc0; color: #fff; }
.camera-v1 .camera-button--light { background: #fff; color: #071b2c; border-color: #fff; }
.camera-v1 .camera-text-link { color: #0d5b84; font-weight: 700; text-decoration: none; }
.camera-v1 .camera-text-link--light, .camera-v1 .camera-section--navy .camera-text-link { color: #fff; }
.camera-v1 a:focus-visible, .camera-v1 summary:focus-visible { outline: 3px solid #f2c55a; outline-offset: 4px; }
.camera-v1 .camv-note { max-width: 980px; margin: 20px 0 0; color: #667887; font-size: .82rem; line-height: 1.75; letter-spacing: 0; }
.camera-v1 .camera-section--navy .camv-note { color: #bdcbd4; }
.camera-v1 .camv-statement { max-width: 900px; margin: 0 0 18px; color: #0c3b5e; font-size: 1.28rem; line-height: 1.7; font-weight: 700; letter-spacing: 0; }

.camv-hero { position: relative; border-bottom: 1px solid #20384b; padding-block: clamp(42px, 5vw, 72px); overflow: hidden; background: #071725; color: #fff; }
.camv-hero::before { content: ""; position: absolute; inset: 0; opacity: .28; background-image: linear-gradient(rgba(202,155,43,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(202,155,43,.14) 1px,transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(90deg,#000,transparent 90%); }
.camv-hero__inner { position: relative; z-index: 1; }
.camv-hero__visual { margin: 0; overflow: hidden; border: 1px solid rgba(199,150,39,.72); border-bottom: 0; background: #020912; box-shadow: 0 24px 52px rgba(0,0,0,.24); }
.camv-hero__visual img { display: block; width: 100%; height: auto; aspect-ratio: 1640 / 545; object-fit: contain; background: #020912; }
.camv-hero__content { display: grid; grid-template-columns: minmax(0,1fr); gap: 30px; align-items: start; border: 1px solid rgba(199,150,39,.72); border-top: 1px solid rgba(255,255,255,.12); padding: clamp(32px,4.2vw,56px); background: rgba(5,18,29,.96); box-shadow: 0 24px 52px rgba(0,0,0,.24); }
.camv-hero__copy { max-width: 980px; }
.camv-hero__copy h1 { max-width: 800px; margin: 16px 0 22px; color: #fff; font-size: clamp(2.4rem,4.2vw,3.35rem); line-height: 1.32; font-weight: 700; letter-spacing: 0; }
.camv-hero__copy > p { max-width: 800px; margin: 0; color: #d4dee5; font-size: 1.08rem; line-height: 1.9; letter-spacing: 0; }
.camv-hero .camera-button--outline { border-color: #9ab0bf; color: #fff; }
.camv-hero .camera-text-link { color: #fff; }
.camv-hero__flow { display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; border-top: 1px solid rgba(255,255,255,.2); padding-top: 22px; }
.camv-hero__flow span { display: inline-flex; align-items: center; min-height: 0; border: 0; padding: 0; background: transparent; color: #d6ad4d; font-family: "Oswald", sans-serif; font-size: .88rem; letter-spacing: .05em; }
.camv-hero__flow span:not(:last-child)::after { content: "→"; margin-left: 18px; color: #748b9b; }
.camv-hero__flow i { display: none; }

.camv-he1__grid { display: grid; grid-template-columns: minmax(360px, .92fr) minmax(0, 1.08fr); gap: 64px; align-items: center; }
.camv-he1__media { margin: 0; }
.camv-he1__media img { display: block; width: 100%; height: auto; object-fit: contain; }
.camv-he1__media figcaption, .camv-wide-figure figcaption, .camv-partner-visuals figcaption { margin-top: 12px; color: #6b7c89; font-size: .76rem; line-height: 1.65; }
.camv-status { display: inline-flex; align-items: center; width: fit-content; max-width: 100%; min-height: 28px; border: 1px solid currentColor; border-radius: 3px; padding: 5px 9px; font-family: "Roboto", sans-serif; font-size: .7rem; font-weight: 700; line-height: 1.35; letter-spacing: .04em; }
.camv-status--available { color: #17654a; background: #eef9f3; }
.camv-status--integration { color: #956b0b; background: #fff8e7; }
.camv-status--supported { color: #0d597a; background: #eff8fc; }
.camv-status--candidate { color: #6b5517; background: #faf7eb; }
.camv-status--unverified { color: #676f75; background: #f1f3f4; }
.camv-status--vision { color: #555e65; background: #f5f6f7; }
.camv-spec-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 24px 0 0; padding: 1px; background: #cfdae0; list-style: none; }
.camv-spec-strip li { min-width: 0; padding: 16px 10px; background: #fff; text-align: center; }
.camv-spec-strip b, .camv-spec-strip span { display: block; overflow-wrap: anywhere; }
.camv-spec-strip b { color: #9a6e0c; font-size: .98rem; line-height: 1.4; }
.camv-spec-strip span { margin-top: 5px; color: #526776; font-size: .72rem; line-height: 1.45; }

.camv-wide-figure { margin: 36px auto 0; }
.camv-wide-figure img { display: block; width: 100%; height: auto; border: 1px solid #d8e0e5; background: #fff; object-fit: contain; }
.camv-state-pair { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; margin-top: 28px; }
.camv-state-pair article { border-top: 3px solid #bd8a21; padding: 24px; background: #fff; box-shadow: 0 8px 26px rgba(7,27,44,.07); }
.camv-state-pair h3 { margin: 14px 0 8px; color: #0a2740; font-size: 1.2rem; line-height: 1.45; }
.camv-state-pair p { margin: 0; color: #526776; line-height: 1.75; }

.camv-partner-visuals { display: grid; grid-template-columns: .72fr 1.3fr 1fr; gap: 16px; margin: 34px 0; }
.camv-partner-visuals figure { display: grid; min-width: 0; margin: 0; border: 1px solid #d5dee4; padding: 18px; background: #fff; align-content: center; }
.camv-partner-visuals img { display: block; width: 100%; max-height: 210px; object-fit: contain; }
.camv-role-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-top: 30px; }
.camv-role-grid article { min-width: 0; border: 1px solid #d6e0e6; border-top: 3px solid #bd8a21; padding: 26px; background: #fff; }
.camv-role-grid article > span { color: #997018; font-size: .76rem; font-weight: 700; }
.camv-role-grid h3 { margin: 10px 0 14px; color: #0a2740; font-size: 1.18rem; line-height: 1.4; }
.camv-role-grid p, .camv-role-grid li { color: #485e6e; line-height: 1.7; }
.camv-role-grid ul { margin: 0 0 12px; padding-left: 20px; }
.camv-role-grid b { display: block; color: #173e5a; font-size: .78rem; line-height: 1.6; }

.camv-proof-grid, .camv-poc-grid, .camv-app-grid, .camv-resource-grid { display: grid; gap: 16px; margin: 32px 0; }
.camv-proof-grid, .camv-poc-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.camv-proof-grid article, .camv-poc-grid article { border: 1px solid rgba(255,255,255,.2); border-top: 3px solid #d2a23e; padding: 26px; background: rgba(255,255,255,.04); }
.camv-proof-grid span, .camv-poc-grid span { color: #efc15f; font-size: .74rem; font-weight: 700; }
.camv-proof-grid h3, .camv-poc-grid h3 { margin: 12px 0; color: #fff; font-size: 1.16rem; line-height: 1.4; }
.camv-proof-grid p, .camv-poc-grid p, .camv-poc-grid li { color: #c8d4dc; line-height: 1.7; }
.camv-poc-grid ul { margin: 16px 0 0; padding-left: 20px; }

.camv-pipeline { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 0; margin-top: 36px; counter-reset: steps; }
.camv-pipeline article { position: relative; min-width: 0; min-height: 220px; border: 1px solid #d5dfe5; padding: 22px 15px; background: #fff; }
.camv-pipeline article:not(:last-child)::after { content: ""; position: absolute; z-index: 2; top: 50%; right: -8px; width: 14px; height: 14px; border-top: 2px solid #b48219; border-right: 2px solid #b48219; background: #fff; transform: rotate(45deg) translateY(-50%); }
.camv-pipeline span { color: #ab7b12; font-weight: 700; }
.camv-pipeline h3 { min-height: 54px; margin: 12px 0; color: #0a2c47; font-size: .96rem; line-height: 1.4; overflow-wrap: anywhere; }
.camv-pipeline p { margin: 0; color: #526775; font-size: .82rem; line-height: 1.65; }

.camv-product-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; margin-top: 34px; }
.camv-product-grid article { display: flex; min-width: 0; border: 1px solid #d8e1e6; padding: 16px; background: #fff; flex-direction: column; }
.camv-product-grid img { width: 100%; aspect-ratio: 4/3; margin-bottom: 18px; background: #f7f8f8; object-fit: contain; }
.camv-product-grid h3 { margin: 14px 0 10px; color: #0a2942; font-size: 1.12rem; line-height: 1.45; }
.camv-product-grid p { color: #526775; line-height: 1.72; }
.camv-product-grid a { margin-top: auto; padding-top: 12px; color: #0c5a82; font-weight: 700; }

.camv-table-wrap { margin-top: 32px; overflow: visible; }
.camv-compat { width: 100%; border-collapse: collapse; table-layout: fixed; background: #fff; }
.camv-compat caption { padding: 0 0 12px; color: #526775; text-align: left; font-size: .82rem; }
.camv-compat th, .camv-compat td { border: 1px solid #ced9df; padding: 14px 12px; color: #314b5d; vertical-align: top; line-height: 1.55; overflow-wrap: anywhere; }
.camv-compat thead th { background: #0b2a43; color: #fff; }
.camv-compat tbody th { color: #0a2942; }
.camv-compat-cards { display: none; }

.camv-app-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.camv-app-grid article { min-width: 0; border: 1px solid #d6e0e6; border-left: 3px solid #bd8a21; padding: 24px; background: #fff; }
.camv-app-grid h3 { margin: 0 0 10px; color: #0a2942; font-size: 1.08rem; line-height: 1.45; }
.camv-app-grid p { color: #526775; line-height: 1.72; }
.camv-app-grid a { color: #0c5a82; font-weight: 700; }
.camv-growth { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; margin: 32px 0; background: #cedae0; }
.camv-growth article { min-width: 0; padding: 24px; background: #fff; }
.camv-growth article > span { color: #a87710; font-size: .72rem; font-weight: 700; }
.camv-growth h3 { margin: 10px 0; color: #0a2942; font-size: 1.08rem; line-height: 1.45; }
.camv-growth p { margin: 0; color: #526775; line-height: 1.7; }
.camv-resource-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.camv-resource-grid article { border: 1px solid rgba(255,255,255,.22); padding: 28px; background: rgba(255,255,255,.04); }
.camv-resource-grid h3 { color: #efc15f; }
.camv-resource-grid li, .camv-resource-grid p { color: #c9d5dc; line-height: 1.75; }
.camera-v1 .camera-faq { max-width: 980px; margin-top: 28px; }
.camera-v1 .camera-faq details { border-top: 1px solid #d0dbe1; }
.camera-v1 .camera-faq details:last-child { border-bottom: 1px solid #d0dbe1; }
.camera-v1 .camera-faq summary { position: relative; padding: 20px 48px 20px 4px; color: #0a2b45; font-weight: 700; line-height: 1.6; cursor: pointer; }
.camera-v1 .camera-faq summary::after { content: "+"; position: absolute; right: 14px; top: 18px; color: #a7770e; font-size: 1.3rem; }
.camera-v1 .camera-faq details[open] summary::after { content: "−"; }
.camera-v1 .camera-faq details p { padding: 0 48px 22px 4px; color: #4b6171; line-height: 1.8; }
.camera-v1 .camera-contact { text-align: left; }

@media (max-width: 1100px) {
  .camv-hero__content { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .camv-hero__copy h1 { font-size: 2.8rem; }
  .camv-pipeline { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; background: #d5dfe5; }
  .camv-pipeline article:not(:last-child)::after { display: none; }
  .camv-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 899px) {
  .camv-table-wrap { display: none; }
  .camv-compat-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 28px; }
  .camv-compat-cards article { border: 1px solid #d3dee4; padding: 18px; background: #fff; }
  .camv-compat-cards h3 { margin: 0 0 10px; color: #0a2942; font-size: 1rem; }
}

@media (max-width: 767px) {
  .camera-v1 .camera-container { width: min(100% - 32px, 680px); }
  .camera-v1 .camera-section { padding-block: 62px; }
  .camera-v1 .camera-heading { font-size: 1.72rem; line-height: 1.48; }
  .camera-v1 .camera-lead { font-size: 1rem; line-height: 1.85; }
  .camera-v1 .camera-actions { align-items: stretch; flex-direction: column; }
  .camera-v1 .camera-button, .camera-v1 .camera-actions .camera-text-link { width: 100%; text-align: center; }
  .camv-hero { padding-block: 38px; }
  .camv-hero__content { grid-template-columns: 1fr; gap: 34px; padding: 28px 22px 30px; }
  .camv-hero__copy h1 { font-size: 2.15rem; line-height: 1.42; }
  .camv-hero__copy > p { font-size: 1rem; line-height: 1.85; }
  .camv-hero__flow { gap: 8px 12px; padding-top: 18px; }
  .camv-hero__flow span { min-height: 0; padding: 0; font-size: .67rem; text-align: left; display: inline-flex; }
  .camv-hero__flow span:not(:last-child)::after { margin-left: 12px; }
  .camv-he1__grid { grid-template-columns: 1fr; gap: 36px; }
  .camv-spec-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .camv-state-pair, .camv-role-grid, .camv-proof-grid, .camv-poc-grid, .camv-app-grid, .camv-growth, .camv-resource-grid { grid-template-columns: 1fr; }
  .camv-partner-visuals { grid-template-columns: 1fr; }
  .camv-partner-visuals figure { min-height: 180px; }
  .camv-pipeline { grid-template-columns: 1fr; }
  .camv-pipeline article { min-height: 0; }
  .camv-pipeline h3 { min-height: 0; }
  .camv-product-grid { grid-template-columns: 1fr; }
  .camv-compat-cards { grid-template-columns: 1fr; }
}

@media (max-width: 359px) {
  .camera-v1 .camera-container { width: calc(100% - 24px); }
  .camv-hero__copy h1 { font-size: 2rem; }
  .camv-hero__flow { grid-template-columns: 1fr; }
  .camv-hero__flow span { min-height: 40px; }
}

@media (prefers-reduced-motion: reduce) {
  .camera-v1 *, .camera-v1 *::before, .camera-v1 *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* CAMERA low-light field proof - iPhone field context + direct PC recording */
.camera-v1 .camera-proof { border-top: 1px solid #20384b; border-bottom: 1px solid #20384b; background: #071b2c; color: #fff; }
.camera-v1 .camera-proof .camera-heading, .camera-v1 .camera-proof .camera-kicker, .camera-v1 .camera-proof .camera-lead { color: #fff; }
.camera-proof__intro { max-width: 980px; }
.camera-proof__demo-grid { display: grid; gap: clamp(34px, 5vw, 62px); width: min(1120px, 100%); margin: 42px auto 0; }
.camera-proof__demo01-wrap { width: min(460px, 100%); margin-inline: auto; }
.camera-proof__demo-card { min-width: 0; margin: 0; border: 1px solid rgba(223,178,72,.72); background: #02070b; box-shadow: 0 22px 52px rgba(0,0,0,.28); }
.camera-proof__demo-header { min-height: 184px; padding: 22px 20px 20px; }
.camera-proof__demo-label { display: block; color: #efc15f; font-size: .72rem; font-weight: 700; line-height: 1.5; letter-spacing: .04em; }
.camera-proof__demo-header h3 { margin: 12px 0 9px; color: #fff; font-size: 1.18rem; line-height: 1.55; }
.camera-proof__demo-header p { margin: 0; color: #c8d4dc; font-size: .92rem; line-height: 1.75; }
.camera-proof__demo-card video { display: block; width: 100%; height: auto; aspect-ratio: 9 / 16; object-fit: contain; background: #000; border-top: 1px solid rgba(223,178,72,.34); border-bottom: 1px solid rgba(223,178,72,.34); }
.camera-proof__demo-card figcaption, .camera-proof__clip figcaption { min-height: 58px; padding: 14px 18px 16px; color: #c7d3db; line-height: 1.7; }
.camera-proof__demo-meta { display: block; color: #efc15f; font-size: .78rem; font-weight: 700; line-height: 1.65; letter-spacing: .02em; }
.camera-proof__demo01-note { margin: 18px 0 0; padding: 18px 18px 0; border-top: 1px solid rgba(223,178,72,.28); color: #c8d4dc; font-size: clamp(15px, 1.15vw, 16px); line-height: 1.85; }
.camera-proof__comparison { min-width: 0; border: 1px solid rgba(223,178,72,.72); background: #02070b; box-shadow: 0 22px 52px rgba(0,0,0,.28); }
.camera-proof__comparison-header { max-width: 900px; padding: clamp(24px, 4vw, 40px); }
.camera-proof__comparison-header h3 { margin: 12px 0 10px; color: #fff; font-size: clamp(1.3rem, 2.5vw, 1.8rem); line-height: 1.55; }
.camera-proof__comparison-header p { margin: 0; color: #c8d4dc; line-height: 1.85; }
.camera-proof__comparison-grid { display: grid; grid-template-columns: minmax(230px, 36fr) minmax(0, 64fr); gap: clamp(16px, 2vw, 24px); align-items: start; padding: 0 clamp(16px, 3vw, 28px) clamp(24px, 3vw, 32px); }
.camera-proof__clip { min-width: 0; margin: 0; border: 1px solid rgba(148,169,184,.48); background: #06111a; }
.camera-proof__clip--direct { border-color: rgba(223,178,72,.8); }
.camera-proof__clip-copy { min-height: 198px; padding: 20px; }
.camera-proof__clip-copy h4 { margin: 11px 0 9px; color: #fff; font-size: clamp(1rem, 1.5vw, 1.22rem); line-height: 1.55; }
.camera-proof__clip-copy p { margin: 0; color: #c8d4dc; font-size: .92rem; line-height: 1.75; }
.camera-proof__direct-badge { display: inline-block; margin-top: 16px; border-left: 3px solid #d2a23e; padding: 8px 12px; background: rgba(210,162,62,.12); color: #fff; font-size: .78rem; line-height: 1.55; letter-spacing: .02em; }
.camera-proof__clip video { display: block; width: 100%; height: auto; background: #000; border-top: 1px solid rgba(223,178,72,.34); border-bottom: 1px solid rgba(223,178,72,.34); object-fit: contain; }
.camera-proof__clip--iphone video { aspect-ratio: 9 / 16; }
.camera-proof__clip--direct video { aspect-ratio: 16 / 9; }
.camera-proof__comparison-notes { margin: 0 clamp(16px, 3vw, 28px) clamp(24px, 3vw, 32px); border-top: 1px solid rgba(223,178,72,.28); padding-top: 18px; }
.camera-proof__comparison-notes p { margin: 0; color: #c8d4dc; font-size: clamp(15px, 1.15vw, 16px); line-height: 1.85; }
.camera-proof__comparison-notes p + p { margin-top: 12px; color: #9fb1bd; font-size: .84rem; }
@media (max-width: 991px) { .camera-proof__demo-grid { gap: 38px; margin-top: 30px; } .camera-proof__demo-header { min-height: 0; } }
@media (max-width: 767px) { .camera-proof__comparison-grid { grid-template-columns: 1fr; } .camera-proof__clip-copy { min-height: 0; } .camera-proof__clip--iphone { width: min(360px, 100%); margin-inline: auto; } }

.camera-proof__intro > p:not(.camera-lead) { margin: -12px 0 0; color: #cbd7df; font-size: 1rem; line-height: 1.85; }
.camera-proof__main { width: min(1120px, 100%); margin: 42px auto 0; border: 1px solid rgba(223,178,72,.72); background: #02070b; box-shadow: 0 22px 52px rgba(0,0,0,.28); }
.camera-proof__main video,
.camera-proof__continuous video { display: block; width: 100%; height: auto; background: #000; }
.camera-proof__main video { aspect-ratio: 16 / 9; }
.camera-proof__main--portrait { width: min(760px, 100%); }
.camera-proof__main--portrait video { width: min(460px, 100%); max-width: 100%; height: auto; aspect-ratio: 9 / 16; margin-inline: auto; object-fit: contain; border-right: 1px solid rgba(223,178,72,.34); border-left: 1px solid rgba(223,178,72,.34); }
.camera-proof__main figcaption { padding: 14px 18px 16px; color: #c7d3db; font-size: 1.3rem; line-height: 1.7; }
.camera-proof__points { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-top: 28px; }
.camera-proof__points article { min-width: 0; border: 1px solid rgba(255,255,255,.18); border-top: 3px solid #d2a23e; padding: 24px; background: rgba(255,255,255,.04); }
.camera-proof__points span { color: #efc15f; font-size: .72rem; font-weight: 700; line-height: 1.5; letter-spacing: .04em; }
.camera-proof__points h3 { margin: 12px 0 9px; color: #fff; font-size: 1.08rem; line-height: 1.55; }
.camera-proof__points p { margin: 0; color: #c8d4dc; line-height: 1.75; }
.camera-proof__description { max-width: 980px; margin: 34px auto 0; border-left: 3px solid #d2a23e; padding: 4px 0 4px 24px; }
.camera-proof__description h3 { margin: 0 0 12px; color: #fff; font-size: 1.2rem; line-height: 1.5; }
.camera-proof__description p { margin: 0 0 10px; color: #d0dbe2; line-height: 1.9; }
.camera-proof__continuous { width: min(980px, 100%); margin: 34px auto 0; border: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.035); }
.camera-proof__continuous summary { position: relative; padding: 19px 56px 19px 22px; color: #fff; font-weight: 700; line-height: 1.55; cursor: pointer; }
.camera-proof__continuous summary::after { content: "+"; position: absolute; top: 14px; right: 22px; color: #efc15f; font-size: 1.45rem; }
.camera-proof__continuous[open] summary::after { content: "−"; }
.camera-proof__continuous-body { display: grid; grid-template-columns: minmax(220px,320px) minmax(0,1fr); gap: 28px; align-items: center; border-top: 1px solid rgba(255,255,255,.18); padding: 24px; }
.camera-proof__continuous video { aspect-ratio: 9 / 16; border: 1px solid rgba(223,178,72,.7); }
.camera-proof__continuous h3 { margin: 0 0 12px; color: #fff; font-size: 1.18rem; line-height: 1.5; }
.camera-proof__continuous p { color: #cad6de; line-height: 1.85; }
.camera-proof__audio-note { padding: 10px 12px; border-left: 3px solid #d2a23e; background: rgba(255,255,255,.055); font-size: .84rem; }
.camera-proof__disclaimer { max-width: 980px; margin: 28px auto 0; padding: 18px 20px; border: 1px solid rgba(255,255,255,.16); background: rgba(0,0,0,.2); }
.camera-proof__disclaimer p { margin: 0; color: #bfcdd6; font-size: .78rem; line-height: 1.78; }
.camera-proof__disclaimer p + p { margin-top: 9px; }
.camera-proof__actions { max-width: 980px; margin-right: auto; margin-left: auto; justify-content: center; }
.camera-v1 .camera-proof .camera-button--outline { border-color: #9bb0bf; color: #fff; }
.camera-v1 .camera-proof .camera-button--outline:hover,
.camera-v1 .camera-proof .camera-button--outline:focus-visible { border-color: #fff; background: #fff; color: #071b2c; }

@media (max-width: 767px) {
  .camera-proof__main { margin-top: 30px; }
  .camera-proof__main figcaption { padding: 12px 13px 14px; font-size: 1.2rem; }
  .camera-proof__main--portrait video { width: min(360px, 100%); height: auto; }
  .camera-proof__points { grid-template-columns: 1fr; gap: 12px; }
  .camera-proof__points article { padding: 20px; }
  .camera-proof__description { padding-left: 18px; }
  .camera-proof__continuous-body { grid-template-columns: 1fr; padding: 18px; }
  .camera-proof__continuous video { width: min(280px,100%); margin-inline: auto; }
}

/* Camera hero: sitewide full-bleed alignment */
.camera-v1 .camv-hero { padding-block: 0; border-bottom: 1px solid #d6e0e6; background: #fff; color: #0b2134; }
.camera-v1 .camv-hero::before { display: none; }
.camera-v1 .camv-hero__inner { width: 100%; max-width: none; margin-inline: 0; }
.camera-v1 .camv-hero__visual { border: 0; border-bottom: 1px solid #d6e0e6; box-shadow: none; }
.camera-v1 .camv-hero__content { display: block; width: min(1180px, calc(100% - 48px)); margin: 0 auto; border: 0; padding: clamp(58px,6vw,84px) 0 clamp(64px,7vw,96px); background: #fff; box-shadow: none; }
.camera-v1 .camv-hero__copy { max-width: 980px; }
.camera-v1 .camv-hero__copy h1 { color: #0b2134; }
.camera-v1 .camv-hero__copy > p { color: #4b6171; }
.camera-v1 .camv-hero .camera-button--outline { border-color: #0c3b5e; color: #0c3b5e; }
.camera-v1 .camv-hero .camera-button--outline:hover,
.camera-v1 .camv-hero .camera-button--outline:focus-visible { border-color: #0c3b5e; background: #0c3b5e; color: #fff; }
.camera-v1 .camv-hero .camera-text-link { color: #0c3b5e; }
@media (max-width: 767px) {
  .camera-v1 .camv-hero__content { width: min(100% - 32px, 680px); padding: 48px 0 58px; }
}
@media (max-width: 359px) {
  .camera-v1 .camv-hero__content { width: calc(100% - 24px); }
}
