
/* ===== MOBILE (default) ===== */
.deco-coins{display:none}
.brand-selection-page::after{
  content:"";position:fixed;inset:0;z-index:4;pointer-events:none;opacity:.03;
  background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,212,255,.4) 2px,rgba(0,212,255,.4) 3px);
}
.dash-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:10px}
.dash-header .top-center{display:none}
.dash-header .clock-center{display:none}
.dash-header .status-mobile{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px}
.dash-auth-row{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.btn-auth-code{
  padding:7px 14px;border-radius:999px;border:1px solid rgba(212,175,55,.55);
  background:linear-gradient(180deg,rgba(212,175,55,.18),rgba(0,0,0,.35));
  color:var(--accent-glow);font-size:11px;font-weight:700;letter-spacing:.04em;
  cursor:pointer;white-space:nowrap;touch-action:manipulation;
  box-shadow:0 0 14px rgba(212,175,55,.15);
}
.btn-auth-code:hover{border-color:rgba(212,175,55,.85);box-shadow:0 0 18px rgba(212,175,55,.28)}
.auth-code-modal .auth-code-hint{margin-bottom:14px;text-align:center}
.auth-code-input{
  width:100%;padding:12px 14px;margin-bottom:10px;border-radius:8px;
  border:1px solid rgba(0,212,255,.35);background:rgba(0,0,0,.45);color:#fff;
  font-family:JetBrains Mono,monospace;font-size:15px;letter-spacing:.08em;text-align:center;
  text-transform:uppercase;
}
.auth-code-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px rgba(0,212,255,.2)}
.auth-code-msg{font-size:12px;text-align:center;margin-bottom:10px;line-height:1.4}
.auth-code-msg.ok{color:#4ade80}
.auth-code-msg.err{color:#f87171}
.section-title-main{text-align:center;margin:16px 0 12px}
.section-title-main .btn-primary{
  font-size:15px;padding:14px 32px;width:100%;max-width:300px;
  font-family:Orbitron,"Be Vietnam Pro",sans-serif;letter-spacing:.08em;
  box-shadow:0 0 30px rgba(0,212,255,.35),inset 0 1px 0 rgba(255,255,255,.15);
}
.brand-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}
.brand-card,.carousel-item{
  position:relative;overflow:hidden;
  background:linear-gradient(145deg,rgba(2,16,22,.88),rgba(0,0,0,.82));
  border:1px solid rgba(0,212,255,.3);border-radius:16px;
  padding:14px 10px;text-align:center;cursor:pointer;
  backdrop-filter:blur(10px);
  box-shadow:0 4px 24px rgba(0,0,0,.5),inset 0 1px 0 rgba(0,212,255,.08);
  transition:transform .25s cubic-bezier(.34,1.2,.64,1),box-shadow .25s,border-color .25s,opacity .45s;
}
.brand-card::before,.carousel-item::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(135deg,rgba(0,212,255,.06),transparent 55%);
}
.brand-card:hover{transform:translateY(-4px);border-color:rgba(0,212,255,.7);box-shadow:0 8px 32px rgba(0,212,255,.22)}
.carousel-item.active{opacity:1;transform:scale(1);border-color:var(--primary);box-shadow:var(--shadow-hover)}
.brand-premium{border-color:rgba(212,175,55,.6)!important;box-shadow:0 0 24px rgba(212,175,55,.25)!important}
.premium-tag{position:absolute;top:8px;right:8px;z-index:2;font-family:Orbitron,sans-serif;font-size:8px;font-weight:800;padding:3px 7px;border-radius:6px;background:linear-gradient(90deg,var(--accent-glow),var(--primary));color:#021018;letter-spacing:.08em;animation:premiumGlow 2s ease-in-out infinite}
.brand-logo{width:56px;height:56px;margin:0 auto 8px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:11px;color:#fff;border:2px solid rgba(255,255,255,.18);box-shadow:0 4px 12px rgba(0,0,0,.35)}
.brand-logo-wrap{
  position:relative;width:72px;height:72px;margin:0 auto 10px;border-radius:14px;
  background:linear-gradient(145deg,#fff,#f0f0f0);
  border:1px solid rgba(212,175,55,.45);overflow:hidden;
  box-shadow:0 0 12px rgba(0,212,255,.15),inset 0 0 0 1px rgba(255,255,255,.8);
  animation:logoFloat 4s ease-in-out infinite;
  transform:translateZ(0);
}
.brand-logo-img{
  position:relative;z-index:2;width:100%;height:100%;object-fit:contain;padding:4px;
  image-rendering:-webkit-optimize-contrast;image-rendering:high-quality;
  transform:translateZ(0);
  filter:contrast(1.12) saturate(1.15);
  transition:transform .35s cubic-bezier(.34,1.2,.64,1),filter .35s;
}
.brand-card:hover .brand-logo-img,.carousel-item.active .brand-logo-img{
  transform:translateZ(0) scale(1.04);
  filter:contrast(1.18) saturate(1.2);
}
.logo-ring{
  position:absolute;inset:-2px;border-radius:16px;z-index:0;pointer-events:none;
  border:2px solid transparent;
  background:linear-gradient(135deg,rgba(0,212,255,.55),rgba(212,175,55,.45),rgba(0,212,255,.55)) border-box;
  -webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);
  mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  animation:logoRingSpin 6s linear infinite;opacity:.75;
}
.logo-scan{
  position:absolute;left:0;right:0;height:2px;z-index:3;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(0,212,255,.9),rgba(255,255,255,.95),rgba(0,212,255,.9),transparent);
  box-shadow:0 0 8px rgba(0,212,255,.7);
  animation:logoScan 2.8s ease-in-out infinite;
}
.logo-shimmer{
  position:absolute;inset:0;z-index:4;pointer-events:none;
  background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);
  transform:translateX(-120%);
  animation:logoShimmer 3.5s ease-in-out infinite;
}
.brand-premium .brand-logo-wrap{
  border-color:rgba(212,175,55,.6);
  box-shadow:0 0 24px rgba(212,175,55,.35),inset 0 0 16px rgba(255,255,255,.4);
}
.brand-premium .logo-ring{animation-duration:4s;opacity:1}
.brand-premium .logo-scan{background:linear-gradient(90deg,transparent,var(--accent-glow),rgba(0,212,255,.9),var(--accent-glow),transparent)}
@keyframes logoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes logoScan{0%{top:-4%;opacity:0}15%{opacity:1}85%{opacity:1}100%{top:104%;opacity:0}}
@keyframes logoShimmer{0%,100%{transform:translateX(-120%)}45%,55%{transform:translateX(120%)}}
@keyframes logoRingSpin{0%{filter:hue-rotate(0deg)}100%{filter:hue-rotate(360deg)}}
.brand-name{font-size:13px;font-weight:700;margin-bottom:8px;letter-spacing:.04em}
.rate-pill{display:inline-block;padding:5px 16px;border-radius:999px;font-family:"JetBrains Mono",Consolas,monospace;font-size:12px;font-weight:700;transition:background-color .35s,transform .3s,box-shadow .3s}
.rate-high{background:linear-gradient(90deg,#00d4ff,#0088aa);color:#021018;box-shadow:0 0 10px rgba(0,212,255,.4)}
.rate-mid{background:linear-gradient(90deg,var(--accent-glow),#b8860b);color:#1a1000}
.rate-low{background:linear-gradient(90deg,#e67e22,#c0392b);color:#fff}
.rate-premium{background:linear-gradient(90deg,var(--accent-glow),var(--primary));color:#021018;box-shadow:0 0 16px rgba(212,175,55,.5);animation:premiumGlow 2.5s ease-in-out infinite}
.rate-flash{animation:rateFlash .45s ease}
@keyframes rateFlash{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
@keyframes premiumGlow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.15)}}
.carousel-section{margin-top:18px}
.carousel-stage{display:block}
.carousel-viewport{overflow:hidden;padding:24px 0;position:relative}
.carousel-viewport::before,.carousel-viewport::after{content:"";position:absolute;top:0;bottom:0;width:18%;z-index:2;pointer-events:none}
.carousel-viewport::before{left:0;background:linear-gradient(90deg,rgba(2,12,16,.9),transparent)}
.carousel-viewport::after{right:0;background:linear-gradient(-90deg,rgba(2,12,16,.9),transparent)}
.carousel-track{display:flex;align-items:center;gap:14px;transition:transform .55s cubic-bezier(.34,1.25,.64,1);will-change:transform}
.carousel-item{flex:0 0 44%;opacity:.38;transform:scale(.82)}
.carousel-nav{display:flex;justify-content:center;gap:14px;margin-top:14px}
.carousel-nav .btn-back,.carousel-nav .btn-primary{min-width:112px;padding:10px 20px;font-family:Orbitron,"Be Vietnam Pro",sans-serif;font-size:12px;font-weight:800;letter-spacing:.06em;transition:transform .22s cubic-bezier(.34,1.2,.64,1),box-shadow .22s,filter .22s}
.carousel-nav .btn-back{background:rgba(2,16,22,.6);border:1px solid rgba(0,212,255,.35);color:var(--text);border-radius:999px;backdrop-filter:blur(6px)}
.carousel-nav .btn-back:hover{transform:translateX(-3px);box-shadow:0 0 16px rgba(0,212,255,.2)}
.carousel-nav .btn-primary:hover{transform:translateX(3px);filter:brightness(1.08)}
.type-modal-box{margin-top:20px;padding:22px 18px 26px;background:rgba(2,12,8,.85);border:1px solid rgba(0,212,255,.4);border-radius:18px;backdrop-filter:blur(10px);box-shadow:0 0 40px rgba(0,212,255,.12)}
.type-grid{
  display:flex;flex-direction:column;gap:12px;margin-top:4px;width:100%;
}
.type-card{
  display:flex;align-items:center;gap:14px;width:100%;
  background:linear-gradient(90deg,#40e8ff 0%,#00b8d9 45%,var(--primary-dark) 100%);
  border:none;border-radius:14px;padding:14px 16px;cursor:pointer;
  box-shadow:var(--shadow-hover);transition:transform .2s,filter .2s,box-shadow .2s;
  text-align:left;min-width:0;
  font-family:"Be Vietnam Pro",system-ui,sans-serif;
}
.type-card:hover{transform:translateX(4px);filter:brightness(1.06)}
.type-card:active{transform:scale(.98)}
.type-card-baccarat{
  background:linear-gradient(90deg,#40e8ff 0%,#0099bb 50%,#006688 100%)!important;
}
.type-card-icon{
  flex-shrink:0;width:48px;height:48px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  font-size:26px;background:rgba(255,255,255,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25);
}
.type-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.type-card-label{
  display:block;
  font-family:"Be Vietnam Pro",system-ui,sans-serif;
  font-size:17px;font-weight:800;
  color:#021018;letter-spacing:.14em;line-height:1.15;
  text-transform:uppercase;
  text-shadow:0 1px 0 rgba(255,255,255,.35);
}
.type-card-desc{
  display:block;
  font-family:"Be Vietnam Pro",system-ui,sans-serif;
  font-size:12px;font-weight:600;
  color:rgba(2,20,28,.78);letter-spacing:.03em;line-height:1.35;
}
.type-card-arrow{
  flex-shrink:0;font-size:22px;font-weight:700;color:rgba(2,16,24,.45);
  line-height:1;transition:transform .2s,color .2s;
  font-family:"Be Vietnam Pro",system-ui,sans-serif;
}
.type-card:hover .type-card-arrow{transform:translateX(3px);color:rgba(2,16,24,.7)}

/* ===== DESKTOP ===== */
@media (min-width:1024px){
  .brand-selection-page .page-wrap{max-width:1180px;padding:18px 36px 90px;margin:0 auto}
  .deco-coins{
    display:block;position:fixed;inset:0;z-index:3;pointer-events:none;
    background:
      radial-gradient(circle at 72% 18%,rgba(0,212,255,.1) 0,transparent 12%),
      radial-gradient(circle at 8% 20%,rgba(212,175,55,.08) 0,transparent 8%),
      radial-gradient(circle at 92% 30%,rgba(0,212,255,.06) 0,transparent 7%),
      radial-gradient(circle at 15% 80%,rgba(212,175,55,.06) 0,transparent 6%);
  }
  .dash-header{
    display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:16px;margin-bottom:8px;
  }
  .dash-header .top-left{align-self:start}
  .dash-header .top-center{
    display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;
  }
  .dash-header .top-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
  .dash-auth-row{flex-direction:row;align-items:center;gap:8px}
  .btn-auth-code{font-size:12px;padding:8px 16px}
  .dash-header .clock-mobile{display:none!important}
  .dash-header .clock-center{display:block;text-align:center}
  .dash-header .user-greet{font-size:15px}
  .section-title-main{margin:28px 0 10px}
  .section-title-main .btn-primary{
    max-width:420px;font-size:17px;padding:16px 48px;
    box-shadow:0 0 40px rgba(0,212,255,.4),0 8px 24px rgba(0,0,0,.35);
  }
  .brand-grid{display:none}
  .carousel-section{margin-top:8px}
  .carousel-stage{
    display:grid;grid-template-columns:minmax(120px,150px) 1fr minmax(120px,150px);
    grid-template-rows:auto;align-items:center;gap:12px 20px;
  }
  .carousel-viewport{grid-column:2;padding:36px 0}
  .carousel-viewport::before,.carousel-viewport::after{width:10%;opacity:.6}
  .carousel-nav{display:contents;margin:0}
  #carousel-prev{
    grid-column:1;grid-row:1;justify-self:end;
    min-width:130px;padding:14px 22px;font-size:13px;
    background:linear-gradient(180deg,#40e8ff,var(--primary-dark));color:#021018;border:none;
    border-radius:999px;box-shadow:0 8px 28px rgba(0,212,255,.35);cursor:pointer;
  }
  #carousel-next{
    grid-column:3;grid-row:1;justify-self:start;
    min-width:130px;padding:14px 22px;font-size:13px;
    background:linear-gradient(180deg,#40e8ff,var(--primary-dark));color:#021018;border:none;
    border-radius:999px;box-shadow:0 8px 28px rgba(0,212,255,.35);cursor:pointer;
  }
  #carousel-prev:hover,#carousel-next:hover{filter:brightness(1.08);transform:scale(1.03)}
  .carousel-item{
    flex:0 0 128px;opacity:.45;transform:scale(.78);
    background:rgba(255,255,255,.9)!important;color:#111;
    border:2px solid rgba(0,212,255,.25);border-radius:14px;padding:16px 12px 12px;
  }
  .carousel-item::before{background:linear-gradient(135deg,rgba(0,212,255,.05),transparent 60%)}
  .carousel-item .brand-name{color:#222;font-size:12px}
  .carousel-item .brand-logo-wrap{width:88px;height:88px}
  .carousel-item.active .brand-logo-wrap{width:108px;height:108px}
  .carousel-item.active{
    flex:0 0 168px;opacity:1;transform:scale(1.08);
    background:#fff!important;border-color:var(--primary);
    box-shadow:0 0 50px rgba(0,212,255,.4),0 12px 40px rgba(0,0,0,.35);
  }
  .terminal-widget{left:36px;bottom:24px;width:320px}
  .tool-mascot{left:38px;bottom:92px}
}

@media (min-width:1400px){
  .brand-selection-page .page-wrap{max-width:1320px}
  .carousel-item{flex:0 0 140px}
  .carousel-item.active{flex:0 0 180px}
}

/* ===== TECH MODAL (redirect U888) ===== */
.tech-modal-overlay{
  display:none;position:fixed;inset:0;z-index:300;
  background:rgba(0,0,0,.78);backdrop-filter:blur(4px);
  align-items:center;justify-content:center;padding:20px;
}
.tech-modal-overlay.show{display:flex;animation:techFadeIn .35s ease}
.tech-modal{
  position:relative;width:100%;max-width:400px;padding:28px 24px 24px;
  background:linear-gradient(145deg,#0a0a0a,#050505);
  border:1px solid rgba(240,160,32,.45);border-radius:4px;
  box-shadow:0 0 40px rgba(240,160,32,.15),inset 0 0 60px rgba(0,212,255,.03);
  overflow:hidden;animation:techModalIn .45s cubic-bezier(.34,1.2,.64,1);
}
.tech-modal::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;
  background:
    repeating-linear-gradient(45deg,transparent,transparent 18px,rgba(240,160,32,.12) 18px,rgba(240,160,32,.12) 19px),
    repeating-linear-gradient(-45deg,transparent,transparent 24px,rgba(240,160,32,.08) 24px,rgba(240,160,32,.08) 25px);
  animation:techLinesShift 8s linear infinite;
}
.tech-modal-scan{
  position:absolute;left:0;right:0;height:2px;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(0,212,255,.8),transparent);
  animation:techScanDown 3s ease-in-out infinite;
}
.tech-modal-corners span{
  position:absolute;width:18px;height:18px;border:2px solid rgba(0,212,255,.7);
  animation:techCornerPulse 2s ease-in-out infinite;
}
.tech-modal-corners span:nth-child(1){top:8px;left:8px;border-right:none;border-bottom:none}
.tech-modal-corners span:nth-child(2){top:8px;right:8px;border-left:none;border-bottom:none}
.tech-modal-corners span:nth-child(3){bottom:8px;left:8px;border-right:none;border-top:none}
.tech-modal-corners span:nth-child(4){bottom:8px;right:8px;border-left:none;border-top:none}
.tech-modal-close{
  position:absolute;top:10px;right:12px;z-index:3;
  background:none;border:none;color:rgba(255,255,255,.6);font-size:22px;line-height:1;cursor:pointer;
  transition:color .2s,transform .2s;
}
.tech-modal-close:hover{color:#fff;transform:scale(1.1)}
.tech-modal-title{
  position:relative;z-index:2;text-align:center;
  font-family:Orbitron,"Be Vietnam Pro",sans-serif;font-size:20px;font-weight:800;
  color:#fff;letter-spacing:.12em;margin-bottom:18px;
  text-shadow:0 0 20px rgba(255,255,255,.4),0 0 8px rgba(0,212,255,.3);
  animation:techTitleGlow 2.5s ease-in-out infinite;
}
.tech-modal-body{
  position:relative;z-index:2;text-align:center;font-size:14px;line-height:1.65;
  color:rgba(255,255,255,.88);margin-bottom:22px;padding:0 6px;
}
.tech-modal-body strong{color:var(--accent-glow)}
.tech-modal-btn{
  position:relative;z-index:2;display:block;width:100%;max-width:220px;margin:0 auto;
  padding:14px 24px;border:none;border-radius:999px;cursor:pointer;
  font-family:Orbitron,"Be Vietnam Pro",sans-serif;font-size:15px;font-weight:800;
  letter-spacing:.1em;color:#1a1000;
  background:linear-gradient(180deg,#ffb84d,#e68a00);
  box-shadow:0 0 24px rgba(240,160,32,.45),inset 0 1px 0 rgba(255,255,255,.25);
  animation:techBtnPulse 2.2s ease-in-out infinite;
  transition:transform .2s,filter .2s;
}
.tech-modal-btn:hover{transform:scale(1.04);filter:brightness(1.08)}
.tech-modal-btn::after{
  content:"";position:absolute;inset:-2px;border-radius:999px;pointer-events:none;
  border:1px solid rgba(255,200,80,.5);animation:techBtnRing 2.2s ease-in-out infinite;
}

/* ===== TECH BUTTONS ===== */
.tech-btn{position:relative;overflow:hidden;isolation:isolate}
.tech-btn::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.35) 50%,transparent 58%);
  transform:translateX(-120%);animation:techBtnShimmer 3.5s ease-in-out infinite;
}
.tech-btn::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
  animation:techBorderGlow 2.8s ease-in-out infinite;
}
.section-title-main .btn-primary.tech-btn{animation:techBorderGlow 2.8s ease-in-out infinite}

/* ===== SELECT TYPE + LOGO ===== */
.type-modal-box.tech-panel{
  position:relative;overflow:hidden;
  border:1px solid rgba(0,212,255,.35);
  box-shadow:0 0 36px rgba(0,212,255,.1),inset 0 0 40px rgba(0,212,255,.03);
}
.type-modal-box.tech-panel::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent,rgba(0,212,255,.8),transparent);
  animation:techScanH 4s ease-in-out infinite;
}
.type-brand-header{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  margin-bottom:4px;flex-wrap:wrap;
}
.type-brand-header .title-pill{flex:1;min-width:140px;margin:0}
.type-brand-logo-wrap{
  position:relative;width:100px;height:56px;flex-shrink:0;
  background:linear-gradient(145deg,#fff,#f0f0f0);
  border:1px solid rgba(0,212,255,.4);border-radius:12px;
  display:flex;align-items:center;justify-content:center;padding:6px 10px;
  box-shadow:0 0 16px rgba(0,212,255,.2);
  animation:logoFloat 4s ease-in-out infinite;
}
.type-brand-logo-wrap .logo-ring{
  position:absolute;inset:-2px;border-radius:14px;z-index:0;pointer-events:none;
  border:2px solid transparent;
  background:linear-gradient(135deg,rgba(0,212,255,.5),rgba(240,160,32,.4)) border-box;
  -webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);
  mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  animation:logoRingSpin 6s linear infinite;
}
.type-brand-logo{position:relative;z-index:1;max-width:100%;max-height:100%;object-fit:contain}
.type-card.tech-btn{
  position:relative;overflow:hidden;
  border:1px solid rgba(0,212,255,.5)!important;
  animation:techBorderGlow 2.8s ease-in-out infinite;
}
.type-card.tech-btn .type-card-icon,
.type-card.tech-btn .type-card-body,
.type-card.tech-btn .type-card-arrow{position:relative;z-index:1}

@keyframes techFadeIn{from{opacity:0}to{opacity:1}}
@keyframes techModalIn{from{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:none}}
@keyframes techScanDown{0%,100%{top:-4%;opacity:0}20%,80%{opacity:1}100%{top:104%}}
@keyframes techScanH{0%,100%{transform:translateX(-100%)}50%{transform:translateX(100%)}}
@keyframes techLinesShift{0%{transform:translate(0,0)}100%{transform:translate(20px,20px)}}
@keyframes techCornerPulse{0%,100%{opacity:.5}50%{opacity:1;box-shadow:0 0 8px rgba(0,212,255,.4)}}
@keyframes techTitleGlow{0%,100%{text-shadow:0 0 20px rgba(255,255,255,.35),0 0 8px rgba(0,212,255,.25)}50%{text-shadow:0 0 28px rgba(255,255,255,.55),0 0 14px rgba(0,212,255,.45)}}
@keyframes techBtnPulse{0%,100%{box-shadow:0 0 24px rgba(240,160,32,.4)}50%{box-shadow:0 0 36px rgba(240,160,32,.65)}}
@keyframes techBtnRing{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}
@keyframes techBtnShimmer{0%,100%{transform:translateX(-120%)}45%,55%{transform:translateX(120%)}}
@keyframes techBorderGlow{0%,100%{box-shadow:0 0 20px rgba(0,212,255,.25),var(--shadow-hover)}50%{box-shadow:0 0 32px rgba(0,212,255,.45),0 0 12px rgba(240,160,32,.2)}}

@media (min-width:768px){
  .type-brand-logo-wrap{width:120px;height:64px}
  .type-brand-header{justify-content:center}
  .type-brand-header .title-pill{flex:0 1 auto}
  .type-grid{gap:14px;max-width:480px;margin-left:auto;margin-right:auto}
  .type-card{padding:16px 20px;gap:16px}
  .type-card-icon{width:52px;height:52px;font-size:28px}
  .type-card-label{font-size:18px;letter-spacing:.16em}
  .type-card-desc{font-size:13px}
}

