
/* =========================================================
   BULL — FULL SITE GLASSMORPHISM SYSTEM
   ========================================================= */
:root{
  --glass-yellow:#fbb120;
  --glass-red:#ef3340;
  --glass-ink:#171717;
  --glass-muted:#666;
  --glass-surface:rgba(255,255,255,.66);
  --glass-surface-strong:rgba(255,255,255,.84);
  --glass-border:rgba(255,255,255,.78);
  --glass-border-dark:rgba(0,0,0,.07);
  --glass-shadow:0 18px 50px rgba(0,0,0,.10);
  --glass-shadow-soft:0 10px 30px rgba(0,0,0,.065);
  --glass-blur:blur(22px) saturate(145%);
}

html{scroll-behavior:smooth}
body{
  color:var(--glass-ink);
  background:
    radial-gradient(circle at 8% 10%, rgba(251,177,32,.10), transparent 28rem),
    radial-gradient(circle at 92% 20%, rgba(239,51,64,.055), transparent 24rem),
    radial-gradient(circle at 70% 80%, rgba(251,177,32,.08), transparent 30rem),
    linear-gradient(180deg,#f5f5f3 0%,#ececea 100%) !important;
  background-attachment:fixed !important;
  overflow-x:hidden;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    linear-gradient(115deg,rgba(255,255,255,.50),transparent 35%),
    radial-gradient(circle at 25% 75%,rgba(255,255,255,.75),transparent 28rem);
}

/* ---------- universal glass language ---------- */
.bull-card,
.product-selector-showcase,
.about-overlay-box,
.about-content-wrap,
.media-folder-card,
.gallery-item,
.form,
.cont-box-main,
.map-one-part2,
.map-two-comp,
.iframe-img-one,
.iframe-img-two,
.bull-cta-box,
.bull-accordion-item,
.reliability-card,
.cabin-large-card,
.rops-large-card,
.feature-content-card,
.part-card,
.bull-modal-content,
.tech-spec-table-wrap,
.bull-product-card{
  background:var(--glass-surface) !important;
  border:1px solid var(--glass-border) !important;
  -webkit-backdrop-filter:var(--glass-blur) !important;
  backdrop-filter:var(--glass-blur) !important;
  box-shadow:var(--glass-shadow-soft) !important;
}

.bull-card,
.product-selector-showcase,
.about-overlay-box,
.media-folder-card,
.gallery-item,
.form,
.cont-box-main,
.map-one-part2,
.map-two-comp,
.bull-cta-box,
.reliability-card,
.cabin-large-card,
.rops-large-card,
.feature-content-card,
.part-card,
.bull-product-card{
  border-radius:22px !important;
}

/* ---------- common sections ---------- */
#innovation,
#construct,
.products-list-container,
.about-intro-section,
.about-full-section,
.about-row-section,
#cont-form,
#iframe-one,
#iframe-two,
.media-section,
.bull-content-section,
.reliability-section,
.cabin-comfort-section,
.component-parts-section,
.video-embed-section{
  background:transparent !important;
}

#innovation,
#construct,
.products-list-container,
.about-intro-section,
.about-row-section,
#cont-form,
.media-section,
.bull-content-section,
.reliability-section,
.cabin-comfort-section{
  position:relative;
}

#innovation > .container,
#construct > .container,
.products-list-container > .container,
.about-intro-section > .container,
.about-row-section > .container,
#cont-form > .container,
.media-section > .container,
.bull-content-section > .bull-container,
.reliability-section > .bull-container,
.cabin-comfort-section > .bull-container{
  position:relative;
  z-index:1;
}

/* ---------- hero/banner glass overlays ---------- */
#banner,
.products-hero,
.about-hero,
#cont-banner,
.bull-hero{
  position:relative;
  isolation:isolate;
}

#banner::after,
.products-hero::after,
.about-hero::after,
#cont-banner::after,
.bull-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.08));
  z-index:1;
}

#banner > *,
.products-hero > *,
.about-hero > *,
#cont-banner > *,
.bull-hero > *{
  position:relative;
  z-index:2;
}

.banner-details{
  background:rgba(255,255,255,.74) !important;
  border-top:1px solid rgba(255,255,255,.86) !important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
  backdrop-filter:blur(18px) saturate(145%) !important;
  box-shadow:0 -10px 28px rgba(0,0,0,.08) !important;
}

.details-cells{
  background:transparent !important;
  border-color:rgba(0,0,0,.08) !important;
}

/* ---------- homepage ---------- */
.inno-main{
  padding:28px !important;
  border-radius:26px !important;
  background:var(--glass-surface) !important;
  border:1px solid var(--glass-border) !important;
  -webkit-backdrop-filter:var(--glass-blur) !important;
  backdrop-filter:var(--glass-blur) !important;
  box-shadow:var(--glass-shadow) !important;
}

