/* SolutionSky Technology Lab — v1.2 */
.lab-page{background:#04111b;color:var(--text)}
.lab-page main{overflow:hidden}

/* HERO — keep the moving warp field, remove the oversized moon */
.lab-hero{min-height:560px;height:min(70svh,680px);padding:0;position:relative;isolation:isolate;display:flex;align-items:center;background:linear-gradient(180deg,#030b12 0%,#051521 72%,#061824 100%)}
#warpCanvas{position:absolute;inset:0;width:100%;height:100%;z-index:-4;opacity:.96}
.lab-hero::before{content:"";position:absolute;inset:0;z-index:-3;background:radial-gradient(circle at 76% 44%,rgba(99,214,255,.11),transparent 24%),radial-gradient(circle at 58% 42%,rgba(59,135,170,.05),transparent 35%),linear-gradient(90deg,rgba(2,10,16,.94) 0%,rgba(2,10,16,.72) 45%,rgba(2,10,16,.26) 78%,rgba(2,10,16,.10) 100%)}
.lab-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:150px;z-index:-1;background:linear-gradient(180deg,transparent,#061824)}
.lab-hero-inner{position:relative;z-index:2;width:100%;padding-top:72px;display:block}
.lab-copy{max-width:850px;padding:70px 0 60px}
.lab-copy h1{max-width:840px;font-size:clamp(3.7rem,7vw,7rem);line-height:.88;margin:18px 0 25px;letter-spacing:-.074em}
.lab-copy h1 em{font-style:normal;color:var(--accent);text-shadow:0 0 34px rgba(99,214,255,.18)}
.lab-copy .lead{max-width:730px;font-size:clamp(1rem,1.42vw,1.18rem)}
.lab-capabilities{margin-top:28px;display:flex;gap:8px;flex-wrap:wrap}
.lab-capabilities span{font:700 .69rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:#a6cad9;border:1px solid rgba(99,214,255,.18);background:rgba(4,21,33,.52);padding:8px 10px;border-radius:999px;backdrop-filter:blur(8px)}

/* PROJECTS */
.lab-projects{padding-top:72px;position:relative}
.lab-projects::before{content:"";position:absolute;inset:0 0 auto;height:420px;pointer-events:none;background:radial-gradient(circle at 50% 0,rgba(99,214,255,.045),transparent 55%)}
.lab-intro{display:flex;justify-content:space-between;gap:36px;align-items:end;margin-bottom:30px}
.lab-intro h2{font-size:clamp(2.45rem,4.6vw,4.7rem);line-height:.93;letter-spacing:-.062em;margin:10px 0 0}
.lab-intro p{color:var(--muted);max-width:560px;line-height:1.75;margin:0}

.lab-card{--tone:99,214,255;position:relative;border:1px solid rgba(var(--tone),.24);border-radius:24px;overflow:hidden;background:linear-gradient(145deg,rgba(10,30,44,.96),rgba(5,17,27,.96));box-shadow:0 18px 55px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.025);transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.lab-card::before{content:"";position:absolute;z-index:4;left:-1px;top:-1px;width:90px;height:2px;background:linear-gradient(90deg,rgba(var(--tone),.95),rgba(var(--tone),0));pointer-events:none}
.lab-card::after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.035),transparent 28%)}
.lab-card:hover{transform:translateY(-4px);border-color:rgba(var(--tone),.48);box-shadow:0 28px 75px rgba(0,0,0,.29),0 0 42px rgba(var(--tone),.055)}

/* Two lead demos — cinematic but readable */
.featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.feature-card{min-height:430px;display:flex;align-items:flex-end}
.feature-card.regolith{--tone:99,214,255}
.feature-card.ironhold{--tone:255,190,92}
.feature-card .card-media{position:absolute;inset:0;z-index:0}
.feature-card .card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.feature-card.regolith .card-media img{object-position:58% center}
.feature-card.ironhold .card-media img{object-position:58% center}
.feature-card:hover .card-media img{transform:scale(1.018)}
.feature-card .card-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,13,21,.97) 0%,rgba(3,13,21,.91) 28%,rgba(3,13,21,.66) 48%,rgba(3,13,21,.18) 76%,rgba(3,13,21,.06) 100%),linear-gradient(0deg,rgba(3,13,21,.74),transparent 52%)}
.feature-card.ironhold .card-media::after{background:linear-gradient(90deg,rgba(9,12,14,.97) 0%,rgba(9,12,14,.90) 28%,rgba(9,12,14,.63) 48%,rgba(9,12,14,.15) 78%,rgba(9,12,14,.05) 100%),linear-gradient(0deg,rgba(8,11,13,.72),transparent 54%)}
.card-content{position:relative;z-index:3;padding:28px 30px 30px;max-width:61%}
.card-kicker{font:800 .70rem ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.19em;color:rgb(var(--tone));margin-bottom:10px}
.feature-card h3{font-size:clamp(2.35rem,3.25vw,3.7rem);line-height:.92;letter-spacing:-.047em;margin:0 0 8px;text-transform:uppercase}
.feature-card.ironhold h3{font-size:clamp(2.25rem,3vw,3.45rem)}
.feature-card .subtitle{margin:0 0 14px;color:#d2e0e6;font-size:.86rem;letter-spacing:.11em;text-transform:none}
.card-copy{color:#b4c8d2;line-height:1.62;font-size:.89rem;margin-bottom:15px;max-width:43ch}
.tech-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.tech-tags span{font:700 .60rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.075em;text-transform:uppercase;border:1px solid rgba(var(--tone),.22);background:rgba(4,18,28,.64);padding:6px 7px;border-radius:6px;color:#d2e4eb}
.lab-action{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(var(--tone),.56);border-radius:8px;padding:10px 14px;color:#d9f5ff;background:rgba(var(--tone),.10);font-weight:800;font-size:.80rem;transition:.2s ease}
.lab-action:hover{background:rgba(var(--tone),.18);box-shadow:0 0 26px rgba(var(--tone),.10)}
.lab-action.warm{border-color:rgba(255,211,107,.50);color:#ffe8a6;background:rgba(193,125,23,.13)}
.lab-action.disabled{border-color:rgba(255,255,255,.12);color:#859aa5;background:rgba(255,255,255,.045);cursor:default;pointer-events:none}
.card-note{font-size:.62rem;color:#718c99;margin-top:10px;line-height:1.42}

/* Three compact products — image and content live together, like the approved mockup */
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
.product-card{min-height:242px;display:grid;grid-template-columns:41% 59%;align-items:stretch}
.lingual-card{--tone:101,227,161}
.mutopia-card{--tone:255,195,82}
.buddy-card{--tone:112,138,255}
.product-visual{position:relative;overflow:hidden;background:linear-gradient(145deg,#0a2130,#06131d);border-right:1px solid rgba(255,255,255,.065);min-width:0}
.product-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 62%,rgba(3,14,22,.22)),linear-gradient(0deg,rgba(3,14,22,.18),transparent 45%);pointer-events:none}
.product-visual img{width:100%;height:100%;display:block;object-fit:cover}
.product-visual.lingual img{object-position:center 54%;transform:scale(1.02)}
.product-visual.logo{display:grid;place-items:center;background:radial-gradient(circle at 52% 44%,rgba(var(--tone),.13),transparent 48%),linear-gradient(145deg,#091b28,#050f17)}
.product-visual.logo img{object-fit:contain;width:74%;height:74%;padding:0;filter:drop-shadow(0 14px 28px rgba(0,0,0,.28))}
.buddy-card .product-visual.logo img{width:66%;height:66%;border-radius:20%;box-shadow:0 16px 36px rgba(19,77,145,.18)}
.product-body{padding:20px 18px 18px;display:flex;flex-direction:column;min-width:0}
.product-body .card-kicker{font-size:.61rem;margin-bottom:7px;letter-spacing:.15em}
.product-body h3{font-size:1.48rem;letter-spacing:-.035em;margin:0 0 7px;line-height:1.05}
.product-body p{color:#9fb8c5;line-height:1.52;font-size:.80rem;margin:0 0 11px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.product-body .tech-tags{margin:0 0 12px;gap:5px}
.product-body .tech-tags span{font-size:.52rem;padding:5px 6px}
.product-body .lab-action{width:max-content;margin-top:auto;font-size:.72rem;padding:9px 11px}

.lab-footer-note{font-size:.72rem;color:#688492;line-height:1.6;margin-top:18px}
.lab-philosophy{padding-top:82px;padding-bottom:110px}
.philosophy-box{border:1px solid rgba(130,211,244,.16);border-radius:28px;padding:32px;background:linear-gradient(145deg,rgba(99,214,255,.05),rgba(255,255,255,.012));display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;align-items:center}
.philosophy-box h2{font-size:clamp(2rem,4vw,4.1rem);line-height:.94;letter-spacing:-.055em;margin:8px 0 0}
.philosophy-box p{color:var(--muted);line-height:1.8;margin:0}
.lab-page .foot{padding-top:0}

.demo-placeholder{min-height:100vh;padding:120px 0 80px;display:grid;align-items:center}
.demo-placeholder .placeholder-box{max-width:800px;margin:0 auto;border:1px solid var(--line);border-radius:30px;padding:40px;background:linear-gradient(145deg,rgba(99,214,255,.06),rgba(255,255,255,.015));text-align:center}
.demo-placeholder h1{max-width:none;margin:15px auto 20px;font-size:clamp(3rem,8vw,6.5rem)}
.demo-placeholder p{color:var(--muted);max-width:650px;margin:0 auto 24px;line-height:1.8}

@media(max-width:1050px){
  .featured-grid{grid-template-columns:1fr}
  .feature-card{min-height:420px}
  .card-content{max-width:58%}
  .product-grid{grid-template-columns:1fr 1fr}
  .product-card:last-child{grid-column:1/-1}
  .product-card:last-child .product-visual{max-width:300px}
  .lab-intro{display:block}.lab-intro p{margin-top:18px}
  .philosophy-box{grid-template-columns:1fr}
}
@media(max-width:760px){
  .lab-hero{min-height:600px;height:auto}
  .lab-hero-inner{padding-top:64px}
  .lab-copy{padding:92px 0 72px}
  .lab-copy h1{font-size:clamp(3.15rem,15vw,5.3rem)}
  .lab-projects{padding-top:58px}
  .feature-card{min-height:500px}
  .card-content{max-width:90%;padding:23px}
  .feature-card .card-media::after,.feature-card.ironhold .card-media::after{background:linear-gradient(0deg,rgba(3,13,21,.97) 0%,rgba(3,13,21,.82) 48%,rgba(3,13,21,.18) 100%)}
  .product-grid{grid-template-columns:1fr}
  .product-card,.product-card:last-child{grid-column:auto;min-height:220px;grid-template-columns:38% 62%}
  .product-card:last-child .product-visual{max-width:none}
  .philosophy-box{padding:24px}
  .lab-capabilities span{font-size:.63rem}
}
@media(max-width:520px){
  .product-card{grid-template-columns:1fr;min-height:0}
  .product-visual{height:190px;border-right:0;border-bottom:1px solid rgba(255,255,255,.065)}
  .product-body p{-webkit-line-clamp:unset}
}
@media(prefers-reduced-motion:reduce){.lab-card,.feature-card .card-media img{transition:none!important;animation:none!important}}
