/* Desktop refinement: shared reading grid, legible controls and quieter details. */
@media (min-width:981px) {
  :root { --noe-content-width:min(1320px,calc(100% - 160px)); }
  .scene-inner>.shell,.faq-section>.shell,.contact-section>.shell,.service-footer>.shell { width:var(--noe-content-width); }

  .service-header nav a { position:relative;font-size:14px;color:#bbc4cf;line-height:1.45;padding:8px 0; }
  html[lang=en] .service-header nav a { font-size:14px;letter-spacing:.015em; }
  .service-header nav a::after { content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:#e9b484;transform:scaleX(0);transform-origin:left;transition:transform .3s ease; }
  .service-header nav a:hover::after,.service-header nav a[aria-current]::after { transform:scaleX(1); }
  .header-contact { font-size:12px;min-height:40px;padding:10px 17px; }
  .language-button,.case-language { min-height:38px;padding:8px 14px;border:1px solid #e6b38d80;border-radius:99px;background:linear-gradient(135deg,#e9b48426,#d88e7110);color:#f3cdad;font-size:12px;font-weight:550;line-height:1.5;transition:background .25s,border-color .25s; }
  .language-button:hover,.case-language:hover { background:#efb58330;border-color:#f1c5a1; }
  body[data-scene-active=services]:not(.is-reading) .language-button { color:#794d2d;background:#e0cbb63b;border-color:#a57a5680; }
  body[data-scene-active=services]:not(.is-reading) .service-header nav a { color:#586671; }
  body[data-scene-active=services]:not(.is-reading) .service-header nav a::after { background:#855735; }

  .scene-index { gap:2px; }
  .scene-index button { font-size:11px;line-height:1.55;min-height:24px;padding-block:2px;color:#92a0b1;letter-spacing:.02em; }
  .chapter-number { font-size:9px;opacity:.82;font-variant-numeric:tabular-nums; }
  .scene-cue { font-size:10px;color:#9cabbc; }
  .scene-position { font-size:11px; }
  .scene-direction button { width:40px;height:40px;border-color:#a8b4c542; }
  body[data-scene-active=services]:not(.is-reading) .scene-index button { color:#64737d; }
  body[data-scene-active=services]:not(.is-reading) .scene-cue { color:#667780; }
  .hero-bottom { bottom:166px;font-size:11px; }
  .early-case { font-size:11px; }
  .hero-actions { margin-top:24px; }
  .orb-caption { bottom:7%;font-size:9px;color:#96a4b5; }

  .work-row small { font-size:11px;color:#63737e; }
  .work-section .scene-inner { padding-bottom:179px; }
  .work-row .row-num { font-size:9px; }
  .workflow-top { font-size:8px;color:#586b76; }
  .panel-status { font-size:9px; }
  .workflow-summary p { font-size:11px;color:#526673;line-height:1.8; }
  .workflow-summary>span { font-size:9px;color:#61717b; }
  .flow-center span,.flow-result>span:last-child { font-size:10px;color:#61717b; }
  .approach-steps small { font-size:10px;color:#8d9eb0; }

  .industry-tabs button { font-size:12px;padding:8px 16px; }
  .cases-section .scene-inner { padding-bottom:182px; }
  .industry-kicker { font-size:9px;color:#92a2b4; }
  .industry-badge { font-size:10px;color:#d0ab8b; }
  .industry-copy>p:not(.industry-scope) { font-size:13px; }
  .industry-tasks { font-size:11px; }
  .industry-copy .button { min-height:44px;font-size:12px; }
  .industry-copy .industry-scope { font-size:10px;color:#91a3b5;line-height:1.7; }
  .homepage-model .spatial-note { font-size:10px;color:#91a3b5;bottom:10px; }
  .case-art-bottom { font-size:9px;color:#899bad; }
  .sector-example { font-size:9px;color:#9aabbc; }

  .faq-grid { grid-template-columns:.9fr 1.25fr;gap:90px; }
  .faq-list details p { font-size:14px;color:#586b78;max-width:610px; }
  .faq-intro { color:#586b78;max-width:350px; }
  .faq-list summary { transition:color .2s; }
  .faq-list summary:hover { color:#855735; }
  .light-section :is(button,a,summary):focus-visible,.preview-dialog :is(button,a,summary):focus-visible,
  body[data-scene-active=services]:not(.is-reading) :is(.service-header,.scene-chrome) :is(button,a):focus-visible { outline-color:#855735;outline-offset:4px; }
  .service-footer small { color:#8b9aaa;font-size:10px; }

  .header-back,.chapter-nav { font-size:14px; }
  .case-header .header-actions { gap:20px; }
  .case-book { min-height:40px; }
}
@media (min-width:1650px) {
  :root { --noe-content-width:min(1460px,calc(100% - 190px)); }
  html[lang=en] .service-header nav a { font-size:15px; }
  .hero-bottom { bottom:166px; }
  .workflow-summary p { font-size:12px; }
  .work-row small { font-size:12px; }
  .industry-copy>p:not(.industry-scope) { font-size:14px; }
  .industry-tasks { font-size:12px; }
  .industry-copy .button { font-size:13px; }
  .faq-list details p { max-width:680px; }
}
@media (min-width:981px) and (max-height:780px) {
  :root { --noe-content-width:calc(100% - 150px); }
  .scene-index button { min-height:23px;font-size:10px; }
  .scene-chrome { bottom:24px; }
  .scene-direction button { width:36px;height:36px; }
  .hero-bottom { bottom:152px;padding-top:15px; }
  .hero-grid { align-items:start; }
  .hero-copy h1 { font-size:82px; }
  html[lang=en] .hero-copy h1 { font-size:72px; }
  .hero-description { max-width:460px; }
  .orb-caption { bottom:12%; }
  .hero-actions { margin-top:20px; }
  .work-row small { font-size:10px; }
  .work-section .scene-inner { padding-bottom:160px; }
  .work-row { padding-block:12px; }
  .flow-visual { padding-block:12px; }
  .flow-center { padding-block:9px;gap:9px; }
  .flow-line { height:16px; }
  .workflow-summary p { font-size:10px; }
  .industry-tabs { margin:15px 0 12px;padding:7px 0; }
  .cases-section .scene-inner { padding-top:118px;padding-bottom:180px; }
  .industry-panel { height:325px; }
  .industry-tabs button { font-size:11px;padding:7px 14px; }
  .industry-copy h3 { font-size:43px;margin:12px 0 9px; }
  .industry-copy>p:not(.industry-scope) { font-size:12px;line-height:1.8;max-width:400px; }
  .industry-tasks { font-size:10px;margin:11px 0 12px;gap:3px; }
  .industry-copy .button { min-height:40px;font-size:11px; }
  .industry-copy .industry-scope { font-size:9px;margin-top:8px; }
  .homepage-model .spatial-note { font-size:9px; }
}
@media (prefers-reduced-motion:reduce) {
  .service-header nav a::after,.faq-list summary,.language-button,.case-language { transition:none; }
}
