/*
  Impro Solutions Bangladesh Case Studies
  Opportunity visual skin
  This file changes presentation only. Existing case content, URLs, grid logic,
  video logic, folders and proof wording remain controlled by the original files.
*/

body.opportunity-case-theme{
  --opp-red:#D72027;
  --opp-red-dark:#9B0E17;
  --opp-black:#1A1A1A;
  --opp-ink:#1A1A1A;
  --opp-body:#2B2B2B;
  --opp-muted:#6B6B6B;
  --opp-line:#e7e9ee;
  --opp-soft:#F2F2F2;
  --opp-white:#ffffff;
  --opp-shadow:0 24px 70px rgba(16,17,20,.13);
  margin:0;
  overflow-x:hidden;
  color:var(--opp-body);
  background:var(--opp-soft);
  font-family:'Inter',Arial,Helvetica,sans-serif;
  font-size:16px;
  line-height:1.65;
}

body.opportunity-case-theme *,
body.opportunity-case-theme *::before,
body.opportunity-case-theme *::after{box-sizing:border-box}

body.opportunity-case-theme h1,
body.opportunity-case-theme h2,
body.opportunity-case-theme h3,
body.opportunity-case-theme h4,
body.opportunity-case-theme h5,
body.opportunity-case-theme h6,
body.opportunity-case-theme .btn,
body.opportunity-case-theme .eyebrow,
body.opportunity-case-theme .main-nav,
body.opportunity-case-theme .mobile-nav-link,
body.opportunity-case-theme .filter-pills button,
body.opportunity-case-theme .stat-box b{
  font-family:'Plus Jakarta Sans','Inter',Arial,Helvetica,sans-serif !important;
}

body.opportunity-case-theme img{max-width:100%;height:auto}
body.opportunity-case-theme a{text-decoration:none}
body.opportunity-case-theme .container{width:min(1180px,92%) !important;margin-inline:auto !important}
body.opportunity-case-theme.mobile-menu-open{overflow:hidden}

