/* TRIBIONE HOME V23 — isolated homepage only */
.tb22-home,.tb22-home *{box-sizing:border-box}.tb22-home{background:#050505;color:#f5f5f5;overflow:hidden}.tb22-home a{color:inherit}.tb22-shell{width:min(1320px,calc(100% - 48px));margin:0 auto}.tb22-kicker{margin:0 0 16px;font-size:11px;font-weight:800;letter-spacing:.21em;color:#b4b4b4}
/* Hero uses the full panoramic image ratio: no cyclist cropped out. */
.tb22-hero{position:relative;width:100%;aspect-ratio:1800/529;min-height:430px;max-height:620px;display:flex;align-items:flex-end;overflow:hidden;background:#050505}.tb22-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block}.tb22-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.58) 41%,rgba(0,0,0,.08) 78%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 52%)}.tb22-hero-content{position:relative;z-index:2;padding-bottom:50px}.tb22-hero h1{margin:0;max-width:720px;font-size:clamp(50px,5.7vw,84px);line-height:.91;letter-spacing:-.055em;font-weight:820}.tb22-hero h1 span{color:#a0a0a0}.tb22-lead{max-width:620px;margin:20px 0 0;color:#d0d0d0;font-size:16px;line-height:1.55}.tb22-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.tb22-btn{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:0 18px;border:1px solid rgba(255,255,255,.35);border-radius:999px;text-decoration:none;font-size:13px;font-weight:800;background:rgba(0,0,0,.24);backdrop-filter:blur(6px)}.tb22-btn.tb22-primary{background:#fff;color:#050505;border-color:#fff}
.tb22-univers{padding:76px 0 84px}.tb22-heading{max-width:620px;margin-bottom:28px}.tb22-heading h2{margin:0;font-size:clamp(38px,4.5vw,62px);line-height:.96;letter-spacing:-.05em}.tb22-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tb22-card{position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;min-height:330px;border:1px solid #262626;border-radius:24px;overflow:hidden;text-decoration:none;background-image:linear-gradient(0deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.05) 70%),url('/assets/brand/tribione-hero-sports.jpg');background-repeat:no-repeat;background-size:auto 100%;transition:transform .22s ease,border-color .22s ease}.tb22-card.tb22-pos-1{background-position:0% center}.tb22-card.tb22-pos-2{background-position:24% center}.tb22-card.tb22-pos-3{background-position:48% center}.tb22-card.tb22-pos-4{background-position:67% center}.tb22-card.tb22-pos-5{background-position:88% center}.tb22-card.tb22-pos-6{background-position:100% center}.tb22-card>div{position:absolute;left:20px;right:20px;bottom:20px}.tb22-card small{font-size:10px;font-weight:800;letter-spacing:.17em;color:#d8d8d8}.tb22-card h3{margin:8px 0 15px;font-size:clamp(24px,2.25vw,34px);line-height:1.02;letter-spacing:-.035em}.tb22-card span{font-size:13px;font-weight:800}.tb22-card:hover{transform:translateY(-4px);border-color:#777}
.tb22-app{display:grid;grid-template-columns:1fr .72fr;gap:64px;align-items:center;padding:80px 0;border-top:1px solid #202020}.tb22-app h2,.tb22-brand h2{margin:0;font-size:clamp(38px,4.6vw,62px);line-height:.96;letter-spacing:-.05em}.tb22-app-copy>p:not(.tb22-kicker){max-width:650px;color:#9d9d9d;font-size:16px;line-height:1.65}.tb22-phone{margin:0;text-align:center}.tb22-phone img{width:min(350px,100%);max-height:610px;object-fit:contain;border-radius:28px}.tb22-phone figcaption{margin-top:10px;color:#626262;font-size:10px;letter-spacing:.15em;text-transform:uppercase}
/* Identity block V28 — balanced, compact, centered */
.tb22-brand{
  width:min(1060px,calc(100% - 48px));
  margin-left:auto;
  margin-right:auto;
  display:grid;
  grid-template-columns:minmax(0,560px) minmax(0,360px);
  gap:54px;
  align-items:center;
  justify-content:center;
  padding:58px 0 66px;
  border-top:1px solid #202020;
}

.tb22-brand-image{
  display:block;
  width:100%;
  max-width:560px;
  justify-self:end;
  border-radius:18px;
  overflow:hidden;
  background:#0b0b0b;
  border:1px solid #202020;
}

.tb22-brand-image img{
  display:block;
  width:100%;
  height:auto;
  max-height:360px;
  object-fit:contain;
}

.tb22-brand-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  max-width:360px;
  margin:0;
}

.tb22-brand-copy .tb22-kicker{
  margin:0 0 16px;
}

.tb22-brand-copy h2{
  margin:0 0 18px;
  font-size:clamp(34px,3vw,46px);
  line-height:.96;
  letter-spacing:-.045em;
}

.tb22-brand-copy>p:not(.tb22-kicker){
  margin:0 0 24px;
  color:#9d9d9d;
  font-size:15px;
  line-height:1.6;
  max-width:340px;
}

.tb22-textlink{
  display:inline-block;
  color:#fff;
  text-decoration:none;
  font-weight:800;
  font-size:13px;
  line-height:1.3;
}

.tb22-textlink:hover{opacity:.72}

@media(max-width:900px){
  .tb22-brand{
    width:min(720px,calc(100% - 32px));
    grid-template-columns:1fr;
    gap:28px;
    padding:48px 0 56px;
  }
  .tb22-brand-image{
    justify-self:center;
    max-width:620px;
  }
  .tb22-brand-copy{
    max-width:620px;
    justify-self:center;
    align-items:flex-start;
  }
}

@media(max-width:560px){
  .tb22-brand{
    width:calc(100% - 24px);
    padding:38px 0 46px;
    gap:22px;
  }
  .tb22-brand-image{
    border-radius:14px;
  }
  .tb22-brand-image img{
    max-height:none;
  }
  .tb22-brand-copy h2{
    font-size:34px;
  }
}

/* Modern footer, intentionally independent from legacy .site-footer. */
.tb23-footer{background:#080808;border-top:1px solid #1f1f1f;color:#fff}.tb23-footer-inner{width:min(1320px,calc(100% - 48px));margin:0 auto;padding:46px 0 26px}.tb23-footer-top{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-bottom:34px}.tb23-footer-brand{display:flex;align-items:center;gap:22px;text-decoration:none}.tb23-footer-brand img{width:138px;height:auto;display:block}.tb23-footer-brand span{max-width:360px;color:#858585;font-size:13px;line-height:1.45}.tb23-footer-actions{display:flex;gap:9px}.tb23-footer-actions a{padding:11px 17px;border-radius:999px;border:1px solid #343434;text-decoration:none;font-size:13px;font-weight:800}.tb23-footer-actions a:first-child{background:#fff;color:#050505;border-color:#fff}.tb23-footer-nav{display:flex;align-items:center;gap:20px;padding:20px 0;border-top:1px solid #1c1c1c;border-bottom:1px solid #1c1c1c}.tb23-footer-nav a{color:#9b9b9b;text-decoration:none;font-size:12px;font-weight:700;transition:color .2s}.tb23-footer-nav a:hover{color:#fff}.tb23-footer-nav span{flex:1}.tb23-footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:21px;color:#5f5f5f;font-size:11px;letter-spacing:.02em}
@media(max-width:900px){.tb22-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tb22-app{grid-template-columns:1fr}.tb22-phone{order:-1}.tb22-brand{grid-template-columns:1fr;gap:26px;width:min(760px,calc(100% - 48px))}.tb22-brand-image{max-width:none}.tb22-brand-copy{max-width:560px}.tb23-footer-nav{flex-wrap:wrap}.tb23-footer-nav span{display:none;width:100%}}
@media(max-width:640px){.tb22-shell,.tb23-footer-inner{width:calc(100% - 30px)}.tb22-hero{aspect-ratio:auto;min-height:540px;max-height:none}.tb22-hero-photo{object-fit:cover;object-position:12% center}.tb22-hero-overlay{background:linear-gradient(0deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.48) 68%,rgba(0,0,0,.1) 100%)}.tb22-hero-content{padding-bottom:36px}.tb22-hero h1{font-size:clamp(46px,14vw,64px)}.tb22-lead{font-size:15px}.tb22-univers{padding:54px 0 60px}.tb22-grid{grid-template-columns:1fr}.tb22-card{min-height:300px;background-size:cover}.tb22-card.tb22-pos-1{background-position:0 center}.tb22-card.tb22-pos-2{background-position:24% center}.tb22-card.tb22-pos-3{background-position:48% center}.tb22-card.tb22-pos-4{background-position:68% center}.tb22-card.tb22-pos-5{background-position:90% center}.tb22-card.tb22-pos-6{background-position:100% center}.tb22-app{padding:60px 0}.tb22-brand{width:calc(100% - 30px);padding:54px 0 62px}.tb22-brand-copy h2{font-size:38px}.tb22-phone img{width:min(300px,82vw)}.tb23-footer-top{align-items:flex-start;flex-direction:column}.tb23-footer-brand{align-items:flex-start;flex-direction:column}.tb23-footer-actions{width:100%}.tb23-footer-actions a{flex:1;text-align:center}.tb23-footer-nav{gap:14px 18px}.tb23-footer-bottom{flex-direction:column}.tb23-footer-brand img{width:120px}}
