/* Mobile compositions. The approved desktop cascade remains untouched above 900px. */
@media (max-width:900px) {
  #main > section, #main > section * { min-width:0; }
  .intelligence-hero.hero-stage { height:auto; min-height:0; display:grid; grid-template-columns:minmax(0,1fr) 76px; gap:16px 12px; padding:20px; }
  .intelligence-hero .intelligence-hero-top {position:static;grid-column:1/-1;display:flex;flex-direction:column;gap:7px;line-height:1.6;}
  .intelligence-hero .intelligence-notice {position:relative;inset:auto;width:auto;min-height:100px;margin:0;padding:16px;grid-column:1/-1;}
  .intelligence-hero .intelligence-notice strong {line-height:1.4;}
  .intelligence-hero .intelligence-notice p {line-height:1.6;}
  .intelligence-hero .intelligence-in {grid-row:2;}
  .intelligence-hero .intelligence-core {position:relative;inset:auto;transform:none;width:68px;height:68px;grid-column:2;grid-row:3;justify-self:center;align-self:center;}
  .intelligence-hero .intelligence-core img {width:29px;height:29px;}
  .intelligence-hero .intelligence-exception {position:static;transform:none;max-width:none;grid-column:1;grid-row:3;align-self:center;font-size:12px;line-height:1.5;}
  .intelligence-hero .intelligence-out {grid-row:4;}
  .intelligence-hero .intelligence-hero-links {display:none;}
  .intelligence-hero #hero-intelligence-caption {position:static;grid-column:1/-1;min-height:44px;margin:0;font-size:12px;line-height:1.7;text-align:left;}
  .intelligence-hero .hero-scene-controls {position:static;transform:none;grid-column:1/-1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;gap:3px;}
  .intelligence-hero .hero-scene-controls button {min-height:44px;padding:7px 2px;font-size:11px;}
  .intelligence-hero .hero-scene-controls button span {display:none;}
  .intelligence-hero .hero-playback {position:static;grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 16px;border-top:1px solid #b66ce126;padding-top:8px;}
  .intelligence-hero .hero-playback button {min-height:44px;font-size:12px;}
  .intelligence-hero .hero-playback small {flex-basis:100%;font-size:10px;}
  .loop-composition {grid-template-columns:1fr;min-height:0;gap:20px;}
  .loop-object {padding:0;}
  .loop-facets {height:260px;max-width:460px;margin:auto;overflow:visible;}
  #loop-object-caption {min-height:0;font-size:12px;margin:0;line-height:1.6;}
  .loop-stage-nav {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .loop-stage-nav button {grid-template-columns:20px 1fr;gap:6px;align-content:center;min-height:76px;padding:12px;border:1px solid #b66ce12b;border-radius:8px;}
  .loop-stage-nav button strong {font-size:16px;}
  .loop-stage-nav button small {grid-column:2;font-size:11px;line-height:1.5;}
  .loop-stage-nav button[aria-selected=true] {border:1px solid #d7b5f28c;background:linear-gradient(120deg,#8736ba25,#719bff0a);}
  .loop-stage-content {padding:20px 0 0;}
  .loop-stage-content>p {min-height:0;font-size:14px;}
  .loop-stage-content .loop-output {font-size:13px;gap:8px;}
  .loop-output strong {min-height:0;}
  .loop-stage-content #loop-stage-example {min-height:0;font-size:12px;}
  .loop-industry-desktop {display:none;}
  .loop-industry-mobile {display:block;}
  .intelligence-composition {grid-template-columns:1fr;min-height:0;}
  .intelligence-composition .architecture-map {height:auto;padding:0;}
  .intelligence-composition .architecture-core,.intelligence-composition .architecture-wires {display:none;}
  .architecture-options {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .architecture-options button {position:relative;inset:auto;transform:none;width:100%;min-height:70px;padding:12px;grid-template-columns:18px minmax(0,1fr);gap:7px;}
  .architecture-options button strong {font-size:12px;line-height:1.5;}
  .architecture-options button:last-child {grid-column:1/-1;min-height:56px;}
  .architecture-detail {margin-top:20px;padding:20px 0 0;border-left:0;border-top:1px solid #b66ce136;min-height:0;}
  .architecture-detail h3 {font-size:25px;min-height:0;line-height:1.3;}
  .architecture-detail>p {min-height:0;font-size:14px;line-height:1.7;}
  .architecture-detail .architecture-mini {height:48px;margin:0 0 12px;max-width:240px;}
  .crystal-mobile-select {display:block;font-size:14px;margin:24px 0 0;}
  .crystal-mobile-select select {display:block;width:100%;margin-top:10px;}
  .crystal-options,.crystal-connections {display:none;}
  .crystal-network {height:124px;display:flex;align-items:center;gap:30px;justify-content:center;}
  .crystal-network .crystal-identity {position:relative;inset:auto;transform:none;width:57px;height:68px;flex:none;}
  .crystal-network .crystal-mobile-focus {display:flex;align-items:center;gap:12px;position:relative;inset:auto;transform:none;width:auto;max-width:55%;font-size:13px;line-height:1.5;color:#d7b5f2;}
  .crystal-network:after {content:"";position:absolute;left:32%;right:47%;top:50%;height:1px;background:linear-gradient(90deg,#719bff55,#b66ce155);z-index:-1;}
  .crystal-context {grid-template-columns:1fr;min-height:0;gap:24px;padding:20px;}
  .crystal-copy>#crystal-industry {font-size:10px;line-height:1.7;letter-spacing:1px;}
  .crystal-copy>.eyebrow {font-size:9px;margin:16px 0 8px;}
  .crystal-copy>#crystal-challenge {font-size:14px;line-height:1.7;}
  .crystal-copy h3 {font-size:23px;line-height:1.35;margin-bottom:16px;}
  .crystal-copy>#crystal-cta {font-size:13px;min-height:44px;display:inline-flex;align-items:center;}
  .crystal-transformation {border-top:1px solid #b66ce126;padding-top:16px;}
  .crystal-transform-heading {flex-wrap:wrap;}
  .crystal-transform-heading button {min-height:44px;font-size:12px;}
  .crystal-transformation #crystal-workflow {display:flex;flex-direction:column;gap:18px;margin:16px 0 24px;}
  #crystal-workflow:before {left:16px;right:auto;top:15px;bottom:18px;width:1px;height:auto;}
  .crystal-transformation #crystal-workflow li {display:grid;grid-template-columns:34px 1fr;align-items:center;text-align:left;gap:14px;font-size:13px;overflow-wrap:normal;}
  #crystal-workflow li i {width:34px;height:34px;}
  #crystal-workflow li i:after {margin:14px;}
  #crystal-insight {font-size:13px;line-height:1.7;}
  .crystal-transformation small {font-size:11px;line-height:1.6;}
}
@media (max-width:700px) {
  :root body #main select,:root body #main input:not([type=checkbox]),:root body #main textarea {font-size:16px;max-width:100%;}
  :root body #main select {background-color:#100d19;color:#e5d9ef;-webkit-text-fill-color:#e5d9ef;color-scheme:dark;min-height:48px;}
  #main .section-heading {margin-bottom:28px;}
  #main .section-heading h2 {font-size:clamp(28px,7.4vw,38px);line-height:1.2;}
  #main .section-heading p {font-size:14px;line-height:1.75;}
  .studio-hero h1 {padding-inline:16px;font-size:clamp(30px,8.1vw,43px);line-height:1.13;}
  .intelligence-hero.hero-stage {padding:16px;gap:14px 10px;}
  .intelligence-hero .intelligence-hero-top {font-size:8px;letter-spacing:1px;}
  .intelligence-hero-top small {font-size:10px;letter-spacing:0;}
  .intelligence-hero .hero-playback small {display:block;}
  .architecture-options button strong {font-size:12px;}
  .loop-facets {height:230px;}
  .loop-stage-nav button {min-height:76px;padding:10px;}
  .loop-stage-nav button strong {font-size:15px;}
  .zeria-launcher {right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:10px 13px;min-height:44px;font-size:11px;}
  .zeria-dialog {right:12px;left:12px;width:auto;max-width:none;bottom:calc(68px + env(safe-area-inset-bottom));max-height:calc(100dvh - 100px);overflow:auto;}
  footer {padding-bottom:90px;}
  .enquiry-section form {min-width:0;}
  .enquiry-section label {min-width:0;overflow-wrap:anywhere;}
  .enquiry-section .button,.final-cta .button {max-width:100%;white-space:normal;}
  .faq-list summary {min-height:54px;line-height:1.6;padding-block:16px;}
}
@media (max-width:359px) {
  .intelligence-hero .hero-scene-controls button {font-size:10px;}
  .architecture-options {grid-template-columns:1fr;}
  .architecture-options button,.architecture-options button:last-child {grid-column:auto;min-height:52px;}
  .loop-stage-nav button small {grid-column:1/-1;}
  .loop-stage-nav button {gap:6px;}
  .crystal-context {padding:16px;}
}
/* Touch must not retain a second stage highlight after a tap. */
@media (max-width:900px) and (hover:none) {
  .loop-stage-nav button:not([aria-selected=true]):hover {color:#8e879f;border-color:#b66ce12b;}
}
@media (max-width:900px) {
  .intelligence-composition .architecture-options button {left:auto;top:auto;right:auto;bottom:auto;transform:none;}
}
@media (max-width:700px) {
  #partnerships h3 {font-size:clamp(24px,7vw,32px);overflow-wrap:break-word;}
}
@media (max-width:700px) {
  .footer-top {flex-direction:column;gap:24px;}
  .footer-top>div {gap:8px;}
  .footer-top>div>span {font-size:12px;}
  .footer-top>div>a {font-size:14px;min-height:36px;display:flex;align-items:center;}
  .footer-groups {gap:28px 18px;}
  .footer-groups a {font-size:13px;min-height:44px;display:flex;align-items:center;padding:6px 0;}
  .footer-bottom {font-size:11px;line-height:1.6;align-items:center;}
  .footer-bottom a {min-height:44px;display:flex;align-items:center;}
  .private-workspace {flex-wrap:wrap;gap:12px;font-size:11px;line-height:1.6;}
}
@media (max-width:900px) {
  /* Leave room for the original fragmented-to-connected entrance motion. */
  .crystal-transformation #crystal-workflow {gap:28px;}
}
.zeria-mobile-access {display:none;}
@media (max-width:700px) {
  /* A second entry in the menu keeps the guide available when the floating
     control yields its space to forms, the calendar or an open keyboard. */
  #navigation .zeria-mobile-access {display:block;min-height:44px;border:1px solid #b66ce14f;border-radius:7px;background:#21102f;color:#eadbf5;font:500 14px Inter,sans-serif;padding:10px 16px;text-align:left;}
  .zeria-launcher {width:48px;height:48px;min-height:48px;padding:0;justify-content:center;font-size:0;gap:0;}
  .zeria-launcher>span,.zeria-launcher>i {display:none;}
  .zeria-launcher:after {content:"";display:block;width:21px;height:21px;background:url('/assets/brand-mark.svg') center/contain no-repeat;}
  .zeria-launcher[data-obstructed=true][aria-expanded=false] {visibility:hidden;pointer-events:none;}
  .intelligence-hero .intelligence-in:after {content:"";position:absolute;bottom:-15px;right:33px;width:1px;height:14px;background:linear-gradient(#719bff55,#b66ce199);}
  .intelligence-hero .intelligence-core:after {content:"";position:absolute;top:100%;left:50%;width:1px;height:15px;background:linear-gradient(#b66ce199,#719bff33);}
  .intelligence-hero .hero-scene-controls button[aria-pressed=true] {border-color:#d7b5f280;box-shadow:inset 0 -2px #b66ce1;background:#8736ba1c;}
}
@media (max-width:700px) {
  #main .eyebrow,.loop-output span {font-size:10px;line-height:1.6;}
  .intelligence-hero .intelligence-hero-top {font-size:9px;}
  .intelligence-hero .intelligence-notice strong {font-size:14px;}
  .intelligence-hero .intelligence-notice p {font-size:12px;}
}