.product-selector-showcase{
  padding:26px !important;
  overflow:hidden !important;
}

.selector-tab-btn{
  border:1px solid rgba(255,255,255,.82) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.55) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
  transition:.22s ease !important;
}

.selector-tab-btn:hover,
.selector-tab-btn.active{
  background:rgba(251,177,32,.88) !important;
  color:#171717 !important;
  border-color:rgba(251,177,32,.95) !important;
  transform:translateY(-1px);
}

.product-image-container{
  border-radius:22px !important;
  background:
    radial-gradient(circle at 50% 30%,rgba(255,255,255,.95),rgba(255,255,255,.34)) !important;
  border:1px solid rgba(255,255,255,.78);
}

.product-details-link-new{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:11px 16px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.60) !important;
  border:1px solid rgba(255,255,255,.88) !important;
  color:#171717 !important;
  box-shadow:var(--glass-shadow-soft) !important;
}

/* ---------- products listing ---------- */
.product-row{
  margin:26px auto !important;
  padding:26px !important;
  border:1px solid var(--glass-border) !important;
  border-radius:28px !important;
  background:var(--glass-surface) !important;
  -webkit-backdrop-filter:var(--glass-blur) !important;
  backdrop-filter:var(--glass-blur) !important;
  box-shadow:var(--glass-shadow) !important;
  overflow:hidden;
}

.product-img-col{
  border-radius:20px !important;
  background:rgba(255,255,255,.50) !important;
  border:1px solid rgba(255,255,255,.72) !important;
}

.product-action-btn,
.bull-btn,
.form-btn{
  border-radius:13px !important;
  border:1px solid rgba(255,255,255,.50) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.08) !important;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease !important;
}

.product-action-btn:hover,
.bull-btn:hover,
.form-btn:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 13px 28px rgba(0,0,0,.13) !important;
}

/* ---------- about ---------- */
.about-intro-text{
  padding:28px !important;
  border-radius:24px !important;
  background:var(--glass-surface) !important;
  border:1px solid var(--glass-border) !important;
  -webkit-backdrop-filter:var(--glass-blur) !important;
  backdrop-filter:var(--glass-blur) !important;
  box-shadow:var(--glass-shadow-soft) !important;
}

.about-full-section{
  border-radius:30px !important;
  overflow:hidden !important;
  margin:26px auto !important;
  width:min(96%,1450px) !important;
}

.about-overlay-box{
  padding:28px !important;
}

.about-img-wrap img{
  border-radius:24px !important;
  box-shadow:var(--glass-shadow) !important;
}

.about-content-wrap{
  padding:28px !important;
  border-radius:24px !important;
}

.ticker-wrap{
  border-radius:18px !important;
  background:rgba(255,255,255,.58) !important;
  border:1px solid var(--glass-border) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  backdrop-filter:blur(18px) !important;
}

/* ---------- contact ---------- */
#cont-form{
  padding:60px 0 !important;
}

.form{
  padding:28px !important;
}

.form-input,
.form-address{
  border:1px solid rgba(255,255,255,.86) !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.62) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86) !important;
}

.form-input:focus,
.form-address:focus{
  outline:none !important;
  border-color:rgba(251,177,32,.72) !important;
  box-shadow:0 0 0 4px rgba(251,177,32,.12) !important;
}

.cont-box-main,
.map-one-part2,
.map-two-comp{
  padding:24px !important;
}

/* ---------- media ---------- */
.media-folder-card{
  padding:18px !important;
  overflow:hidden !important;
  transition:transform .22s ease,box-shadow .22s ease !important;
}

.media-folder-card:hover,
.gallery-item:hover{
  transform:translateY(-4px) !important;
  box-shadow:var(--glass-shadow) !important;
}

.media-folder-img-wrap,
.gallery-item{
  border-radius:18px !important;
  overflow:hidden !important;
}

.gallery-container{
  padding:24px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.46) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  backdrop-filter:blur(18px) !important;
}

/* ---------- product detail pages ---------- */
.bull-hero-title,
.hero-text-card{
  border:1px solid rgba(255,255,255,.78) !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.68) !important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
  backdrop-filter:blur(18px) saturate(145%) !important;
  box-shadow:var(--glass-shadow) !important;
}

.bull-components,
.component-parts-section,
.reliability-section,
.cabin-comfort-section,
.bull-explore{
  padding-top:60px !important;
  padding-bottom:60px !important;
}

.feature-content-card,
.part-card,
.reliability-card,
.cabin-large-card,
.rops-large-card{
  overflow:hidden !important;
}

.bull-scroll-wrap{
  padding:10px 4px 18px !important;
}

.bull-product-card{
  transition:transform .22s ease,box-shadow .22s ease !important;
}