/* Top strip */
body.opportunity-case-theme .topbar{
  background:var(--opp-black) !important;
  color:#fff !important;
  border-bottom:1px solid rgba(255,255,255,.09) !important;
  font-size:13px !important;
}
body.opportunity-case-theme .topbar>.container{
  min-height:36px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
}
body.opportunity-case-theme .topbar a{color:#fff !important}
body.opportunity-case-theme .topbar a:hover{color:#ffb2b6 !important}

/* Opportunity-style desktop header, while retaining Bangladesh links and logo */
body.opportunity-case-theme .site-header{
  position:sticky !important;
  top:0 !important;
  z-index:1200 !important;
  background:rgba(255,255,255,.96) !important;
  border-bottom:1px solid rgba(16,17,20,.08) !important;
  box-shadow:0 14px 40px rgba(16,17,20,.06) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  backdrop-filter:blur(14px) !important;
}
body.opportunity-case-theme .site-header .nav-wrap{
  min-height:96px !important;
  display:flex !important;
  align-items:center !important;
  gap:28px !important;
}
body.opportunity-case-theme .site-header .brand{
  display:flex !important;
  align-items:center !important;
  width:224px !important;
  min-width:224px !important;
  max-width:224px !important;
}
body.opportunity-case-theme .site-header .site-master-logo{
  display:block !important;
  width:224px !important;
  max-width:100% !important;
  max-height:82px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
body.opportunity-case-theme .site-header .main-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
  margin-left:auto !important;
}
body.opportunity-case-theme .site-header .main-nav>a,
body.opportunity-case-theme .site-header .main-nav .nav-dropdown-trigger,
body.opportunity-case-theme .site-header .main-nav .has-drop>a{
  display:inline-flex !important;
  align-items:center !important;
  min-height:48px !important;
  padding:15px 2px !important;
  border:0 !important;
  border-bottom:3px solid transparent !important;
  background:transparent !important;
  color:var(--opp-black) !important;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  white-space:nowrap !important;
  transition:color .25s ease,border-color .25s ease,transform .25s ease !important;
}
body.opportunity-case-theme .site-header .main-nav>a:hover,
body.opportunity-case-theme .site-header .main-nav>a:focus-visible,
body.opportunity-case-theme .site-header .main-nav .has-drop:hover>a,
body.opportunity-case-theme .site-header .main-nav .has-drop:hover>.nav-dropdown-trigger,
body.opportunity-case-theme .site-header .main-nav .active-parent>.nav-dropdown-trigger{
  color:var(--opp-red) !important;
  border-bottom-color:var(--opp-red) !important;
  transform:translateY(-1px) !important;
}
body.opportunity-case-theme .site-header .has-drop{position:relative !important}
body.opportunity-case-theme .site-header .has-drop::after{
  content:"" !important;
  position:absolute !important;
  left:-12px !important;
  right:-12px !important;
  top:100% !important;
  height:34px !important;
  background:transparent !important;
}
body.opportunity-case-theme .site-header .drop{
  top:calc(100% + 18px) !important;
  left:0 !important;
  width:270px !important;
  padding:10px !important;
  overflow:hidden !important;
  border:1px solid var(--opp-line) !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:var(--opp-shadow) !important;
}
body.opportunity-case-theme .site-header .drop a{
  display:block !important;
  padding:13px 14px !important;
  border:0 !important;
  border-radius:11px !important;
  color:var(--opp-black) !important;
  font-size:14px !important;
  font-weight:700 !important;
  line-height:1.4 !important;
  text-transform:none !important;
}
body.opportunity-case-theme .site-header .drop a:hover,
body.opportunity-case-theme .site-header .drop a:focus-visible{
  background:#fff1f2 !important;
  color:var(--opp-red) !important;
}
body.opportunity-case-theme .site-header .cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:50px !important;
  padding:14px 22px !important;
  border-radius:10px !important;
  background:var(--opp-red) !important;
  color:#fff !important;
  font-family:'Plus Jakarta Sans','Inter',sans-serif !important;
  font-size:15px !important;
  font-weight:800 !important;
  box-shadow:0 16px 30px rgba(215,32,39,.22) !important;
  transition:transform .25s ease,background .25s ease,box-shadow .25s ease !important;
}
body.opportunity-case-theme .site-header .cta:hover{
  background:var(--opp-red-dark) !important;
  transform:translateY(-2px) !important;
}
body.opportunity-case-theme .site-header .hamb,
body.opportunity-case-theme .site-header .hamburger{
  display:none !important;
  width:46px !important;
  height:46px !important;
  margin-left:auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:12px !important;
  background:var(--opp-red) !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1 !important;
  cursor:pointer !important;
}
body.opportunity-case-theme .site-header .mobile-panel{display:none !important}

/* Full-screen Opportunity mobile menu */
body.opportunity-case-theme .mobile-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:2200 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
  background:rgba(16,17,20,.86) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  -webkit-backdrop-filter:blur(10px) !important;
  backdrop-filter:blur(10px) !important;
  transition:opacity .28s ease,visibility .28s ease !important;
}
body.opportunity-case-theme .mobile-overlay.open{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
body.opportunity-case-theme .close-menu{
  position:absolute !important;
  top:20px !important;
  right:24px !important;
  display:grid !important;
  place-items:center !important;
  width:46px !important;
  height:46px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#111 !important;
  font-size:30px !important;
  line-height:1 !important;
  cursor:pointer !important;
  box-shadow:0 12px 30px rgba(0,0,0,.18) !important;
}
body.opportunity-case-theme .mobile-menu-container{
  width:min(420px,92vw) !important;
  max-height:min(780px,88vh) !important;
  overflow:auto !important;
  padding:28px !important;
  border-radius:26px !important;
  background:#fff !important;
  box-shadow:var(--opp-shadow) !important;
  transform:scale(.96) translateY(18px) !important;
  transition:transform .32s cubic-bezier(.2,.8,.2,1) !important;
}
body.opportunity-case-theme .mobile-overlay.open .mobile-menu-container{
  transform:scale(1) translateY(0) !important;
}
body.opportunity-case-theme .mobile-logo{
  display:block !important;
  width:min(240px,70vw) !important;
  margin:0 auto 22px !important;
}
body.opportunity-case-theme .mobile-logo img{
  display:block !important;
  width:100% !important;
  max-height:70px !important;
  object-fit:contain !important;
}
body.opportunity-case-theme .mobile-nav-links{
  display:grid !important;
  gap:12px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
body.opportunity-case-theme .mobile-nav-link{
  display:block !important;
  padding:15px 17px !important;
  border-radius:14px !important;
  background:var(--opp-soft) !important;
  color:#111 !important;
  font-size:16px !important;
  font-weight:800 !important;
  transition:background .22s ease,color .22s ease,transform .22s ease !important;
}
body.opportunity-case-theme .mobile-nav-link:hover,
body.opportunity-case-theme .mobile-nav-link:focus-visible,
body.opportunity-case-theme .mobile-nav-link.active{
  background:#fff1f2 !important;
  color:var(--opp-red) !important;
  transform:translateX(3px) !important;
}
body.opportunity-case-theme .mobile-btn{margin-top:18px !important}
body.opportunity-case-theme .mobile-btn .btn{width:100% !important}

/* Buttons */
body.opportunity-case-theme .btn,
body.opportunity-case-theme .buttons .btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:48px !important;
  padding:13px 22px !important;
  border:1px solid transparent !important;
  border-radius:999px !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease !important;
}
body.opportunity-case-theme .btn:hover,
body.opportunity-case-theme .buttons .btn:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 15px 30px rgba(16,17,20,.14) !important;
}
body.opportunity-case-theme .btn-primary,
body.opportunity-case-theme .buttons .blue{
  background:var(--opp-red) !important;
  color:#fff !important;
}
body.opportunity-case-theme .buttons .dark{
  background:#111 !important;
  color:#fff !important;
}
body.opportunity-case-theme .buttons .outline{
  border-color:#cfd3dc !important;
  background:#fff !important;
  color:#111 !important;
}

