/* =========================================================
   TECH CONNECT — DEVICES V2
   Samsung-inspired discovery + comparison
========================================================= */
.tc-devices-v2{
  --dv-red:#f21820;
  --dv-red-dark:#d3131a;
  --dv-black:#080808;
  --dv-ink:#141414;
  --dv-muted:#6d7177;
  --dv-soft:#f5f5f7;
  --dv-line:#e5e5e7;
  background:#fff;
  color:var(--dv-ink);
  font-family:Arial,Helvetica,sans-serif;
}
.tc-devices-v2 *{box-sizing:border-box}
.tc-devices-v2 img{display:block;max-width:100%}
.tc-dev-shell{width:min(1240px,calc(100% - 48px));margin:0 auto}
.tc-dev-kicker{font-size:13px;font-weight:700;letter-spacing:.08em;color:#777c82}
.tc-dev-kicker--light{color:rgba(255,255,255,.65)}
.tc-dev-btn{display:inline-flex;min-height:49px;align-items:center;justify-content:center;padding:0 22px;border-radius:999px;text-decoration:none;font-size:15px;font-weight:700}
.tc-dev-btn--light{background:#fff;color:#111}
.tc-dev-btn--outline-light{color:#fff;border:1px solid rgba(255,255,255,.38)}

/* HERO */
.tc-devices-v2__hero{
  overflow:hidden;
  background:
    radial-gradient(circle at 79% 48%,rgba(242,24,32,.11),transparent 24%),
    linear-gradient(125deg,#fff 0%,#fff 57%,#f3f3f4 100%);
}
.tc-devices-v2__hero-grid{
  min-height:610px;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(500px,1.08fr);
  align-items:center;
  gap:72px;
}
.tc-devices-v2__hero-copy{
  position:relative;
  z-index:5;
}
.tc-devices-v2__hero h1{
  max-width:820px;
  margin:14px 0 22px;
  font-size:clamp(62px,7vw,104px);
  line-height:.91;
  letter-spacing:-.067em;
}
.tc-devices-v2__hero p{
  max-width:650px;
  margin:0;
  color:var(--dv-muted);
  font-size:18px;
  line-height:1.65;
}
.tc-devices-v2__hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:11px;
  margin-top:30px;
}
.tc-devices-v2__hero-btn{
  display:inline-flex;
  min-height:49px;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  border-radius:999px;
  text-decoration:none;
  font-size:15px;
  font-weight:700;
  transition:.24s ease;
}
.tc-devices-v2__hero-btn:hover{
  transform:translateY(-2px);
}
.tc-devices-v2__hero-btn--red{
  background:var(--dv-red);
  color:#fff;
}
.tc-devices-v2__hero-btn--red:hover{
  background:var(--dv-red-dark);
}
.tc-devices-v2__hero-btn--outline{
  border:1px solid #d1d3d6;
  background:#fff;
  color:#111;
}
.tc-devices-v2__hero-brands{
  display:flex;
  gap:22px;
  margin-top:34px;
  padding-top:22px;
  border-top:1px solid #e6e6e8;
}
.tc-devices-v2__hero-brands span{
  color:#7a7f85;
  font-size:13px;
  font-weight:700;
}
.tc-devices-v2__hero-devices{
  position:relative;
  min-height:520px;
  display:grid;
  place-items:center;
}
.tc-devices-v2__hero-glow{
  position:absolute;
  width:470px;
  height:470px;
  border-radius:50%;
  background:
    radial-gradient(circle,rgba(242,24,32,.14),rgba(242,24,32,.025) 56%,transparent 72%);
  animation:tcDevicesHeroGlow 4.4s ease-in-out infinite;
}
.tc-devices-v2__hero-phone{
  position:absolute;
  object-fit:contain;
  filter:drop-shadow(0 38px 34px rgba(0,0,0,.18));
  transition:transform .45s ease;
}
.tc-devices-v2__hero-phone--iphone{
  width:255px;
  left:36px;
  top:118px;
  z-index:2;
  transform:rotate(-8deg);
}
.tc-devices-v2__hero-phone--galaxy{
  width:305px;
  left:50%;
  top:74px;
  z-index:4;
  transform:translateX(-50%);
  animation:tcDevicesHeroFloat 4.2s ease-in-out infinite;
}
.tc-devices-v2__hero-phone--pixel{
  width:240px;
  right:28px;
  top:126px;
  z-index:3;
  transform:rotate(8deg);
}
.tc-devices-v2__hero-devices:hover .tc-devices-v2__hero-phone--iphone{
  transform:translateX(-8px) rotate(-10deg);
}
.tc-devices-v2__hero-devices:hover .tc-devices-v2__hero-phone--pixel{
  transform:translateX(8px) rotate(10deg);
}
@keyframes tcDevicesHeroGlow{
  0%,100%{transform:scale(.95);opacity:.75}
  50%{transform:scale(1.05);opacity:1}
}
@keyframes tcDevicesHeroFloat{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(-12px)}
}

/* Sticky jump */
.tc-devices-v2__jump{
  position:sticky;
  top:76px;
  z-index:50;
  border-top:1px solid var(--dv-line);
  border-bottom:1px solid var(--dv-line);
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);
}
.tc-devices-v2__jump .tc-dev-shell{
  display:flex;
  gap:30px;
  overflow-x:auto;
  scrollbar-width:none;
}
.tc-devices-v2__jump .tc-dev-shell::-webkit-scrollbar{display:none}
.tc-devices-v2__jump a{
  flex:0 0 auto;
  padding:18px 0;
  color:#111;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
}
.tc-devices-v2__jump a:hover{color:var(--dv-red)}

/* Sections */
.tc-devices-v2__section{padding:100px 0;background:#fff}
.tc-devices-v2__section--soft{background:var(--dv-soft)}
.tc-devices-v2__heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:36px;
  margin-bottom:42px;
}
.tc-devices-v2__heading h2{
  margin:10px 0 0;
  font-size:clamp(44px,5vw,72px);
  line-height:.97;
  letter-spacing:-.055em;
}
.tc-devices-v2__heading>p{
  max-width:430px;
  margin:0;
  color:var(--dv-muted);
  font-size:16px;
  line-height:1.6;
}
.tc-devices-v2__heading--light h2{color:#fff}

/* Discovery cards */
.tc-discovery-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.tc-discovery-card{
  overflow:hidden;
  border:1px solid var(--dv-line);
  border-radius:30px;
  background:#fff;
  transition:transform .28s ease,box-shadow .28s ease;
}
.tc-discovery-card:hover{
  transform:translateY(-7px);
  box-shadow:0 28px 70px rgba(0,0,0,.09);
}
.tc-discovery-card__visual{
  position:relative;
  height:420px;
  display:grid;
  place-items:center;
  padding:34px;
  background:#f6f6f7;
}
.tc-discovery-card__visual img{
  max-height:340px;
  width:auto;
  object-fit:contain;
  transition:transform .45s cubic-bezier(.2,.75,.25,1);
}
.tc-discovery-card:hover img{transform:scale(1.045) translateY(-6px)}
.tc-discovery-badge{
  position:absolute;
  left:22px;
  top:22px;
  z-index:3;
  padding:8px 11px;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.tc-discovery-card__body{padding:25px}
.tc-discovery-card__body>span{color:#81858b;font-size:12px}
.tc-discovery-card h3{margin:7px 0 24px;font-size:31px;line-height:1.05;letter-spacing:-.045em}
.tc-discovery-card h3 a{color:#111;text-decoration:none}
.tc-discovery-card__bottom{
  padding-top:20px;
  border-top:1px solid var(--dv-line);
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:15px;
}
.tc-discovery-card__bottom small{display:block;color:#85898f;font-size:11px;margin-bottom:5px}
.tc-discovery-card__bottom strong{font-size:20px;letter-spacing:-.03em}
.tc-discovery-card__bottom>a{color:var(--dv-red);text-decoration:none;font-size:14px;font-weight:700}

/* Brands */
.tc-devices-v2__brands{
  padding:100px 0;
  background:#080808;
}
.tc-brand-stage{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.tc-brand-stage button{
  min-height:290px;
  padding:28px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  background:#111;
  color:#fff;
  text-align:left;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  transition:.28s ease;
}
.tc-brand-stage button:nth-child(2){background:#fff;color:#111}
.tc-brand-stage button:nth-child(3){background:#101722}
.tc-brand-stage button:hover{
  transform:translateY(-6px);
  border-color:var(--dv-red);
}
.tc-brand-stage small{font-size:12px;color:#8d9197}
.tc-brand-stage strong{
  margin:auto 0;
  font-size:50px;
  line-height:1;
  letter-spacing:-.055em;
}
.tc-brand-stage span{font-size:14px;font-weight:700}

/* Full catalog */
.tc-devices-v2__catalog{padding:105px 0;background:#fff}
.tc-devices-v2__catalog-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:38px;
}
.tc-devices-v2__catalog-head h2{
  margin:10px 0 0;
  font-size:clamp(44px,5vw,72px);
  line-height:.97;
  letter-spacing:-.055em;
}
.tc-catalog-controls{display:flex;gap:8px;flex-wrap:wrap}
.tc-catalog-controls button{
  min-height:42px;
  padding:0 17px;
  border:1px solid #d4d6d9;
  border-radius:999px;
  background:#fff;
  color:#111;
  font-weight:700;
  cursor:pointer;
}
.tc-catalog-controls button.is-active{
  background:#111;
  border-color:#111;
  color:#fff;
}
.tc-device-catalog-v2{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:17px;
}
.tc-catalog-card-v2{
  position:relative;
  overflow:hidden;
  border:1px solid var(--dv-line);
  border-radius:27px;
  background:#fff;
  transition:.28s ease;
}
.tc-catalog-card-v2:hover{
  transform:translateY(-5px);
  box-shadow:0 25px 65px rgba(0,0,0,.075);
}
.tc-catalog-card-v2.is-hidden{display:none}
.tc-catalog-card-v2.is-comparing{border-color:#111;box-shadow:0 0 0 2px #111 inset}
.tc-catalog-card-v2__top{
  position:absolute;
  top:16px;
  right:16px;
  z-index:8;
}
.tc-compare-toggle{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  padding:0 12px;
  border:1px solid rgba(0,0,0,.10);
  border-radius:999px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(12px);
  color:#111;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}
.tc-compare-toggle span{font-size:17px;line-height:1}
.tc-catalog-card-v2.is-comparing .tc-compare-toggle{
  background:#111;
  color:#fff;
}
.tc-catalog-card-v2__image{
  height:335px;
  padding:32px;
  display:grid;
  place-items:center;
  background:#f7f7f8;
}
.tc-catalog-card-v2__image img{
  max-height:275px;
  width:auto;
  object-fit:contain;
  transition:.35s ease;
}
.tc-catalog-card-v2:hover .tc-catalog-card-v2__image img{transform:scale(1.04)}
.tc-catalog-card-v2__body{padding:24px}
.tc-catalog-card-v2__brand{color:#85898f;font-size:12px}
.tc-catalog-card-v2 h3{margin:7px 0 16px;font-size:27px;line-height:1.07;letter-spacing:-.04em}
.tc-catalog-card-v2 h3 a{color:#111;text-decoration:none}
.tc-catalog-card-v2__specs{display:flex;gap:7px;flex-wrap:wrap;min-height:31px;margin-bottom:23px}
.tc-catalog-card-v2__specs span{
  padding:6px 8px;
  border-radius:8px;
  background:#f2f2f3;
  color:#676b71;
  font-size:11px;
}
.tc-catalog-card-v2__footer{
  padding-top:19px;
  border-top:1px solid var(--dv-line);
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:15px;
}
.tc-catalog-card-v2__footer small{display:block;color:#888c92;font-size:11px;margin-bottom:5px}
.tc-catalog-card-v2__footer strong{font-size:20px;letter-spacing:-.03em}
.tc-catalog-card-v2__footer>a{color:var(--dv-red);text-decoration:none;font-size:13px;font-weight:700}
.tc-devices-v2__disclaimer{
  max-width:760px;
  margin:28px 0 0;
  color:#85898f;
  font-size:12px;
  line-height:1.55;
}

/* CTA */
.tc-devices-v2__cta{padding:88px 0;background:var(--dv-red);color:#fff}
.tc-devices-v2__cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.tc-devices-v2__cta h2{margin:10px 0 0;font-size:clamp(44px,5vw,72px);line-height:.98;letter-spacing:-.055em}
.tc-devices-v2__cta-inner>div:last-child{display:flex;gap:11px;flex-wrap:wrap}

/* Compare bar */
.tc-compare-bar{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:1500;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,.12);
  background:rgba(8,8,8,.96);
  backdrop-filter:blur(18px);
  color:#fff;
  box-shadow:0 -15px 50px rgba(0,0,0,.16);
}
.tc-compare-bar__inner{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
}
.tc-compare-bar__selection{display:flex;align-items:center;gap:18px;min-width:0}
.tc-compare-bar__selection>strong{font-size:14px;white-space:nowrap}
.tc-compare-bar__selection>div{display:flex;gap:7px;overflow:hidden}
.tc-compare-chip{
  max-width:190px;
  padding:8px 11px;
  border-radius:999px;
  background:#1c1c1c;
  color:#d7d9dc;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tc-compare-bar__actions{display:flex;align-items:center;gap:8px}
.tc-compare-bar__actions button{
  min-height:40px;
  padding:0 15px;
  border:0;
  border-radius:999px;
  cursor:pointer;
  font-weight:700;
}
.tc-compare-bar__actions>button:first-child{background:transparent;color:#aaaeb4}
.tc-compare-now{background:var(--dv-red);color:#fff}
.tc-compare-now:disabled{opacity:.45;cursor:not-allowed}

/* Compare modal */
.tc-compare-modal{position:fixed;inset:0;z-index:2000}
.tc-compare-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(6px)}
.tc-compare-modal__panel{
  position:absolute;
  left:50%;
  bottom:0;
  width:min(1180px,calc(100% - 30px));
  max-height:88vh;
  transform:translateX(-50%);
  overflow:auto;
  padding:30px;
  border-radius:30px 30px 0 0;
  background:#fff;
  box-shadow:0 -30px 80px rgba(0,0,0,.28);
  animation:tcCompareRise .34s ease both;
}
@keyframes tcCompareRise{from{transform:translate(-50%,30px);opacity:0}to{transform:translate(-50%,0);opacity:1}}
.tc-compare-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:25px}
.tc-compare-modal__head h2{margin:8px 0 0;font-size:42px;letter-spacing:-.05em}
.tc-compare-close{width:42px;height:42px;border:0;border-radius:50%;background:#f1f1f2;font-size:26px;cursor:pointer}
.tc-compare-table-wrap{overflow-x:auto}
.tc-compare-table{width:100%;border-collapse:collapse;min-width:720px}
.tc-compare-table th,.tc-compare-table td{padding:17px;border-bottom:1px solid var(--dv-line);vertical-align:top;text-align:left}
.tc-compare-table th:first-child,.tc-compare-table td:first-child{width:145px;color:#777b81;font-size:12px;font-weight:700}
.tc-compare-product-head img{height:160px;width:150px;object-fit:contain;margin-bottom:15px}
.tc-compare-product-head span{display:block;color:#84888e;font-size:12px}
.tc-compare-product-head strong{display:block;margin-top:5px;font-size:20px;letter-spacing:-.03em}
.tc-compare-product-head a{display:inline-block;margin-top:10px;color:var(--dv-red);text-decoration:none;font-size:13px;font-weight:700}
.tc-compare-table td{font-size:14px;line-height:1.5}
.tc-compare-modal__note{margin:22px 0 0;color:#82868c;font-size:12px}

/* scroll reveal */
.tc-devices-v2 [data-reveal]{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .6s ease,transform .6s ease;
}
.tc-devices-v2 [data-reveal].is-visible{opacity:1;transform:none}

@media(max-width:980px){
  .tc-devices-v2__hero-grid{grid-template-columns:1fr}
  .tc-devices-v2__hero-devices{min-height:420px}
  .tc-discovery-grid,.tc-brand-stage,.tc-device-catalog-v2{grid-template-columns:repeat(2,1fr)}
  .tc-devices-v2__jump{top:68px}
}
@media(max-width:680px){
  .tc-dev-shell{width:min(100% - 28px,1240px)}
  .tc-devices-v2__hero-grid{min-height:820px;padding:45px 0 65px}
  .tc-devices-v2__hero h1{font-size:54px}
  .tc-devices-v2__hero p{font-size:17px}
  .tc-devices-v2__hero-devices{min-height:350px}
  .tc-devices-v2__hero-glow{width:300px;height:300px}
  .tc-devices-v2__hero-phone--iphone{width:155px;left:5px;top:100px}
  .tc-devices-v2__hero-phone--galaxy{width:205px;top:65px}
  .tc-devices-v2__hero-phone--pixel{width:150px;right:0;top:105px}
  .tc-devices-v2__hero-brands{gap:16px}
  .tc-devices-v2__hero-btn{min-height:45px;padding:0 17px;font-size:13px}
  .tc-devices-v2__jump .tc-dev-shell{gap:22px}
  .tc-devices-v2__section,.tc-devices-v2__brands,.tc-devices-v2__catalog{padding:72px 0}
  .tc-devices-v2__heading,.tc-devices-v2__catalog-head{display:block}
  .tc-devices-v2__heading>p{margin-top:16px}
  .tc-catalog-controls{margin-top:22px}
  .tc-discovery-grid,.tc-brand-stage,.tc-device-catalog-v2{grid-template-columns:1fr}
  .tc-discovery-card__visual{height:340px}
  .tc-discovery-card__visual img{max-height:275px}
  .tc-brand-stage button{min-height:220px}
  .tc-brand-stage strong{font-size:43px}
  .tc-devices-v2__cta-inner{display:block}
  .tc-devices-v2__cta-inner>div:last-child{margin-top:28px}
  .tc-compare-bar__inner{align-items:flex-start}
  .tc-compare-bar__selection>div{display:none}
  .tc-compare-modal__panel{padding:22px 16px}
  .tc-compare-modal__head h2{font-size:34px}
}
@media(prefers-reduced-motion:reduce){
  .tc-discovery-card,.tc-discovery-card img,.tc-catalog-card-v2,.tc-catalog-card-v2 img{transition:none!important}
}
