*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f7f6;color:#132126;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}header{background:radial-gradient(circle at 75% 20%,#123b46,#071014 45%);color:#edf7f8;padding:0 7vw 40px}nav{height:84px;display:flex;align-items:center;gap:28px;border-bottom:1px solid #18343c}.brand{margin-right:auto;letter-spacing:.08em;color:inherit;text-decoration:none;font-weight:800}.brand span{color:#91a9ae;font-weight:500;letter-spacing:0}.navlinks{display:flex;gap:25px}.navlinks a{color:#b8cdd1;text-decoration:none;font-size:14px}.live-nav{display:flex;align-items:center;gap:7px}.live-dot{width:7px;height:7px;border-radius:50%;background:#ef6868;box-shadow:0 0 12px #ef6868}.hero{max-width:1100px;margin:95px auto 70px}.hero small,section>small,.head small,.live-title small{color:#37b8c2;font-weight:800;letter-spacing:.15em}.hero h1{font-size:clamp(48px,7vw,86px);line-height:.98;letter-spacing:-.055em;margin:18px 0}.hero p{max-width:760px;color:#a8bec3;font-size:19px;line-height:1.6}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{display:inline-block;background:#4ed7df;color:#071014;padding:12px 16px;border-radius:8px;text-decoration:none;font-weight:800}.btn.ghost{background:transparent;color:#dcebed;border:1px solid #35515a}.metrics{display:grid;grid-template-columns:repeat(4,1fr);max-width:1100px;margin:auto;border:1px solid #1b3840}.metrics div{padding:20px;background:#0a171c;border-right:1px solid #1b3840}.metrics strong,.metrics i{display:block}.metrics i{font-style:normal;color:#7f9ba1;font-size:12px;margin-top:5px}section{padding:85px 7vw}h2{font-size:clamp(34px,4vw,52px);letter-spacing:-.04em;margin:8px 0 25px}.intro{max-width:950px}.intro p{font-size:19px;line-height:1.7;color:#53676d}.head{display:flex;justify-content:space-between;align-items:end;gap:20px}.head button{border:1px solid #cbd7d8;background:white;padding:8px 12px;border-radius:999px}.head button.active{background:#10242a;color:white}.head h2{margin-bottom:0}#cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:35px}.card{background:white;border:1px solid #dce5e5;border-radius:14px;padding:22px;min-height:315px;display:flex;flex-direction:column}.status{font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.status.reproduced{color:#218a57}.status.observed{color:#8b691d}.status.ongoing{color:#a35454}.card h3{font-size:24px;margin:15px 0 5px}.meta{font-size:12px;color:#77898d}.card p{color:#586b70;line-height:1.55}.tags{display:flex;gap:5px;flex-wrap:wrap}.tag{background:#edf3f3;padding:5px 7px;border-radius:5px;font-size:10px;color:#607479}.card button{margin-top:auto;border:0;background:none;text-align:left;color:#157983;font-weight:800;padding:20px 0 0;cursor:pointer}.dark{background:#071014;color:#edf7f8}.steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #203940}.steps article{padding:26px;min-height:190px;border:1px solid #203940}.steps b{color:#4ed7df}.steps p{color:#8ea6ab;line-height:1.5}.sys{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.sys div{background:white;border:1px solid #dbe4e4;border-radius:10px;padding:20px}.sys em,.sys strong{display:block}.sys em{font-style:normal;color:#71868b;font-size:11px;text-transform:uppercase}.sys strong{margin-top:12px;font-size:19px}footer{background:#050b0e;color:#9fb5ba;padding:45px 7vw;display:flex;justify-content:space-between;gap:30px}#modal{position:fixed;inset:0;background:#061015df;display:none;align-items:center;justify-content:center;padding:20px;z-index:20}#modal.open{display:flex}.box{background:white;width:min(760px,100%);max-height:88vh;overflow:auto;border-radius:15px;padding:30px;position:relative}.box>#x{position:absolute;right:15px;top:10px;border:0;background:none;font-size:30px}.links{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.links a{background:#0f7d86;color:white;text-decoration:none;padding:9px 12px;border-radius:7px}.placeholder{color:#87979a;font-style:italic}