/* Case hero. Its two-column structure and video markup are unchanged. */
body.opportunity-case-theme .case-hero{
  padding:28px 0 36px !important;
  background:linear-gradient(180deg,#fff 0%,var(--opp-soft) 100%) !important;
}
body.opportunity-case-theme .case-hero>.container{
  position:relative !important;
  overflow:hidden !important;
  min-height:540px !important;
  padding:58px 52px !important;
  border:1px solid rgba(255,255,255,.85) !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 88% 16%,rgba(215,32,39,.24),transparent 27%),
    linear-gradient(135deg,#1A1A1A 0%,#20242c 63%,#151515 100%) !important;
  box-shadow:0 30px 90px rgba(16,17,20,.16) !important;
}
body.opportunity-case-theme .case-hero>.container::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.045),transparent 43%);
}
body.opportunity-case-theme .case-hero .grid-2{
  position:relative !important;
  z-index:1 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr) !important;
  align-items:center !important;
  gap:42px !important;
}
body.opportunity-case-theme .case-hero .breadcrumb{
  margin-bottom:16px !important;
  color:#bfc5cf !important;
  font-size:13px !important;
}
body.opportunity-case-theme .case-hero .breadcrumb a{color:#fff !important}
body.opportunity-case-theme .case-hero .eyebrow{
  display:inline-block !important;
  margin-bottom:14px !important;
  color:#ff5b62 !important;
  font-size:13px !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}
body.opportunity-case-theme .case-hero h1{
  max-width:720px !important;
  margin:0 0 20px !important;
  color:#fff !important;
  font-size:clamp(42px,5vw,66px) !important;
  font-weight:800 !important;
  line-height:1.04 !important;
  letter-spacing:-.055em !important;
}
body.opportunity-case-theme .case-hero p{
  max-width:680px !important;
  margin:0 0 26px !important;
  color:#d8dde8 !important;
  font-size:18px !important;
  line-height:1.72 !important;
}
body.opportunity-case-theme .case-hero .proof-strip{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:26px 0 !important;
}
body.opportunity-case-theme .case-hero .proof-strip>div{
  min-width:0 !important;
  padding:15px !important;
  border:1px solid rgba(255,255,255,.13) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.07) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  backdrop-filter:blur(8px) !important;
}
body.opportunity-case-theme .case-hero .proof-strip b{
  display:block !important;
  margin-bottom:5px !important;
  color:#fff !important;
  font-size:19px !important;
}
body.opportunity-case-theme .case-hero .proof-strip span{
  display:block !important;
  color:#cbd1db !important;
  font-size:12px !important;
  line-height:1.45 !important;
}
body.opportunity-case-theme .case-hero .buttons{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
}
body.opportunity-case-theme .case-media{
  min-width:0 !important;
  padding:16px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:30px !important;
  background:rgba(255,255,255,.09) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.25) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}