.bull-product-card:hover{
  transform:translateY(-5px) !important;
  box-shadow:var(--glass-shadow) !important;
}

.bull-cta-box{
  padding:30px !important;
}

.bull-accordion-item{
  overflow:hidden !important;
}

.bull-accordion-head{
  background:rgba(255,255,255,.44) !important;
}

/* technical table glass */
.tech-spec-table-wrap{
  background:rgba(255,255,255,.64) !important;
  overflow:hidden !important;
}

.tech-spec-table thead th{
  background:rgba(24,24,24,.92) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}

.tech-wide-section th,
.tech-table-section-row th{
  background:linear-gradient(90deg,rgba(251,177,32,.96),rgba(255,199,82,.88)) !important;
}

.tech-wide-row td,
.tech-table-data-row td{
  background:rgba(255,255,255,.34) !important;
  border-color:rgba(0,0,0,.07) !important;
}

.tech-wide-row:nth-child(odd) td,
.tech-table-data-row:nth-child(even) td{
  background:rgba(255,255,255,.56) !important;
}

/* modal / lightbox */
.bull-modal,
.bull-lightbox{
  background:rgba(20,20,20,.38) !important;
  -webkit-backdrop-filter:blur(16px) saturate(130%) !important;
  backdrop-filter:blur(16px) saturate(130%) !important;
}

.bull-modal-content{
  border-radius:24px !important;
  overflow:hidden !important;
}

.bull-modal-form input{
  border-radius:13px !important;
  border:1px solid rgba(255,255,255,.8) !important;
  background:rgba(255,255,255,.58) !important;
}

/* sticky CTA becomes floating glass bar */
.bull-sticky-cta{
  left:50% !important;
  right:auto !important;
  bottom:14px !important;
  width:min(760px,calc(100% - 28px)) !important;
  transform:translateX(-50%) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:rgba(22,22,22,.82) !important;
  -webkit-backdrop-filter:blur(18px) saturate(130%) !important;
  backdrop-filter:blur(18px) saturate(130%) !important;
  box-shadow:0 15px 40px rgba(0,0,0,.24) !important;
}

/* ---------- footer ---------- */
#footer{
  width:min(96%,1460px) !important;
  margin:34px auto 18px !important;
  padding-top:18px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:30px !important;
  overflow:hidden !important;
  background:rgba(24,24,24,.86) !important;
  -webkit-backdrop-filter:blur(24px) saturate(125%) !important;
  backdrop-filter:blur(24px) saturate(125%) !important;
  box-shadow:0 24px 60px rgba(0,0,0,.20) !important;
}

#footer .foot-ul-con,
#footer .foot-ul-con3,
#footer .foot-contact-tit,
#footer .foot-cont-address,
#footer .foot-cont-address a,
#footer .foot-cont-follow,
#footer .foot-cont-follow2,
#footer .foot-rights{
  color:rgba(255,255,255,.76) !important;
}

#footer .foot-contact-tit,
#footer .foot-ul li:first-child a{
  color:var(--glass-yellow) !important;
}

#footer .foot-line{
  border-color:rgba(255,255,255,.10) !important;
}

/* ---------- WhatsApp ---------- */
.wabtn{
  border:1px solid rgba(255,255,255,.76) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.15) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}

/* ---------- headings ---------- */
.bull-title h2,
.section-title-new,
.media-title-main,
.cont-form-title,
.about-hero-title,
.product-name-title{
  letter-spacing:-.035em !important;
}

.bull-title span,
.section-title-new span,
.about-content-tag,
.product-category{
  color:#d18d00 !important;
}

/* ---------- responsive ---------- */
@media(max-width:991px){
  .product-row,
  .inno-main,
  .form,
  .about-content-wrap,
  .about-intro-text{
    padding:20px !important;
    border-radius:20px !important;
  }

  #footer{
    width:calc(100% - 20px) !important;
    border-radius:22px !important;
  }

  #footer .col-3{
    flex:0 0 50% !important;
    max-width:50% !important;
    margin-bottom:24px !important;
  }
}

@media(max-width:767px){
  body{
    background-attachment:scroll !important;
  }

  .product-row{
    margin:16px auto !important;
  }

  .bull-components,
  .component-parts-section,
  .reliability-section,
  .cabin-comfort-section,
  .bull-explore{
    padding-top:38px !important;
    padding-bottom:38px !important;
  }

  #footer .col-3{
    flex:0 0 100% !important;
    max-width:100% !important;
  }

  .bull-sticky-cta{
    bottom:8px !important;
    width:calc(100% - 16px) !important;
    border-radius:14px !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .bull-card,.product-row,.media-folder-card,.gallery-item,.bull-product-card,
  .product-action-btn,.bull-btn,.form-btn{transition:none !important}
}
