:root{
  --primary:#ff7a00;
  --dark:#0f1a33;
  --text:#1f2a44;
  --light:#ffffff;
}

 
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;color:var(--text);line-height:1.5;background:#f7f7f9}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block;height:auto}

.container{width:min(1100px,92%);margin:auto}
.btn{display:inline-block;background:var(--primary);color:#fff;padding:.85rem 1.25rem;border-radius:999px;font-weight:700}
.btn.outline{background:transparent;border:2px solid var(--primary);color:var(--primary)}

 
header{background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid #eee}
header .nav{display:flex;align-items:center;justify-content:space-between;height:84px;position:relative}
.logo{display:flex;gap:.5rem;align-items:center;font-weight:800}
.logo img{height:76px;width:auto}
.menu{display:flex;gap:2rem;align-items:center}
.menu a{font-weight:700}
.badge{background:var(--primary);color:#fff;padding:.45rem .8rem;border-radius:999px;font-size:.9rem;font-weight:800}

 
.hamburger{display:none;width:42px;height:42px;border:0;background:transparent;cursor:pointer;position:relative}
.hamburger span{position:absolute;left:8px;right:8px;height:3px;background:#1f2a44;border-radius:2px;transition:transform .25s,opacity .25s,top .25s}
.hamburger span:nth-child(1){top:12px}
.hamburger span:nth-child(2){top:20px}
.hamburger span:nth-child(3){top:28px}
.menu.open{display:flex}

 
.hero{position:relative;min-height:68vh;display:grid;place-items:end center;color:#fff;background:#000}
.hero.slider::before{content:none !important}
.hero::before{content:"";position:absolute;inset:0;background:url('/assets/images/hero.png') center/cover no-repeat;opacity:.0}
.hero .overlay{position:relative;padding:3.5rem 0 4.5rem}
.hero h1{font-size:clamp(1.25rem,2.2vw + .6rem,2.1rem);max-width:900px;text-shadow:0 4px 24px rgba(0,0,0,.4)}

 
.section{padding:3.5rem 0}
.section.dark{background:var(--dark);color:#fff}
.section .title{font-size:clamp(1.4rem,1.6vw + .8rem,2.2rem);text-align:center;margin-bottom:2rem}
.grid{display:grid;gap:2rem}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}

 
.about{background:#fff var(--about-bg, none) top left/contain no-repeat}
.about .title{font-size: clamp(1.6rem, 2vw + .9rem, 2.6rem);}
.about .text{max-width:640px;font-size: clamp(1.05rem, .45vw + .95rem, 1.2rem);line-height:1.7}
.about .actions{margin-top:1rem}
.about .actions .btn{padding:1rem 1.35rem;font-size:1rem}

 
.cards{background:var(--dark);color:#fff;padding:2.5rem 0}
.cards .title{color:#fff;margin-bottom:1rem}
.card-row{display:grid;gap:2rem;grid-template-columns:repeat(2,1fr)}
.card{background:#101a34;border-radius:16px;padding:1.25rem;display:flex;align-items:end;justify-content:space-between;min-height:220px;position:relative;overflow:hidden}
.card::before{content:"";position:absolute;inset:0;background:rgba(255,255,255,.05)}
.card h3{font-size:1.25rem}
.card .chev{font-size:1.75rem}

/* Banner */
.banner{position:relative}
.banner img{width:100%;border-radius:8px}
.banner .phrase{position:absolute;inset:0;display:grid;place-items:center;letter-spacing:.5px;color:#fff;font-weight:800;text-align:left;background:linear-gradient(90deg,rgba(255,122,0,.85),rgba(255,122,0,.65))}
.banner .phrase p{font-size:clamp(1rem,1.5vw + .6rem,1.8rem);max-width:800px;padding:1.5rem}

/* Info */
.info{background:#eee}
.info-cards{display:grid;gap:2rem;grid-template-columns:repeat(2,1fr)}
.info .card{background:#fff;min-height:160px;padding:1.25rem;border-radius:12px}

/* Galería */
.gallery{padding-top:1rem}
.gallery .row{display:grid;gap:2rem;grid-template-columns:repeat(3,1fr)}
.gallery .imgwrap{border-radius:24px;overflow:hidden;border:6px solid var(--primary);padding:4px;background:#fff}

.center{text-align:center;margin:2rem 0}
.footer-logo{display:grid;place-items:center;margin:1.5rem 0}
.social{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}
.social a{font-weight:800}

.contact{background:var(--dark);color:#fff;padding:2.5rem 0}
.contact .title{color:#fff}
.contact .grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}
.contact .item{display:flex;align-items:center;gap:.75rem;background:#0e1a33;border-radius:12px;padding:1rem}

/* ===== Slider Bootstrap ===== */
#hero{position:relative}
#heroCarousel{position:relative}
#heroCarousel .carousel-item{height:70vh;min-height:420px}
#heroCarousel .carousel-item img{height:100%;object-fit:cover;filter:contrast(1) brightness(.9)}
#hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(0deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.25) 40%,rgba(0,0,0,0) 75%);
}
#hero .carousel-caption{z-index:2;bottom:18%;text-shadow:0 4px 24px rgba(0,0,0,.45)}
#hero .carousel-caption h1{font-size:clamp(1.25rem,2.2vw + .6rem,2.1rem);color:#fff}

 
.wa-cta{
  --wa-delay: 30s;             
  --wa-green: #1f9e44;
  --padY: .55rem; --padL: 1rem; --padR: 4.25rem;
  position:absolute; right:1rem; bottom:1rem; z-index:5;
  display:inline-flex; align-items:center;
  background:var(--wa-green); color:#fff; text-decoration:none; font-weight:800;
  padding:var(--padY) var(--padR) var(--padY) var(--padL);
  border-radius:999px 999px 999px 22px;
  box-shadow:0 8px 20px rgba(0,0,0,.25);
  animation:
    waIntro .52s cubic-bezier(.2,.9,.2,1) both,
    waPulse 2.6s ease-in-out .8s infinite,
    waCollapse var(--wa-delay) steps(1,end) forwards;
}
.wa-cta .wa-label{
  display:inline-block; white-space:nowrap; line-height:1;
  font-size:1.05rem; overflow:hidden;
  animation:
    waLabelIn .4s ease-out .1s both,
    waFadeOut var(--wa-delay) steps(1,end) forwards;
}
.wa-cta .wa-icon{
  position:absolute; right:-8px; bottom:-8px;
  width:74px; height:74px; border-radius:50%;
  display:grid; place-items:center;
  background:var(--wa-green); color:#fff;
  border:6px solid #fff; box-shadow:0 10px 22px rgba(0,0,0,.24);
  animation:
    waIconPop .5s ease-out .35s both,
    waIconBreath 3s ease-in-out 1.2s infinite,
    waIconShift var(--wa-delay) steps(1,end) forwards;
}
 
@keyframes waCollapse{ to{ background:transparent; padding:0; border-radius:50%; } }
@keyframes waFadeOut{ to{ opacity:0; width:0; margin:0; } }
@keyframes waIconShift{ to{ right:0; bottom:0; } }
 
@keyframes waIntro{ from{ transform:translateX(12px) scale(.96); opacity:0; } to{ transform:translateX(0) scale(1); opacity:1; } }
@keyframes waPulse{ 0%,100%{ transform:none; box-shadow:0 8px 20px rgba(0,0,0,.25); } 50%{ transform:translateY(-1px) scale(1.02); box-shadow:0 12px 26px rgba(0,0,0,.28); } }
@keyframes waLabelIn{ from{ opacity:0; transform:translateY(2px); } to{ opacity:1; transform:none; } }
@keyframes waIconPop{ from{ transform:scale(.8); } to{ transform:scale(1); } }
@keyframes waIconBreath{ 0%,100%{ transform:scale(1); } 50%{ transform:scale(1.06); } }
 
.wa-cta:is(:hover, :focus-visible){
  animation:none;
  background:var(--wa-green);
  padding:var(--padY) var(--padR) var(--padY) var(--padL);
  border-radius:999px 999px 999px 22px;
}
.wa-cta:is(:hover, :focus-visible) .wa-label{ animation:none; opacity:1; width:auto; margin:0; }
.wa-cta:is(:hover, :focus-visible) .wa-icon{ animation:none; right:-8px; bottom:-8px; }
 
@media (prefers-reduced-motion: reduce){
  .wa-cta, .wa-cta .wa-label, .wa-cta .wa-icon{ animation:none !important; }
}

 
.products{
  background:#0e1a33;
  color:#fff;
  padding:2.5rem 0 3rem;
}
.products .title{
  color:#fff; letter-spacing:.5px; text-align:center;
  font-size:clamp(1.6rem,1.6vw + 1rem,2.4rem);
  margin:0; padding:0 0 1rem; position:relative;
}
 
.products .title::after{
  content:""; position:absolute; left:0; right:0; bottom:-.5rem;
  height:10px; background:#fff; border-radius:8px;
}
 
.product-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(260px, 1fr));
  gap:clamp(1.25rem, 3vw, 3rem);
  place-items:center;
  margin-top:2rem;
}
.product-link{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem;color:#fff;text-decoration:none}

 
.product .thumb{
  width:clamp(220px, 26vw, 320px);
  aspect-ratio:1/1;
  border-radius:50%;
  overflow:hidden;
  position:relative;
  background:#fff;
  box-shadow:0 0 0 8px var(--primary) inset;  
}
.product .thumb::after{
  content:""; position:absolute; inset:-8px; border-radius:50%;
  background:conic-gradient(var(--primary) 0 40deg, transparent 40deg 360deg);
  transform:rotate(-25deg); pointer-events:none;
}
.product .thumb img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);transition:transform .35s ease}
.product h3{font-size:clamp(1rem, .5vw + .95rem, 1.125rem);font-weight:700;max-width:26ch}
.product .cta{
  display:grid;place-items:center;width:46px;height:46px;border:2px solid #fff;border-radius:50%;
  font-size:1.6rem;line-height:1;transform:translateY(0);transition:transform .25s ease, background .25s ease, color .25s ease;
}
.product-link:hover .thumb img{ transform:scale(1.06); }
.product-link:hover .cta{ transform:translateY(-2px); background:#fff; color:#0e1a33; }

 
@media (max-width:900px){
  .grid-2,.grid-3,.card-row,.info-cards,.gallery .row,.contact .grid{grid-template-columns:1fr}
  .about{background:#fff}
  .hamburger{display:block}
  header .menu{position:absolute;top:84px;right:0;background:#fff;border-bottom:1px solid #eee;box-shadow:0 8px 20px rgba(0,0,0,.06);flex-direction:column;align-items:flex-start;padding:1rem 1.25rem;gap:1rem;display:none;width:100%}
  header .menu a{padding:.25rem 0}
  header .menu.open{display:flex}
  .hamburger[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  .hamburger[aria-expanded="true"] span:nth-child(2){opacity:0}
  .hamburger[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .product-grid{grid-template-columns:1fr}
}
@media (max-width:768px){
  header .nav{height:72px}
  #heroCarousel .carousel-item{height:58vh}
  #hero .carousel-caption{bottom:12%}
  .card{min-height:180px}
}
@media (max-width:480px){
  header .menu{gap:1rem}
  #hero .carousel-caption{padding:0 12px}
  .gallery .row{gap:1rem}
}
 
.section.banner{ position:relative; padding:1.5rem 0; }
.section.banner img{
  width:100%;
  height:clamp(520px, 38vh, 420px);
  object-fit:cover;                 
  object-position:right center;      
  display:block; border-radius:8px;
}

 
.section.banner .phrase{
  position:absolute; inset:0; border-radius:8px;
  display:flex; align-items:center; z-index:1;
   
  background:linear-gradient(90deg,
    rgba(255,122,0,.95) 0%,
    rgba(255,122,0,.80) 25%,
    rgba(255,122,0,.40) 55%,
    rgba(255,122,0,0) 100%);
}

 
.section.banner .phrase .container{ width:min(1100px,92%); }
.section.banner .phrase p{
  margin:0;
  color:#fff;
  text-transform:uppercase;
  font-weight:900;
  font-style:italic;
  letter-spacing:.5px;
  text-shadow:0 2px 18px rgba(0,0,0,.25);
  font-size:clamp(1.1rem, 2.4vw + .8rem, 2.2rem);
}

 
.info{
  background:#d9dadd;
  padding:2rem 0 2.2rem;
  color:#0f1a33;
}

 
.info-row.two{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:clamp(1rem, 4vw, 3rem);
  align-items:center;
  text-align:center;
  padding:1.25rem 0 1.5rem;
}

 
.info-row.one{
  display:grid;
  place-items:center;   
  padding:1rem 0 .25rem;
}
.info-row.one .info-box{
  text-align:center;
  max-width:420px;
}

 
.info-box h3{
  font-size:clamp(1.1rem, .6vw + 1rem, 1.45rem);
  margin:.6rem 0 .25rem;
  color:#0f1a33;
  font-weight:800;
}
.info-box p{ margin:.15rem 0; }
.info-box .strong{ font-weight:800; }

.icon-wrap{
  width:84px; height:84px;
  border-radius:50%;
  border:6px solid #0f1a33;      
  display:grid; place-items:center;
  margin:0 auto .6rem;
  background:#d9dadd;
}
.icon-wrap img{
  width:58%; height:58%;
  object-fit:contain; display:block;
}

 
@media (max-width:900px){
  .info-row.two{ grid-template-columns:1fr; padding:1rem 0; }
}

 
.info-row.two{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:clamp(1rem, 4vw, 3rem);
  align-items:start;              
  text-align:center;
  padding:1.25rem 0 1.5rem;
}

 
.info-box{
  display:grid;
  grid-auto-rows:min-content;
  justify-items:center;
  gap:.35rem;
  padding-top:.25rem;              
}
.info-box *{ margin:0; }         
.info-box h3{ margin:.45rem 0 .2rem; }

 
.icon-wrap{
  width:84px; height:84px;
  border-radius:50%;
  border:6px solid #0f1a33;
  display:grid; place-items:center;
  margin:0 0 .6rem 0;              
  background:#d9dadd;
}
.icon-wrap img{
  width:58%; height:58%;          
  object-fit:contain; display:block;
}


 
.visit-card{
  position:relative;
  display:grid;
  grid-template-columns: 1.1fr 1fr;   
  min-height:320px;
  background:#fff;
  border:1px solid #e6e8ec;
  border-radius:12px;
  overflow:hidden;
}

 
.visit-card::after{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(255,255,255,0) 46%, #fff 66%);
  pointer-events:none; z-index:1;
}

.visit-photo{ position:relative; z-index:0; }
.visit-photo img{
  width:100%; height:100%;
  object-fit:cover;
  object-position:left center;    
  display:block;
}

.visit-content{
  position:relative; z-index:2;
  display:grid; place-content:center; justify-items:center;
  padding:clamp(1rem, 3.5vw, 2rem);
  text-align:center; gap:.6rem;
}

.visit-icon{ color:var(--primary); display:grid; place-items:center; }
.visit-content h3{
  margin:0;
  font-weight:800; color:#0f1a33;
  letter-spacing:.2px; line-height:1.25;
  font-size:clamp(1.05rem, 1.2vw + .9rem, 1.6rem);
}
.visit-pin img{ display:block; margin:.3rem auto .6rem; }

.visit-btn{ font-weight:800; padding:.7rem 1.25rem; border-radius:999px; }

 
@media (max-width:900px){
  .visit-card{ grid-template-columns:1fr; }
  .visit-card::after{
    background:linear-gradient(0deg, rgba(255,255,255,0) 52%, #fff 76%);
  }
  .visit-photo img{
    height:clamp(180px, 34vh, 260px);
    object-position:center;
  }
}
 
.section.visit{
  background:#fff;    
  padding:2rem 0;     
}
.visit-card{ border-color:#fff; }


 
.section.visit{ background:#fff; padding:2rem 0 2.25rem; }

 
.visit-card{
  position:relative;
  display:grid;
  grid-template-columns: 1.1fr 1fr;
  min-height:320px;
  background:#fff;
  border:1px solid #e6e8ec;
  border-radius:12px;
  overflow:hidden;
}
.visit-card::after{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(255,255,255,0) 46%, #fff 66%);
  pointer-events:none; z-index:1;
}
.visit-photo img{ width:100%; height:100%; object-fit:cover; object-position:left center; display:block; }
.visit-content{
  position:relative; z-index:2;
  display:grid; place-content:center; justify-items:center;
  padding:clamp(1rem, 3.5vw, 2rem);
  text-align:center; gap:.6rem;
}
.visit-icon{ color:var(--primary); display:grid; place-items:center; }
.visit-content h3{ margin:0; font-weight:800; color:#0f1a33; line-height:1.25; font-size:clamp(1.05rem, 1.2vw + .9rem, 1.6rem); }
.visit-pin img{ display:block; margin:.3rem auto .6rem; }
.visit-btn{ font-weight:800; padding:.7rem 1.25rem; border-radius:999px; }

 
.visit-block{ margin-top:1.25rem; }

 
.visit-gallery{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:clamp(.75rem, 3vw, 1.25rem);
}
.visit-gallery .oval{
  border-radius:28px; padding:4px; background:#fff;
  border:6px solid var(--primary);
  overflow:hidden;
  height:clamp(160px, 28vw, 260px);
  display:block;
}
.visit-gallery .oval img{
  width:100%; height:100%; object-fit:cover; display:block;
}

 
.center{ text-align:center; }
.visit-cta{ font-weight:800; }

 
.visit-brand{ display:grid; place-items:center; gap:.8rem; }
.visit-brand .brand{ width:min(420px, 70%); height:auto; }
.visit-divider{ width:100%; max-width:720px; height:4px; background:var(--primary); border-radius:4px; display:block; }
.visit-social{ display:flex; gap:1rem; align-items:center; justify-content:center; }
.visit-social img{ width:22px; height:22px; display:block; }

 
@media (max-width:900px){
  .visit-card{ grid-template-columns:1fr; }
  .visit-card::after{
    background:linear-gradient(0deg, rgba(255,255,255,0) 52%, #fff 76%);
  }
  .visit-photo img{ height:clamp(180px, 34vh, 260px); object-position:center; }
  .visit-gallery{ grid-template-columns:1fr 1fr 1fr; }  
}
@media (max-width:640px){
  .visit-gallery{ grid-template-columns:1fr; }
  .visit-gallery .oval{ height:220px; }
}


 
.contact{
  background:var(--dark);
  color:#fff;
  padding:2.25rem 0 2.5rem;
}
.contact .title{
  color:var(--primary);
  text-align:center;
  font-weight:900;
  letter-spacing:.5px;
  margin-bottom:1.25rem;
  font-size:clamp(1.7rem, 1.2vw + 1.6rem, 2.6rem);  
}

.contact .grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(280px, 1fr));
  gap:2rem 3rem;
  align-items:start;               
}

.contact .item{
  display:flex;
  align-items:flex-start;
  gap:.9rem;
  background:transparent;          
  padding:.35rem 0;
}

.contact .item .icon{
  width:30px; height:30px; flex:0 0 30px;
  display:grid; place-items:center;
  margin-top:.15rem;
  color:var(--primary);             
}
 
.contact .item .icon.whatsapp{ color:#25D366; }
.contact .item .icon.facebook{ color:var(--primary); }
.contact .item .icon.instagram{ color:var(--primary); }
.contact .item .icon.mail{ color:var(--primary); }
.contact .item .icon.pin{ color:var(--primary); }

.contact .item .line{ margin:0; }

 
.contact .item .line strong{
  display:block;
  font-weight:900;
  font-size: 16px;  
  line-height:1.1;
  color:#fff;
}

 
.contact .item .line span,
.contact .item .line small{
  display:block;
  font-size:clamp(.98rem, .45vw + .9rem, 1.15rem);    
  font-weight:600;
  color:#e7eaf2;                                     
}

 
@media (max-width:900px){
  .contact .grid{ grid-template-columns:1fr; gap:1.25rem; }
  .contact .item .line strong{
    font-size:clamp(1.25rem, 1vw + 1rem, 1.7rem);     
  }
}

 
.item.pr-text{
  display:flex;
  align-items:center;
  gap:.75rem;              
}

 
.item.pr-text .pr-ico{
  width:28px;              
  height:28px;
  object-fit:cover;        
  border-radius:6px;        
  display:block;
}

 
.item.pr-text strong{
  font-weight:900;
  font-size:clamp(1.3rem, 1.5vw + 1rem, 2.1rem);
  line-height:1.1;
}

 
.item.pr-text span{
  font-size:clamp(1rem, .45vw + .9rem, 1.15rem);
  font-weight:600;
}

 
#about .about-figure{ min-height: 360px; }
#about .about-photo{
  position: relative; z-index: 2;
  max-width: 380px; width: 85%;  
}

 #about .ring{ position:absolute; border-radius:50%; pointer-events:none; }

 #about .ring-grey{
  width: 360px; height: 360px;
  border: 10px solid rgba(0,0,0,.10);
  border-right-color: transparent; border-bottom-color: transparent;
  transform: rotate(-20deg);
  top: 10px; left: -10px; z-index: 0;
}

 #about .ring-orange{
  width: 330px; height: 330px; background: #FF7A00;
  top: 40px; left: 80px; z-index: 1;
}

 #about .ring-navy{
  width: 300px; height: 300px; border-radius: 50%;
  border-right: 14px solid #0E1B3D;
  transform: rotate(25deg);
  top: 60px; left: 260px; z-index: 0;
}

 @media (max-width: 992px){
  #about .about-figure{ min-height: 300px; }
  #about .ring-grey{ transform: rotate(-15deg); left: -20px; }
  #about .ring-orange{ width: 290px; height: 290px; left: 60px; }
  #about .ring-navy{ left: 220px; }
}
@media (max-width: 576px){
  #about .about-photo{ max-width: 320px; }
  #about .ring-orange{ width: 250px; height: 250px; left: 40px; top: 50px; }
  #about .ring-navy{ left: 190px; width: 260px; height: 260px; }
}

 .about-band{
  background:#0E1B3D; color:#fff;
  padding: 28px 0; 
}
.about-slogan{
  font-weight: 800; font-style: italic; text-transform: uppercase;
  letter-spacing: .5px; line-height: 1.15;
  font-size: clamp(20px, 1.8vw + 14px, 36px);
}
.about-slogan span{ display:block; }

 .visit-photo{
  display:block;
  width:100%; height:100%;
  min-height:280px;
  object-fit:cover;
  object-position: 20% center;  
}

 
.visit-fade{
  position:absolute; top:0; right:-1px; bottom:0;
  width:32%;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, #fff 75%);
  pointer-events:none;
}

 
.visit-card{ background:#fff; border-color:#e8e8ee !important; }
.content-narrow{ max-width: 420px; }

 
@media (max-width: 991.98px){
  .visit-fade{ width:55%; }
}
@media (max-width: 576px){
  .visit-photo{ min-height:220px; }
  .visit-fade{ width:65%; }
}

 
#kits .kit-row { background:#fff; }

 
#kits .kit-media{
  padding: 10px 18px 10px 10px;    
}
#kits .kit-media img{
  display:block;
  width:100%; height:100%;
  min-height: 190px;
  object-fit: cover;
  border-radius: 16px;              
}

 
#kits .kit-text{
  position: relative;
  padding: 16px 24px 16px 28px;     
  color: rgba(14,27,61,.78);         
}
#kits .kit-text::before{
  content:"";
  position:absolute; left: 0; top: 14px; bottom: 14px;
  width: 10px;                    
  background:#0E1B3D;             
  border-radius: 8px;               
}

 
#kits .kit-title{
  margin: 0 0 8px;
  color:#0E1B3D;
  font-weight: 800;
  font-size: clamp(20px, 1.2vw + 16px, 28px);  
  line-height: 1.2;
}
#kits .kit-desc{
  margin:0;
  font-size: 15.5px;
  line-height: 1.6;
}

 
@media (max-width: 767.98px){
  #kits .kit-media{ padding: 10px; }
  #kits .kit-media img{ min-height: 180px; }
  #kits .kit-text{ padding: 14px 16px 16px 22px; }
  #kits .kit-text::before{ top: 10px; bottom: 10px; width:8px; }
}
 
#kits .kit-media{
  border: 6px solid #FF7A00;    
  border-radius: 16px;           
  overflow: hidden;              
  margin: 10px 18px 10px 10px;  
}

#kits .kit-media img{
  display: block;
  width: 100%;
  height: 100%;
  min-height: 190px;            
  object-fit: cover;
}

 
 