body.opportunity-case-theme .case-video-shell{
  overflow:hidden !important;
  border-radius:22px !important;
  background:#111 !important;
}
body.opportunity-case-theme .case-video-play{
  background:linear-gradient(135deg,var(--opp-red),var(--opp-red-dark)) !important;
  box-shadow:0 20px 45px rgba(215,32,39,.32) !important;
}

/* Statistics */
body.opportunity-case-theme .stats-row{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
  margin-top:24px !important;
  margin-bottom:0 !important;
}
body.opportunity-case-theme .stat-box{
  min-width:0 !important;
  padding:24px !important;
  border:1px solid var(--opp-line) !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 10px 30px rgba(16,17,20,.05) !important;
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease !important;
}
body.opportunity-case-theme .stat-box:hover{
  transform:translateY(-6px) !important;
  border-color:rgba(215,32,39,.25) !important;
  box-shadow:0 24px 60px rgba(16,17,20,.12) !important;
}
body.opportunity-case-theme .stat-box b{
  display:block !important;
  margin-bottom:7px !important;
  color:var(--opp-red) !important;
  font-size:31px !important;
  font-weight:800 !important;
  line-height:1 !important;
}
body.opportunity-case-theme .stat-box span{
  display:block !important;
  color:var(--opp-muted) !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

/* Sections, heading scale and archive controls */
body.opportunity-case-theme .section{
  padding:76px 0 !important;
  background:var(--opp-soft) !important;
}
body.opportunity-case-theme .section.soft{background:#fff !important}
body.opportunity-case-theme .section-title{
  max-width:780px !important;
  margin:0 auto 36px !important;
  text-align:center !important;
}
body.opportunity-case-theme .section-title h2{
  margin:0 0 12px !important;
  color:#151923 !important;
  font-size:42px !important;
  font-weight:800 !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
}
body.opportunity-case-theme .section-title p{
  margin:0 !important;
  color:var(--opp-muted) !important;
  font-size:18px !important;
}
body.opportunity-case-theme .tool-row{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin-bottom:28px !important;
  padding:18px !important;
  border:1px solid var(--opp-line) !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 10px 30px rgba(16,17,20,.05) !important;
}
body.opportunity-case-theme .search-input{
  min-width:260px !important;
  flex:1 1 320px !important;
  min-height:50px !important;
  padding:13px 16px !important;
  border:1px solid #d8dce4 !important;
  border-radius:14px !important;
  outline:none !important;
  background:#fff !important;
  color:#111 !important;
  font:inherit !important;
  transition:border-color .2s ease,box-shadow .2s ease !important;
}
body.opportunity-case-theme .search-input:focus{
  border-color:var(--opp-red) !important;
  box-shadow:0 0 0 4px rgba(215,32,39,.10) !important;
}
body.opportunity-case-theme .filter-pills{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}
body.opportunity-case-theme .filter-pills button{
  min-height:42px !important;
  padding:10px 14px !important;
  border:1px solid var(--opp-line) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#111 !important;
  font-size:13px !important;
  font-weight:800 !important;
  cursor:pointer !important;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease !important;
}
body.opportunity-case-theme .filter-pills button:hover,
body.opportunity-case-theme .filter-pills button.active{
  border-color:var(--opp-red) !important;
  background:var(--opp-red) !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
}

/* Keep the original grid dimensions. Apply only the visual card skin. */
body.opportunity-case-theme .case-grid>*{
  overflow:hidden !important;
  border:1px solid var(--opp-line) !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 10px 30px rgba(16,17,20,.05) !important;
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease !important;
}
body.opportunity-case-theme .case-grid>*:hover{
  transform:translateY(-7px) scale(1.01) !important;
  border-color:rgba(215,32,39,.25) !important;
  box-shadow:0 28px 70px rgba(16,17,20,.16) !important;
}
body.opportunity-case-theme .case-grid img{
  transition:transform .75s ease,filter .75s ease !important;
}
body.opportunity-case-theme .case-grid>*:hover img{
  transform:scale(1.055) !important;
  filter:contrast(1.04) saturate(1.06) !important;
}
body.opportunity-case-theme .case-grid h2,
body.opportunity-case-theme .case-grid h3,
body.opportunity-case-theme .case-grid h4{color:#151923 !important}
body.opportunity-case-theme .case-grid p{color:var(--opp-muted) !important}
body.opportunity-case-theme .case-grid a:not(.btn){color:var(--opp-red)}

body.opportunity-case-theme .doc-note,
body.opportunity-case-theme .seo-card,
body.opportunity-case-theme .template-panel{
  padding:28px !important;
  border:1px solid var(--opp-line) !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 10px 30px rgba(16,17,20,.05) !important;
}
body.opportunity-case-theme .doc-note{
  margin-top:28px !important;
  border-left:5px solid var(--opp-red) !important;
  color:var(--opp-muted) !important;
}
body.opportunity-case-theme .doc-note b{color:#151923 !important}
body.opportunity-case-theme .seo-logic{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:24px !important;
}
body.opportunity-case-theme .seo-card h3,
body.opportunity-case-theme .template-panel h3{
  margin:0 0 14px !important;
  color:#151923 !important;
  font-size:25px !important;
  line-height:1.2 !important;
}
body.opportunity-case-theme .seo-card li,
body.opportunity-case-theme .template-panel p{color:var(--opp-muted) !important}
body.opportunity-case-theme .template-panel code{
  padding:3px 7px !important;
  border-radius:7px !important;
  background:#fff1f2 !important;
  color:var(--opp-red-dark) !important;
}

/* Floating RFQ */
body.opportunity-case-theme .floating-rfq{
  position:fixed !important;
  right:22px !important;
  bottom:22px !important;
  z-index:1000 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:50px !important;
  padding:13px 21px !important;
  border-radius:999px !important;
  background:var(--opp-red) !important;
  color:#fff !important;
  font-family:'Plus Jakarta Sans','Inter',sans-serif !important;
  font-weight:800 !important;
  box-shadow:0 18px 40px rgba(215,32,39,.28) !important;
  transition:transform .25s ease,background .25s ease !important;
}
body.opportunity-case-theme .floating-rfq:hover{
  background:var(--opp-red-dark) !important;
  transform:translateY(-3px) !important;
}

/* Opportunity floating zoom */
body.opportunity-case-theme .reveal-zoom{
  opacity:0;
  transform:scale(.965) translateY(26px);
  transition:opacity .72s ease,transform .72s cubic-bezier(.2,.8,.2,1);
  will-change:opacity,transform;
}
body.opportunity-case-theme .reveal-zoom.is-visible{
  opacity:1;
  transform:scale(1) translateY(0);
}

/* Footer */
body.opportunity-case-theme .footer{
  width:100% !important;
  max-width:100% !important;
  overflow:hidden !important;
  padding:58px 0 0 !important;
  background:var(--opp-black) !important;
  color:#d8dde8 !important;
}
body.opportunity-case-theme .footer .footer-grid{
  display:grid !important;
  grid-template-columns:1.4fr .75fr .8fr 1fr !important;
  align-items:start !important;
  gap:34px !important;
}
body.opportunity-case-theme .footer .footer-master-logo-link{
  display:block !important;
  width:min(100%,300px) !important;
  margin:0 0 18px !important;
  padding:10px 12px !important;
  overflow:hidden !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 12px 30px rgba(0,0,0,.16) !important;
}
body.opportunity-case-theme .footer .footer-master-logo{
  display:block !important;
  width:100% !important;
  max-height:82px !important;
  object-fit:contain !important;
  background:#fff !important;
}
body.opportunity-case-theme .footer h4{
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:17px !important;
}
body.opportunity-case-theme .footer p{
  max-width:100% !important;
  margin:0 !important;
  color:#b9c0cc !important;
  line-height:1.62 !important;
}
body.opportunity-case-theme .footer a{
  display:block !important;
  width:fit-content !important;
  max-width:100% !important;
  margin:8px 0 !important;
  color:#d8dde8 !important;
  line-height:1.42 !important;
  transition:color .2s ease,transform .2s ease !important;
}
body.opportunity-case-theme .footer a:hover{
  color:#fff !important;
  transform:translateX(3px) !important;
}
body.opportunity-case-theme .footer .social-row,
body.opportunity-case-theme .footer .footer-social{
  display:flex !important;
  gap:10px !important;
  margin-top:18px !important;
}
body.opportunity-case-theme .footer .social-row a,
body.opportunity-case-theme .footer .footer-social a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  margin:0 !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.09) !important;
  color:#fff !important;
}
body.opportunity-case-theme .footer .opportunity-desk-brand{
  display:block !important;
  width:min(100%,278px) !important;
  max-width:278px !important;
  margin:18px 0 !important;
  padding:10px 12px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:0 14px 34px rgba(0,0,0,.18) !important;
}
body.opportunity-case-theme .footer .opportunity-desk-brand img{
  display:block !important;
  width:100% !important;
  max-height:70px !important;
  object-fit:contain !important;
}
body.opportunity-case-theme .footer .copy{
  margin-top:34px !important;
  padding:18px 0 20px !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
  color:#aeb6c2 !important;
  font-size:14px !important;
}

@media(max-width:1120px){
  body.opportunity-case-theme .site-header .brand{
    width:190px !important;
    min-width:190px !important;
    max-width:190px !important;
  }
  body.opportunity-case-theme .site-header .main-nav{gap:17px !important}
  body.opportunity-case-theme .site-header .main-nav>a,
  body.opportunity-case-theme .site-header .main-nav .nav-dropdown-trigger,
  body.opportunity-case-theme .site-header .main-nav .has-drop>a{font-size:14px !important}
  body.opportunity-case-theme .case-hero>.container{padding:48px 40px !important}
}

@media(max-width:1050px){
  body.opportunity-case-theme .site-header .main-nav,
  body.opportunity-case-theme .site-header .cta{display:none !important}
  body.opportunity-case-theme .site-header .hamb,
  body.opportunity-case-theme .site-header .hamburger{display:block !important}
  body.opportunity-case-theme .site-header .nav-wrap{min-height:84px !important}
  body.opportunity-case-theme .case-hero .grid-2{
    grid-template-columns:1fr !important;
    gap:30px !important;
  }
  body.opportunity-case-theme .case-media{max-width:760px !important}
  body.opportunity-case-theme .footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}

@media(max-width:760px){
  body.opportunity-case-theme .topbar>.container{justify-content:center !important;text-align:center !important}
  body.opportunity-case-theme .topbar>.container span:first-child{display:none !important}
  body.opportunity-case-theme .site-header .nav-wrap{min-height:76px !important}
  body.opportunity-case-theme .site-header .brand{
    width:188px !important;
    max-width:58vw !important;
    min-width:0 !important;
  }
  body.opportunity-case-theme .site-header .site-master-logo{max-height:60px !important}
  body.opportunity-case-theme .case-hero{padding:14px 0 24px !important}
  body.opportunity-case-theme .case-hero>.container{
    min-height:0 !important;
    padding:36px 24px 26px !important;
    border-radius:24px !important;
  }
  body.opportunity-case-theme .case-hero h1{
    font-size:37px !important;
    letter-spacing:-.04em !important;
  }
  body.opportunity-case-theme .case-hero p{font-size:16px !important;line-height:1.65 !important}
  body.opportunity-case-theme .case-hero .proof-strip{grid-template-columns:1fr !important}
  body.opportunity-case-theme .case-media{padding:10px !important;border-radius:22px !important}
  body.opportunity-case-theme .stats-row{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  body.opportunity-case-theme .section{padding:58px 0 !important}
  body.opportunity-case-theme .section-title h2{font-size:31px !important}
  body.opportunity-case-theme .section-title p{font-size:16px !important}
  body.opportunity-case-theme .tool-row{align-items:stretch !important;flex-direction:column !important}
  body.opportunity-case-theme .search-input{width:100% !important;min-width:0 !important;flex:none !important}
  body.opportunity-case-theme .seo-logic{grid-template-columns:1fr !important}
  body.opportunity-case-theme .footer{padding-top:46px !important}
  body.opportunity-case-theme .footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:30px 20px !important}
  body.opportunity-case-theme .footer .footer-grid>div:first-child,
  body.opportunity-case-theme .footer .footer-grid>div:last-child{grid-column:1/-1 !important}
  body.opportunity-case-theme .footer .copy{text-align:center !important}
}

@media(max-width:480px){
  body.opportunity-case-theme .mobile-overlay{padding:14px !important}
  body.opportunity-case-theme .mobile-menu-container{padding:22px !important;border-radius:22px !important}
  body.opportunity-case-theme .close-menu{top:12px !important;right:12px !important}
  body.opportunity-case-theme .stats-row{grid-template-columns:1fr !important}
  body.opportunity-case-theme .stat-box{padding:20px !important}
  body.opportunity-case-theme .case-hero .buttons{display:grid !important}
  body.opportunity-case-theme .case-hero .buttons .btn{width:100% !important}
  body.opportunity-case-theme .filter-pills button{flex:1 1 calc(50% - 8px) !important}
  body.opportunity-case-theme .footer .footer-grid{grid-template-columns:1fr !important}
  body.opportunity-case-theme .footer .footer-grid>div{grid-column:1 !important}
  body.opportunity-case-theme .footer a{width:100% !important}
  body.opportunity-case-theme .floating-rfq{right:14px !important;bottom:14px !important}
}

@media(prefers-reduced-motion:reduce){
  body.opportunity-case-theme *,
  body.opportunity-case-theme *::before,
  body.opportunity-case-theme *::after{
    scroll-behavior:auto !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
  body.opportunity-case-theme .reveal-zoom{
    opacity:1 !important;
    transform:none !important;
  }
}


/* ============================================================
   Case detail compatibility layer
   Presentation only. Existing content, page grid and image paths stay unchanged.
   ============================================================ */
body.opportunity-case-theme .detail-hero{
  padding:28px 0 36px !important;
  background:linear-gradient(180deg,#fff 0%,var(--opp-soft) 100%) !important;
  color:#fff !important;
}
body.opportunity-case-theme .detail-hero>.container{
  position:relative !important;
  overflow:hidden !important;
  padding:58px 52px !important;
  border:1px solid rgba(255,255,255,.85) !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 88% 16%,rgba(215,32,39,.27),transparent 29%),
    linear-gradient(135deg,#1A1A1A 0%,#20242c 63%,#151515 100%) !important;
  box-shadow:0 30px 90px rgba(16,17,20,.16) !important;
}
body.opportunity-case-theme .detail-hero>.container::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:linear-gradient(115deg,rgba(255,255,255,.05),transparent 44%) !important;
}
body.opportunity-case-theme .detail-hero>.container>*{
  position:relative !important;
  z-index:1 !important;
}
body.opportunity-case-theme .detail-hero .breadcrumb{
  margin-bottom:16px !important;
  color:#bfc5cf !important;
  font-size:13px !important;
}
body.opportunity-case-theme .detail-hero .breadcrumb a{color:#fff !important}
body.opportunity-case-theme .detail-hero .eyebrow{
  display:inline-block !important;
  margin-bottom:12px !important;
  color:#ff5b62 !important;
  font-size:13px !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}
body.opportunity-case-theme .detail-hero h1{
  max-width:970px !important;
  margin:0 0 22px !important;
  color:#fff !important;
  font-size:clamp(42px,5vw,66px) !important;
  font-weight:800 !important;
  line-height:1.04 !important;
  letter-spacing:-.055em !important;
}
body.opportunity-case-theme .detail-hero p{
  max-width:870px !important;
  margin:0 !important;
  color:#d8dde8 !important;
  font-size:18px !important;
  line-height:1.72 !important;
}
body.opportunity-case-theme .detail-wrap{
  gap:28px !important;
  padding:58px 0 72px !important;
}
body.opportunity-case-theme .story-card,
body.opportunity-case-theme .evidence-card{
  position:relative !important;
  overflow:hidden !important;
  border:1px solid var(--opp-line) !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 20px 55px rgba(16,17,20,.09) !important;
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease !important;
}
body.opportunity-case-theme .story-card::before,
body.opportunity-case-theme .evidence-card::before{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  width:100% !important;
  height:4px !important;
  background:linear-gradient(90deg,var(--opp-red),#ff6268) !important;
}
body.opportunity-case-theme .story-card:hover,
body.opportunity-case-theme .evidence-card:hover{
  transform:translateY(-5px) !important;
  border-color:rgba(215,32,39,.22) !important;
  box-shadow:0 28px 70px rgba(16,17,20,.13) !important;
}
body.opportunity-case-theme .story-card h2,
body.opportunity-case-theme .evidence-card h2{
  color:var(--opp-black) !important;
  font-size:clamp(24px,2.5vw,32px) !important;
  font-weight:800 !important;
  letter-spacing:-.035em !important;
}
body.opportunity-case-theme .story-card p,
body.opportunity-case-theme .story-card li,
body.opportunity-case-theme .evidence-card p,
body.opportunity-case-theme .evidence-card li{
  color:var(--opp-body) !important;
}
body.opportunity-case-theme .detail-gallery{
  border:1px solid var(--opp-line) !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 24px 65px rgba(16,17,20,.12) !important;
  transition:transform .3s ease,box-shadow .3s ease !important;
}
body.opportunity-case-theme .detail-gallery:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 32px 80px rgba(16,17,20,.16) !important;
}
body.opportunity-case-theme .detail-gallery-stage,
body.opportunity-case-theme .detail-slide img{
  background:#f4f4f4 !important;
}
body.opportunity-case-theme .detail-caption{
  background:linear-gradient(transparent,rgba(15,15,15,.92)) !important;
}
body.opportunity-case-theme .gallery-arrow{
  border-color:rgba(16,17,20,.13) !important;
  background:rgba(255,255,255,.96) !important;
  color:#111 !important;
  box-shadow:0 14px 34px rgba(16,17,20,.18) !important;
  transition:transform .22s ease,background .22s ease,color .22s ease !important;
}
body.opportunity-case-theme .gallery-arrow:hover{
  background:var(--opp-red) !important;
  color:#fff !important;
  transform:translateY(-50%) scale(1.07) !important;
}
body.opportunity-case-theme .gallery-counter{
  background:rgba(17,17,17,.82) !important;
}
body.opportunity-case-theme .gallery-thumb{
  border-radius:12px !important;
  background:#f2f2f2 !important;
  transition:transform .2s ease,border-color .2s ease !important;
}
body.opportunity-case-theme .gallery-thumb:hover{transform:translateY(-2px) !important}
body.opportunity-case-theme .gallery-thumb.active{border-color:var(--opp-red) !important}
body.opportunity-case-theme .scope-item{
  border-color:var(--opp-line) !important;
  background:var(--opp-soft) !important;
  transition:transform .24s ease,border-color .24s ease,background .24s ease !important;
}
body.opportunity-case-theme .scope-item:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(215,32,39,.26) !important;
  background:#fff7f7 !important;
}
body.opportunity-case-theme .scope-item b,
body.opportunity-case-theme .key-table td:first-child{color:var(--opp-black) !important}
body.opportunity-case-theme .scope-item span{color:var(--opp-muted) !important}
body.opportunity-case-theme .key-table td{border-bottom-color:var(--opp-line) !important}
body.opportunity-case-theme .doc-links a{
  border-color:var(--opp-line) !important;
  border-radius:14px !important;
  background:var(--opp-soft) !important;
  color:var(--opp-black) !important;
  transition:transform .22s ease,border-color .22s ease,background .22s ease,color .22s ease !important;
}
body.opportunity-case-theme .doc-links a:hover{
  transform:translateX(4px) !important;
  border-color:rgba(215,32,39,.3) !important;
  background:#fff1f2 !important;
  color:var(--opp-red) !important;
}
body.opportunity-case-theme .safe-note{
  border-color:#f4b8bb !important;
  border-radius:18px !important;
  background:#fff1f2 !important;
  color:#681117 !important;
  box-shadow:0 14px 36px rgba(16,17,20,.07) !important;
}
body.opportunity-case-theme .case-bottom-nav a{
  border-color:var(--opp-line) !important;
  border-radius:18px !important;
  color:var(--opp-black) !important;
  box-shadow:0 16px 38px rgba(16,17,20,.07) !important;
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease !important;
}
body.opportunity-case-theme .case-bottom-nav a:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(215,32,39,.3) !important;
  box-shadow:0 22px 48px rgba(16,17,20,.11) !important;
}
body.opportunity-case-theme .case-bottom-nav .circle{
  background:var(--opp-red) !important;
  color:#fff !important;
}
body.opportunity-case-theme .btn.case-blue{
  border-radius:999px !important;
  background:var(--opp-red) !important;
  color:#fff !important;
  box-shadow:0 16px 30px rgba(215,32,39,.22) !important;
}
body.opportunity-case-theme .btn.case-blue:hover{background:var(--opp-red-dark) !important}

@media(max-width:760px){
  body.opportunity-case-theme .detail-hero{padding:14px 0 24px !important}
  body.opportunity-case-theme .detail-hero>.container{
    padding:38px 24px 30px !important;
    border-radius:24px !important;
  }
  body.opportunity-case-theme .detail-hero h1{
    font-size:37px !important;
    letter-spacing:-.04em !important;
  }
  body.opportunity-case-theme .detail-hero p{font-size:16px !important;line-height:1.65 !important}
  body.opportunity-case-theme .detail-wrap{padding:42px 0 58px !important}
}
