/* Homepage portrait: living eyes and investigation scan overlay. */
.hq-eyes {position:absolute;overflow:visible;pointer-events:none;z-index:1;}
.hq-cyber-glow {fill:#ff2035;mix-blend-mode:screen;opacity:.35;animation:hq-cyber-pulse 3.2s ease-in-out infinite;}
@keyframes hq-cyber-pulse {0%,100%{opacity:.25;}50%{opacity:.7;}}
.hq-investigate {opacity:0;transition:opacity .35s;fill:none;stroke:#ff4d62;stroke-width:1.4;}
.is-scanning .hq-investigate {opacity:1;}
.hq-bracket {filter:drop-shadow(0 0 3px #ff2035);}
.hq-facescan {stroke:#ff6b7c;stroke-width:1;opacity:0;}
.is-scanning .hq-facescan {animation:hq-facescan 1.8s ease-in-out forwards;}
@keyframes hq-facescan {0%{opacity:1;transform:translateY(0);}90%{opacity:1;transform:translateY(156px);}100%{opacity:0;transform:translateY(156px);}}
.hq-reticle circle {stroke-dasharray:6 4;transform-box:fill-box;transform-origin:center;}
.is-scanning .hq-reticle circle {animation:hq-reticle 1.8s linear;}
@keyframes hq-reticle {from{transform:rotate(0) scale(1.8);opacity:.2;}to{transform:rotate(180deg) scale(1);opacity:1;}}
.hq-readout text {fill:#ffd2d7;stroke:none;font:600 9px/1 ui-monospace,Menlo,monospace;letter-spacing:.8px;paint-order:stroke;}
.hq-panel {fill:#07050ad9;stroke:#ff4d6266;stroke-width:.8;}
.hq-readout .hq-found,.hq-readout .hq-dee {opacity:0;}
.hq-readout .hq-found {fill:#ff8e98;}
.hq-readout .hq-dee {fill:#fff4f0;font:700 14px/1 ui-monospace,Menlo,monospace;letter-spacing:2px;filter:drop-shadow(0 0 4px #ff2b45);}
.is-matched .hq-readout .hq-found {opacity:1;animation:hq-blink .2s steps(1) 2;}
.is-matched .hq-readout .hq-dee {opacity:1;animation:hq-pop .5s cubic-bezier(.2,1.6,.4,1) .25s backwards;}
.is-matched .hq-panel {stroke:#ffb3bb;}
@keyframes hq-pop {from{opacity:0;transform:translateX(-6px);}to{opacity:1;transform:none;}}
.is-matched .hq-bracket,.is-matched .hq-reticle {stroke:#ffb3bb;}
@keyframes hq-blink {50%{opacity:0;}}
.hq-paused .hq-eyes *, .hq-eyes.paused * {animation-play-state:paused!important;}
@media (prefers-reduced-motion:reduce) {.hq-cyber-glow,.hq-investigate {display:none;}}

/* Homepage layout fixes: upright tablets use the stacked phone layout (copy above, portrait below),
   and phones drop the portrait slightly so the Explore button never covers the face. */
@media (min-width:701px) and (max-width:1100px) and (orientation:portrait) {
 .cyber-home .studio-art { width:100%; max-width:100%; height:60%; inset:auto 0 0; object-fit:cover; object-position:58% 14%; }
 .cyber-home .studio-shade { background:linear-gradient(180deg,#080607 0%,#080607 34%,#080607aa 44%,transparent 58%,#08060733 100%); }
 .cyber-home .studio-copy { width:100%; padding:34px 7% 0; }
 .cyber-home .studio-description { max-width:520px; font-size:16px; }
 .cyber-home #main { grid-template-rows:minmax(0,1fr) auto; }
 .cyber-home .studio-destinations { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .cyber-home .studio-destination { min-height:150px; }
}
@media (max-width:700px) {
 .cyber-home .studio-art { height:56%; object-position:center 10%; }
 .cyber-home .studio-shade { background:linear-gradient(180deg,#080607 0%,#080607 38%,#080607aa 48%,transparent 62%,#08060733 100%); }
}