/* LIVE */
.live-body{background:#061014;color:#dcebed}.live-header{padding:0 5vw;background:#061014}.live-main{min-height:100vh}.live-title{padding:60px 5vw 32px;display:flex;justify-content:space-between;align-items:end;gap:30px}.live-title h1{font-size:clamp(40px,6vw,74px);line-height:1;letter-spacing:-.05em;margin:10px 0}.live-title p{color:#91a9ae;max-width:720px}.conn{border:1px solid #344c53;border-radius:999px;padding:10px 15px;font-weight:850;font-size:12px;letter-spacing:.08em;display:flex;align-items:center;gap:8px}.conn span{width:8px;height:8px;border-radius:50%;background:#db6666}.conn.online{border-color:#27694d;color:#86e1af}.conn.online span{background:#65d797;box-shadow:0 0 14px #65d797}.live-grid{padding:0 5vw 70px;display:grid;grid-template-columns:1fr 1.6fr;gap:14px}.panel{background:#0b191e;border:1px solid #19333b;border-radius:12px;padding:18px;min-width:0}.panel-head{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.09em;color:#7d979d;margin-bottom:14px}.telemetry-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.telemetry-grid div,.mini-grid div{background:#0e2228;border:1px solid #17343b;padding:13px;border-radius:8px}.telemetry-grid small,.mini-grid small,.note small{display:block;color:#6e8a91;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.telemetry-grid strong,.mini-grid strong{display:block;margin-top:6px;font-size:15px}.note{margin-top:10px;background:#0e2228;border:1px solid #17343b;padding:13px;border-radius:8px}.note p{margin:7px 0 0;color:#b7cacc;line-height:1.5}.chart-panel{grid-column:2}.waterfall-panel{grid-column:1 / span 2}.protocol-panel{grid-column:1 / span 2}.protocol-panel p{color:#a6bcc0}.mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.panel canvas{display:block;width:100%;height:auto;background:#071217;border-radius:6px;border:1px solid #132d34}.axis-label{text-align:center;color:#617c83;font-size:10px;margin-top:8px}.offline-explainer{background:#f4f7f6;color:#132126}.offline-explainer p{color:#5c7075;max-width:760px;line-height:1.7}

@media(max-width:900px){#cards,.steps,.sys,.metrics{grid-template-columns:1fr 1fr}.live-grid{grid-template-columns:1fr}.chart-panel,.waterfall-panel,.protocol-panel{grid-column:1}.mini-grid{grid-template-columns:1fr 1fr}.navlinks a:not(.live-nav){display:none}}
@media(max-width:560px){#cards,.steps,.sys,.metrics,.telemetry-grid,.mini-grid{grid-template-columns:1fr}.head,.live-title{align-items:start;flex-direction:column}section{padding:60px 5vw}header{padding-left:5vw;padding-right:5vw}footer{flex-direction:column}.brand span{display:none}}
.project-strip{padding:0 7vw 55px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d7e1df}.project-stat{background:#eef3f2;padding:26px}.project-stat strong{display:block;font-size:36px;letter-spacing:-.04em}.project-stat span{font-size:12px;color:#6c8085;text-transform:uppercase;letter-spacing:.08em}
.card{padding:0;overflow:hidden}.card-content{padding:21px;display:flex;flex-direction:column;flex:1}.thumb{height:175px;background:#071217;border-bottom:1px solid #dce5e5;overflow:hidden}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.category{font-size:10px;color:#7a8e93;text-transform:uppercase;letter-spacing:.11em;margin-top:7px}.wide{width:min(980px,100%)}.detail-summary{color:#52686d;font-size:17px;line-height:1.65}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.detail-grid>div{background:#eef3f2;border:1px solid #dce6e5;padding:14px;border-radius:8px}.detail-grid small{display:block;color:#77898e;text-transform:uppercase;letter-spacing:.08em;font-size:10px;margin-bottom:6px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.gallery a{display:block;background:#071217;border-radius:9px;overflow:hidden}.gallery img{display:block;width:100%;height:260px;object-fit:contain}.archive-policy{background:#e9efee}.policy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.policy-grid>div{background:white;border:1px solid #d7e2e1;border-radius:10px;padding:22px}.policy-grid p{color:#5b6f74;line-height:1.55}
.sys p{color:#64787d;font-size:13px;line-height:1.45;margin-bottom:0}
@media(max-width:850px){.project-strip,.policy-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr}}
@media(max-width:560px){.project-strip,.policy-grid,.detail-grid{grid-template-columns:1fr}.thumb{height:200px}}
.gallery a span{display:block;padding:9px 10px;color:#b7cbd0;font-size:11px;background:#0b191e}
.video-list{display:grid;gap:8px;margin:14px 0 22px}
.video-list a{display:block;padding:12px 14px;border:1px solid #d7e2e1;border-radius:8px;text-decoration:none;color:#147985;background:#f5f8f7;font-weight:700}

/* =========================================================
   ARAS SCIENCE FIGURES — responsive image fix
   Removes oversized empty image area without cropping data.
   ========================================================= */

.product-card:has(img),
.product:has(img),
.science-product:has(img) {
    height: auto !important;
    min-height: 0 !important;
}

.product-card img,
.product img,
.science-product img,
.detail-panel img,
.modal img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* Mobile scientific figures */
@media (max-width: 700px) {
    .product-card,
    .product,
    .science-product {
        height: auto !important;
        min-height: 0 !important;
    }

    .product-card img,
    .product img,
    .science-product img,
    .detail-panel img,
    .modal img {
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        object-fit: contain !important;
    }
}


/* FINAL SCIENCE GALLERY FIX */
.gallery a{
    height:auto !important;
    min-height:0 !important;
}

.gallery img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    background:transparent !important;
}

@media(max-width:850px){
    .gallery{
        grid-template-columns:1fr !important;
    }

    .gallery img{
        width:100% !important;
        height:auto !important;
        max-height:none !important;
    }
}

/* ARAS SONIFICATIONS SECTION */
.sonification-section{padding:72px 7vw 80px;background:#071217;color:#eef7f5;border-top:1px solid #173038}
.sonification-wrap{max-width:1180px;margin:0 auto}
.sonification-kicker{font-size:11px;letter-spacing:.16em;color:#72c9d0;font-weight:800;margin-bottom:10px}
.sonification-section h2{margin:0;font-size:clamp(34px,5vw,64px);letter-spacing:-.04em}
.sonification-intro{margin:12px 0 30px;color:#a9bec2;max-width:760px;font-size:17px;line-height:1.55}
.sonification-card{background:#0b191e;border:1px solid #17353d;border-radius:16px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.sonification-video{background:#000;width:100%}
.sonification-video video{display:block;width:100%;height:auto;max-height:none;background:#000}
.sonification-copy{padding:28px}
.sonification-copy h3{margin:0 0 8px;font-size:28px;letter-spacing:-.025em}
.sonification-meta{color:#7fc4cb;font-size:13px;margin:0 0 20px}
.sonification-copy>p{color:#c2d2d5;line-height:1.7;max-width:900px}
.sonification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0}
.sonification-grid>div{border:1px solid #1c3b43;background:#0e2026;border-radius:10px;padding:15px}
.sonification-grid small{display:block;color:#7f9ba1;text-transform:uppercase;letter-spacing:.08em;font-size:10px;margin-bottom:6px}
.sonification-grid strong{display:block;color:#f0f7f6;font-size:16px;margin-bottom:4px}
.sonification-grid span{color:#9fb5b9;font-size:13px}
.sonification-note{padding:16px 18px;background:#10272d;border-left:3px solid #4fb9c3;color:#b9cdd0;line-height:1.6;border-radius:7px}
.sonification-tr{margin-top:16px;color:#abc0c4}
.sonification-tr summary{cursor:pointer;color:#78c7cf;font-weight:700}
.sonification-tr p{line-height:1.65}
@media(max-width:760px){
  .sonification-section{padding:54px 5vw 62px}
  .sonification-copy{padding:20px}
  .sonification-grid{grid-template-columns:1fr}
  .sonification-copy h3{font-size:23px}
}


/* ARAS SONIFICATION TOP CTA */
.sonification-nav-link{
  color:#0d7883 !important;
  font-weight:800 !important;
  letter-spacing:.08em;
}
.sonification-top-cta{
  margin:18px 7vw 26px;
  padding:22px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  background:linear-gradient(135deg,#071217,#0d252c);
  color:#eef8f7;
  border:1px solid #1d424b;
  border-radius:14px;
  box-shadow:0 16px 42px rgba(4,20,25,.14);
}
.sonification-top-cta span{
  display:block;
  color:#68c7cf;
  font-size:10px;
  letter-spacing:.16em;
  font-weight:800;
  margin-bottom:7px;
}
.sonification-top-cta strong{
  display:block;
  font-size:clamp(23px,3vw,36px);
  letter-spacing:-.035em;
}
.sonification-top-cta p{
  margin:7px 0 0;
  color:#abc1c5;
  line-height:1.5;
}
.sonification-top-cta a{
  flex:0 0 auto;
  text-decoration:none;
  background:#e9f6f5;
  color:#0a525b;
  font-weight:900;
  font-size:12px;
  letter-spacing:.08em;
  padding:14px 17px;
  border-radius:9px;
}
.sonification-top-cta a:hover{
  background:white;
}
@media(max-width:700px){
  .sonification-top-cta{
    margin:14px 5vw 22px;
    padding:19px;
    align-items:flex-start;
    flex-direction:column;
  }
  .sonification-top-cta a{
    width:100%;
    box-sizing:border-box;
    text-align:center;
  }
}
/* ARAS CURRENT OBSERVATION LIVE */
.current-live{margin:18px 7vw 32px;padding:24px;background:#f7faf9;border:1px solid #d4e2df;border-radius:14px}
.current-live-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.current-live-kicker{display:block;font-size:10px;letter-spacing:.15em;color:#71898e;font-weight:800;margin-bottom:6px}
.current-live h2{margin:0;font-size:clamp(24px,3vw,38px);letter-spacing:-.035em}
.live-state{padding:7px 10px;border-radius:999px;background:#dce6e4;color:#52696d;font-size:10px;font-weight:900;letter-spacing:.09em}
.live-state.recording{background:#ffd9d6;color:#9d2921}
.current-live-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:20px}
.current-live-grid>div{background:white;border:1px solid #dce6e5;border-radius:8px;padding:13px}
.current-live-grid small{display:block;color:#788b90;text-transform:uppercase;letter-spacing:.07em;font-size:9px;margin-bottom:5px}
.current-live-grid strong{font-size:13px;line-height:1.45}
.current-live-note{margin:12px 0 0;color:#718388;font-size:11px}
@media(max-width:900px){.current-live-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.current-live{margin:14px 5vw 24px}.current-live-grid{grid-template-columns:1fr}.current-live-head{flex-direction:column}}

/* ARAS GALLERY INTRINSIC-ASPECT HOTFIX
   Scientific plots keep their real aspect ratio on desktop/mobile.
   Removes fixed-height black/empty area without cropping measured data. */
.gallery,
.gallery a {
    height: auto !important;
    min-height: 0 !important;
}
.gallery a {
    display: block !important;
    overflow: hidden !important;
}
.gallery img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center !important;
}
.gallery a span {
    position: static !important;
    display: block !important;
}
@media (max-width: 700px) {
    .gallery,
    .gallery a,
    .gallery img {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }
}
/* ARAS STATE OBSERVATION */
.aras-state-observation{margin:22px auto 34px;max-width:1180px;padding:24px;border:1px solid #24434a;border-radius:16px;background:#0b1c21;color:#d9e7ea}
.aso-head{display:flex;justify-content:space-between;gap:15px;color:#8aa7ae;letter-spacing:.12em;font-weight:800;font-size:12px}
.aso-head #asoState{color:#e6bd63}
.aras-state-observation h2{font-size:clamp(26px,4vw,44px);margin:16px 0 20px}
.aso-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.aso-grid>div{border:1px solid #214149;border-radius:10px;padding:15px;background:#0e252b}
.aso-grid small,.aso-media small{display:block;color:#7e9aa1;font-size:10px;letter-spacing:.10em;margin-bottom:7px}
.aso-grid strong{font-size:15px;line-height:1.45}
.aso-media{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.aso-media-card{border:1px solid #214149;border-radius:10px;overflow:hidden;background:#08171b;padding:10px}
.aso-media-card img{display:block;width:100%;height:auto;border-radius:6px}
@media(max-width:760px){.aras-state-observation{margin:14px 14px 28px}.aso-grid,.aso-media{grid-template-columns:1fr}}

/* ARAS THUMBNAIL BLACK-BLOCK FIX */
#cards .card .thumb{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    background:#ffffff !important;
    overflow:hidden !important;
}
#cards .card .thumb img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center !important;
    background:#ffffff !important;
}
@media(max-width:560px){
    #cards .card .thumb{
        height:auto !important;
        min-height:0 !important;
    }
    #cards .card .thumb img{
        height:auto !important;
        max-height:none !important;
        object-fit:contain !important;
    }
}

