/* ===== ibop-ui ===== */
/* Career section heading: align everything to the left */
#careers .ibop-sec-head {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    align-items: flex-start !important;
}

#careers .ibop-sec-head .ibop-kicker,
#careers .ibop-sec-head h2,
#careers .ibop-sec-head p {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

#careers .ibop-sec-head h2,
#careers .ibop-sec-head p {
    max-width: 650px;
}

:root{--ibop-navy:#0B1D2E;--ibop-green:#7BBA27;--ibop-green-d:#5D870C;--ibop-ink:#333333;--ibop-line:#E5E2E1;--ibop-heading-font:"Franklin Gothic Medium","Franklin Gothic","Libre Franklin","Arial Narrow",Arial,sans-serif;--ibop-body-font:"Roboto",Arial,sans-serif}

/* ===== Hero ===== */
#home.ibop-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;min-height:clamp(500px,70vh,640px);height:auto;font-family:var(--ibop-body-font)}
#home .ibop-slides{position:absolute;inset:0;z-index:0;overflow:hidden}
#home .ibop-slide{position:absolute;inset:0;display:block;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s ease;pointer-events:none}
#home .ibop-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
#home .ibop-slide.is-active{opacity:1;visibility:visible}
#home .ibop-hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(11,29,46,.93) 0%,rgba(11,29,46,.78) 48%,rgba(11,29,46,.3) 100%)}
#home .ibop-hero-inner{position:relative;z-index:2;display:grid !important;grid-template-columns:minmax(0,1fr) minmax(380px,440px) !important;gap:44px;align-items:center;width:100%;max-width:1200px;height:auto !important;min-height:0 !important;margin:0 auto;padding:40px 24px 86px !important;box-sizing:border-box}
#home .ibop-hero-copy{max-width:680px}
#home .ibop-hero-card{position:relative;width:100%;box-sizing:border-box;padding:26px 28px 22px;background:#fff;border-radius:14px;border-top:5px solid var(--ibop-green);box-shadow:0 22px 55px rgba(0,0,0,.35)}
#home .ibop-hero-card .ibop-lead h2{font-size:25px;margin-right:0}
#home .ibop-hero-card .ibop-field{margin-bottom:10px}
#home .ibop-breadcrumb{margin-bottom:18px;font:400 13px/1.4 var(--ibop-body-font);color:#D1D3D4}
#home .ibop-breadcrumb a{color:#fff;text-decoration:none}
#home .ibop-copy-stage{display:grid}
#home .ibop-copy-slide{grid-area:1/1;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease,visibility .5s ease}
#home .ibop-copy-slide.is-active{opacity:1;visibility:visible;transform:none}
#home .ibop-eyebrow{margin:0 0 10px;color:var(--ibop-green);font:700 13px/1.3 var(--ibop-body-font);text-transform:uppercase}
#home .ibop-hero-title{margin:0 0 14px;color:#fff !important;font-family:var(--ibop-heading-font) !important;font-size:clamp(28px,4vw,48px) !important;line-height:1.14 !important;letter-spacing:-.02em}
#home .ibop-hero-text{margin:0;max-width:600px;color:#E6E7E8;font:400 clamp(15px,1.6vw,18px)/1.6 var(--ibop-body-font)}
#home .ibop-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.ibop-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 24px;border:2px solid transparent;border-radius:8px;font:700 15px/1.2 var(--ibop-body-font);text-decoration:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.ibop-btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(11,29,46,.25);text-decoration:none}
.ibop-btn-primary{background:var(--ibop-green);color:var(--ibop-navy) !important}
.ibop-btn-primary:hover{background:#BDDD93}
.ibop-btn-ghost{background:rgba(11,29,46,.35);color:#fff !important;border-color:var(--ibop-green)}
#home .ibop-slider-controls{position:absolute;left:0;right:0;bottom:24px;z-index:3;display:flex;align-items:center;justify-content:center;gap:14px}
#home .ibop-slider-controls .ibop-prev,#home .ibop-slider-controls .ibop-next{width:38px;height:38px;padding:0;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(11,29,46,.5);color:#fff;font-size:22px;line-height:1;cursor:pointer;touch-action:manipulation}
#home .ibop-slider-controls .ibop-prev:hover,#home .ibop-slider-controls .ibop-next:hover{background:var(--ibop-green);color:var(--ibop-navy)}
#home .ibop-dots{display:flex;align-items:center;gap:8px}
#home .ibop-dots button{width:10px;height:10px;min-width:10px;min-height:10px;padding:0;border:0;border-radius:6px;background:rgba(255,255,255,.55);cursor:pointer;transition:width .25s ease,background .25s ease;transform:none}
#home .ibop-dots button.active{width:28px;background:var(--ibop-green);transform:none}
@media (max-width:991px){
  #home .ibop-hero-inner{grid-template-columns:minmax(0,1fr) !important;gap:28px}
  #home .ibop-hero-card{max-width:560px}
}
@media (max-width:767px){
  #home .ibop-hero-shade{background:linear-gradient(180deg,rgba(11,29,46,.35) 0%,rgba(11,29,46,.7) 55%,rgba(11,29,46,.85) 100%)}
  #home .ibop-hero-inner{padding:40px 18px 96px !important}
  #home .ibop-hero-actions .ibop-btn{flex:1 1 100%}
}

/* ===== Marquee ===== */
.ibop-marquee{position:relative;overflow:hidden;background:var(--ibop-navy);border-top:3px solid var(--ibop-green);padding:15px 0;font-family:var(--ibop-body-font)}
.ibop-marquee-track{display:flex;width:max-content;animation:ibopMarquee 45s linear infinite}
.ibop-marquee:hover .ibop-marquee-track{animation-play-state:paused}
.ibop-marquee ul{display:flex;flex:none;margin:0;padding:0;list-style:none}
.ibop-marquee li{display:flex;align-items:center;white-space:nowrap;color:#fff;font-size:15px;font-weight:500;letter-spacing:.02em}
.ibop-marquee li:before{content:"";width:8px;height:8px;margin:0 26px;background:var(--ibop-green);transform:rotate(45deg)}
@keyframes ibopMarquee{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ibop-marquee-track{animation:none;overflow-x:auto}#home .ibop-slide,#home .ibop-copy-slide{transition:none}}

/* ===== Popup (left image, right form) ===== */
html.ibop-modal-open{overflow:hidden}
.ibop-modal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:16px;overflow-y:auto;background:rgba(7,18,30,.74);font-family:var(--ibop-body-font)}
.ibop-modal.is-open{display:flex}
.ibop-lead [hidden]{display:none !important}
.ibop-dialog{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);width:100%;max-width:940px;margin:auto;background:#fff;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.4);animation:ibopPop .3s ease both}
@keyframes ibopPop{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.ibop-close{position:absolute;top:10px;right:10px;z-index:20;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:#F5F3F3;color:var(--ibop-navy);font-size:24px;line-height:1;cursor:pointer}
.ibop-close:hover{background:var(--ibop-green)}
.ibop-side{position:relative;display:flex;align-items:flex-end;min-height:100%;padding:34px 30px;border-radius:14px 0 0 14px;color:#fff;background:#0B1D2E center/cover no-repeat;overflow:hidden}
.ibop-side:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,29,46,.35),rgba(11,29,46,.92))}
.ibop-side>div{position:relative}
.ibop-side .ibop-eyebrow{margin:0 0 10px;color:var(--ibop-green);font:700 12px/1.3 var(--ibop-body-font);letter-spacing:.12em;text-transform:uppercase}
.ibop-side h3{margin:0 0 16px;color:#fff;font:400 26px/1.2 var(--ibop-heading-font);letter-spacing:-.01em}
.ibop-side ul{margin:0;padding:0;list-style:none}
.ibop-side li{position:relative;margin:0 0 9px;padding-left:24px;font-size:14px;line-height:1.5;color:#E6E7E8}
.ibop-side li:before{content:"✓";position:absolute;left:0;top:0;color:var(--ibop-green);font-weight:700}
.ibop-pane{padding:34px 32px 26px;min-width:0}
.ibop-lead h2{margin:0 36px 6px 0;color:var(--ibop-navy);font:400 27px/1.2 var(--ibop-heading-font)}
.ibop-lead .ibop-intro{margin:0 0 16px;color:#333333;font-size:13.5px;line-height:1.5}
.ibop-field{margin-bottom:12px}
.ibop-lead label,.ibop-lead .ibop-label{display:block;margin:0 0 5px;color:#333333;font:700 12px/1.3 var(--ibop-body-font);letter-spacing:.02em;text-transform:none}
.ibop-lead .ibop-field input[type=text],.ibop-lead .ibop-field input[type=email],.ibop-lead .ibop-field input[type=tel]{display:block;width:100%;height:44px;margin:0;padding:0 12px;box-sizing:border-box;border:1px solid var(--ibop-line);border-radius:8px;background:#fff;color:var(--ibop-ink);font:400 15px var(--ibop-body-font);box-shadow:none;transition:border-color .2s,box-shadow .2s}
.ibop-lead .ibop-field input:focus,.ibop-select-btn:focus{outline:0;border-color:var(--ibop-green);box-shadow:0 0 0 3px rgba(123,186,39,.22)}
.ibop-phone{display:flex}
.ibop-cc{position:relative;flex:none}
.ibop-cc-btn{display:flex;align-items:center;gap:6px;height:44px;padding:0 10px;border:1px solid var(--ibop-line);border-right:0;border-radius:8px 0 0 8px;background:#F5F3F3;color:var(--ibop-navy);font:700 14px var(--ibop-body-font);cursor:pointer;box-shadow:none;white-space:nowrap}
.ibop-cc-btn:focus{outline:0;border-color:var(--ibop-green);box-shadow:0 0 0 3px rgba(123,186,39,.22)}
.ibop-cc-flag{font-size:17px;line-height:1}
.ibop-cc-panel{position:absolute;top:calc(100% + 6px);left:0;z-index:40;width:290px;max-width:78vw;padding:8px;background:#fff;border:1px solid var(--ibop-line);border-radius:10px;box-shadow:0 14px 34px rgba(11,29,46,.22)}
.ibop-lead .ibop-field .ibop-cc-panel input.ibop-cc-search{display:block;width:100%;height:38px;margin:0 0 6px;padding:0 10px;box-sizing:border-box;border:1px solid var(--ibop-line);border-radius:8px;font:400 14px var(--ibop-body-font);color:var(--ibop-ink)}
.ibop-cc-list{max-height:220px;margin:0;padding:0;list-style:none;overflow-y:auto}
.ibop-cc-list li{display:flex;align-items:center;gap:9px;margin:0;padding:8px 9px;border-radius:6px;color:var(--ibop-ink);font-size:14px;cursor:pointer}
.ibop-cc-list li:hover,.ibop-cc-list li:focus{outline:0;background:#E5F1D4}
.ibop-cc-list li[aria-selected=true]{background:#E5F1D4;font-weight:700}
.ibop-cc-list .f{font-size:17px;line-height:1}
.ibop-cc-list .n{flex:1;min-width:0}
.ibop-cc-list .d{color:#333333;font-variant-numeric:tabular-nums}
.ibop-cc-empty{padding:10px;color:#333333;font-size:13px}
.ibop-lead .ibop-field .ibop-phone>input[type=tel]{border-radius:0 8px 8px 0;min-width:0}
.ibop-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ibop-err{display:none;margin-top:4px;color:#c5221f;font-size:12px;line-height:1.35}
.ibop-field.has-error .ibop-err{display:block}
.ibop-lead .ibop-field.has-error input,.ibop-field.has-error .ibop-select-btn{border-color:#d93025}
/* custom dropdown: opens UPWARD, all options visible */
.ibop-select{position:relative}
.ibop-select-btn{display:flex;align-items:center;justify-content:space-between;width:100%;height:44px;padding:0 12px;border:1px solid var(--ibop-line);border-radius:8px;background:#fff;color:#333333;font:400 15px var(--ibop-body-font);text-align:left;cursor:pointer;box-shadow:none}
.ibop-select.has-value .ibop-select-btn{color:var(--ibop-ink)}
.ibop-select-btn svg{flex:none;transition:transform .2s}
.ibop-select.open .ibop-select-btn svg{transform:rotate(180deg)}
.ibop-select-list{position:absolute;left:0;right:0;bottom:calc(100% + 6px);z-index:30;display:none;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--ibop-line);border-radius:10px;box-shadow:0 -12px 32px rgba(11,29,46,.2)}
.ibop-select.open .ibop-select-list{display:block}
.ibop-select-list li{margin:0;padding:10px 12px;border-radius:6px;color:var(--ibop-ink);font-size:14.5px;line-height:1.35;cursor:pointer}
.ibop-select-list li:hover,.ibop-select-list li:focus{outline:0;background:#E5F1D4}
.ibop-select-list li[aria-selected=true]{background:#E5F1D4;font-weight:700}
.ibop-lead .ibop-consent{display:flex;align-items:flex-start;gap:10px;margin:8px 0 2px;color:#333333;font-size:12.5px;font-weight:400;line-height:1.45}
.ibop-lead .ibop-consent input{appearance:auto !important;-webkit-appearance:checkbox !important;display:block !important;visibility:visible !important;opacity:1 !important;position:static !important;flex:0 0 18px;width:18px !important;height:18px !important;margin:1px 0 0 !important;accent-color:var(--ibop-green)}
.ibop-submit{width:100%;margin-top:12px}
.ibop-submit[disabled]{opacity:.7;cursor:wait;transform:none;box-shadow:none}
.ibop-spin{display:none;width:16px;height:16px;border:2px solid rgba(11,29,46,.3);border-top-color:var(--ibop-navy);border-radius:50%;animation:ibopSpin .7s linear infinite}
.ibop-submit.is-loading .ibop-spin{display:inline-block}
@keyframes ibopSpin{to{transform:rotate(360deg)}}
.ibop-note{margin:10px 0 0;color:#333333;font-size:11.5px;line-height:1.4;text-align:center}
.ibop-lead .alert{margin:0 0 14px;padding:11px 14px;border-radius:8px;font-size:14px;line-height:1.45}
/* success box */
.ibop-success{display:flex;flex-direction:column;justify-content:center;min-height:100%}
.ibop-success-box{padding:28px 24px;border:1px solid var(--ibop-line);border-radius:12px;text-align:center;box-shadow:0 8px 24px rgba(11,29,46,.08)}
.ibop-success-box:focus{outline:0}
.ibop-logos{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:18px}
.ibop-logos img{display:block;height:42px;width:auto;max-width:45%}
.ibop-success-box h3{margin:0 0 10px;color:var(--ibop-navy);font:400 24px/1.2 var(--ibop-heading-font)}
.ibop-success-box p{margin:0 0 16px;color:#333333;font-size:14px;line-height:1.55}
.ibop-success-box .alert{text-align:left}
@media (max-width:767px){
  .ibop-dialog{grid-template-columns:1fr;max-width:480px}
  .ibop-side{display:none}
  .ibop-pane{padding:28px 20px 20px}
  .ibop-lead h2{font-size:24px}
}
@media (max-width:480px){.ibop-row{grid-template-columns:1fr;gap:0}}

/* ===== ibop-infographic-theme ===== */
/* =========================================================
   IBOP SITE-WIDE INFOGRAPHIC THEME
   Primary: #0B1D2E | Accent: #7BBA27
   Headings: Franklin Gothic | Body/subheadings: Roboto
   CSS-only enhancement: existing PHP/HTML/JS is preserved.
   ========================================================= */
:root {
  --ibop-navy: #0B1D2E;
  --ibop-green: #7BBA27;
  --ibop-green-dark: #5D870C;
  --ibop-text: #333333;
  --ibop-muted: #333333;
  --ibop-pale: #F5F3F3;
  --ibop-border: #E5E2E1;
  --ibop-heading-font: "Franklin Gothic Medium","Franklin Gothic","Libre Franklin","Arial Narrow",Arial,sans-serif;
  --ibop-body-font: "Roboto", Arial, sans-serif;
}

/* Typography across every section */
body,
.page-wrapper {
  font-family: var(--ibop-body-font);
  color: var(--ibop-text);
}
.page-wrapper h1,
.page-wrapper h2,
.page-wrapper h3,
.page-wrapper h4,
.page-wrapper h5,
.page-wrapper h6,
.page-wrapper .sec-title h2,
.page-wrapper .content h3 {
  font-family: var(--ibop-heading-font) !important;
  color: var(--ibop-navy);
  letter-spacing: -.015em;
}
.page-wrapper p,
.page-wrapper li,
.page-wrapper label,
.page-wrapper .sub-title,
.page-wrapper .about-text,
.page-wrapper .content p {
  font-family: var(--ibop-body-font);
}
.page-wrapper p {
  color: var(--ibop-muted);
  /* color: #7bba27; */
  line-height: 1.75;
}
.page-wrapper .sub-title,
.page-wrapper .ibop-eyebrow {
  color: var(--ibop-green);
  font-family: var(--ibop-body-font);
  font-weight: 700;
  letter-spacing: .08em;
}
.page-wrapper a {
  transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}
.page-wrapper a:hover {
  color: var(--ibop-green-dark);
}

/* Consistent section spacing and restrained alternating backgrounds */
.page-wrapper section:not(#home):not(.ibop-marquee) {
  position: relative;
}
.page-wrapper .business-solution-section,
.page-wrapper #about,
.page-wrapper .counter-section,
.page-wrapper #project,
.page-wrapper .marquee-section {
    /* background-color: linear-gradient(180deg, #0C141C, rgba(11, 29, 46, .88) 50%, rgba(7, 16, 27, .96)), var(--bg) center / cover no-repeat fixed; */
  background-color: #fff;
}
.page-wrapper .counter-section {
  padding-top: 26px;
  padding-bottom: 54px;
}
.page-wrapper .service-section,
.page-wrapper .why-choose-section {
  background-color: var(--ibop-navy);
  background-blend-mode: multiply;
}
.page-wrapper .service-section .sec-title h2,
.page-wrapper .service-section .sec-title h3,
.page-wrapper .service-section .service-card-items h3 a,
.page-wrapper .why-choose-section .sec-title h2,
.page-wrapper .why-choose-section .why-choose-list h3 {
  color: #fff !important;
}
.page-wrapper .service-section .sec-title p,
.page-wrapper .service-section .service-card-items p,
.page-wrapper .why-choose-section p,
.page-wrapper .why-choose-section .nav-link {
  color: #E5E2E1;
}

/* Green micro-accents and infographic-style panels */
.page-wrapper .feature-left-content-1,
.page-wrapper .feature-business-solution-items-1,
.page-wrapper .feature-business-solution-items-2,
.page-wrapper .service-card-items,
.page-wrapper .project-card-items,
.page-wrapper .counter-box-1,
.page-wrapper .icon-items,
.page-wrapper .counter-box,
.page-wrapper .icon-box-items {
  border-radius: 14px;
}
.page-wrapper .feature-left-content-1 {
  padding: clamp(22px, 3vw, 34px);
  background: var(--ibop-navy);
  border-bottom: 5px solid var(--ibop-green);
  box-shadow: 0 14px 35px rgba(11,29,46,.12);
}
.page-wrapper .feature-left-content-1 h2,
.page-wrapper .feature-left-content-1 h4,
.page-wrapper .feature-left-content-1 p,
.page-wrapper .feature-left-content-1 span {
  color: #fff;
}
.page-wrapper .feature-left-content-1 h2 {
  line-height: 1.2;
}
.page-wrapper .feature-left-content-1 h4,
.page-wrapper .feature-left-content-1 .star i {
  color: var(--ibop-green);
}
.page-wrapper .feature-business-solution-items-1,
.page-wrapper .feature-business-solution-items-2 {
  overflow: hidden;
  border: 1px solid var(--ibop-border);
  background: #fff;
  box-shadow: 0 12px 32px rgba(11,29,46,.08);
  transition: transform .25s ease, box-shadow .25s ease;
}
.page-wrapper .feature-business-solution-items-1:hover,
.page-wrapper .feature-business-solution-items-2:hover,
.page-wrapper .service-card-items:hover,
.page-wrapper .project-card-items:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 38px rgba(11,29,46,.15);
}
.page-wrapper .feature-business-solution-items-1 .content,
.page-wrapper .feature-business-solution-items-2 .content {
  padding: 24px;
}
.page-wrapper .feature-business-solution-items-1 .icon,
.page-wrapper .feature-business-solution-items-2 .icon,
.page-wrapper .service-card-items .icon {
  color: var(--ibop-green);
}
.page-wrapper .feature-business-solution-items-1 h3,
.page-wrapper .feature-business-solution-items-2 h3 {
  color: var(--ibop-navy);
}
.page-wrapper .business-image img {
  width: 100%;
  object-fit: cover;
}

/* About section: clean editorial layout */
.page-wrapper #about {
  overflow: hidden;
}
.page-wrapper #about .about-content-1 {
  padding: clamp(18px, 3vw, 36px);
}
.page-wrapper #about .sec-title h2 {
  color: var(--ibop-navy);
  line-height: 1.2;
}
.page-wrapper #about .icon-items {
  padding: 16px 18px;
  margin: 18px 0;
  background: var(--ibop-pale);
  border-left: 4px solid var(--ibop-green);
}
.page-wrapper #about .icon-items .icon,
.page-wrapper #about .about-list .icon {
  color: var(--ibop-green);
}
.page-wrapper #about .about-list li {
  margin: 9px 0;
  color: var(--ibop-text);
}
.page-wrapper #about .counter-box {
  background: var(--ibop-navy);
  padding: 18px;
}
.page-wrapper #about .counter-box h2,
.page-wrapper #about .counter-box p {
  color: #fff;
}

/* Statistic cards */
.page-wrapper .counter-section .counter-wrapper {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
.page-wrapper .counter-section .counter-box-1 {
  padding: 25px 18px;
  background: var(--ibop-pale);
  border: 1px solid var(--ibop-border);
  border-top: 4px solid var(--ibop-green);
  text-align: center;
}
.page-wrapper .counter-section .counter-box-1 h2,
.page-wrapper .counter-section .counter-box-1 .count-text {
  color: var(--ibop-navy);
}
.page-wrapper .counter-section .counter-box-1 p {
  margin-bottom: 0;
  color: var(--ibop-muted);
}

/* Services: four clear, scannable infographic cards */
.page-wrapper .service-section .service-wrapper {
  padding: 0 24px 20px;
}
.page-wrapper .service-section .service-card-items {
  height: 100%;
  padding: 25px 22px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.17);
  border-top: 4px solid var(--ibop-green);
  transition: transform .25s ease, background .25s ease;
}
.page-wrapper .service-section .service-card-items:hover {
  background: rgba(255,255,255,.12);
}
.page-wrapper .service-section .service-card-items .icon {
  color: var(--ibop-green);
}
.page-wrapper .service-section .service-card-items h3 a {
  color: #fff;
}
.page-wrapper .service-section .service-card-items p {
  color: #E5E2E1;
}
.page-wrapper .service-section .service-card-items .link-btn {
  color: var(--ibop-green);
}

/* Project/case-study cards */
.page-wrapper #project .sec-title h2 {
  color: var(--ibop-navy);
}
.page-wrapper #project .project-card-items {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--ibop-border);
  box-shadow: 0 10px 30px rgba(11,29,46,.08);
}
.page-wrapper #project .project-card-items .number {
  background: var(--ibop-green);
  color: var(--ibop-navy);
  font-family: var(--ibop-heading-font);
  font-weight: 700;
}
.page-wrapper #project .project-content h3 a {
  color: var(--ibop-navy);
}
.page-wrapper #project .project-content p {
  color: var(--ibop-muted);
}
.page-wrapper .array-button button {
  border-color: var(--ibop-green);
  color: var(--ibop-navy);
}
.page-wrapper .array-button button:hover {
  background: var(--ibop-green);
  color: var(--ibop-navy);
}

/* Mission/vision tabs and other lower-page content */
.page-wrapper .why-choose-section .nav {
  gap: 8px;
}
.page-wrapper .why-choose-section .nav-link {
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 7px;
}
.page-wrapper .why-choose-section .nav-link.active,
.page-wrapper .why-choose-section .nav-link:hover {
  background: var(--ibop-green);
  border-color: var(--ibop-green);
  color: var(--ibop-navy);
}
.page-wrapper .why-choose-section .why-choose-list {
  padding: 20px;
  border-left: 3px solid var(--ibop-green);
  background: rgba(255,255,255,.06);
}
.page-wrapper .why-choose-section .icon-box-items {
  border-left: 4px solid var(--ibop-green);
  background: var(--ibop-navy);
}
.page-wrapper .why-choose-section .icon-box-items h3 {
  color: #fff;
}

/* Forms, links and common buttons */
.page-wrapper button,
.page-wrapper input,
.page-wrapper select,
.page-wrapper textarea {
  font-family: var(--ibop-body-font);
}
.page-wrapper .ibop-btn-primary,
.page-wrapper .ibop-submit {
  background: var(--ibop-green);
  color: var(--ibop-navy) !important;
  border-color: var(--ibop-green);
}
.page-wrapper .ibop-btn-primary:hover,
.page-wrapper .ibop-submit:hover {
  background: #BDDD93;
  border-color: #BDDD93;
  color: var(--ibop-navy) !important;
}
.page-wrapper .ibop-btn-ghost {
  border-color: var(--ibop-green);
}
.page-wrapper input:focus,
.page-wrapper textarea:focus,
.page-wrapper select:focus {
  border-color: var(--ibop-green);
  outline-color: var(--ibop-green);
}

/* Existing topic marquee already uses the brand palette */
.page-wrapper .ibop-marquee {
  background: var(--ibop-navy);
  border-top-color: var(--ibop-green);
}
.page-wrapper .ibop-marquee li:before {
  background: var(--ibop-green);
}

/* Mobile and tablet: prevent cramped infographic cards */
@media (max-width: 991px) {
  .page-wrapper .counter-section .counter-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .page-wrapper .service-section .service-wrapper {
    padding-left: 16px;
    padding-right: 16px;
  }
  .page-wrapper .feature-business-solution-items-1 .content,
  .page-wrapper .feature-business-solution-items-2 .content {
    padding: 20px;
  }
  .ibop-why .ibop-media-frame img {
        aspect-ratio: 8 / 10 !important;
    }

}
@media (max-width: 767px) {
  .page-wrapper h1,
  .page-wrapper h2,
  .page-wrapper h3,
  .page-wrapper h4 {
    overflow-wrap: anywhere;
  }
  .page-wrapper .counter-section .counter-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .page-wrapper .counter-section .counter-box-1 {
    padding: 18px 12px;
  }
  .page-wrapper .service-section .service-wrapper {
    padding-left: 12px;
    padding-right: 12px;
  }
  .page-wrapper .feature-left-content-1 {
    margin-bottom: 18px;
  }
  .page-wrapper .feature-business-solution-items-1,
  .page-wrapper .feature-business-solution-items-2,
  .page-wrapper .service-card-items,
  .page-wrapper .project-card-items {
    margin-bottom: 12px;
  }
}
@media (max-width: 420px) {
  .page-wrapper .counter-section .counter-wrapper {
    grid-template-columns: 1fr;
  }
  .page-wrapper .ibop-hero-inner {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .page-wrapper .feature-business-solution-items-1,
  .page-wrapper .feature-business-solution-items-2,
  .page-wrapper .service-card-items,
  .page-wrapper .project-card-items {
    transition: none;
  }
}

/* ===== ibop-what-css ===== */
.ibop-wrap{max-width:1200px;margin:0 auto;padding:0 24px;box-sizing:border-box}
.ibop-kicker{margin:0 0 10px;color:var(--ibop-green);font:700 13px/1.3 var(--ibop-body-font);letter-spacing:.12em;text-transform:uppercase}
.ibop-trust{padding:64px 0;background:#fff}
.ibop-trust-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:center}
.ibop-trust-list{margin:0;padding:0;list-style:none;display:grid;gap:18px}
.ibop-trust-list li{position:relative;padding:20px 22px 20px 26px;background:var(--ibop-pale,#F5F3F3);border:1px solid var(--ibop-border,#E5E2E1);border-left:5px solid var(--ibop-green);border-radius:12px}
.ibop-trust-role{display:block;margin-bottom:4px;color:var(--ibop-muted,#333333);font:700 12px/1.3 var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.ibop-trust-list h3{margin:0 0 6px;font-size:26px;line-height:1.2;color:var(--ibop-navy)}
.ibop-trust-list p{margin:0;font-size:15px;line-height:1.6}
.ibop-trust-logos{display:grid;gap:16px;padding:28px;background:var(--ibop-navy);border-radius:16px;border-bottom:5px solid var(--ibop-green);box-shadow:0 18px 40px rgba(11,29,46,.18)}
.ibop-logo-card{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:92px;padding:16px 22px;background:#fff;border-radius:12px}
.ibop-logo-card img{display:block;max-height:56px;max-width:60%;width:auto;object-fit:contain}
.ibop-logo-card span{color:var(--ibop-navy);font:700 13px var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.ibop-what{padding:70px 0 80px;background:var(--ibop-pale,#F5F3F3)}
.ibop-what-head h2{margin:0 0 22px;font-size:clamp(28px,3.6vw,42px);line-height:1.15;color:var(--ibop-navy)}
.ibop-what-text{max-width:900px}
.ibop-what-text p{margin:0 0 16px;font-size:16px}
.ibop-pull{margin:24px 0 0;padding:18px 22px;border-left:5px solid var(--ibop-green);background:#fff;border-radius:0 12px 12px 0;color:var(--ibop-navy);font:500 19px/1.55 var(--ibop-body-font)}
.ibop-wave-head{max-width:900px;margin:56px 0 28px}
.ibop-wave-head h3{margin:0 0 12px;font-size:clamp(24px,3vw,32px);color:var(--ibop-navy)}
.ibop-wave-head p{margin:0 0 12px}
.ibop-wave-head .ibop-tagline{color:var(--ibop-navy);font:700 18px var(--ibop-body-font)}
.ibop-wave-wrap{position:relative;padding-bottom:10px}
.ibop-wave-svg{position:absolute;left:0;top:0;width:100%;height:120px;pointer-events:none}
.ibop-wave{position:relative;margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.ibop-step{position:relative;padding:0 14px;text-align:center}
.ibop-step:nth-child(even){margin-top:60px}
.ibop-dot{display:flex;align-items:center;justify-content:center;width:30px;height:30px;margin:-1px auto 14px;border-radius:50%;background:var(--ibop-navy);border:3px solid var(--ibop-green);color:#fff;font:700 13px var(--ibop-body-font);box-shadow:0 0 0 5px var(--ibop-pale,#F5F3F3)}
.ibop-step:nth-child(odd){padding-top:0}
.ibop-step h4{margin:0 0 6px;font-size:21px;color:var(--ibop-navy)}
.ibop-step p{margin:0;font-size:14.5px;line-height:1.55}
.ibop-wave{padding-top:0}
.ibop-step:nth-child(odd) .ibop-dot{margin-top:-1px}
@media (max-width:991px){
  .ibop-trust-grid{grid-template-columns:1fr;gap:32px}
}
@media (max-width:767px){
  .ibop-trust{padding:44px 0}.ibop-what{padding:48px 0 56px}
  .ibop-wave-svg{display:none}
  .ibop-wave{grid-template-columns:1fr;gap:20px;padding-left:22px;border-left:3px solid var(--ibop-green);margin-left:14px}
  .ibop-step,.ibop-step:nth-child(even){margin-top:0;padding:0 0 0 26px;text-align:left}
  .ibop-dot{position:absolute;left:-39px;top:0;margin:0}
}

/* ===== ibop-anim-css ===== */
/* animation base: only hidden when JS is running */
.ibop-anim .ibop-reveal,.ibop-anim .ibop-trust-list li,.ibop-anim .ibop-logo-card,.ibop-anim .ibop-what-text p{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.ibop-anim .ibop-trust-list li{transform:translateX(-40px)}
.ibop-anim .ibop-logo-card{transform:translateX(50px) scale(.94)}
.ibop-anim .ibop-trust-logos.ibop-reveal{opacity:1;transform:none}
.ibop-anim .is-in.ibop-reveal,.ibop-anim .is-in>li,.ibop-anim .is-in>.ibop-logo-card,.ibop-anim .is-in>p,.ibop-anim .ibop-trust-logos.is-in .ibop-logo-card{opacity:1;transform:none}
.ibop-anim .ibop-what-text.ibop-reveal,.ibop-anim .ibop-wave-head.ibop-reveal{opacity:1;transform:none}
.ibop-anim .ibop-wave-head>*{opacity:0;transform:translateY(20px);transition:opacity .7s ease var(--d,0s),transform .7s ease var(--d,0s)}
.ibop-anim .ibop-wave-head.is-in>*{opacity:1;transform:none}
/* typewriter */
[data-typewriter] .tw-r{visibility:hidden}
[data-typewriter].is-typing .tw-t::after{content:"";display:inline-block;width:2px;height:1em;margin-left:3px;vertical-align:-.12em;background:var(--ibop-green);animation:ibopCaret .7s steps(1) infinite}
[data-typewriter].tw-done .tw-t::after{animation:ibopCaret .7s steps(1) 4;opacity:0}
@keyframes ibopCaret{50%{opacity:0}}
/* trust list polish */
.ibop-trust-list li{transition:box-shadow .25s ease,transform .25s ease,opacity .8s ease var(--d,0s)}
.ibop-trust-list li:hover{box-shadow:0 14px 30px rgba(11,29,46,.12);transform:translateX(6px)!important}
.ibop-trust-list li:before{content:"";position:absolute;left:-5px;top:0;width:5px;height:0;background:var(--ibop-navy);transition:height .8s ease calc(var(--d,0s) + .3s)}
.ibop-anim .is-in>li:before{height:30%}
.ibop-trust-logos{position:relative;overflow:hidden}
.ibop-trust-logos:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 0deg,transparent 0 70%,rgba(123,186,39,.35) 85%,transparent 100%);animation:ibopSpinSlow 9s linear infinite;pointer-events:none}
.ibop-trust-logos:after{content:"";position:absolute;inset:3px;background:var(--ibop-navy);border-radius:13px;pointer-events:none}
.ibop-logo-card{position:relative;z-index:2}
.ibop-trust-logos{padding:30px}
@keyframes ibopSpinSlow{to{transform:rotate(360deg)}}
.ibop-logo-card{transition:transform .3s ease,box-shadow .3s ease,opacity .8s ease var(--d,0s)}
.ibop-logo-card:hover{transform:translateY(-4px) scale(1.02)!important;box-shadow:0 14px 30px rgba(0,0,0,.3)}
.ibop-trust-logos.is-in .ibop-logo-card img{animation:ibopFloat 5s ease-in-out infinite}
.ibop-trust-logos.is-in .ibop-logo-card:nth-child(2) img{animation-delay:-1.6s}
.ibop-trust-logos.is-in .ibop-logo-card:nth-child(3) img{animation-delay:-3.2s}
@keyframes ibopFloat{50%{transform:translateY(-4px)}}
/* wave: draws left to right, then steps pop in */
.ibop-anim .ibop-wave-svg{clip-path:inset(0 100% 0 0);transition:clip-path 2.4s cubic-bezier(.45,.05,.25,1) .2s;filter:drop-shadow(0 0 6px rgba(123,186,39,.55))}
.ibop-anim [data-wave].is-in .ibop-wave-svg{clip-path:inset(0 0 0 0)}
.ibop-anim .ibop-step{opacity:0;transform:translateY(30px) scale(.85);transition:opacity .6s ease var(--d,0s),transform .7s cubic-bezier(.3,1.5,.5,1) var(--d,0s)}
.ibop-anim [data-wave].is-in .ibop-step{opacity:1;transform:none}
.ibop-dot{position:relative}
.ibop-dot:after{content:"";position:absolute;inset:-3px;border-radius:50%;border:2px solid var(--ibop-green);opacity:0}
[data-wave].is-in .ibop-dot:after{animation:ibopPing 2.6s ease-out infinite;animation-delay:calc(var(--d,0s) + 1s)}
@keyframes ibopPing{0%{transform:scale(1);opacity:.8}100%{transform:scale(2.3);opacity:0}}
.ibop-step{transition:transform .3s ease}
.ibop-step:hover .ibop-dot{background:var(--ibop-green);color:var(--ibop-navy);transform:scale(1.15)}
.ibop-dot{transition:background .25s ease,color .25s ease,transform .25s ease}
.ibop-pull{position:relative;overflow:hidden}
.ibop-pull:after{content:"";position:absolute;left:0;top:0;bottom:0;width:100%;background:linear-gradient(90deg,transparent,rgba(123,186,39,.18),transparent);transform:translateX(-100%)}
.ibop-pull.is-in:after{animation:ibopShine 2.2s ease .8s 1}
@keyframes ibopShine{to{transform:translateX(100%)}}
@media (prefers-reduced-motion:reduce){
  .ibop-anim *,.ibop-trust-logos:before,.ibop-dot:after{animation:none!important;transition:none!important}
  .ibop-anim .ibop-reveal,.ibop-anim .ibop-trust-list li,.ibop-anim .ibop-logo-card,.ibop-anim .ibop-what-text p,.ibop-anim .ibop-step,.ibop-anim .ibop-wave-head>*{opacity:1!important;transform:none!important}
  .ibop-anim .ibop-wave-svg{clip-path:none!important}
}
@media (max-width:767px){.ibop-anim .ibop-trust-list li{transform:translateY(24px)}.ibop-anim .ibop-logo-card{transform:translateY(24px)}}

/* ===== ibop-dark-css ===== */
/* ===== dark sections with background image + shadow ===== */
.page-wrapper .ibop-trust,.page-wrapper .ibop-what{position:relative;isolation:isolate;overflow:hidden;color:#E6E7E8;
  background:linear-gradient(180deg,rgba(12,20,28,.94),rgba(11,29,46,.88) 50%,rgba(12,20,28,.96)),var(--bg) center/cover no-repeat fixed;
  box-shadow:inset 0 70px 90px -50px rgba(0,0,0,.75),inset 0 -70px 90px -50px rgba(0,0,0,.75)}
.page-wrapper .ibop-trust{padding:84px 0}
.page-wrapper .ibop-what{padding:84px 0 90px}
.ibop-trust:before,.ibop-what:before{content:"";position:absolute;z-index:-1;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(123,186,39,.22),transparent 65%);filter:blur(10px);animation:ibopGlow 9s ease-in-out infinite alternate;pointer-events:none}
.ibop-trust:before{left:-160px;top:-140px}
.ibop-what:before{right:-180px;bottom:-160px}
@keyframes ibopGlow{to{transform:translate(60px,40px) scale(1.15)}}
.page-wrapper .ibop-trust h2,.page-wrapper .ibop-what h2,.page-wrapper .ibop-what h3,.page-wrapper .ibop-pcard h3,.page-wrapper .ibop-step h4{color:#fff}
.page-wrapper .ibop-trust p,.page-wrapper .ibop-what p{color:#D1D3D4;  text-align: justify;}
.page-wrapper .ibop-what .ibop-tagline{color:var(--ibop-green)}
.page-wrapper .ibop-trust .ibop-kicker,.page-wrapper .ibop-what .ibop-kicker{color:var(--ibop-green)}
/* section head */
.ibop-trust-head{max-width:760px;margin:0 auto 46px;text-align:center}
.ibop-trust-head h2{margin:0;font-size:clamp(28px,3.6vw,44px);line-height:1.15}
/* 3 cards in one row */
.ibop-pathway{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px}
.ibop-pcard{position:relative;padding:34px 28px 30px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-top:4px solid var(--ibop-green);border-radius:16px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 24px 50px rgba(0,0,0,.45);transition:transform .35s ease,box-shadow .35s ease,background .35s ease,opacity .9s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.ibop-pcard:hover{background:rgba(255,255,255,.12);box-shadow:0 30px 60px rgba(0,0,0,.55),0 0 0 1px rgba(123,186,39,.5)}
.ibop-pnum{position:absolute;right:20px;top:10px;font:700 54px/1 var(--ibop-heading-font);color:rgba(255,255,255,.08)}
.ibop-plogo{display:flex;align-items:center;justify-content:center;height:84px;margin-bottom:22px;padding:12px 18px;background:#fff;border-radius:12px;box-shadow:0 10px 24px rgba(0,0,0,.3)}
.ibop-plogo img{display:block;max-height:58px;max-width:100%;width:auto;object-fit:contain}
.ibop-plogo strong{color:var(--ibop-navy);font:700 20px var(--ibop-heading-font)}
.page-wrapper .ibop-pcard .ibop-trust-role{color:var(--ibop-green)}
.ibop-pcard h3{margin:2px 0 10px;font-size:30px;line-height:1.15}
.ibop-pcard p{margin:0;font-size:15.5px;line-height:1.65}
.ibop-pcard:not(:last-child):after{content:"\203A";position:absolute;right:-37px;top:50%;width:30px;height:30px;margin-top:-15px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ibop-green);color:var(--ibop-navy);font:700 22px/1 var(--ibop-body-font);animation:ibopNudge 1.6s ease-in-out infinite}
@keyframes ibopNudge{50%{transform:translateX(5px)}}
/* what is IBOP: text left, image right */
.ibop-what-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:56px;align-items:center}
.ibop-what-copy h2{margin:0 0 20px;font-size:clamp(28px,3.4vw,42px);line-height:1.15}
.ibop-what-copy p{font-size:16px;margin:0 0 16px}
.ibop-what .ibop-pull{margin:22px 0 0;padding:18px 22px;background:rgba(255,255,255,.07);border-left:5px solid var(--ibop-green);border-radius:0 12px 12px 0;color:#fff;font:500 19px/1.55 var(--ibop-body-font);box-shadow:0 14px 34px rgba(0,0,0,.35)}
.ibop-what-media{position:relative}
.ibop-media-frame{position:relative;border-radius:18px;box-shadow:0 34px 70px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.12);animation:ibopBob 7s ease-in-out infinite}
.ibop-media-frame:before{content:"";position:absolute;inset:18px -18px -18px 18px;border:3px solid var(--ibop-green);border-radius:20px;z-index:-1;opacity:.85}
.ibop-media-frame img{display:block;width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:18px}
.ibop-media-frame:after{content:"";position:absolute;inset:0;border-radius:18px;background:linear-gradient(180deg,transparent 55%,rgba(12,20,28,.7));pointer-events:none}
.ibop-media-badge{position:absolute;left:18px;bottom:18px;z-index:2;display:flex;flex-direction:column;padding:12px 18px;background:var(--ibop-green);color:var(--ibop-navy);border-radius:10px;font:500 13px/1.3 var(--ibop-body-font);box-shadow:0 12px 26px rgba(0,0,0,.4)}
.ibop-media-badge strong{font:700 24px/1.1 var(--ibop-heading-font)}
@keyframes ibopBob{50%{transform:translateY(-10px)}}
/* wave panel */
.ibop-wave-panel{margin-top:64px;padding:44px 34px 46px;background:rgba(12,20,28,.62);border:1px solid rgba(255,255,255,.12);border-radius:20px;box-shadow:0 26px 60px rgba(0,0,0,.5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ibop-wave-head{max-width:860px;margin:0 auto 34px;text-align:center}
.ibop-dot{box-shadow:0 0 0 5px rgba(123,186,39,.18)}
.page-wrapper .ibop-step p{color:#D1D3D4}
/* directional entrances (higher specificity than base reveal) */
.ibop-anim .ibop-reveal.ibop-from-left{opacity:0;transform:translateX(-90px)}
.ibop-anim .ibop-reveal.ibop-from-right{opacity:0;transform:translateX(90px)}
.ibop-anim .ibop-reveal.ibop-from-up{opacity:0;transform:translateY(60px)}
.ibop-anim .ibop-reveal.ibop-from-left.is-in,.ibop-anim .ibop-reveal.ibop-from-right.is-in,.ibop-anim .ibop-reveal.ibop-from-up.is-in{opacity:1;transform:none}
.ibop-anim .ibop-what-media.ibop-reveal{transition-duration:1.1s}
.ibop-anim .ibop-pcard.ibop-reveal{transition:opacity .9s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .9s cubic-bezier(.2,.7,.2,1) var(--d,0s),box-shadow .35s,background .35s}
.ibop-anim .ibop-pcard.ibop-reveal.is-in:hover{transform:translateY(-8px);transition-delay:0s}
@media (max-width:991px){
  .ibop-pathway{grid-template-columns:1fr;gap:26px}
  .ibop-pcard:not(:last-child):after{display:none}
  .ibop-what-grid{grid-template-columns:1fr;gap:44px}
  .page-wrapper .ibop-trust,.page-wrapper .ibop-what{background-attachment:scroll}
}
@media (max-width:767px){
  .page-wrapper .ibop-trust{padding:56px 0}.page-wrapper .ibop-what{padding:56px 0 60px}
  .ibop-wave-panel{padding:30px 18px 30px}
  .ibop-media-frame:before{inset:12px -8px -12px 8px}
  .ibop-anim .ibop-reveal.ibop-from-left,.ibop-anim .ibop-reveal.ibop-from-right{transform:translateY(40px)}
}
@media (prefers-reduced-motion:reduce){
  .ibop-trust:before,.ibop-what:before,.ibop-media-frame,.ibop-pcard:after{animation:none!important}
  .ibop-anim .ibop-reveal{opacity:1!important;transform:none!important}
}

/* ===== ibop-wave-mobile ===== */
@media (max-width:991px) and (min-width:768px){
  .ibop-step{padding:0 8px}.ibop-step h4{font-size:18px}.ibop-step p{font-size:13.5px}
}
@media (max-width:767px){
  .ibop-wave-wrap{padding:0}
  .ibop-wave{display:flex;flex-direction:column;align-items:center;gap:0;margin:0;padding:0;border:0}
  .ibop-step,.ibop-step:nth-child(even),.ibop-step:nth-child(odd){width:100%;max-width:340px;margin:0 auto;padding:0;text-align:center;display:flex;flex-direction:column;align-items:center}
  .ibop-dot,.ibop-step:nth-child(odd) .ibop-dot{position:relative;left:auto;top:auto;margin:0 auto 12px;width:40px;height:40px;font-size:16px}
  .ibop-step h4{margin:0 0 6px;font-size:22px;text-align:center}
  .ibop-step p{margin:0;max-width:300px;text-align:center}
  .ibop-step:not(:last-child):after{content:"";display:block;width:3px;height:34px;margin:20px auto 20px;border-radius:3px;background:linear-gradient(var(--ibop-green),rgba(123,186,39,.15));transform-origin:top;transform:scaleY(0);transition:transform .6s ease calc(var(--d,0s) + .3s)}
  [data-wave].is-in .ibop-step:not(:last-child):after{transform:scaleY(1)}
  .ibop-wave-head{margin-bottom:28px}
  .ibop-wave-head h3{font-size:24px}
}

/* ===== ibop-why-css ===== */
.ibop-cta-band{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:56px;padding:26px 30px;background:linear-gradient(100deg,rgba(123,186,39,.26),rgba(255,255,255,.06) 62%);border:1px solid rgba(123,186,39,.55);border-radius:18px;box-shadow:0 22px 50px rgba(0,0,0,.45),0 0 40px rgba(123,186,39,.15)}
.ibop-cta-band:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);transform:translateX(-120%);pointer-events:none}
.ibop-cta-band.is-in:after{animation:ibopShine 2.4s ease .9s 1}
.ibop-what .ibop-cta-band .ibop-pull{flex:1;margin:0;padding:4px 0 4px 20px;background:none;box-shadow:none;border-radius:0;font-size:20px}
.ibop-cta-actions{position:relative;z-index:2;flex:none;display:flex;flex-direction:column;gap:12px;min-width:210px}
.ibop-cta-actions .ibop-btn{width:100%}
.ibop-cta-actions .ibop-btn-primary{animation:ibopPulse 2.2s ease-out infinite}
.ibop-cta-actions .ibop-btn-ghost{background:rgba(255,255,255,.08)}
.ibop-cta-actions .ibop-btn-ghost:hover{background:var(--ibop-green);color:var(--ibop-navy)!important}
@keyframes ibopPulse{0%{box-shadow:0 0 0 0 rgba(123,186,39,.65)}70%{box-shadow:0 0 0 16px rgba(123,186,39,0)}100%{box-shadow:0 0 0 0 rgba(123,186,39,0)}}
.page-wrapper .ibop-why{background:linear-gradient(200deg,rgba(11,29,46,.9),rgba(12,20,28,.97) 70%),var(--bg) center/cover no-repeat fixed}
.ibop-why:before{left:-180px!important;top:-160px!important;right:auto!important;bottom:auto!important}
.ibop-why-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:center}
.ibop-why .ibop-media-frame:before{inset:18px 18px -18px -18px}
.ibop-why .ibop-media-frame img{aspect-ratio:4/5}
.ibop-why-copy h2{margin:0 0 20px;font-size:clamp(26px,3vw,38px);line-height:1.2}
.ibop-why-copy p{font-size:16px;margin:0 0 16px}
.ibop-why-logos{display:flex;flex-wrap:wrap;gap:6px;margin:22px 0}
.ibop-chip{display:flex;align-items:center;gap:10px;min-height:56px;padding:8px 16px;border-radius:10px;box-shadow:0 10px 22px rgba(0,0,0,.3)}
.ibop-chip img{display:block;max-height:38px;max-width:130px;width:auto;object-fit:contain}
.ibop-chip strong{color:var(--ibop-navy);font:700 15px var(--ibop-heading-font)}


.page-wrapper .ibop-aacsb span {
    color: var(--ibop-navy);
    font: 700 8.5px / 1.3 var(--ibop-body-font);
    max-width: 160px;
}
/* .page-wrapper .ibop-aacsb span{color:var(--ibop-navy);font:700 12.5px/1.3 var(--ibop-body-font);max-width:160px} */
.ibop-why-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px}
.ibop-stat{padding:20px 22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);border-top:4px solid var(--ibop-green);border-radius:14px;box-shadow:0 16px 34px rgba(0,0,0,.35)}
.ibop-stat strong{display:block;color:var(--ibop-green);font:400 clamp(34px,4vw,48px)/1.1 var(--ibop-heading-font)}
.page-wrapper .ibop-stat>span{display:block;margin-top:6px;color:#D1D3D4;font-size:14px;line-height:1.45}
.ibop-why-line{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:20px;border-top:1px solid rgba(255,255,255,.15)}
.page-wrapper .ibop-why-line p{margin:0;color:#fff;font:500 20px/1.4 var(--ibop-heading-font)}
.ibop-anim .ibop-why-logos>*,.ibop-anim .ibop-why-stats>*{opacity:0;transform:translateY(26px) scale(.9);transition:opacity .7s ease var(--d,0s),transform .7s cubic-bezier(.3,1.4,.5,1) var(--d,0s)}
.ibop-anim .ibop-why-logos.is-in>*,.ibop-anim .ibop-why-stats.is-in>*{opacity:1;transform:none}
@media (max-width:991px){
  .ibop-why-grid{grid-template-columns:1fr;gap:44px}
  .ibop-why .ibop-media-frame img{aspect-ratio:16/10}
  .ibop-cta-band{flex-direction:column;align-items:stretch;text-align:center}
  .ibop-what .ibop-cta-band .ibop-pull{padding:4px 0;border-left:0;font-size:18px}
  .ibop-cta-actions{flex-direction:row;min-width:0}
  .ibop-cta-actions .ibop-btn{flex:1}
}
@media (max-width:575px){
  .ibop-cta-band{padding:22px 18px}
  .ibop-cta-actions{flex-direction:column}
  .ibop-why-stats{gap:10px}
  .ibop-stat{padding:16px 14px}
  .ibop-why-line{flex-direction:column;align-items:stretch;text-align:center}
  .ibop-why-line .ibop-btn{width:100%}
  .ibop-why-logos{justify-content:center}
}
@media (prefers-reduced-motion:reduce){.ibop-cta-actions .ibop-btn-primary{animation:none}.ibop-anim .ibop-why-logos>*,.ibop-anim .ibop-why-stats>*{opacity:1!important;transform:none!important}}

/* ===== ibop-fw-teach-css ===== */
/* ===== shared tokens: navy #0B1D2E, green #7BBA27 | Franklin headings, Roboto body ===== */
.ibop-fw,.ibop-teach{position:relative;overflow:hidden;font-family:var(--ibop-body-font)}
.ibop-fw .ibop-wrap,.ibop-teach .ibop-wrap{position:relative}
/* ===== FOR WHOM (light) ===== */
.page-wrapper .ibop-fw{padding:96px 0;background:#fff}
.ibop-fw:before{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(123,186,39,.16),transparent 68%);pointer-events:none}
.ibop-fw-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:72px;align-items:center}
.ibop-fw-media{position:relative;padding:0 0 46px 18px}
.ibop-fw-big{position:relative;z-index:2;width:80%;aspect-ratio:1/1;border-radius:20px;overflow:hidden;box-shadow:0 28px 60px rgba(11,29,46,.28)}
.ibop-fw-big img,.ibop-fw-small img{display:block;width:100%;height:100%;object-fit:cover}
.ibop-fw-small{position:absolute;z-index:3;right:0;bottom:0;width:46%;aspect-ratio:1/1;border:8px solid #fff;border-radius:18px;overflow:hidden;box-shadow:0 22px 46px rgba(11,29,46,.35);animation:ibopBob 6s ease-in-out infinite}
.ibop-fw-block{position:absolute;z-index:1;left:0;top:-18px;width:56%;aspect-ratio:1/1;background:var(--ibop-green);border-radius:20px}
.ibop-fw-dots{position:absolute;z-index:1;right:6%;top:6%;width:120px;height:120px;background-image:radial-gradient(var(--ibop-navy) 2px,transparent 2.5px);background-size:16px 16px;opacity:.35}
.ibop-fw-badge{position:absolute;z-index:4;left:-6px;bottom:34px;display:flex;flex-direction:column;max-width:210px;padding:12px 16px;background:var(--ibop-navy);color:#fff;border-left:5px solid var(--ibop-green);border-radius:10px;box-shadow:0 16px 34px rgba(11,29,46,.4)}
.ibop-fw-badge strong{font:400 20px/1.1 var(--ibop-heading-font);color:var(--ibop-green)}
.ibop-fw-badge span{margin-top:4px;font:400 12px/1.4 var(--ibop-body-font);color:#E5E2E1}
.page-wrapper .ibop-fw .ibop-kicker{color:var(--ibop-green)}
.page-wrapper .ibop-fw h2{margin:0 0 20px;color:var(--ibop-navy);font-size:clamp(30px,3.8vw,48px);line-height:1.12}
.ibop-hl{position:relative;display:inline-block;color:var(--ibop-green)}
.ibop-hl:after{content:"";position:absolute;left:0;bottom:2px;width:100%;height:5px;background:var(--ibop-navy);border-radius:3px;transform:scaleX(0);transform-origin:left;transition:transform 1s ease .9s}
.ibop-fw-copy.is-in .ibop-hl:after{transform:scaleX(1)}
.page-wrapper .ibop-fw-copy>p:not(.ibop-kicker){margin:0 0 14px;color:#333333;font-size:16px;line-height:1.75}
.ibop-fw-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:26px 0;padding:0;list-style:none}
.ibop-fw-tiles li{position:relative;padding:18px 16px 16px;background:#F5F3F3;border:1px solid #E5E2E1;border-top:4px solid var(--ibop-green);border-radius:14px;transition:transform .3s ease,box-shadow .3s ease,background .3s ease}
.ibop-fw-tiles li:hover{transform:translateY(-6px);background:var(--ibop-navy);box-shadow:0 18px 34px rgba(11,29,46,.25)}
.ibop-tile-no{display:block;margin-bottom:6px;color:var(--ibop-green);font:400 28px/1 var(--ibop-heading-font)}
.ibop-fw-tiles strong{display:block;margin-bottom:4px;color:var(--ibop-navy);font:400 19px/1.2 var(--ibop-heading-font)}
.ibop-fw-tiles li>span:last-child{display:block;color:#333333;font-size:13px;line-height:1.5}
.ibop-fw-tiles li:hover strong{color:#fff}.ibop-fw-tiles li:hover>span:last-child{color:#E5E2E1}
.ibop-fw-line{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:18px 22px;background:var(--ibop-navy);border-left:6px solid var(--ibop-green);border-radius:14px;box-shadow:0 18px 40px rgba(11,29,46,.25)}
.page-wrapper .ibop-fw-line p.ibop-fw-tag{margin:0;color:#fff;font:400 24px/1.25 var(--ibop-heading-font)}
.page-wrapper .ibop-fw-line .ibop-fw-tag span{color:var(--ibop-green)}
/* ===== WHO TEACHES YOU (dark) ===== */
.page-wrapper .ibop-teach{padding:96px 0;color:#E6E7E8;background:linear-gradient(180deg,rgba(12,20,28,.95),rgba(11,29,46,.9) 55%,rgba(12,20,28,.97)),var(--bg) center/cover no-repeat fixed;box-shadow:inset 0 70px 90px -50px rgba(0,0,0,.75),inset 0 -70px 90px -50px rgba(0,0,0,.75)}
.ibop-teach:before{content:"";position:absolute;left:-160px;bottom:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(123,186,39,.2),transparent 65%);animation:ibopGlow 9s ease-in-out infinite alternate;pointer-events:none}
.ibop-teach-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:end;margin-bottom:52px}
.page-wrapper .ibop-teach .ibop-kicker{color:var(--ibop-green)}
.page-wrapper .ibop-teach h2{margin:0;color:#fff;font-size:clamp(30px,3.8vw,48px);line-height:1.12}
.page-wrapper .ibop-teach-text p{margin:0;padding-left:22px;border-left:4px solid var(--ibop-green);color:#D1D3D4;font-size:16px;line-height:1.8}
.ibop-tgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.ibop-tcard{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:16px;overflow:hidden;outline:0;box-shadow:0 22px 46px rgba(0,0,0,.4);transition:transform .4s ease,box-shadow .4s ease,border-color .4s ease}
.ibop-tcard:hover,.ibop-tcard:focus-visible{transform:translateY(-10px);border-color:var(--ibop-green);box-shadow:0 30px 60px rgba(0,0,0,.55),0 0 0 1px var(--ibop-green)}
.ibop-tc-img{position:relative;aspect-ratio:1/1;overflow:hidden;background:linear-gradient(160deg,#204870,#0B1D2E)}
.ibop-tc-img svg{position:absolute;left:50%;bottom:0;width:70%;transform:translateX(-50%);fill:rgba(255,255,255,.18)}
/* .ibop-tc-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);transition:filter .6s ease,transform .7s ease} */
.ibop-tc-img img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 110%;
    object-fit: contain;
    filter: grayscale(1) contrast(1.05);
    transition: filter .6s ease, transform .7s ease;
}
.ibop-tcard:hover .ibop-tc-img img,.ibop-tcard:focus-visible .ibop-tc-img img{filter:none;transform:scale(1.08)}
.ibop-tc-img:after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--ibop-green);transform:scaleX(0);transform-origin:left;transition:transform .5s ease}
.ibop-tcard:hover .ibop-tc-img:after,.ibop-tcard:focus-visible .ibop-tc-img:after{transform:scaleX(1)}
.ibop-tc-no{position:absolute;left:12px;top:12px;z-index:2;padding:4px 10px;background:var(--ibop-navy);color:var(--ibop-green);border-radius:6px;font:400 15px/1.2 var(--ibop-heading-font)}
/* .ibop-tc-body{padding:18px 18px 22px} */
.ibop-tc-body {
    padding: 18px 18px 22px;
    background-color: #0B1D2E;
}
.page-wrapper .ibop-tcard h3{margin:0 0 6px;color:#fff;font-size:22px;line-height:1.2}
.ibop-tc-desig{display:block;margin-bottom:8px;color:var(--ibop-green);font:700 12px/1.4 var(--ibop-body-font);letter-spacing:.08em;text-transform:uppercase}
.page-wrapper .ibop-tcard p{margin:0;color:#D1D3D4;font-size:14px;line-height:1.55}
.ibop-teach-std{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:48px;padding:26px 30px;background:linear-gradient(100deg,rgba(123,186,39,.24),rgba(255,255,255,.05) 65%);border:1px solid rgba(123,186,39,.5);border-radius:18px;box-shadow:0 22px 50px rgba(0,0,0,.45)}
.page-wrapper .ibop-teach-std p{flex:1;margin:0;color:#fff;font-size:21px;line-height:1.7}
.ibop-std-pills{flex:none;display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}
.ibop-std-pills li{display:flex;align-items:center;gap:10px;padding:8px 16px 8px 8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:40px;color:#fff;font:500 14px var(--ibop-body-font);white-space:nowrap}
.ibop-std-pills b{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--ibop-green);color:var(--ibop-navy);font:400 14px var(--ibop-heading-font)}
/* animations */
.ibop-anim .ibop-fw-tiles>li,.ibop-anim .ibop-tgrid>*{opacity:0;transform:translateY(34px) scale(.94);transition:opacity .7s ease var(--d,0s),transform .8s cubic-bezier(.3,1.3,.5,1) var(--d,0s),box-shadow .4s,border-color .4s,background .3s}
.ibop-anim .ibop-fw-tiles.is-in>li,.ibop-anim .ibop-tgrid.is-in>*{opacity:1;transform:none}
.ibop-anim .ibop-fw-tiles.is-in>li:hover{transform:translateY(-6px);transition-delay:0s}
.ibop-anim .ibop-tgrid.is-in>.ibop-tcard:hover{transform:translateY(-10px);transition-delay:0s}
.ibop-anim .ibop-fw-media.ibop-reveal{transition-duration:1.1s}
/* responsive */
@media (max-width:1100px){.ibop-tgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:991px){
  .page-wrapper .ibop-fw,.page-wrapper .ibop-teach{padding:64px 0}
  .page-wrapper .ibop-teach{background-attachment:scroll}
  .ibop-fw-grid{grid-template-columns:1fr;gap:56px}
  .ibop-fw-media{max-width:520px;margin:0 auto;width:100%}
  .ibop-teach-head{grid-template-columns:1fr;gap:26px;align-items:start;margin-bottom:38px}
  .ibop-teach-std{flex-direction:column;align-items:stretch}
  .ibop-std-pills{flex-direction:row;flex-wrap:wrap;justify-content:center}
}
@media (max-width:640px){
  .ibop-fw-tiles{grid-template-columns:1fr}
  .ibop-fw-line{flex-direction:column;align-items:stretch;text-align:center}
  .ibop-fw-line .ibop-btn{width:100%}
  .ibop-fw-badge{left:0;bottom:24px;max-width:170px;padding:10px 12px}
  .ibop-tgrid{gap:14px}
  .ibop-tc-body{padding:14px 12px 16px}
  .page-wrapper .ibop-tcard h3{font-size:18px}
  .ibop-tc-desig{font-size:10.5px}
  .page-wrapper .ibop-tcard p{font-size:12.5px}
  .ibop-teach-std{padding:22px 18px}
  .ibop-std-pills li{white-space:normal}
}
@media (max-width:420px){.ibop-tgrid{grid-template-columns:1fr}}
@media (hover:none){.ibop-tcard:active .ibop-tc-img img,.ibop-tcard:focus .ibop-tc-img img{filter:none}}
@media (prefers-reduced-motion:reduce){.ibop-fw-small,.ibop-teach:before{animation:none!important}.ibop-anim .ibop-fw-tiles>li,.ibop-anim .ibop-tgrid>*{opacity:1!important;transform:none!important}.ibop-hl:after{transform:scaleX(1)!important}}

/* ===== ibop-fw-dark-css ===== */
/* ===== FOR WHOM: dark theme over background image ===== */
.page-wrapper .ibop-fw{color:#E6E7E8;background:linear-gradient(115deg,rgba(12,20,28,.96),rgba(11,29,46,.88) 55%,rgba(12,20,28,.95)),var(--bg) center/cover no-repeat fixed;box-shadow:inset 0 70px 90px -50px rgba(0,0,0,.75),inset 0 -70px 90px -50px rgba(0,0,0,.75)}
.ibop-fw:before{background:radial-gradient(circle,rgba(123,186,39,.24),transparent 68%);animation:ibopGlow 9s ease-in-out infinite alternate}
.ibop-fw:after{content:"";position:absolute;left:-180px;bottom:-180px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(123,186,39,.16),transparent 66%);pointer-events:none}
.page-wrapper .ibop-fw h2{color:#fff}
.ibop-hl:after{background:#fff;height:4px;opacity:.9}
.page-wrapper .ibop-fw-copy>p:not(.ibop-kicker){color:#D1D3D4}
.page-wrapper .ibop-fw-copy>p.ibop-fw-intro{color:#fff;font-size:18px;font-weight:500}
.ibop-fw-big{box-shadow:0 30px 70px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.14)}
.ibop-fw-small{border:8px solid var(--ibop-navy);box-shadow:0 22px 50px rgba(0,0,0,.6),0 0 0 2px var(--ibop-green)}
.ibop-fw-dots{background-image:radial-gradient(#fff 2px,transparent 2.5px);opacity:.28}
.ibop-fw-badge{border:1px solid rgba(255,255,255,.18);border-left:5px solid var(--ibop-green)}
.ibop-fw-tiles li{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-top:4px solid var(--ibop-green);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 16px 34px rgba(0,0,0,.35)}
.ibop-fw-tiles li:hover{background:rgba(123,186,39,.2);box-shadow:0 20px 40px rgba(0,0,0,.5),0 0 0 1px var(--ibop-green)}
.ibop-fw-tiles strong{color:#fff}
.ibop-fw-tiles li>span:last-child{color:#D1D3D4}
.ibop-fw-tiles li:hover>span:last-child{color:#fff}
.ibop-fw-line{background:linear-gradient(100deg,rgba(123,186,39,.28),rgba(255,255,255,.06) 65%);border:1px solid rgba(123,186,39,.55);border-left:6px solid var(--ibop-green);box-shadow:0 22px 50px rgba(0,0,0,.45),0 0 40px rgba(123,186,39,.14)}
.ibop-fw-line .ibop-btn-primary{animation:ibopPulse 2.2s ease-out infinite}
/* typewriter chain */
[data-tw-step] .tw-r{visibility:hidden}
[data-tw-step].is-typing .tw-t:after{content:"";display:inline-block;width:2px;height:1em;margin-left:3px;vertical-align:-.12em;background:var(--ibop-green);animation:ibopCaret .7s steps(1) infinite}
/* sequenced entrance: rest appears once typing is done */
.ibop-anim .ibop-fw-after{opacity:0;transform:translateY(26px);transition:opacity .8s ease var(--d,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.ibop-anim .ibop-fw-copy.tw-complete .ibop-fw-after{opacity:1;transform:none}
.ibop-anim .ibop-hl:after{transform:scaleX(0)}
.ibop-anim .ibop-fw-copy.tw-complete .ibop-hl:after{transform:scaleX(1)}
@media (max-width:991px){.page-wrapper .ibop-fw{background-attachment:scroll}}
@media (prefers-reduced-motion:reduce){.ibop-fw:before,.ibop-fw-line .ibop-btn-primary{animation:none!important}.ibop-anim .ibop-fw-after{opacity:1!important;transform:none!important}}

/* ===== ibop-sections-css ===== */
/* =========================================================
   IBOP page sections 02, 06-11 (shared system + per-section)
   Content follows IBOP_Brochure_2026_Final_v9.pdf
   Navy #0B1D2E | Green #7BBA27 | Franklin headings | Roboto body
   ========================================================= */
.page-wrapper .ibop-sec{position:relative;isolation:isolate;overflow:hidden;padding:96px 0;font-family:var(--ibop-body-font)}
.page-wrapper .ibop-sec--light{background:#fff}
.page-wrapper .ibop-sec--pale{background:var(--ibop-pale)}
.ibop-sec--light:before,.ibop-sec--pale:before{content:"";position:absolute;z-index:-1;inset:0;background-image:radial-gradient(rgba(11,29,46,.08) 1.5px,transparent 2px);background-size:26px 26px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent);mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent);pointer-events:none}
.page-wrapper .ibop-sec--dark{color:#E6E7E8;background:linear-gradient(180deg,rgba(12,20,28,.95),rgba(11,29,46,.9) 55%,rgba(12,20,28,.97)),var(--bg) center/cover no-repeat fixed;box-shadow:inset 0 70px 90px -50px rgba(0,0,0,.75),inset 0 -70px 90px -50px rgba(0,0,0,.75)}
.ibop-sec--dark:before{content:"";position:absolute;z-index:-1;right:-160px;top:-140px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(123,186,39,.2),transparent 65%);animation:ibopGlow 9s ease-in-out infinite alternate;pointer-events:none}
.page-wrapper .ibop-sec--light .ibop-kicker,.page-wrapper .ibop-sec--pale .ibop-kicker{color:var(--ibop-green-dark)}

.ibop-sec-head{max-width:800px;margin:0 auto 52px;text-align:center}
.page-wrapper .ibop-sec-head h2{margin:0 0 16px;font-size:clamp(28px,3.6vw,44px);line-height:1.15;color:var(--ibop-navy)}
.page-wrapper .ibop-sec-head p:not(.ibop-kicker){margin:0;font-size:17px;line-height:1.7}
.page-wrapper .ibop-sec--dark .ibop-sec-head h2,.page-wrapper .ibop-sec--dark h3,.page-wrapper .ibop-sec--dark h4{color:#fff}
.page-wrapper .ibop-sec--dark p:not(.ibop-kicker){color:#D1D3D4}
.ibop-sec-cta{display:flex;justify-content:center;margin-top:44px}

/* pull quote (brochure style: green bar + large text) */
.ibop-pq{margin:44px auto 0;max-width:860px;padding:18px 24px;border-left:5px solid var(--ibop-green);border-radius:0 12px 12px 0;background:var(--ibop-pale);color:var(--ibop-navy);font:500 clamp(18px,2vw,22px)/1.55 var(--ibop-body-font)}
.ibop-sec--dark .ibop-pq,.ibop-teach .ibop-pq{background:rgba(255,255,255,.07);color:#fff;box-shadow:0 14px 34px rgba(0,0,0,.35)}
.ibop-teach .ibop-pq{margin:0 0 40px;max-width:none}

/* footnotes carried over from the brochure */
.ibop-fn{max-width:900px;margin:40px auto 0;padding-top:18px;border-top:1px solid var(--ibop-border)}
.page-wrapper .ibop-fn p{margin:0 0 5px;color:#333333;font-size:12px;line-height:1.65}
.ibop-sec--dark .ibop-fn,.ibop-why .ibop-fn{border-top-color:rgba(255,255,255,.16)}
.page-wrapper .ibop-sec--dark .ibop-fn p,.page-wrapper .ibop-why .ibop-fn p{color:#CCC6C4;font-size:12px}
.ibop-why .ibop-fn{max-width:none}

.ibop-anim .ibop-sec [data-stagger]>*{opacity:0;transform:translateY(34px) scale(.96);transition:opacity .7s ease var(--d,0s),transform .8s cubic-bezier(.3,1.3,.5,1) var(--d,0s),box-shadow .35s,background .35s,border-color .35s}
.ibop-anim .ibop-sec [data-stagger].is-in>*{opacity:1;transform:none}
.ibop-anim .ibop-sec [data-stagger].is-in>*:hover{transform:translateY(-6px);transition-delay:0s}
@keyframes ibopFade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* ---------- 02 WHY IBOP ---------- */
.ibop-wy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.ibop-wy-card{position:relative;overflow:hidden;padding:36px 28px 32px;background:#fff;border:1px solid var(--ibop-border);border-top:5px solid var(--ibop-green);border-radius:18px;box-shadow:0 14px 36px rgba(11,29,46,.08)}
.ibop-wy-n{position:absolute;right:22px;top:14px;font:400 58px/1 var(--ibop-heading-font);color:rgba(11,29,46,.06)}
.ibop-wy-ico{display:flex;align-items:center;justify-content:center;width:62px;height:62px;margin-bottom:22px;background:var(--ibop-navy);color:var(--ibop-green);border-radius:16px;transition:background .3s ease,color .3s ease,transform .3s ease}
.ibop-wy-card:hover .ibop-wy-ico{background:var(--ibop-green);color:var(--ibop-navy);transform:rotate(-6deg) scale(1.06)}
.page-wrapper .ibop-wy-card h3{margin:0 0 12px;font-size:25px;line-height:1.2}
.page-wrapper .ibop-wy-card p{margin:0;font-size:15.5px;line-height:1.7}

/* ---------- 06 CURRICULUM ---------- */
.ibop-hbar{display:flex;gap:6px;margin:0 0 10px;padding:0}
.ibop-hbar button{flex:var(--w) 1 0;min-width:0;height:48px;padding:0 6px;border:0;border-radius:10px;background:#E5E2E1;color:var(--ibop-navy);font:700 13px var(--ibop-body-font);cursor:pointer;transition:background .25s,color .25s}
.ibop-hbar button small{display:block;font:400 11px/1 var(--ibop-body-font);opacity:.8}
.ibop-hbar button:hover{background:#D1D3D4}
.ibop-hbar button.is-active{background:var(--ibop-green);color:var(--ibop-navy)}
.ibop-anim .ibop-sec [data-stagger].is-in.ibop-hbar>*:hover{transform:none}
.page-wrapper .ibop-hbar-cap{margin:0 0 30px;color:var(--ibop-muted);font-size:13.5px;text-align:center}
.ibop-cur{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:28px;align-items:start}
.ibop-tabs{display:flex;flex-direction:column;gap:10px}
.ibop-tab{display:block;width:100%;padding:16px 20px;text-align:left;background:#fff;border:1px solid var(--ibop-border);border-left:5px solid transparent;border-radius:12px;color:var(--ibop-navy);cursor:pointer;transition:all .25s ease;box-shadow:0 6px 16px rgba(11,29,46,.05)}
.ibop-tab small{display:block;margin-bottom:2px;color:var(--ibop-green-dark);font:700 11.5px/1.3 var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.ibop-tab b{display:block;font:400 19px/1.25 var(--ibop-heading-font)}
.ibop-tab span{display:block;margin-top:4px;color:var(--ibop-muted);font-size:13px}
.ibop-tab:hover{transform:translateX(4px)}
.ibop-tab.is-active{background:var(--ibop-navy);border-left-color:var(--ibop-green);box-shadow:0 16px 34px rgba(11,29,46,.22)}
.ibop-tab.is-active b{color:#fff}.ibop-tab.is-active small{color:var(--ibop-green)}.ibop-tab.is-active span{color:#D1D3D4}
.ibop-panel{padding:30px 30px 26px;background:#fff;border:1px solid var(--ibop-border);border-top:5px solid var(--ibop-green);border-radius:16px;box-shadow:0 18px 40px rgba(11,29,46,.1);animation:ibopFade .45s ease}
.ibop-panel[hidden]{display:none}
.ibop-panel-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}
.page-wrapper .ibop-panel-head h3{margin:0;font-size:26px;line-height:1.2}
.ibop-pills{display:flex;gap:8px}
.ibop-pills span{padding:7px 14px;background:var(--ibop-green);color:var(--ibop-navy);border-radius:30px;font:700 13px var(--ibop-body-font)}
.ibop-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 26px;margin:0;padding:0;list-style:none;counter-reset:t}
.ibop-topics li{display:flex;align-items:center;gap:12px;margin:0;padding:10px 0;border-bottom:1px dashed var(--ibop-border);color:var(--ibop-text);font-size:14.5px;line-height:1.4;counter-increment:t}
.ibop-topics li:before{content:counter(t);flex:none;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#E6E7E8;color:var(--ibop-navy);font:700 13px var(--ibop-body-font)}
.ibop-outcomes{margin-top:56px}
.ibop-outcomes h3{margin:0 0 20px;text-align:center;font-size:26px}
.ibop-out-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:0;padding:0;list-style:none}
.ibop-out-list li{position:relative;padding:20px 20px 20px 54px;background:var(--ibop-navy);border-radius:14px;border-bottom:4px solid var(--ibop-green);color:#fff;font-size:15px;line-height:1.55}
.ibop-out-list li:before{content:"\2713";position:absolute;left:18px;top:19px;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--ibop-green);color:var(--ibop-navy);font-weight:700;font-size:14px}

/* ---------- 07 THE PROGRAMME ---------- */
.ibop-spec{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:48px}
.ibop-spec-item{padding:26px 22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-top:4px solid var(--ibop-green);border-radius:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 20px 44px rgba(0,0,0,.4)}
.ibop-spec-item strong{display:block;margin-bottom:6px;color:var(--ibop-green);font:400 clamp(28px,3.2vw,42px)/1.1 var(--ibop-heading-font)}
.page-wrapper .ibop-spec-item span{display:block;color:#D1D3D4;font-size:14.5px;line-height:1.5}
.ibop-two{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:28px}
.ibop-comp{position:relative;padding:34px 32px 30px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.2);border-radius:18px;box-shadow:0 26px 60px rgba(0,0,0,.45)}
.ibop-comp-tag{display:inline-block;margin-bottom:18px;padding:8px 20px;background:var(--ibop-green);color:var(--ibop-navy);border-radius:30px;font:700 13px var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.page-wrapper .ibop-comp p{margin:0 0 14px;font-size:15.5px;line-height:1.7}
.page-wrapper .ibop-comp p strong,.page-wrapper .ibop-comp li strong{color:#fff}
.ibop-comp ul{margin:0 0 18px;padding:0;list-style:none}
.ibop-comp li{position:relative;margin:0;padding:7px 0 7px 26px;color:#D1D3D4;font-size:15px;line-height:1.6}
.ibop-comp li:before{content:"";position:absolute;left:3px;top:15px;width:8px;height:8px;background:var(--ibop-green);transform:rotate(45deg)}
.ibop-facts{display:flex;flex-wrap:wrap;gap:10px 28px;margin:6px 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.16)}
.ibop-facts div{font:400 14px var(--ibop-body-font);color:#D1D3D4}
.ibop-facts b{display:block;color:#fff;font:400 20px/1.2 var(--ibop-heading-font)}
.page-wrapper .ibop-earned{margin:18px 0 0!important;padding-top:16px;border-top:1px solid rgba(255,255,255,.16);color:#fff!important;font:400 22px/1.35 var(--ibop-heading-font)!important}
.page-wrapper .ibop-earned span{color:var(--ibop-green)}
.ibop-learn{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 14px;margin:48px 0 0;padding:0;list-style:none}
.ibop-learn li{display:flex;align-items:center;gap:14px;margin:0;color:#fff;font:400 clamp(20px,2.6vw,30px)/1.1 var(--ibop-heading-font);letter-spacing:.06em;text-transform:uppercase}
.ibop-learn li+li:before{content:"";width:9px;height:9px;background:var(--ibop-green);transform:rotate(45deg)}

/* ---------- 08 WHERE IT TAKES YOU ---------- */
.ibop-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ibop-path{position:relative;display:flex;flex-direction:column;padding:28px 24px 24px;background:#fff;border:1px solid var(--ibop-border);border-bottom:5px solid var(--ibop-green);border-radius:16px;box-shadow:0 12px 30px rgba(11,29,46,.08);transition:background .3s ease,box-shadow .3s ease}
.ibop-path:hover{background:var(--ibop-navy);box-shadow:0 22px 44px rgba(11,29,46,.25)}
.ibop-path-n{position:absolute;right:20px;top:14px;font:400 44px/1 var(--ibop-heading-font);color:rgba(11,29,46,.07)}
.page-wrapper .ibop-path h3{margin:0 0 12px;font-size:23px;line-height:1.2;transition:color .3s}
.ibop-path-title{align-self:flex-start;margin-bottom:14px;padding:7px 16px;background:var(--ibop-green);color:var(--ibop-navy);border-radius:30px;font:700 13.5px var(--ibop-body-font)}
.page-wrapper .ibop-path p{margin:0 0 10px;font-size:14.5px;line-height:1.6;transition:color .3s}
.page-wrapper .ibop-path p b{color:var(--ibop-navy);transition:color .3s}
.ibop-sal{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:14px;border-top:1px dashed var(--ibop-border)}
.ibop-sal span{padding:7px 12px;background:#E6E7E8;border-radius:8px;color:var(--ibop-navy);font:700 14px var(--ibop-body-font);white-space:nowrap}
.ibop-sal span:last-child{background:var(--ibop-green)}
.ibop-sal i{color:var(--ibop-green-dark);font-style:normal;font-weight:700;animation:ibopNudge 1.6s ease-in-out infinite}
.page-wrapper .ibop-path:hover h3,.page-wrapper .ibop-path:hover p b{color:#fff}.page-wrapper .ibop-path:hover p{color:#E5E2E1}
.ibop-path:hover .ibop-path-n{color:rgba(255,255,255,.1)}.ibop-path:hover .ibop-sal{border-top-color:rgba(255,255,255,.2)}

/* ---------- 09 PLACEFLIX ---------- */
.ibop-pf-rows{position:relative;margin:0 0 70px;padding-left:34px;border-left:4px solid var(--ibop-green)}
.ibop-pf-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:40px;align-items:center;margin-bottom:34px;padding:26px 28px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:18px;box-shadow:0 22px 46px rgba(0,0,0,.4)}
.ibop-pf-row:last-child{margin-bottom:0}
.ibop-pf-row:before{content:"";position:absolute;left:-46px;top:38px;width:18px;height:18px;border-radius:50%;background:var(--ibop-navy);border:4px solid var(--ibop-green);box-shadow:0 0 0 5px rgba(123,186,39,.18)}
.ibop-pf-row figure{margin:0;overflow:hidden;border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.5)}
.ibop-pf-row img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;filter:grayscale(1);transition:filter .6s ease,transform .7s ease}
.ibop-pf-row:hover img{filter:none;transform:scale(1.06)}
.page-wrapper .ibop-pf-row h3{margin:0 0 14px;color:var(--ibop-green);font-size:21px;letter-spacing:.06em;text-transform:uppercase}
.ibop-pf-row ul{margin:0;padding:0;list-style:none}
.ibop-pf-row li{position:relative;margin:0;padding:6px 0 6px 24px;color:#D1D3D4;font-size:15.5px;line-height:1.65}
.ibop-pf-row li:before{content:"";position:absolute;left:2px;top:15px;width:8px;height:8px;background:var(--ibop-green);transform:rotate(45deg)}
.ibop-sub-head{max-width:700px;margin:0 auto 36px;text-align:center}
.page-wrapper .ibop-sub-head h3{margin:0;font-size:clamp(26px,3vw,36px);line-height:1.2}
.page-wrapper .ibop-sec--dark .ibop-pcard p{color:#D1D3D4}

/* ---------- 10 THE PROOF ---------- */
.ibop-emp{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ibop-emp-card{padding:28px 24px;background:#fff;border:1px solid var(--ibop-border);border-top:5px solid var(--ibop-green);border-radius:16px;box-shadow:0 12px 30px rgba(11,29,46,.08)}
.ibop-emp-ico{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:16px;background:var(--ibop-navy);color:var(--ibop-green);border-radius:14px}
.page-wrapper .ibop-emp-card h3{margin:0 0 14px;font-size:23px;line-height:1.2}
.ibop-emp-names{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0;list-style:none}
.ibop-emp-names li{margin:0;padding:6px 13px;background:var(--ibop-pale);border:1px solid var(--ibop-border);border-radius:30px;color:var(--ibop-navy);font:500 13.5px var(--ibop-body-font)}
.page-wrapper .ibop-emp-card p{margin:0;font-size:14.5px;line-height:1.65}
.ibop-voices{margin-top:72px}
.ibop-voices-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}
.page-wrapper .ibop-voices-head h3{margin:0;font-size:clamp(22px,2.6vw,30px);line-height:1.25}
.ibop-car-ctl{display:flex;gap:10px;flex:none}
.ibop-car-ctl button{width:44px;height:44px;border:2px solid var(--ibop-green);border-radius:50%;background:#fff;color:var(--ibop-navy);font-size:22px;line-height:1;cursor:pointer;transition:background .2s}
.ibop-car-ctl button:hover{background:var(--ibop-green)}
.ibop-car{display:flex;gap:20px;margin:0;padding:6px 4px 18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--ibop-green) #E6E7E8}
.ibop-car:focus-visible{outline:2px solid var(--ibop-green);outline-offset:3px}
.ibop-voice{flex:0 0 calc(50% - 10px);scroll-snap-align:start;display:flex;flex-direction:column;padding:26px 26px 22px;background:var(--ibop-pale);border:1px solid var(--ibop-border);border-radius:18px;margin:0}
.ibop-voice blockquote{margin:0 0 20px;padding:0;border:0;color:var(--ibop-text);font:400 16px/1.7 var(--ibop-body-font)}
.ibop-voice-by{display:flex;align-items:center;gap:14px;margin-top:auto}
.ibop-av{flex:none;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--ibop-navy);border:3px solid var(--ibop-green);color:#fff;font:400 18px var(--ibop-heading-font)}
.ibop-voice-by b{display:block;color:var(--ibop-green-dark);font:700 15px var(--ibop-body-font)}
.ibop-voice-by div span{display:block;margin-top:2px;padding:3px 10px;background:#fff;border:1px solid var(--ibop-border);border-radius:6px;color:var(--ibop-navy);font:700 12.5px var(--ibop-body-font);width:max-content;max-width:100%}

/* ---------- 11 HOW YOU JOIN ---------- */
.ibop-join-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:44px;align-items:start}
.ibop-steps{position:relative;margin:0;padding:0;list-style:none}
.ibop-steps:before{content:"";position:absolute;left:21px;top:30px;bottom:30px;width:3px;background:linear-gradient(var(--ibop-green),rgba(123,186,39,.2))}
.ibop-anim .ibop-steps:before{transform:scaleY(0);transform-origin:top;transition:transform 1.6s ease .3s}
.ibop-anim .ibop-steps.is-in:before{transform:scaleY(1)}
.ibop-step2{position:relative;display:flex;gap:22px;align-items:center;margin:0 0 18px 0;padding:22px 24px 22px 62px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:16px;box-shadow:0 20px 44px rgba(0,0,0,.4)}
.ibop-step2-n{position:absolute;left:0;top:24px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--ibop-navy);border:3px solid var(--ibop-green);color:#fff;font:400 20px var(--ibop-heading-font);box-shadow:0 0 0 5px rgba(123,186,39,.18)}
.ibop-step2-ico{flex:none;display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--ibop-green);color:var(--ibop-navy)}
.ibop-step2-tag{display:block;margin-bottom:4px;color:var(--ibop-green);font:700 12.5px/1.3 var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.page-wrapper .ibop-step2 h3{margin:0 0 6px;font-size:22px;line-height:1.2}
.page-wrapper .ibop-step2 p{margin:0;font-size:15px;line-height:1.65}
.ibop-fee{padding:30px 28px;text-align:center;background:linear-gradient(100deg,rgba(123,186,39,.26),rgba(255,255,255,.06) 70%);border:1px solid rgba(123,186,39,.55);border-radius:18px;box-shadow:0 22px 50px rgba(0,0,0,.45),0 0 40px rgba(123,186,39,.15)}
.ibop-fee-tag{display:inline-block;margin-bottom:10px;padding:7px 20px;background:var(--ibop-green);color:var(--ibop-navy);border-radius:30px;font:700 13px var(--ibop-body-font);letter-spacing:.08em;text-transform:uppercase}
.ibop-fee strong{display:block;color:#fff;font:400 clamp(38px,4.6vw,56px)/1.1 var(--ibop-heading-font)}
.page-wrapper .ibop-fee p{margin:8px 0 22px;font-size:15px}
.ibop-fee .ibop-btn{width:100%;margin-top:10px}
.ibop-fee .ibop-btn-primary{animation:ibopPulse 2.2s ease-out infinite}
.ibop-contact{margin-top:22px;padding:24px 26px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:16px}
.page-wrapper .ibop-contact h4{margin:0 0 12px;color:var(--ibop-green);font:700 13px var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.ibop-contact ul{margin:0 0 18px;padding:0;list-style:none}
.ibop-contact li{margin:0;padding:5px 0;color:#E6E7E8;font-size:15px}
.ibop-contact a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(123,186,39,.6)}
.ibop-contact a:hover{color:var(--ibop-green)!important}
.page-wrapper .ibop-contact address{margin:0;color:#D1D3D4;font:400 14px/1.6 var(--ibop-body-font);font-style:normal}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .ibop-paths{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ibop-spec{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:991px){
  .page-wrapper .ibop-sec{padding:64px 0}
  .page-wrapper .ibop-sec--dark{background-attachment:scroll}
  .ibop-wy-grid,.ibop-emp{grid-template-columns:1fr}
  .ibop-cur{grid-template-columns:1fr}
  .ibop-tabs{flex-direction:row;overflow-x:auto;padding-bottom:6px;gap:10px;scroll-snap-type:x mandatory}
  .ibop-tab{flex:0 0 230px;scroll-snap-align:start}.ibop-tab:hover{transform:none}
  .ibop-two,.ibop-join-grid{grid-template-columns:1fr}
  .ibop-pf-row{grid-template-columns:1fr;gap:22px}
  .ibop-voice{flex-basis:100%}
  .ibop-sec-head{margin-bottom:40px}
}
@media (max-width:767px){
  .ibop-paths{grid-template-columns:1fr}
  .ibop-topics{grid-template-columns:1fr}
  .ibop-hbar button small{display:none}
  .ibop-voices-head{align-items:flex-start;flex-direction:column}
  .ibop-step2{flex-direction:column;align-items:flex-start;padding-left:24px;padding-top:62px}
  .ibop-step2-n{
    /* left:24px; */
    left: 150px;
    top: 9px;
    /* top:-4px */
    }
  .ibop-steps:before{display:none}
}
@media (max-width:640px){
  .ibop-spec{grid-template-columns:1fr}
  .ibop-pf-rows{padding-left:22px}.ibop-pf-row:before{left:-34px}
  .ibop-panel{padding:22px 18px}.ibop-comp{padding:26px 20px}
  .ibop-sec-cta .ibop-btn{width:100%}
  .ibop-learn{flex-direction:column;align-items:center}.ibop-learn li+li:before{display:none}
}
@media (prefers-reduced-motion:reduce){
  .ibop-sec--dark:before,.ibop-sal i,.ibop-fee .ibop-btn-primary,.ibop-panel{animation:none!important}
  .ibop-anim .ibop-sec [data-stagger]>*{opacity:1!important;transform:none!important}
  .ibop-anim .ibop-steps:before{transform:none!important}
}

/* ===== ibop-faq-css ===== */
/* IBOP FAQ: image left, title + answers right */
.ibop-faq-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);grid-template-areas:"media head" "media list" "media cta";grid-template-rows:auto auto 1fr;column-gap:clamp(32px,6vw,88px);align-items:start}
.ibop-faq-media{grid-area:media;margin:0;position:sticky;top:110px;aspect-ratio:4/5;overflow:hidden;border-radius:14px;background:var(--ibop-navy,#0B1D2E);box-shadow:0 30px 60px -30px rgba(11,29,46,.5)}
.ibop-faq-media img{width:100%;height:100%;object-fit:cover;object-position:60% 40%;display:block;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.ibop-faq-media:hover img{transform:scale(1.04)}
.ibop-faq-media::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--ibop-green,#7BBA27)}
.ibop-faq-head{grid-area:head;margin-bottom:24px}
.ibop-faq-head .ibop-kicker{text-align:left}
.ibop-faq-head h2{text-align:left;margin:0}
.ibop-faq-list{grid-area:list;border-top:2px solid var(--ibop-navy,#0B1D2E)}
.ibop-faq-list details{border-bottom:1px solid var(--ibop-border,#E5E2E1);transition:background-color .25s}
.ibop-faq-list details[open]{background:linear-gradient(90deg,rgba(123,186,39,.1),transparent 75%)}
.ibop-faq-list summary{cursor:pointer;list-style:none;position:relative;padding:20px 48px 20px 0;transition:padding-left .25s}
.ibop-faq-list summary::-webkit-details-marker{display:none}
.ibop-faq-list summary h3{margin:0;font-size:clamp(16px,1.6vw,19px);line-height:1.4;font-weight:600;color:var(--ibop-navy,#0B1D2E)}
.ibop-faq-list summary::after{content:"";position:absolute;right:8px;top:50%;width:10px;height:10px;border-right:2px solid var(--ibop-green-dark,#5D870C);border-bottom:2px solid var(--ibop-green-dark,#5D870C);transform:translateY(-70%) rotate(45deg);transition:transform .25s}
.ibop-faq-list details[open] summary{padding-left:14px}
.ibop-faq-list details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.ibop-faq-list details[open] summary h3,.ibop-faq-list summary:hover h3{color:var(--ibop-green-dark,#5D870C)}
.ibop-faq-list .ans p{margin:0;padding:0 48px 22px 14px;color:var(--ibop-text,#333333);line-height:1.75}
.ibop-faq-cta{grid-area:cta;margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;padding:20px 24px;background:#fff;border:1px solid var(--ibop-border,#E5E2E1);border-left:4px solid var(--ibop-green,#7BBA27);border-radius:10px}
.ibop-faq-cta p{margin:0;font-weight:700;color:var(--ibop-navy,#0B1D2E)}
.ibop-faq-cta p small{display:block;font-weight:400;color:var(--ibop-text,#333333);margin-top:2px}
@media (max-width:980px){
  .ibop-faq-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "media" "list" "cta";grid-template-rows:auto}
  .ibop-faq-media{position:relative;top:0;aspect-ratio:16/10;margin-bottom:26px}
}
@media (max-width:640px){
  .ibop-faq-head .ibop-kicker,.ibop-faq-head h2{text-align:center}
  .ibop-faq-cta{flex-direction:column;text-align:center}
  .ibop-faq-cta .ibop-btn{width:100%;justify-content:center}
  .ibop-faq-list summary{padding-right:34px}
  .ibop-faq-list .ans p{padding-right:6px}
}
/* mobile: icon blocks centred, nothing clipped at the page foot */
@media (max-width:640px){
  .ibop-emp-card,.ibop-step2{text-align:center}
  .ibop-emp-ico,.ibop-step2-ico{margin-inline:auto}
  .ibop-step2{justify-items:center}
}
.page-wrapper{overflow-x:clip;overflow-y:visible}
body{padding-bottom:env(safe-area-inset-bottom,0px)}

/* ===== ibop-section-contrast-fix ===== */
/* Keep the requested sections white, but give their content cards clear contrast. */
.page-wrapper #why-ibop,
.page-wrapper #curriculum,
.page-wrapper #careers,
.page-wrapper #proof {
  background: #fff !important;
  color: #333333;
}
.page-wrapper #why-ibop .ibop-wy-card,
.page-wrapper #curriculum .ibop-topic,
.page-wrapper #curriculum .ibop-spec-card,
.page-wrapper #curriculum .ibop-curriculum-card,
.page-wrapper #careers .ibop-path,
.page-wrapper #proof .ibop-emp-card {
  background: #0B1D2E !important;
  border: 1px solid rgba(11,29,46,.12);
  border-top: 4px solid #7BBA27;
  border-radius: 16px;
  box-shadow: 0 14px 32px rgba(11,29,46,.13);
  color: #E6E7E8;
}
.page-wrapper #why-ibop .ibop-wy-card h3,
.page-wrapper #curriculum .ibop-topic h3,
.page-wrapper #curriculum .ibop-spec-card h3,
.page-wrapper #curriculum .ibop-curriculum-card h3,
.page-wrapper #careers .ibop-path h3,
.page-wrapper #proof .ibop-emp-card h3 {
  color: #fff !important;
}
.page-wrapper #why-ibop .ibop-wy-card p,
.page-wrapper #curriculum .ibop-topic p,
.page-wrapper #curriculum .ibop-spec-card p,
.page-wrapper #curriculum .ibop-curriculum-card p,
.page-wrapper #careers .ibop-path p,
.page-wrapper #proof .ibop-emp-card p,
.page-wrapper #proof .ibop-emp-card li {
    /* color: #7bba27 !important; */
  color: #E5E2E1 !important;
}
.page-wrapper #why-ibop .ibop-wy-card .ibop-wy-n { color: rgba(255,255,255,.12); }
.page-wrapper #why-ibop .ibop-wy-card .ibop-wy-ico,
/* .page-wrapper #proof .ibop-emp-ico { color: #7BBA27; } */
.page-wrapper #careers .ibop-path { border-bottom: 5px solid #7BBA27; }
.page-wrapper #careers .ibop-path:hover { background: #204870 !important; }
.page-wrapper #careers .ibop-path p b { color: #7BBA27 !important; }
.page-wrapper #proof .ibop-voice {
  flex: 0 0 calc(33.333% - 14px);
  min-height: 310px;
  padding: 26px;
  background: #F5F3F3;
  border: 1px solid #E5E2E1;
  border-top: 4px solid #7BBA27;
  border-radius: 16px;
  box-shadow: 0 12px 28px rgba(11,29,46,.1);
}
.page-wrapper #proof .ibop-voice blockquote { color: #333333; }
.page-wrapper #proof .ibop-voice-by { gap: 12px; }
.page-wrapper #proof .ibop-review-photo {
  display:block; flex:none; width:54px; height:54px; object-fit:cover;
  border-radius:50%; border:3px solid #7BBA27; background:#0B1D2E;
}
.page-wrapper #proof .ibop-av { display:none; }
.page-wrapper #proof .ibop-car { scroll-behavior:smooth; }
@media(max-width:767px) {
  .page-wrapper #proof .ibop-voice { flex-basis: min(88%, 360px); min-height:0; }
}

/* Curriculum interactive panel contrast */
.page-wrapper #curriculum .ibop-tabs .ibop-tab,
.page-wrapper #curriculum .ibop-panels,
.page-wrapper #curriculum .ibop-panel,
.page-wrapper #curriculum .ibop-topics li {
  background:#0B1D2E !important;
  color:#E6E7E8 !important;
  border-color:rgba(11,29,46,.16);
}
.page-wrapper #curriculum .ibop-tab b,
.page-wrapper #curriculum .ibop-panel h3 { color:#fff !important; }
.page-wrapper #curriculum .ibop-tab small,
.page-wrapper #curriculum .ibop-tab span { color:#D1D3D4 !important; }
.page-wrapper #curriculum .ibop-tab[aria-selected="true"],
.page-wrapper #curriculum .ibop-tab.active { border-left:4px solid #7BBA27 !important; }
.page-wrapper #curriculum .ibop-topics li { border-left:3px solid #7BBA27; }
.page-wrapper #curriculum .ibop-hbar { background:#E6E7E8; }
.page-wrapper #curriculum .ibop-hbar button { background:#0B1D2E; color:#fff; }
.page-wrapper #curriculum .ibop-hbar button small { color:#E5E2E1; }

/* ===== ibop-curriculum-toggle-fix ===== */
/* Keep all six curriculum pillars visible together; show the selected pillar details underneath. */
.page-wrapper #curriculum .ibop-cur{display:flex!important;flex-direction:column!important;gap:22px!important;align-items:stretch!important}
.page-wrapper #curriculum .ibop-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;width:100%!important;overflow:visible!important}
.page-wrapper #curriculum .ibop-tab{width:100%!important;min-width:0!important;min-height:104px!important;flex:none!important;text-align:left!important;white-space:normal!important}
.page-wrapper #curriculum .ibop-tab b{font-size:17px!important;line-height:1.35!important}
.page-wrapper #curriculum .ibop-panels{width:100%!important;min-width:0!important}
.page-wrapper #curriculum .ibop-panel{width:100%!important;box-sizing:border-box!important}
.page-wrapper #curriculum .ibop-tab.is-active{background:#0B1D2E!important;border-color:#7BBA27!important;border-left:5px solid #7BBA27!important}
@media(max-width:767px){
 .page-wrapper #curriculum .ibop-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
 .page-wrapper #curriculum .ibop-tab{min-height:96px!important;padding:13px!important}
 .page-wrapper #curriculum .ibop-tab b{font-size:15px!important}
 .page-wrapper #curriculum .ibop-tab span{font-size:12px!important}
}
@media(max-width:380px){.page-wrapper #curriculum .ibop-tabs{grid-template-columns:1fr!important}}

/* ===== ibop-curriculum-square-ui ===== */
/* Curriculum-only refresh: square course cards with expandable selected course details. */
.page-wrapper #curriculum .ibop-hbar{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 12px;padding:0;background:transparent!important}
.page-wrapper #curriculum .ibop-hbar button{height:auto;min-height:62px;padding:12px 8px;border:1px solid #E5E2E1;border-radius:10px;background:#F5F3F3!important;color:#0B1D2E!important;font-weight:800;box-shadow:0 4px 12px rgba(11,29,46,.05)}
.page-wrapper #curriculum .ibop-hbar button small{display:block!important;margin-top:4px;color:#333333!important;font-size:11px}
.page-wrapper #curriculum .ibop-hbar button.is-active{background:#7BBA27!important;border-color:#7BBA27;color:#0B1D2E!important;box-shadow:0 8px 18px rgba(123,186,39,.25)}
.page-wrapper #curriculum .ibop-hbar button.is-active small{color:#0B1D2E!important}
.page-wrapper #curriculum .ibop-hbar-cap{margin-bottom:24px}
.page-wrapper #curriculum .ibop-cur{display:flex!important;flex-direction:column!important;gap:20px!important}
.page-wrapper #curriculum .ibop-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;width:100%!important;overflow:visible!important}
.page-wrapper #curriculum .ibop-tab{position:relative;display:flex!important;flex-direction:column;justify-content:flex-start;align-items:flex-start;width:100%!important;min-width:0!important;min-height:190px!important;padding:22px 20px!important;gap:0;border:1px solid #E5E2E1!important;border-top:4px solid #7BBA27!important;border-left:1px solid #E5E2E1!important;border-radius:12px!important;background:#fff!important;color:#333333!important;text-align:left!important;white-space:normal!important;box-shadow:0 8px 24px rgba(11,29,46,.07)!important;transition:transform .22s ease,box-shadow .22s ease,background .22s ease!important}
.page-wrapper #curriculum .ibop-tab:before{content:attr(id);position:absolute;right:15px;top:12px;color:#E5E2E1;font:700 28px/1 var(--ibop-heading-font);text-transform:uppercase}
.page-wrapper #curriculum .ibop-tab small{display:inline-flex!important;align-items:center;margin:0 0 14px!important;padding:6px 10px;background:#E5F1D4;border-radius:5px;color:#2F4402!important;font-size:11px!important;letter-spacing:.08em}
.page-wrapper #curriculum .ibop-tab b{display:block;margin:0 0 12px; color: #7bba27 !important; font:700 20px/1.25 var(--ibop-heading-font)!important}
.page-wrapper #curriculum .ibop-tab span{display:block;margin-top:auto!important;padding-top:12px;border-top:1px solid #E5E2E1;color:#333333!important;font-size:16.5px!important}
.page-wrapper #curriculum .ibop-tab:hover{transform:translateY(-3px)!important;box-shadow:0 14px 28px rgba(11,29,46,.12)!important}
.page-wrapper #curriculum .ibop-tab.is-active{background:#0B1D2E!important;border-color:#0B1D2E!important;border-top-color:#7BBA27!important;box-shadow:0 14px 30px rgba(11,29,46,.2)!important}
.page-wrapper #curriculum .ibop-tab.is-active:before{color:rgba(255,255,255,.12)}
.page-wrapper #curriculum .ibop-tab.is-active small{background:#7BBA27!important;color:#0B1D2E!important}
.page-wrapper #curriculum .ibop-tab.is-active b{color:#fff!important}
.page-wrapper #curriculum .ibop-tab.is-active span{border-top-color:rgba(255,255,255,.18);color:#E5E2E1!important}
.page-wrapper #curriculum .ibop-panels{width:100%;min-width:0}
.page-wrapper #curriculum .ibop-panel{
    padding:clamp(20px,3vw,32px)!important;border:1px solid #E5E2E1!important;border-top:5px solid #7BBA27!important;border-radius:12px!important;background:#F5F3F3!important;
    /* color:#333333!important; */
    background: #0b1d2e !important;
    box-shadow:0 12px 30px rgba(11,29,46,.08)!important;animation:ibopCurPanelIn .25s ease
}
.page-wrapper #curriculum .ibop-panel[hidden]{display:none!important}
.page-wrapper #curriculum .ibop-panel-head{align-items:flex-start}
.page-wrapper #curriculum .ibop-panel-head h3{
    /* color:#0B1D2E!important; */
    font-size:clamp(22px,2.5vw,29px)!important
}
.page-wrapper #curriculum .ibop-pills span{border-radius:6px;background:#E5F1D4!important;color:#0B1D2E!important}
.page-wrapper #curriculum .ibop-topics{gap:8px 14px}
/* .page-wrapper #curriculum .ibop-topics li{padding:10px 12px!important;border:1px solid #E5E2E1!important;border-left:3px solid #7BBA27!important;border-radius:7px;background:#fff!important;color:#333333!important} */
/* .page-wrapper #curriculum .ibop-topics li:before{width:26px;height:26px;border-radius:6px;background:#0B1D2E!important;color:#fff!important} */
.page-wrapper #curriculum .ibop-topics li
 {
    padding: 10px 12px !important;
    border: 1px solid #7bba27 !important;
    border-left: 3px solid #7BBA27 !important;
    border-radius: 7px;
    /* background: #0b1d2e !important; */
    /* color: #7bba27 !important; */
}

.page-wrapper #curriculum .ibop-topics li:before {
    width: 26px;
    height: 26px;
    border-radius: 6px;
    background: #7bba27 !important;
    color: #0b1d2e !important;
}
@keyframes ibopCurPanelIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:767px){
 .page-wrapper #curriculum .ibop-hbar{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px}
 .page-wrapper #curriculum .ibop-hbar button{min-height:54px;padding:9px 6px}
 .page-wrapper #curriculum .ibop-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 .page-wrapper #curriculum .ibop-tab{min-height:174px!important;padding:17px 14px!important}
 .page-wrapper #curriculum .ibop-tab b{font-size:17px!important}
 .page-wrapper #curriculum .ibop-panel{padding:20px 14px!important}
 .page-wrapper #curriculum .ibop-panel-head{flex-direction:column}
 .page-wrapper #curriculum .ibop-pills{flex-wrap:wrap}
 .page-wrapper #curriculum .ibop-topics{grid-template-columns:1fr!important}
}
@media(max-width:380px){.page-wrapper #curriculum .ibop-tabs{grid-template-columns:1fr!important}.page-wrapper #curriculum .ibop-tab{min-height:145px!important}}
@media(prefers-reduced-motion:reduce){.page-wrapper #curriculum .ibop-panel{animation:none!important}.page-wrapper #curriculum .ibop-tab{transition:none!important}}

/* ===== ibop-redesign-2026 ===== */
/* ===== Curriculum: constant scrollable pillar list (left) + content (right) ===== */
.page-wrapper #curriculum .ibop-cur.ibop-cur--side{display:grid!important;grid-template-columns:340px minmax(0,1fr)!important;grid-template-rows:auto!important;gap:24px!important;align-items:start!important;height:auto}
.page-wrapper #curriculum .ibop-cur--side .ibop-tabs{display:flex!important;flex-direction:column!important;grid-template-columns:none!important;gap:10px!important;width:auto!important;min-height:0;max-height:520px;overflow-y:auto!important;overflow-x:hidden!important;padding:2px 8px 2px 2px;scrollbar-width:thin;scrollbar-color:#7BBA27 #E6E7E8}
.page-wrapper #curriculum .ibop-cur--side .ibop-tabs::-webkit-scrollbar{width:6px}
.page-wrapper #curriculum .ibop-cur--side .ibop-tabs::-webkit-scrollbar-track{background:#E6E7E8;border-radius:6px}
.page-wrapper #curriculum .ibop-cur--side .ibop-tabs::-webkit-scrollbar-thumb{background:#7BBA27;border-radius:6px}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab{display:block!important;flex:none!important;min-height:0!important;width:100%!important;padding:16px 18px!important;border:1px solid #E5E2E1!important;border-left:5px solid #E5E2E1!important;border-top:1px solid #E5E2E1!important;border-radius:22px!important;background:#fff!important;box-shadow:0 4px 12px rgba(11,29,46,.05)!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab:before{content:none!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab small{display:block!important;margin:0 0 4px!important;padding:0!important;background:none!important;color:#5D870C!important;font-size:11px!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab b{margin:0 0 4px!important;color:#0B1D2E!important;font:400 17px/1.3 var(--ibop-heading-font)!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab span{margin:0!important;padding:0!important;border:0!important;color:#333333!important;font-size:13px!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab:hover{transform:translateX(3px)!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab.is-active{background:#0B1D2E!important;border-color:#0B1D2E!important;border-left-color:#7BBA27!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab.is-active small{color:#7BBA27!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab.is-active b{color:#fff!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-tab.is-active span{color:#D1D3D4!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-panels{min-height:0;height:auto}
.page-wrapper #curriculum .ibop-cur--side .ibop-panel{position:relative;height:auto!important;overflow:visible;box-sizing:border-box!important;border:0!important;outline:0!important;border-radius:36px!important;overflow:hidden;padding:clamp(30px,4vw,52px)!important;box-shadow:0 18px 40px rgba(11,29,46,.25)!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-topics li{color:#E6E7E8!important;background:transparent!important}
@media(max-width:991px){
 .page-wrapper #curriculum .ibop-cur.ibop-cur--side{grid-template-columns:1fr!important;grid-template-rows:auto!important;height:auto}
 .page-wrapper #curriculum .ibop-cur--side .ibop-tabs{max-height:none!important;flex-direction:row!important;overflow-x:auto!important;overflow-y:hidden!important;padding:2px 2px 10px;scroll-snap-type:x mandatory}
 .page-wrapper #curriculum .ibop-cur--side .ibop-tab{flex:0 0 240px!important;width:240px!important;scroll-snap-align:start}
 .page-wrapper #curriculum .ibop-cur--side .ibop-panels,.page-wrapper #curriculum .ibop-cur--side .ibop-panel{height:auto}
}

/* ===== Careers: automatic horizontal slider with details below ===== */
.page-wrapper #careers .ibop-cp{display:block;width:100%;min-height:0}
.page-wrapper #careers .ibop-cp-track{
  display:flex;align-items:stretch;justify-content:center;gap:10px;
  width:100%;min-width:0;min-height:0;overflow:visible;
  padding:8px 2px 14px;scroll-behavior:smooth;
}
.page-wrapper #careers .ibop-cp-card{
  position:relative;display:flex;align-items:center;justify-content:center;
  flex:1 1 0;min-width:0;min-height:92px;padding:12px 8px;overflow:hidden;
  background:#fff;border:1px solid #E5E2E1;border-bottom:3px solid #7BBA27;
  border-radius:10px;box-shadow:0 5px 16px rgba(11,29,46,.06);
  cursor:pointer;text-align:center;scroll-snap-align:none;
  transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}
.page-wrapper #careers .ibop-cp-card:hover{transform:translateY(-2px)}
.page-wrapper #careers .ibop-cp-card:focus-visible{outline:3px solid #7BBA27;outline-offset:2px}
.page-wrapper #careers .ibop-cp-card.is-open{background:#0B1D2E;border-color:#0B1D2E;border-bottom-color:#7BBA27;box-shadow:0 8px 20px rgba(11,29,46,.16)}
.ibop-cp-mini{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;min-width:0}
.ibop-cp-mini .n{flex:none;color:#5D870C;font:700 17px/1 var(--ibop-heading-font)}
.ibop-cp-mini .t{display:block;flex:1;min-width:0;color:#0B1D2E;font:600 12px/1.25 var(--ibop-body-font);writing-mode:horizontal-tb;transform:none;white-space:normal;overflow-wrap:anywhere}
.ibop-cp-mini i{flex:none;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#7BBA27;color:#0B1D2E;font:700 14px/1 var(--ibop-body-font);font-style:normal;transition:transform .2s ease}
.ibop-cp-card.is-open .ibop-cp-mini .n{color:#7BBA27}
.ibop-cp-card.is-open .ibop-cp-mini .t{color:#fff}
.ibop-cp-card.is-open .ibop-cp-mini i{transform:rotate(45deg)}
.ibop-cp-body{display:block;position:relative;width:100%;max-width:900px;min-width:0;box-sizing:border-box;margin:10px auto 0;padding:22px 26px 20px;background:#0B1D2E;border-left:4px solid #7BBA27;border-radius:12px}
.ibop-cp-n{position:absolute;right:20px;top:10px;color:rgba(255,255,255,.1);font:400 48px/1 var(--ibop-heading-font)}
.page-wrapper #careers .ibop-cp-body h3{margin:0 0 8px;padding-right:55px;color:#fff!important;font-size:22px;line-height:1.2}
.page-wrapper #careers .ibop-cp-body p{margin:0;color:#E5E2E1!important;font-size:14.5px;line-height:1.55}
.page-wrapper #careers .ibop-cp-body p b{color:#7BBA27!important}
.ibop-cp-bar{display:none}
@media(max-width:700px){
 .page-wrapper #careers .ibop-cp-track{gap:6px;padding-left:0;padding-right:0}
 .page-wrapper #careers .ibop-cp-card{min-height:78px;padding:8px 4px}
 .ibop-cp-mini{gap:4px}
 .ibop-cp-mini .n{font-size:13px}
 .ibop-cp-mini .t{font-size:10px;line-height:1.15}
 .ibop-cp-mini i{width:17px;height:17px;font-size:12px}
 .ibop-cp-body{padding:18px 16px}
 .page-wrapper #careers .ibop-cp-body h3{font-size:19px}
 .page-wrapper #careers .ibop-cp-body p{font-size:13.5px}
}
@media(prefers-reduced-motion:reduce){
 .page-wrapper #careers .ibop-cp-track,.page-wrapper #careers .ibop-cp-card,.ibop-cp-mini{scroll-behavior:auto;transition:none!important}
}

/* ===== ibop-wave-3d ===== */
/* ===== Placeflix: 3D cards ===== */
.ibop-pf3d{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:0 0 70px;padding-top:6px;perspective:1500px}
.ibop-pf3d:before{content:"";position:absolute;top:46px;left:16.7%;right:16.7%;height:0;border-top:3px dashed rgba(123,186,39,.7);transform-origin:left;transition:transform 1.4s ease .3s}
.ibop-pf3d-item{position:relative;margin-top:44px;transform-style:preserve-3d}
.ibop-pf3d-step{position:absolute;z-index:3;left:50%;top:-34px;width:68px;height:68px;margin-left:-34px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#0B1D2E;border:4px solid #7BBA27;box-shadow:0 0 0 7px rgba(123,186,39,.2),0 14px 28px rgba(0,0,0,.5);color:#7BBA27;font:400 24px var(--ibop-heading-font);animation:pf3dBob 3.6s ease-in-out infinite;animation-delay:calc(var(--i)*-1.1s)}
@keyframes pf3dBob{50%{transform:translateY(-6px)}}
.ibop-pf3d-card{--rx:0deg;--ry:0deg;--mx:50%;--my:50%;position:relative;height:100%;box-sizing:border-box;overflow:hidden;border-radius:20px;background:linear-gradient(165deg,rgba(255,255,255,.1),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.18);border-bottom:5px solid #7BBA27;box-shadow:0 28px 60px rgba(0,0,0,.5);transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .25s ease-out,box-shadow .3s}
.ibop-pf3d-card.is-tilting{transition:transform .06s linear}
.ibop-pf3d-card:hover{box-shadow:0 40px 80px rgba(0,0,0,.6)}
.ibop-pf3d-card figure{margin:0;padding-top:30px;overflow:hidden}
.ibop-pf3d-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;filter:grayscale(1);transition:filter .6s ease,transform .7s ease}
.ibop-pf3d-card:hover img{filter:none;transform:scale(1.07)}
.ibop-pf3d-body{padding:24px 24px 26px;transform:translateZ(34px)}
.page-wrapper .ibop-pf3d-body h3{margin:0 0 14px;color:#7BBA27;font-size:20px;letter-spacing:.06em;text-transform:uppercase}
.ibop-pf3d-body ul{margin:0;padding:0;list-style:none}
.ibop-pf3d-body li{position:relative;margin:0;padding:6px 0 6px 24px;color:#D1D3D4;font-size:15px;line-height:1.6}
.ibop-pf3d-body li:before{content:"";position:absolute;left:2px;top:15px;width:8px;height:8px;background:#7BBA27;transform:rotate(45deg)}
.ibop-pf3d-glare{position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(255,255,255,.18),transparent 60%);transition:opacity .3s}
.ibop-pf3d-card:hover .ibop-pf3d-glare{opacity:1}
/* entrance: each card swings in on its Y axis, one after another */
.ibop-pf3d.pf-ready:before{transform:scaleX(0)}
.ibop-pf3d.pf-ready.is-in:before{transform:scaleX(1)}
.ibop-pf3d.pf-ready .ibop-pf3d-item{opacity:0;transform:rotateY(-80deg) translateZ(-160px) translateY(40px);transform-origin:0 50%;transition:opacity .8s ease,transform 1.1s cubic-bezier(.2,.9,.25,1);transition-delay:calc(var(--i)*.35s + .2s)}
.ibop-pf3d.pf-ready .ibop-pf3d-item:nth-child(2){transform-origin:50% 50%;transform:rotateX(-60deg) translateZ(-160px) translateY(60px)}
.ibop-pf3d.pf-ready .ibop-pf3d-item:nth-child(3){transform-origin:100% 50%;transform:rotateY(80deg) translateZ(-160px) translateY(40px)}
.ibop-pf3d.pf-ready.is-in .ibop-pf3d-item{opacity:1;transform:none}
@media(max-width:991px){
 .ibop-pf3d{grid-template-columns:1fr;gap:12px;max-width:520px;margin-left:auto;margin-right:auto}
 .ibop-pf3d:before{display:none}
 .ibop-pf3d.pf-ready .ibop-pf3d-item,.ibop-pf3d.pf-ready .ibop-pf3d-item:nth-child(2),.ibop-pf3d.pf-ready .ibop-pf3d-item:nth-child(3){transform-origin:50% 100%;transform:rotateX(-35deg) translateY(50px)}
 .ibop-pf3d.pf-ready.is-in .ibop-pf3d-item{transform:none}
}
@media(prefers-reduced-motion:reduce){.ibop-pf3d-step{animation:none}.ibop-pf3d.pf-ready .ibop-pf3d-item{opacity:1!important;transform:none!important;transition:none!important}.ibop-pf3d.pf-ready:before{transform:none}}

/* ===== ibop-steps-programme ===== */
/* ===== Fonts: Franklin Gothic headings, Roboto body ===== */
:root{--ibop-heading-font:"Franklin Gothic Medium","Franklin Gothic","Libre Franklin","Arial Narrow",Arial,sans-serif;--ibop-body-font:"Roboto",Arial,sans-serif}
.page-wrapper{font-family:var(--ibop-body-font)}
.page-wrapper h1,.page-wrapper h2,.page-wrapper h3,.page-wrapper h4,.page-wrapper h5,.page-wrapper h6{font-family:var(--ibop-heading-font)!important;font-weight:400}
.page-wrapper .ibop-sec p,.page-wrapper .ibop-sec li,.page-wrapper .ibop-sec a,.page-wrapper .ibop-sec button,.page-wrapper .ibop-sec small{font-family:var(--ibop-body-font)}

/* ===== Outcomes: animated responsive flip cards ===== */
.page-wrapper .ibop-outcomes.ibop-oc{margin-top:64px}
.ibop-oc-head{margin:0 auto 30px;text-align:center}
.page-wrapper .ibop-oc-head h3{margin:0;color:#0B1D2E;font-size:clamp(26px,3vw,36px);line-height:1.2}
.ibop-oc-subtitle{max-width:650px;margin:12px auto 0;color:#333333;font-size:15px;line-height:1.7}
.ibop-oc-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;align-items:stretch}
.ibop-oc-card{position:relative;min-width:0;min-height:285px;perspective:1100px;outline:none;opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .65s cubic-bezier(.2,.75,.25,1);transition-delay:calc(var(--i)*.12s)}
.ibop-oc.is-in .ibop-oc-card{opacity:1;transform:translateY(0)}
.ibop-oc-card-inner{position:relative;width:100%;height:100%;min-height:285px;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.75,.25,1);border-radius:18px}
.ibop-oc-card:hover .ibop-oc-card-inner,.ibop-oc-card:focus-within .ibop-oc-card-inner,.ibop-oc-card.is-flipped .ibop-oc-card-inner{transform:rotateY(180deg)}
.ibop-oc-front,.ibop-oc-back{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:24px 20px;border-radius:18px;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-sizing:border-box}
.ibop-oc-front{background:#fff;border:1px solid #E5E2E1;box-shadow:0 10px 28px rgba(11,29,46,.08)}
.ibop-oc-front:before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:#7BBA27}
.ibop-oc-back{background:#0B1D2E;color:#fff;border:1px solid #0B1D2E;transform:rotateY(180deg);justify-content:center;box-shadow:0 14px 30px rgba(11,29,46,.16)}
.ibop-oc-number{display:flex;align-items:center;justify-content:center;width:43px;height:43px;margin:0 0 20px;border-radius:13px;background:#E5F1D4;color:#0B1D2E;font-size:16px;font-weight:800}
.page-wrapper .ibop-oc-front h4,.page-wrapper .ibop-oc-back h4{margin:0 0 12px;font-size:clamp(18px,1.5vw,21px);line-height:1.25;color:#0B1D2E}
.page-wrapper .ibop-oc-back h4{color:#fff}
.page-wrapper .ibop-oc-front p,.page-wrapper .ibop-oc-back p{margin:0;color:#333333;font-size:14px;line-height:1.65}
.page-wrapper .ibop-oc-back p{color:#E5E2E1}
.ibop-oc-card-hint{margin-top:auto;padding-top:18px;color:#333333;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ibop-oc-back .ibop-oc-back-label{margin-bottom:10px;color:#7BBA27;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.ibop-oc-back .ibop-oc-check{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;margin-top:18px;border-radius:50%;background:#7BBA27;color:#0B1D2E;font-size:18px;font-weight:900}
@media(max-width:1199px){.ibop-oc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ibop-oc-card,.ibop-oc-card-inner{min-height:260px}}
@media(max-width:767px){.page-wrapper .ibop-outcomes.ibop-oc{margin-top:42px}.ibop-oc-head{margin-bottom:22px}.ibop-oc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ibop-oc-card,.ibop-oc-card-inner{min-height:260px}.ibop-oc-front,.ibop-oc-back{padding:20px 16px}.ibop-oc-number{margin-bottom:16px}}
@media(max-width:480px){.ibop-oc-grid{grid-template-columns:1fr}.ibop-oc-card,.ibop-oc-card-inner{min-height:225px}.ibop-oc-front,.ibop-oc-back{padding:22px}.page-wrapper .ibop-oc-front h4,.page-wrapper .ibop-oc-back h4{font-size:20px}}
@media(hover:none){.ibop-oc-card-hint{color:#7BBA27}}
@media(prefers-reduced-motion:reduce){.ibop-oc-card,.ibop-oc-card-inner{transition:none!important;opacity:1!important;transform:none!important}.ibop-oc-card:hover .ibop-oc-card-inner,.ibop-oc-card:focus-within .ibop-oc-card-inner,.ibop-oc-card.is-flipped .ibop-oc-card-inner{transform:none}.ibop-oc-front{position:relative;min-height:225px}.ibop-oc-back{display:none}}
/* curriculum content box: rounded wrapper, no square background behind it */
.page-wrapper #curriculum .ibop-cur--side .ibop-panels{background:transparent!important;border:0!important;border-radius:36px!important;box-shadow:none!important}
.page-wrapper #curriculum .ibop-cur--side .ibop-panel{background:#0B1D2E!important;border:0!important;border-radius:36px!important}

/* ===== The Programme, in Full: stats left, toggle tabs right ===== */
#programme .ibop-pg-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0;align-items:start}
#programme .ibop-pg-left{padding-right:56px}
#programme .ibop-pg-big{margin-bottom:26px}
#programme .ibop-pg-big strong{display:flex;align-items:baseline;gap:12px;color:#7BBA27;font:400 clamp(84px,11vw,150px)/.95 var(--ibop-heading-font);letter-spacing:-.03em}
#programme .ibop-pg-big em{color:#fff;font:400 clamp(26px,3vw,38px)/1 var(--ibop-heading-font);font-style:normal;letter-spacing:0}
.page-wrapper #programme .ibop-pg-big>span{display:block;margin-top:10px;color:#D1D3D4;font-size:16px}
#programme .ibop-pg-facts2{margin:0;padding:0;list-style:none}
#programme .ibop-pg-facts2 li{position:relative;margin:0;padding:18px 0 18px 30px;border-top:1px solid rgba(255,255,255,.2)}
#programme .ibop-pg-facts2 li:before{content:"";position:absolute;left:3px;top:27px;width:9px;height:9px;background:#7BBA27;transform:rotate(45deg)}
#programme .ibop-pg-facts2 b{display:block;color:#fff;font:400 24px/1.2 var(--ibop-heading-font)}
.page-wrapper #programme .ibop-pg-facts2 span{display:block;margin-top:4px;color:#D1D3D4;font-size:14.5px;line-height:1.5}
#programme .ibop-pg-right{position:relative;padding-left:56px;min-height:440px}
#programme .ibop-pg-right:before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:rgba(255,255,255,.28);transform-origin:top}
#programme .ibop-pg-tabs{display:flex;flex-wrap:wrap;gap:6px 34px;margin-bottom:28px;border-bottom:1px solid rgba(255,255,255,.2)}
#programme .ibop-pg-tabs button{position:relative;display:flex;align-items:center;gap:10px;margin:0;padding:12px 0 16px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;color:#CCC6C4;font:400 clamp(17px,1.9vw,22px)/1.2 var(--ibop-heading-font);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:color .3s}
#programme .ibop-pg-tabs button i{color:transparent;-webkit-text-stroke:1px #7BBA27;font:400 22px/1 var(--ibop-heading-font);font-style:normal}
#programme .ibop-pg-tabs button:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:4px;background:#7BBA27;transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.9,.3,1)}
#programme .ibop-pg-tabs button:hover{color:#fff}
#programme .ibop-pg-tabs button[aria-selected="true"]{color:#fff}
#programme .ibop-pg-tabs button[aria-selected="true"]:after{transform:scaleX(1)}
#programme .ibop-pg-tabs button[aria-selected="true"] i{color:#7BBA27}
#programme .ibop-pg-tabs button:focus-visible{outline:2px solid #7BBA27;outline-offset:4px}
#programme .ibop-pg-panel[hidden]{display:none}
#programme .ibop-pg-panel:not([hidden]){animation:pgPanel .55s cubic-bezier(.2,.9,.3,1)}
@keyframes pgPanel{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.page-wrapper #programme .ibop-pg-content p{margin:0 0 14px;color:#D1D3D4;font-size:16px;line-height:1.75}
.page-wrapper #programme .ibop-pg-content p strong{color:#fff}
#programme .ibop-pg-list{margin:6px 0 22px;padding:0;list-style:none}
#programme .ibop-pg-list li{position:relative;margin:0;padding:11px 0 11px 36px;color:#D1D3D4;font-size:15.5px;line-height:1.6;border-bottom:1px dashed rgba(255,255,255,.16);animation:pgLi .5s ease both;animation-delay:calc(.2s + var(--j)*.1s)}
@keyframes pgLi{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}
#programme .ibop-pg-list li:last-child{border-bottom:0}
#programme .ibop-pg-list li:before{content:"\2713";position:absolute;left:0;top:12px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#7BBA27;color:#0B1D2E;font:700 13px/1 var(--ibop-body-font)}
#programme .ibop-pg-facts{display:flex;flex-wrap:wrap;gap:10px 40px;padding-top:6px}
#programme .ibop-pg-facts div{color:#CCC6C4;font:400 14px var(--ibop-body-font)}
#programme .ibop-pg-facts b{display:block;color:#fff;font:400 21px/1.2 var(--ibop-heading-font)}
.page-wrapper #programme .ibop-pg-content .ibop-pg-earned{margin:26px 0 0;padding-left:22px;border-left:4px solid #7BBA27;color:#fff;font:400 clamp(22px,2.6vw,30px)/1.35 var(--ibop-heading-font)}
.page-wrapper #programme .ibop-pg-earned span{color:#7BBA27}
#programme .ibop-pg-journey{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:64px auto 0;padding:0;max-width:880px;list-style:none}
#programme .ibop-pg-journey:before,#programme .ibop-pg-journey:after{content:"";position:absolute;top:28px;left:12.5%;right:12.5%;height:4px;border-radius:4px}
#programme .ibop-pg-journey:before{background:rgba(255,255,255,.18)}
#programme .ibop-pg-journey:after{background:#7BBA27;transform-origin:left}
#programme .ibop-pg-journey li{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:12px;margin:0;padding:0;text-align:center}
#programme .ibop-pg-journey .dot{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:#0B1D2E;border:4px solid #7BBA27;color:#7BBA27;font:400 22px var(--ibop-heading-font);transition:background .4s,color .4s,transform .4s}
#programme .ibop-pg-journey b{color:#fff;font:400 clamp(16px,2.2vw,24px)/1.15 var(--ibop-heading-font);letter-spacing:.06em;text-transform:uppercase}
#programme .ibop-pg-journey li:hover .dot{background:#7BBA27;color:#0B1D2E;transform:scale(1.1)}
/* entrance (JS-ready only) */
#programme .ibop-pg-left.pg-ready .ibop-pg-big{opacity:0;transform:scale(.85);transform-origin:left;transition:opacity .7s ease,transform .8s cubic-bezier(.2,.9,.3,1.2)}
#programme .ibop-pg-left.pg-ready .ibop-pg-facts2 li{opacity:0;transform:translateX(-30px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.9,.3,1);transition-delay:calc(var(--i)*.2s + .3s)}
#programme .ibop-pg-left.is-in .ibop-pg-big,#programme .ibop-pg-left.is-in .ibop-pg-facts2 li{opacity:1;transform:none}
#programme .ibop-pg-split.pg-ready .ibop-pg-right{opacity:0;transform:translateX(50px);transition:opacity .8s ease .3s,transform .9s cubic-bezier(.2,.9,.3,1) .3s}
#programme .ibop-pg-split.pg-ready .ibop-pg-right:before{transform:scaleY(0);transition:transform 1.2s ease .2s}
#programme .ibop-pg-split.is-in .ibop-pg-right{opacity:1;transform:none}
#programme .ibop-pg-split.is-in .ibop-pg-right:before{transform:scaleY(1)}
#programme .ibop-pg-journey.pg-ready:after{transform:scaleX(0);transition:transform 2.4s ease .2s}
#programme .ibop-pg-journey.pg-ready .dot{background:#0B1D2E;color:#7BBA27;transition-delay:calc(var(--i)*.75s)}
#programme .ibop-pg-journey.pg-ready li{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .6s ease;transition-delay:calc(var(--i)*.75s)}
#programme .ibop-pg-journey.is-in:after{transform:scaleX(1)}
#programme .ibop-pg-journey.is-in li{opacity:1;transform:none}
#programme .ibop-pg-journey.is-in .dot{background:#7BBA27;color:#0B1D2E}
@media(max-width:991px){
 #programme .ibop-pg-split{grid-template-columns:1fr}
 #programme .ibop-pg-left{padding-right:0;margin-bottom:40px}
 #programme .ibop-pg-right{padding-left:0;padding-top:30px;min-height:0;border-top:1px solid rgba(255,255,255,.28)}
 #programme .ibop-pg-right:before{display:none}
 #programme .ibop-pg-split.pg-ready .ibop-pg-right{transform:translateY(40px)}
}
@media(max-width:520px){
 #programme .ibop-pg-journey:before,#programme .ibop-pg-journey:after{top:22px}
 #programme .ibop-pg-journey .dot{width:46px;height:46px;font-size:18px}
 #programme .ibop-pg-journey b{font-size:13px;letter-spacing:.03em}
}
@media(prefers-reduced-motion:reduce){#programme *{animation:none!important;transition:none!important}#programme .pg-ready *{opacity:1!important;transform:none!important}#programme .pg-ready:after{transform:none!important}}

/* ===== Why IBOP: flip cards with a content image on the front ===== */
.ibop-fcs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.ibop-fc{position:relative;height:410px;perspective:1300px;outline:0}
.ibop-fc-in{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .85s cubic-bezier(.2,.8,.2,1)}
@media(hover:hover){.ibop-fc:hover .ibop-fc-in{transform:rotateY(180deg)}}
.ibop-fc.is-flipped .ibop-fc-in{transform:rotateY(180deg)}
.ibop-fc:focus-visible{outline:3px solid #7BBA27;outline-offset:4px;border-radius:20px}
.ibop-fc-face{position:absolute;inset:0;overflow:hidden;border-radius:20px;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 20px 44px rgba(11,29,46,.22)}
.ibop-fc-front{background:var(--img,none) center/cover no-repeat,linear-gradient(160deg,#204870,#0B1D2E 70%);color:#fff;border-bottom:5px solid #7BBA27}
.ibop-fc-art{position:absolute;left:0;right:0;top:0;height:64%;padding:18px 18px 0;box-sizing:border-box}
.ibop-fc-art svg{display:block;width:100%;height:100%}
.ibop-fc-front:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(11,29,46,.95) 78%);pointer-events:none}
.ibop-fc-n{position:absolute;z-index:2;left:22px;top:16px;color:#7BBA27;font:400 18px var(--ibop-heading-font);letter-spacing:.12em}
.ibop-fc-cap{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:0 26px 24px}
.page-wrapper #why-ibop .ibop-fc-cap h3{display:inline;margin:0;padding:3px 12px;background:#7BBA27;color:#0B1D2E;font-size:22px;line-height:1.8;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.ibop-fc-hint{display:block;margin-top:14px;color:#D1D3D4;font:400 13px var(--ibop-body-font);letter-spacing:.04em}
.ibop-fc-back{transform:rotateY(180deg);display:flex;flex-direction:column;justify-content:center;padding:34px 30px;box-sizing:border-box;background:linear-gradient(160deg,#BDDD93,#5D870C);color:#0B1D2E}
.ibop-fc-back .ibop-fc-n{color:rgba(11,29,46,.28);font-size:64px;left:auto;right:24px;top:12px;letter-spacing:0}
.page-wrapper #why-ibop .ibop-fc-back h4{margin:0 0 14px;padding-bottom:12px;border-bottom:3px solid #0B1D2E;color:#0B1D2E;font-size:24px;line-height:1.2}
.page-wrapper #why-ibop .ibop-fc-back p{margin:0;color:#0B1D2E;font-size:16.5px;line-height:1.7}
@media(max-width:991px){.ibop-fcs{grid-template-columns:1fr;max-width:480px;margin:0 auto}.ibop-fc{height:380px}}
@media(prefers-reduced-motion:reduce){.ibop-fc-in{transition:none}}

/* ===== ibop-works-css ===== */
/* ===== Students like you now work at: pill style of the Faculty "Practitioner-led" row, no outer box ===== */
.page-wrapper #where-learners-work{padding:56px 0}
.page-wrapper #where-learners-work .ibop-sec-head{max-width:none;margin:0 0 24px;text-align:left}
.page-wrapper #where-learners-work .ibop-sec-head h2{color:#fff}
.ibop-works-list{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:14px 12px;margin:0;padding:0;list-style:none}
.ibop-works-list li{display:inline-flex;align-items:center;padding:12px 24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:40px;color:#fff;font:500 15px/1.3 var(--ibop-body-font);white-space:nowrap;cursor:default}
.page-wrapper #where-learners-work .ibop-works-note{max-width:900px;margin:24px 0 0;font-size:13px;line-height:1.6;color:#D1D3D4;text-align:left}
.ibop-anim #where-learners-work .ibop-works-list li{opacity:0;transform:translateY(18px) scale(.94);transition:opacity .6s ease,transform .5s cubic-bezier(.3,1.3,.5,1),background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li{opacity:1;transform:none}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(1){transition-delay:0.15s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(2){transition-delay:0.22s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(3){transition-delay:0.29s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(4){transition-delay:0.36s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(5){transition-delay:0.43s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(6){transition-delay:0.50s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(7){transition-delay:0.57s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(8){transition-delay:0.64s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(9){transition-delay:0.71s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(10){transition-delay:0.78s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(11){transition-delay:0.85s}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:nth-child(12){transition-delay:0.92s}
.ibop-works-list li:hover{background:#7BBA27;border-color:#7BBA27;color:#0B1D2E;font-weight:700;box-shadow:0 10px 24px rgba(123,186,39,.35)}
.ibop-anim #where-learners-work .ibop-works-body.is-in .ibop-works-list li:hover{transform:translateY(-3px);transition-delay:0s}
@media (max-width:767px){
  .page-wrapper #where-learners-work{padding:42px 0}
  .ibop-works-list{gap:10px 8px}
  .ibop-works-list li{padding:10px 16px;font-size:13.5px}
  .page-wrapper #where-learners-work .ibop-works-note{font-size:11px;margin-top:18px}
}
@media (prefers-reduced-motion:reduce){.ibop-anim #where-learners-work .ibop-works-list li{opacity:1!important;transform:none!important}}

/* ===== ibop-learners-css ===== */
/* Our Learners: circular portrait, name, one-line role/company and quote in one card */
.page-wrapper #our-learners{padding:80px 0;background:#fff}
.page-wrapper #our-learners .ibop-sec-head{max-width:100%;width:100%;margin:0 0 34px;text-align:left}
.page-wrapper #our-learners .ibop-sec-head>p:last-child{max-width:100%;margin:12px 0 0;font-size:15px;line-height:1.45;white-space:nowrap}
@media (max-width:767px){
 .page-wrapper #our-learners .ibop-sec-head>p:last-child{white-space:normal;font-size:14px;line-height:1.5}
}
.page-wrapper #our-learners .ibop-sec-head .ibop-kicker{color:#4A6E0E}
.ibop-ln-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:22px 18px;margin:0;padding:0;list-style:none}
.ibop-ln-item{display:flex;flex-direction:column;align-items:center;min-width:0;height:100%;margin:0;padding:22px 17px 19px;background:#fff;border:1px solid #E5E2E1;border-bottom:4px solid #7BBA27;border-radius:16px;overflow:hidden;box-shadow:0 10px 26px rgba(11,29,46,.09);transition:transform .3s ease,box-shadow .3s ease}
.ibop-ln-item:hover,.ibop-ln-item:focus-within{transform:translateY(-5px);box-shadow:0 18px 34px rgba(11,29,46,.16)}
.ibop-ln-img{position:relative;display:flex;align-items:center;justify-content:center;flex:none;width:132px;height:132px;margin:0 auto 15px;padding:0;overflow:visible;background:transparent}
.ibop-ln-img:before{content:"";position:absolute;inset:-7px;border:3px solid #7BBA27;border-radius:50%;box-shadow:0 0 0 5px rgba(123,186,39,.12)}
.ibop-ln-img img,.ibop-ln-av{position:relative;z-index:1;display:block;flex:none;width:132px;height:132px;border:4px solid #fff;border-radius:50%;object-fit:cover;object-position:50% 20%;box-shadow:0 7px 20px rgba(11,29,46,.18);transition:transform .35s ease}
.ibop-ln-av{display:none;align-items:center;justify-content:center;background:#173D54;color:#7BBA27;font:700 40px var(--ibop-heading-font)}
.ibop-ln-item:hover .ibop-ln-img img,.ibop-ln-item:focus-within .ibop-ln-img img{transform:scale(1.04)}
.ibop-ln-card{width:100%;flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0;text-align:center}
.ibop-ln-name{width:100%;margin:0;color:#0B1D2E;font:800 18px/1.25 var(--ibop-heading-font);text-align:center}
.ibop-ln-role{display:block;width:100%;min-width:0;overflow:hidden;color:#52606B;font:700 12px/1.45 var(--ibop-body-font);text-align:center;text-overflow:ellipsis;white-space:nowrap}
.ibop-ln-role b{display:inline;color:#47720D;font-weight:800}
.ibop-ln-role b:after{content:" · ";color:#9AA3AA;font-weight:400}
.page-wrapper #our-learners .ibop-ln-card p{display:block;width:100%;margin:7px 0 0;padding:12px 0 0;border-top:1px solid #E5E9EC;color:#39434D;font:400 13px/1.58 var(--ibop-body-font);text-align:left}
@media (max-width:1100px){.ibop-ln-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
 .page-wrapper #our-learners{padding:52px 0}
 .ibop-ln-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
 .ibop-ln-item{padding:17px 11px 15px;border-radius:13px}
 .ibop-ln-img{width:104px;height:104px;margin-bottom:13px}
 .ibop-ln-img img,.ibop-ln-av{width:104px;height:104px}
 .ibop-ln-av{font-size:31px}
 .ibop-ln-card{gap:6px}
 .ibop-ln-name{font-size:14px;line-height:1.3}
 .ibop-ln-role{font-size:10px;line-height:1.4}
 .page-wrapper #our-learners .ibop-ln-card p{font-size:11px;line-height:1.5;margin-top:5px;padding-top:9px}
}
@media (max-width:360px){.ibop-ln-grid{grid-template-columns:1fr;max-width:320px;margin:0 auto}.ibop-ln-item{padding:20px 16px}.ibop-ln-img{width:118px;height:118px}.ibop-ln-img img,.ibop-ln-av{width:118px;height:118px}.ibop-ln-name{font-size:16px}.ibop-ln-role{font-size:11px}.page-wrapper #our-learners .ibop-ln-card p{font-size:12px}}
@media (prefers-reduced-motion:reduce){.ibop-ln-item,.ibop-ln-img img{transition:none}}

/* ===== ibop-job-trade-css ===== */
.ibop-job-trade{padding:64px 0 8px;background:#07121d;color:#e6e7e8;font-family:var(--ibop-body-font)}
.ibop-jt-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 24px;box-sizing:border-box}
.ibop-jt-heading{max-width:720px;margin:0 0 30px}
.ibop-jt-kicker{margin:0 0 12px;color:#7BBA27;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ibop-jt-heading h2{margin:0 0 14px;color:#fff;font:800 clamp(30px,3.5vw,42px)/1.12 var(--ibop-heading-font);letter-spacing:-.025em}
.ibop-jt-heading h2 span{color:#7BBA27}
.ibop-jt-intro{max-width:700px;margin:0;color:#d1d3d4;font-size:17px;line-height:1.7}
.ibop-jt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ibop-jt-card{position:relative;min-width:0;min-height:225px;padding:23px 22px 22px;background:#111d29;border:0;border-top:3px solid #7BBA27;border-radius:16px;box-sizing:border-box}
.ibop-jt-time{margin:0 0 18px;color:#7BBA27;font-size:14px;font-weight:800;letter-spacing:.025em;text-transform:uppercase}
.ibop-jt-card h3{margin:0 0 10px;color:#fff;font:800 23px/1.2 var(--ibop-heading-font);letter-spacing:-.02em}
.ibop-jt-card>p:not(.ibop-jt-time){margin:0;color:#c5cdd5;font-size:15.5px;line-height:1.72}
.ibop-jt-desk{display:inline-flex;align-items:center;margin-top:16px;padding:5px 13px;border-radius:30px;background:#7BBA27;color:#07121d;font-size:13px;font-weight:700;line-height:1.35}
.ibop-jt-highlight{border-top-color:#7BBA27;box-shadow:inset 0 0 0 1px rgba(123,186,39,.28)}
.ibop-jt-circle{position:absolute;top:17px;right:18px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:2px solid #7BBA27;border-radius:50%;background:#7BBA27;color:#07121d;font-size:16px;font-weight:900;box-shadow:0 0 0 5px rgba(123,186,39,.16)}
.ibop-jt-cta{display:flex;align-items:center;justify-content:space-between;gap:26px;margin:32px 0 0;padding:22px 23px;background:#12251f;border:1px solid rgba(123,186,39,.38);border-radius:17px}
.ibop-jt-cta>p{margin:0;color:#fff;font-size:19px;font-weight:700;line-height:1.5}
.ibop-jt-actions{display:flex;align-items:center;gap:12px;flex:none}
.ibop-jt-actions .ibop-btn{white-space:nowrap}
@media(max-width:991px){.ibop-jt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ibop-jt-card{min-height:215px}.ibop-jt-cta{align-items:flex-start;flex-direction:column}.ibop-jt-actions{width:100%;flex-wrap:wrap}.ibop-jt-actions .ibop-btn{flex:1}}
@media(max-width:600px){.ibop-job-trade{padding:48px 0 4px}.ibop-jt-wrap{padding:0 16px}.ibop-jt-heading h2{font-size:30px}.ibop-jt-intro{font-size:15px}.ibop-jt-grid{grid-template-columns:1fr;gap:14px}.ibop-jt-card{min-height:0;padding:22px 19px}.ibop-jt-card h3{font-size:22px}.ibop-jt-cta{padding:20px 17px;margin-top:22px}.ibop-jt-cta>p{font-size:17px}.ibop-jt-actions{flex-direction:column;align-items:stretch}.ibop-jt-actions .ibop-btn{width:100%;flex:auto}}
@media(prefers-reduced-motion:reduce){.ibop-jt-card{transition:none}}

/* ===== ibop-sf-css ===== */
.page-wrapper #sound-familiar .ibop-sec-head{max-width:none;margin:0 0 28px;text-align:left}
.page-wrapper #sound-familiar .ibop-sec-head .ibop-kicker,.page-wrapper #sound-familiar .ibop-sec-head h2,.page-wrapper #sound-familiar .ibop-sec-head p{text-align:left}
.page-wrapper #sound-familiar .ibop-sf-accent{color:#5D870C}
.ibop-sf-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.ibop-sf-card{position:relative;aspect-ratio:1/1;perspective:1200px;outline:0;cursor:pointer}
.ibop-sf-in{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.2,.8,.2,1)}
@media(hover:hover){.ibop-sf-card:hover .ibop-sf-in{transform:rotateY(180deg)}}
.ibop-sf-card.is-flipped .ibop-sf-in{transform:rotateY(180deg)}
.ibop-sf-card:focus-visible{outline:3px solid #7BBA27;outline-offset:3px;border-radius:16px}
.ibop-sf-face{position:absolute;inset:0;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;padding:22px 20px 18px;border-radius:16px;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 12px 30px rgba(11,29,46,.1)}
.ibop-sf-front{background:#fff;border:1px solid #E5E2E1;border-top:5px solid #7BBA27}
.ibop-sf-back{background:#0B1D2E;border:1px solid #0B1D2E;border-top:5px solid #7BBA27;transform:rotateY(180deg);justify-content:center}
.ibop-sf-no{position:absolute;right:16px;top:12px;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#7BBA27;color:#0B1D2E;font:700 17px/1 var(--ibop-heading-font);box-shadow:0 0 0 4px rgba(123,186,39,.22)}
.ibop-sf-back .ibop-sf-no{background:#7BBA27;color:#0B1D2E}
.ibop-sf-tag{display:block;min-height:34px;margin:4px 54px 14px 0;color:#4A6E0E;font:700 12.5px/1.35 var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.page-wrapper .ibop-sf-quote{margin:0;color:#0B1D2E;font:400 20px/1.35 var(--ibop-heading-font)}
.ibop-sf-hint{margin-top:auto;padding-top:10px;color:#5D870C;font:700 12px/1.3 var(--ibop-body-font);letter-spacing:.06em;text-transform:uppercase}
.ibop-sf-with{display:inline-block;align-self:flex-start;margin:0 0 14px;padding:5px 12px;border-radius:5px;background:#7BBA27;color:#0B1D2E;font:700 12.5px/1.3 var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.page-wrapper .ibop-sf-back p{margin:0;color:#E5E2E1;font-size:15px;line-height:1.6}
.ibop-sf-cta{justify-content:flex-start;text-align:left;margin-top:30px}
@media(max-width:1100px){.ibop-sf-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;margin:0}}
@media(max-width:540px){.ibop-sf-grid{grid-template-columns:1fr;max-width:340px;margin:0}.ibop-sf-cta .ibop-btn{width:100%}}
@media(prefers-reduced-motion:reduce){.ibop-sf-in{transition:none}}

/* ===== ibop-fq-css ===== */
.page-wrapper #five-questions .ibop-sec-head{max-width:none;margin:0 0 28px;text-align:left}
.page-wrapper #five-questions .ibop-sec-head .ibop-kicker,
.page-wrapper #five-questions .ibop-sec-head h2,
.page-wrapper #five-questions .ibop-sec-head p{text-align:left}

.ibop-fq-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}

.ibop-fq-item{
  display:grid;
  grid-template-columns:48px minmax(0,.9fr) minmax(0,1.4fr);
  gap:8px 24px;
  align-items:center;
  margin:0;
  padding:18px 24px 18px 20px;
  background:#fff;
  border:1px solid #E5E2E1;
  border-left:5px solid #7BBA27;
  border-radius:14px;
  box-shadow:0 8px 22px rgba(11,29,46,.07);
  transition:box-shadow .3s ease,background .3s ease
}

.ibop-fq-item:hover{box-shadow:0 16px 32px rgba(11,29,46,.14)}

.ibop-fq-no{
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:50%;
  background:#7BBA27;
  color:#0B1D2E;
  font:700 18px/1 var(--ibop-heading-font);
  box-shadow:0 0 0 4px rgba(123,186,39,.22)
}

.page-wrapper .ibop-fq-item h3{
  margin:0;
  color:#0B1D2E;
  font-size:20px;
  line-height:1.3
}

.page-wrapper .ibop-fq-item p{
  margin:0;
  color:#333333;
  font-size:15.5px;
  line-height:1.6
}

@media(max-width:767px){
  .ibop-fq-item{
    grid-template-columns:44px minmax(0,1fr);
    padding:16px 16px 16px 14px;
    column-gap:14px
  }
  .ibop-fq-item p{grid-column:1/-1}
  .page-wrapper .ibop-fq-item h3{font-size:18px}
}

/* ===== ibop-oc2-css ===== */
.page-wrapper .ibop-oc2 .ibop-sec-head{max-width:none;margin:0 0 20px;text-align:left}
.page-wrapper .ibop-oc2 .ibop-sec-head h2,.page-wrapper .ibop-oc2 .ibop-sec-head p{text-align:left}
.ibop-oc2-stage{--oc2-path:none;margin-bottom:clamp(40px,5vw,70px);position:relative;width:100%;aspect-ratio:1024/576;container-type:inline-size;background:var(--oc2-path) center/100% 100% no-repeat}
.ibop-oc2-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.ibop-oc2-stage.has-path-img .ibop-oc2-svg{display:none}
.ibop-oc2-line{fill:none;stroke:#fff;stroke-width:3.5;stroke-linecap:round;opacity:.95;filter:drop-shadow(0 0 6px rgba(123,186,39,.5))}
.ibop-oc2-line.ibop-oc2-fade{stroke:url(#oc2fade)}
.ibop-oc2-link{stroke-dasharray:.012 .012!important;stroke-width:3;opacity:.55}
.ibop-oc2-route{stroke:none}
.ibop-oc2-ptr{fill:#7BBA27;stroke:#fff;stroke-width:3;opacity:0;filter:drop-shadow(0 0 8px #7BBA27)}
.ibop-anim .ibop-oc2-line{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 4s cubic-bezier(.4,.1,.3,1)}
.ibop-anim .ibop-oc2-stage.is-in .ibop-oc2-line{stroke-dashoffset:0}
.ibop-oc2-item{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;outline:0}
.ibop-oc2-circle{position:absolute;left:var(--cx);top:var(--cy);width:9.5cqw;height:9.5cqw;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:50%;background:#173D54;color:#7BBA27;border:.6cqw solid #fff;box-shadow:0 0 0 .7cqw rgba(123,186,39,.28),0 1.6cqw 3cqw rgba(0,0,0,.5);pointer-events:auto;transition:transform .4s cubic-bezier(.3,1.4,.5,1),box-shadow .3s}
.ibop-oc2-circle img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ibop-oc2-circle svg{flex:none;width:46%;height:46%}
.ibop-oc2-circle img~svg{display:none}
.ibop-oc2-item:hover .ibop-oc2-circle,.ibop-oc2-item:focus-visible .ibop-oc2-circle{transform:translate(-50%,-50%) scale(1.12);box-shadow:0 0 0 .9cqw #7BBA27,0 2cqw 3.6cqw rgba(0,0,0,.6)}
.ibop-oc2-info{position:absolute;left:var(--tx);top:var(--ty);width:var(--tw);text-align:var(--ta,center);text-wrap:balance;pointer-events:auto}
.ibop-oc2-pill{display:inline-block;margin-bottom:1cqw;padding:.7cqw 2.6cqw;border-radius:5cqw;background:#fff;color:#0B1D2E;font:700 clamp(12px,1.9cqw,20px)/1.2 var(--ibop-heading-font);box-shadow:0 .8cqw 2cqw rgba(0,0,0,.35)}
.page-wrapper .ibop-oc2 .ibop-oc2-info h3{margin:0 0 .6cqw;color:#fff;font-size:clamp(14px,1.8cqw,20px);line-height:1.2}
.page-wrapper .ibop-oc2 .ibop-oc2-info p{margin:0;color:#D1D3D4;font-size:clamp(11px,1.2cqw,14px);line-height:1.45}
.ibop-anim .ibop-oc2-item{opacity:0;transform:translateY(24px);transition:opacity .7s ease calc(var(--i)*.45s + .3s),transform .8s cubic-bezier(.2,.8,.2,1) calc(var(--i)*.45s + .3s)}
.ibop-anim .ibop-oc2-stage.is-in .ibop-oc2-item{opacity:1;transform:none}
@media(max-width:820px){
  .ibop-oc2-stage{aspect-ratio:auto;container-type:normal;display:flex;flex-direction:column;gap:26px;padding-left:34px;border-left:4px solid #7BBA27;margin-left:14px;background:none}
  .ibop-oc2-svg{display:none}
  .ibop-oc2-item{position:relative;display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;align-items:center;width:auto;height:auto;pointer-events:auto}
  .ibop-oc2-circle{position:relative;left:auto;top:auto;width:84px;height:84px;transform:none;border-width:3px;box-shadow:0 0 0 4px rgba(123,186,39,.28),0 10px 20px rgba(0,0,0,.45)}
  .ibop-oc2-item:hover .ibop-oc2-circle,.ibop-oc2-item:focus-visible .ibop-oc2-circle{transform:scale(1.06);box-shadow:0 0 0 4px #7BBA27}
  .ibop-oc2-info{position:static;width:auto;text-align:left!important}
  .ibop-oc2-pill{margin-bottom:6px;padding:4px 14px;font-size:13px}
  .page-wrapper .ibop-oc2 .ibop-oc2-info h3{font-size:18px;margin-bottom:4px}
  .page-wrapper .ibop-oc2 .ibop-oc2-info p{font-size:14px}
  .ibop-oc2-item:before{content:"";position:absolute;left:-46px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;background:#0B1D2E;border:4px solid #7BBA27}
}
@media(prefers-reduced-motion:reduce){.ibop-anim .ibop-oc2-item,.ibop-anim .ibop-oc2-line{opacity:1!important;transform:none!important;stroke-dashoffset:0!important;transition:none!important}}

/* ===== ibop-how-works-css ===== */
.ibop-how-works{padding:76px 0 82px}.ibop-how-works .ibop-wrap{max-width:1200px}
.ibop-hw-heading{max-width:760px;margin:0 0 38px;text-align:left}
.ibop-hw-heading h2{margin:0 0 14px;font-size:clamp(30px,3.7vw,46px);line-height:1.12;color:var(--ibop-navy)}
.ibop-hw-heading>p:last-child{max-width:650px;margin:0;font-size:16px}
.ibop-hw-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ibop-hw-step{position:relative;min-height:240px;padding:26px 22px 24px;background:#fff;border:1px solid #e2e6e8;border-top:4px solid var(--ibop-green);border-radius:14px;box-shadow:0 12px 28px rgba(11,29,46,.07);transition:transform .25s,box-shadow .25s}
.ibop-hw-step:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(11,29,46,.13)}
.ibop-hw-num{position:absolute;right:18px;top:14px; color: rgb(11 29 46); font:800 38px/1 var(--ibop-heading-font)}
.ibop-hw-icon{display:flex;width:52px;height:52px;align-items:center;justify-content:center;margin-bottom:22px;border-radius:12px;background:#eef5e5;color:var(--ibop-green-dark)}
.ibop-hw-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ibop-hw-step h3{margin:0 0 9px;color:var(--ibop-navy);font-size:22px}.ibop-hw-step p{margin:0;font-size:14.5px;line-height:1.65}
.ibop-hw-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin-top:26px}
.ibop-hw-highlights article{display:flex;align-items:flex-start;gap:14px;padding:19px 20px;background:#fff;border:1px solid #e2e6e8;border-radius:12px}
.ibop-hw-check{display:flex;flex:0 0 30px;width:30px;height:30px;align-items:center;justify-content:center;border-radius:50%;background:var(--ibop-navy);color:var(--ibop-green);font-weight:800}
.ibop-hw-highlights h3{margin:1px 0 5px;color:var(--ibop-navy);font-size:17px}.ibop-hw-highlights p{margin:0;font-size:14px;line-height:1.55}
@media(max-width:991px){.ibop-hw-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.ibop-how-works{padding:54px 0 58px}.ibop-hw-heading{margin-bottom:26px}.ibop-hw-steps,.ibop-hw-highlights{grid-template-columns:1fr}.ibop-hw-step{min-height:0;padding:22px}.ibop-hw-icon{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.ibop-hw-step{transition:none}}

/* ===== ibop-blog-css ===== */
.ibop-blog-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.ibop-blog-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff;border:1px solid var(--ibop-border);border-bottom:5px solid var(--ibop-green);border-radius:14px;box-shadow:0 12px 30px rgba(11,29,46,.08)}
.ibop-blog-img{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--ibop-navy)}
.ibop-blog-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.ibop-blog-card:hover .ibop-blog-img img{transform:scale(1.06)}
.ibop-blog-date{position:absolute;left:14px;top:14px;padding:6px 12px;background:var(--ibop-green);color:var(--ibop-navy);border-radius:6px;font:700 12.5px var(--ibop-body-font)}
.ibop-blog-body{display:flex;flex-direction:column;flex:1;padding:16px 16px 18px}
.page-wrapper .ibop-blog-body h3{margin:0 0 8px;font-size:18px;line-height:1.25;color:var(--ibop-navy);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.page-wrapper .ibop-blog-body p{margin:0 0 14px;font-size:13.5px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ibop-blog-view{align-self:flex-start;margin-top:auto;padding:8px 18px;border:2px solid var(--ibop-green);border-radius:8px;background:transparent;color:var(--ibop-navy);font:700 14px var(--ibop-body-font);cursor:pointer;transition:background .2s}
.ibop-blog-view:hover,.ibop-blog-view:focus-visible{background:var(--ibop-green);outline:0}
.ibop-blog-modal{position:fixed;inset:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto;background:rgba(7,18,30,.78)}
.ibop-blog-modal[hidden]{display:none}
.ibop-blog-dialog{position:relative;width:100%;max-width:720px;max-height:92vh;margin:auto;overflow-y:auto;background:#fff;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.45);animation:ibopPop .3s ease both}
.ibop-blog-dimg img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain}
.ibop-blog-dbody{padding:26px 28px 30px}
.ibop-blog-ddate{display:inline-block;margin-bottom:10px;padding:5px 12px;background:#E5F1D4;color:var(--ibop-navy);border-radius:6px;font:700 12.5px var(--ibop-body-font)}
.page-wrapper .ibop-blog-dbody h3,.ibop-blog-dbody h3{margin:0 0 14px;color:var(--ibop-navy);font:400 28px/1.2 var(--ibop-heading-font)}
.ibop-blog-dinfo{margin-bottom:22px;color:#333333;font-size:16px;line-height:1.75}
.ibop-blog-dinfo p{margin:0 0 12px;color:#333333}
.ibop-blog-dinfo ul,.ibop-blog-dinfo ol{margin:0 0 12px;padding-left:22px}
/* tablet and mobile: still one row of 5 cards, swipe sideways */
@media (max-width:1100px){
  .ibop-blog-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 16px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--ibop-green) #E6E7E8}
  .ibop-blog-card{flex:0 0 250px;scroll-snap-align:start}
}
@media (max-width:640px){
  .ibop-blog-card{flex-basis:72%}
  .ibop-blog-dbody{padding:20px 18px 24px}
  .ibop-blog-dbody h3{font-size:23px}
  .ibop-blog-dbody .ibop-btn{width:100%}
}
/* never leave blog cards invisible if the reveal animation does not fire */
.ibop-anim .ibop-blog [data-stagger]>*{opacity:1;transform:none}

/* ===== ibop-new-layouts ===== */
/* ===== Outcomes: rising staircase, all content visible, built step by step ===== */
@keyframes ibopNodeGlow{50%{box-shadow:0 0 0 9px rgba(123,186,39,.18)}}
.ibop-st{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start}
.ibop-st-step{position:relative;margin:calc((4 - var(--i))*28px) 0 0;padding:34px 14px 0 18px}
.ibop-st-step:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;border-radius:2px;background:#7BBA27}
.ibop-st-step:not(:first-child):after{content:"";position:absolute;left:0;top:0;width:4px;height:28px;border-radius:2px;background:#7BBA27}
.ibop-st-node{position:absolute;left:18px;top:-22px;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#0B1D2E;color:#7BBA27;border:3px solid #7BBA27;font:700 15px/1 "Roboto",Arial,sans-serif;z-index:2}
.page-wrapper .ibop-st-body h4,.ibop-st-body h4{margin:8px 0 6px;font-size:clamp(17px,1.7vw,20px);line-height:1.25;color:#0B1D2E}
.ibop-st-desc,.ibop-st-out{margin:0 0 8px;color:#333333;font-size:14px;line-height:1.55}
.ibop-st-out b{display:block;color:#5D870C}
/* step-by-step build (only when JS has set .ibop-anim) */
.ibop-anim .ibop-st-step:before{transform:scaleX(0);transform-origin:left;transition:transform .6s ease calc(var(--i)*.9s + .3s)}
.ibop-anim .ibop-st-step:not(:first-child):after{transform:scaleY(0);transform-origin:bottom;transition:transform .3s ease calc(var(--i)*.9s)}
.ibop-anim .ibop-st-node{opacity:0;transform:scale(.2);transition:opacity .4s ease calc(var(--i)*.9s + .2s),transform .6s cubic-bezier(.3,1.7,.5,1) calc(var(--i)*.9s + .2s)}
.ibop-anim .ibop-st-body{opacity:0;transform:translateY(28px);transition:opacity .7s ease calc(var(--i)*.9s + .5s),transform .8s cubic-bezier(.2,.8,.2,1) calc(var(--i)*.9s + .5s)}
.ibop-anim .ibop-st.is-in .ibop-st-step:before{transform:scaleX(1)}
.ibop-anim .ibop-st.is-in .ibop-st-step:not(:first-child):after{transform:scaleY(1)}
.ibop-anim .ibop-st.is-in .ibop-st-node{opacity:1;transform:none;animation:ibopNodeGlow 2.8s ease-in-out infinite calc(var(--i)*.9s + 1.2s)}
.ibop-anim .ibop-st.is-in .ibop-st-body{opacity:1;transform:none}
@media(max-width:800px){
  .ibop-st{grid-template-columns:1fr}
  .ibop-st-step{margin:0;padding:0 0 22px 66px;min-height:48px}
  .ibop-st-step:before{left:21px;right:auto;top:46px;bottom:0;width:3px;height:auto}
  .ibop-st-step:last-child:before{display:none}
  .ibop-st-step:not(:first-child):after{display:none}
  .ibop-st-node{left:0;top:0;width:44px;height:44px}
  .ibop-st-body h4{margin-top:2px}
  .ibop-anim .ibop-st-step:before{transform:scaleY(0);transform-origin:top;transition:transform .5s ease calc(var(--i)*.9s + .6s)}
  .ibop-anim .ibop-st.is-in .ibop-st-step:before{transform:scaleY(1)}
}
@media(prefers-reduced-motion:reduce){
  .ibop-anim .ibop-st-step:before,.ibop-anim .ibop-st-step:after,.ibop-anim .ibop-st-node,.ibop-anim .ibop-st-body{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}
}

/* ===== Staircase: spotlight / highlight, step by step ===== */
.ibop-st-body{position:relative;isolation:isolate}
.ibop-st-body:before{content:"";position:absolute;z-index:-1;inset:-8px -8px -6px -10px;border-radius:0 0 12px 12px;background:linear-gradient(180deg,rgba(123,186,39,.22),rgba(123,186,39,0) 90%);opacity:0;transition:opacity .4s ease}
.ibop-st-body h4 span{padding:0 4px;margin-left:-4px;background:linear-gradient(transparent 58%,var(--mk,#E5F1D4) 58%) no-repeat 0 0/0% 100%;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .7s ease}
html:not(.ibop-anim) .ibop-st-body h4 span,.ibop-st-step.is-seen .ibop-st-body h4 span{background-size:100% 100%}
.ibop-st-out b{display:inline-block;margin-bottom:6px;padding:2px 10px;border-radius:4px;background:#7BBA27;color:#0B1D2E}
.ibop-st-step.is-focus .ibop-st-body h4 span{--mk:rgba(123,186,39,.6)}
.ibop-st-step.is-focus .ibop-st-body:before{opacity:1}
.ibop-st-step.is-focus .ibop-st-desc{color:#0B1D2E}
.ibop-st-step.is-focus .ibop-st-out{color:#0B1D2E;font-weight:500}
/* seen steps use quick transitions so focus changes feel instant */
.ibop-anim .ibop-st.is-in .ibop-st-step.is-seen .ibop-st-body{transition:opacity .45s ease,transform .45s cubic-bezier(.2,.8,.2,1)}
.ibop-anim .ibop-st.is-in .ibop-st-step.is-seen .ibop-st-node{transition:transform .45s cubic-bezier(.3,1.6,.5,1),background .3s,color .3s}
.ibop-anim .ibop-st.is-in .ibop-st-step.is-seen:before{transition:height .3s ease,box-shadow .3s ease,transform .6s ease}
.ibop-anim .ibop-st.is-focusing .ibop-st-step.is-seen:not(.is-focus) .ibop-st-body{opacity:.5}
.ibop-anim .ibop-st.is-in .ibop-st-step.is-focus .ibop-st-body{transform:translateY(-4px)}
.ibop-anim .ibop-st.is-in .ibop-st-step.is-focus .ibop-st-node{transform:scale(1.22);background:#7BBA27;color:#0B1D2E}
.ibop-st-step.is-focus:before{height:6px;box-shadow:0 0 16px rgba(123,186,39,.85)}
.ibop-st-step.is-focus:after{box-shadow:0 0 16px rgba(123,186,39,.85)}
.ibop-st-step{cursor:default}
@media(prefers-reduced-motion:reduce){.ibop-st-body h4 span{transition:none}.ibop-st-body:before{transition:none}}

/* ===== Staircase: icons + coloured step backgrounds ===== */
.ibop-st{align-items:stretch}
.ibop-st-step{padding:36px 14px 20px 18px;--sb:#E5F1D4}
.ibop-st-step:nth-child(1){--sb:#E5F1D4}
.ibop-st-step:nth-child(2){--sb:#BDDBFF}
.ibop-st-step:nth-child(3){--sb:#EFE7E2}
.ibop-st-step:nth-child(4){--sb:#BDDD93}
.ibop-st-step:nth-child(5){--sb:#E6E7E8}
.ibop-st-bg{position:absolute;z-index:0;inset:0;background:var(--sb);border-radius:0 0 12px 12px;transition:transform .6s ease calc(var(--i)*.9s + .2s),background-color .45s ease}
.ibop-st-step:before,.ibop-st-step:after{z-index:1}
.ibop-st-node{z-index:2;width:48px;height:48px;top:-24px;box-shadow:0 6px 14px rgba(11,29,46,.25);transition:background-color .3s,color .3s}
.ibop-st-node svg{display:block}
.ibop-st-body{z-index:1}
.ibop-st-body:before{display:none}
.ibop-st-body h4,.page-wrapper .ibop-st-body h4{margin-top:2px}
/* focused step: solid navy background, white text, green icon */
.ibop-st-step.is-focus .ibop-st-bg{background:#0B1D2E}
.ibop-st-step.is-focus .page-wrapper .ibop-st-step.is-focus .ibop-st-body h4,.ibop-st-step.is-focus .ibop-st-body h4{color:#fff}
.ibop-st-step.is-focus .ibop-st-body h4 span{--mk:rgba(123,186,39,.5)}
.ibop-st-step.is-focus .ibop-st-desc{color:#E6E7E8}
.ibop-st-step.is-focus .ibop-st-out{color:#fff}
.ibop-anim .ibop-st-bg{transform:scaleY(0);transform-origin:bottom}
.ibop-anim .ibop-st.is-in .ibop-st-bg{transform:scaleY(1)}
.ibop-anim .ibop-st.is-focusing .ibop-st-step.is-seen:not(.is-focus) .ibop-st-body{opacity:.62}
@media(max-width:800px){
  .ibop-st-step{padding:16px 14px 18px 72px}
  .ibop-st-bg{border-radius:12px}
  .ibop-st{row-gap:10px}
  .ibop-st-node{left:12px;top:14px;width:46px;height:46px}
  .ibop-st-step:before{display:none}
  }
@media(prefers-reduced-motion:reduce){.ibop-anim .ibop-st-bg{transform:none!important;transition:none!important}}

/* ===== Staircase: icon + heading only, details on hover / tap / focus / auto spotlight ===== */
.ibop-st{align-items:start}
.ibop-st-step{outline:none;cursor:pointer}
.ibop-st-more{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .55s cubic-bezier(.2,.8,.2,1),opacity .4s ease}
.ibop-st-more>div{min-height:0;overflow:hidden}
.ibop-st-more .ibop-st-desc{margin-top:8px}
.ibop-st-step.is-focus .ibop-st-more,.ibop-st-step:focus-visible .ibop-st-more{grid-template-rows:1fr;opacity:1;transition-delay:0s,.1s}
.ibop-st-step:focus-visible .ibop-st-bg{background:#0B1D2E}
.ibop-st-step:focus-visible .ibop-st-body h4,.page-wrapper .ibop-st-step:focus-visible .ibop-st-body h4{color:#fff}
.ibop-st-step:focus-visible .ibop-st-desc{color:#E6E7E8}
.ibop-st-step:focus-visible .ibop-st-out{color:#fff}
.ibop-anim .ibop-st.is-focusing .ibop-st-step.is-seen:not(.is-focus) .ibop-st-body{opacity:1}
.ibop-st-body h4,.page-wrapper .ibop-st-body h4{margin-bottom:0;font-size:clamp(17px,1.8vw,21px)}
@media(min-width:801px){.ibop-st{min-height:490px}}
@media(min-width:801px) and (max-width:1100px){.ibop-st{min-height:560px}}
@media(prefers-reduced-motion:reduce){.ibop-st-more{transition:none}}

/* ===== Placeflix: animated zig-zag timeline (no boxes) ===== */
.ibop-pft{position:relative;margin:10px 0 70px;padding:10px 0}
.ibop-pft-line{position:absolute;left:50%;top:0;bottom:0;width:3px;margin-left:-1.5px;background:linear-gradient(#7BBA27,rgba(123,186,39,.15));transform:scaleY(0);transform-origin:top;transition:transform 2.2s ease}
.ibop-pft.is-in .ibop-pft-line{transform:scaleY(1)}
.ibop-pft-item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 80px;align-items:center;margin-bottom:60px}
.ibop-pft-item:last-child{margin-bottom:0}
.ibop-pft-node{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#0B1D2E;color:#7BBA27;border:3px solid #7BBA27;font:700 20px/1 "Roboto",Arial,sans-serif;z-index:2;opacity:0;transform:scale(.3);transition:opacity .5s ease calc(var(--i)*.7s + .3s),transform .7s cubic-bezier(.3,1.6,.5,1) calc(var(--i)*.7s + .3s)}
.ibop-pft.is-in .ibop-pft-node{opacity:1;transform:none;animation:ibopNodeGlow 2.8s ease-in-out infinite calc(var(--i)*.7s + 1.2s)}
.ibop-pft-fig{margin:0;overflow:hidden;border-radius:50% 12% 50% 12% / 40% 12% 40% 12%;opacity:0;transition:opacity .9s ease calc(var(--i)*.7s + .4s),transform 1s cubic-bezier(.2,.8,.2,1) calc(var(--i)*.7s + .4s)}
.ibop-pft-fig img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;filter:grayscale(1);transition:filter .6s ease,transform .8s ease}
.ibop-pft-item:hover .ibop-pft-fig img{filter:none;transform:scale(1.07)}
.ibop-pft-body{opacity:0;transition:opacity .9s ease calc(var(--i)*.7s + .6s),transform 1s cubic-bezier(.2,.8,.2,1) calc(var(--i)*.7s + .6s)}
.is-left .ibop-pft-fig{grid-column:1;transform:translateX(-80px)}
.is-left .ibop-pft-body{grid-column:2;transform:translateX(80px)}
.is-right .ibop-pft-fig{grid-column:2;grid-row:1;transform:translateX(80px)}
.is-right .ibop-pft-body{grid-column:1;grid-row:1;transform:translateX(-80px);text-align:right}
.ibop-pft.is-in .ibop-pft-fig,.ibop-pft.is-in .ibop-pft-body{opacity:1;transform:none}
.page-wrapper .ibop-pft-body h3{margin:0 0 14px;color:#7BBA27;font-size:clamp(18px,2vw,22px);letter-spacing:.06em;text-transform:uppercase}
.ibop-pft-body ul{margin:0;padding:0;list-style:none}
.ibop-pft-body li{position:relative;padding:6px 0 6px 24px;color:#D1D3D4;font-size:15px;line-height:1.6;text-align:left}
.ibop-pft-body li:before{content:"";position:absolute;left:2px;top:15px;width:8px;height:8px;background:#7BBA27;transform:rotate(45deg)}
.is-right .ibop-pft-body ul{display:inline-block;max-width:100%}
@media(max-width:820px){
  .ibop-pft-line{left:32px;margin-left:-1.5px}
  .ibop-pft-item{grid-template-columns:1fr;gap:18px;padding-left:80px;margin-bottom:46px}
  .ibop-pft-node{left:32px;top:0;margin-top:0;width:52px;height:52px;margin-left:-26px;font-size:17px}
  .is-left .ibop-pft-fig,.is-right .ibop-pft-fig,.is-left .ibop-pft-body,.is-right .ibop-pft-body{grid-column:1;grid-row:auto;transform:translateY(30px);text-align:left}
}

/* ===== Final CTA after FAQ ===== */
.ibop-final{position:relative;overflow:hidden;background:#0B1D2E;color:#fff;text-align:center;padding:clamp(56px,8vw,96px) 24px}
.ibop-final:before{content:"";position:absolute;inset:0;background:radial-gradient(600px circle at 50% 0,rgba(123,186,39,.18),transparent 70%);pointer-events:none}
.ibop-final-in{position:relative;max-width:860px;margin:0 auto}
.ibop-final-label{display:inline-flex;align-items:center;gap:14px;margin:0 0 18px;color:#7BBA27;font:700 14px/1.3 "Roboto",Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.ibop-final-label span{width:36px;height:2px;background:#7BBA27}
.page-wrapper .ibop-final h2,.ibop-final h2{margin:0 0 18px;color:#fff;font:600 clamp(32px,5.4vw,60px)/1.12 var(--ibop-heading-font);letter-spacing:-.01em}
.ibop-final h2 em{color:#7BBA27;font-style:italic}
.page-wrapper .ibop-final-sub,.ibop-final-sub{margin:0 auto 32px;max-width:620px;color:#CCC6C4;font:400 clamp(15px,1.7vw,18px)/1.7 "Roboto",Arial,sans-serif}
.ibop-final-acts{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.ibop-final-btn{display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 34px;font:600 17px/1 "Roboto",Arial,sans-serif;text-decoration:none;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.ibop-final-btn:hover{transform:translateY(-3px);text-decoration:none}
.ibop-final-btn--fill{background:#7BBA27;color:#0B1D2E!important}
.ibop-final-btn--fill:hover{background:#BDDD93}
.ibop-final-btn--line{border:1px solid rgba(255,255,255,.55);color:#fff!important;background:transparent}
.ibop-final-btn--line:hover{border-color:#7BBA27;background:rgba(123,186,39,.12)}
@media(max-width:520px){.ibop-final-btn{width:100%;justify-content:center}}

@media(prefers-reduced-motion:reduce){
  .ibop-pft-node,.ibop-pft-fig,.ibop-pft-body{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}
  .ibop-pft-line{transform:none!important;transition:none!important}
}

/* ===== ibop-hero-batch-final-bg ===== */
/* ===== Batch line on top of the banner, above Home > IBOP ===== */
#home .ibop-batch-hero{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 16px;font:500 clamp(14px,1.5vw,17px)/1.5 "Roboto",Arial,sans-serif;color:#fff;animation:ibopBatchIn .9s cubic-bezier(.2,.8,.2,1) both}
#home .ibop-batch-hero strong{display:inline-block;padding:5px 14px;border-radius:6px;background:#7BBA27;color:#0B1D2E;font-weight:700;letter-spacing:.02em;animation:ibopBatchPulse 2.4s ease-in-out 1.2s infinite}
#home .ibop-batch-or{color:#E6E7E8}
#home .ibop-batch-hero a{color:#7BBA27;font-weight:700;text-decoration:none;white-space:nowrap;border-bottom:2px solid currentColor}
#home .ibop-batch-hero a:hover{color:#fff}
@keyframes ibopBatchIn{from{opacity:0;transform:translateX(60px)}to{opacity:1;transform:none}}
@keyframes ibopBatchPulse{50%{box-shadow:0 0 0 8px rgba(123,186,39,.22)}}
@media(max-width:600px){#home .ibop-batch-hero strong{display:block}}

/* ===== Final CTA: background image + colour ===== */
.ibop-final{background:linear-gradient(180deg,rgba(12,20,28,.92),rgba(11,29,46,.88) 55%,rgba(12,20,28,.95)),var(--bg,none) center/cover no-repeat,#0B1D2E;border-top:4px solid #7BBA27}
.ibop-final:before{background:radial-gradient(640px circle at 85% 0,rgba(123,186,39,.28),transparent 65%),radial-gradient(520px circle at 0 100%,rgba(32,72,112,.45),transparent 70%)}
@media(prefers-reduced-motion:reduce){#home .ibop-batch-hero,#home .ibop-batch-hero strong{animation:none}}

/* ===== ibop-batch-card-squares ===== */
/* ===== Hero: highlighted "New Batch" card, shown just before Apply Now / Download Brochure ===== */
#home .ibop-batch-card{display:inline-flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin:26px 0 0;padding:12px 20px 12px 14px;max-width:100%;box-sizing:border-box;background:linear-gradient(100deg,rgba(123,186,39,.32),rgba(11,29,46,.55) 85%);border:1px solid rgba(123,186,39,.65);border-left:6px solid #7BBA27;border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.35);font-family:"Roboto",Arial,sans-serif;animation:ibopBatchIn .9s cubic-bezier(.2,.8,.2,1) both}
#home .ibop-batch-ico{flex:none;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;background:#7BBA27;color:#0B1D2E;animation:ibopBatchPulse 2.4s ease-in-out 1.2s infinite}
#home .ibop-batch-txt{display:flex;flex-direction:column;min-width:0}
#home .ibop-batch-txt small{color:#E5F1D4;font:700 12px/1.3 "Roboto",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
#home .ibop-batch-txt strong{color:#fff;font:400 clamp(21px,2.4vw,28px)/1.15 var(--ibop-heading-font)}
#home .ibop-batch-call{padding-left:18px;border-left:1px solid rgba(255,255,255,.3);color:#E6E7E8;font:400 15px/1.4 "Roboto",Arial,sans-serif}
#home .ibop-batch-call a{margin-left:4px;color:#7BBA27;font-weight:700;text-decoration:none;white-space:nowrap;border-bottom:2px solid currentColor}
#home .ibop-batch-call a:hover{color:#fff}
#home .ibop-batch-card+.ibop-hero-actions{margin-top:18px}
@media(max-width:600px){
  #home .ibop-batch-card{display:flex;padding:12px}
  #home .ibop-batch-call{width:100%;padding:10px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.3)}
}
@media(prefers-reduced-motion:reduce){#home .ibop-batch-card,#home .ibop-batch-ico{animation:none}}

/* ===== "What you can do by the end": 5 flip cards in one row ===== */
.ibop-sq{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;max-width:1200px;margin:34px auto 0;padding:0;list-style:none}
.ibop-sq-box{position:relative;flex:0 0 calc((100% - 28px)/3);height:310px;margin:0;padding:0;perspective:1200px;outline:0;cursor:pointer;background:none;border:0}
.ibop-sq-in{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.2,.8,.2,1)}
.ibop-sq-box.is-flipped .ibop-sq-in{transform:rotateY(180deg)}
.ibop-sq-box:focus-visible{outline:3px solid #7BBA27;outline-offset:3px;border-radius:14px}
.ibop-sq-face{position:absolute;inset:0;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;padding:22px 18px 18px;border-radius:14px;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 10px 26px rgba(11,29,46,.1)}
.ibop-sq-front{background:#fff;border:1px solid #E5E2E1;border-top:5px solid #7BBA27}
.ibop-sq-back{background:#0B1D2E;border:1px solid #0B1D2E;border-top:5px solid #7BBA27;transform:rotateY(180deg);justify-content:center}
.ibop-sq-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.ibop-sq-ico{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:#0B1D2E;color:#7BBA27}
.ibop-sq-no{font:400 30px/1 var(--ibop-heading-font);color:rgba(11,29,46,.18)}
.ibop-sq-back>.ibop-sq-no{position:absolute;right:16px;top:12px;color:rgba(255,255,255,.14);font-size:44px}
.page-wrapper .ibop-sq-front h4{margin:0 0 8px;color:#0B1D2E;font-size:19px;line-height:1.25}
.page-wrapper .ibop-sq-back h4{margin:0 0 12px;padding-bottom:10px;border-bottom:2px solid #7BBA27;color:#fff;font-size:19px;line-height:1.25}
.page-wrapper .ibop-sq-front p{margin:0;color:#333333;font-size:14px;line-height:1.6}
.page-wrapper .ibop-sq-back p{margin:0;color:#E5E2E1;font-size:15px;line-height:1.65}
.ibop-sq-back .ibop-sq-out b{display:block;margin-bottom:6px;color:#7BBA27;font:700 12px/1.3 "Roboto",Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.ibop-sq-hint{margin-top:auto;padding-top:10px;color:#5D870C;font:700 12px/1.3 "Roboto",Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.ibop-anim .ibop-sq-box{opacity:0;transform:translateY(28px) scale(.96);transition:opacity .6s ease calc(var(--i)*.4s),transform .7s cubic-bezier(.3,1.3,.5,1) calc(var(--i)*.4s)}
.ibop-anim .ibop-sq.is-in .ibop-sq-box{opacity:1;transform:none}
@media(min-width:1100px){.ibop-sq{flex-wrap:nowrap}.ibop-sq-box{flex:1 1 0;min-width:0}}
@media(max-width:991px){.ibop-sq-box{flex-basis:calc((100% - 14px)/2)}}
@media(max-width:540px){.ibop-sq-box{flex-basis:100%;height:280px}}
@media(prefers-reduced-motion:reduce){.ibop-anim .ibop-sq-box{opacity:1!important;transform:none!important;transition:none!important}.ibop-sq-in{transition:none}}

/* ===== ibop-brand-guide ===== */
/* ===== Brand guide: colours + fonts (loaded last so it wins) =====
   Primary #0B1D2E | Secondary #7BBA27 | Tertiary #DFD0C6 #E5E2E1 #E6E7E8 | Text #333333
   Supporting navy: #0C141C #204870 #5380B7 #BDDBFF
   Supporting green: #2F4402 #5D870C #BDDD93 #E5F1D4
   Supporting neutral: #B29D93 #CCC6C4 #D1D3D4 #EFE7E2 #F5F3F3
   Heading font: Franklin Gothic | Body font: Roboto */
:root{
  --brand-primary:#0B1D2E;--brand-secondary:#7BBA27;
  --brand-tert-1:#DFD0C6;--brand-tert-2:#E5E2E1;--brand-tert-3:#E6E7E8;--brand-text:#333333;
  --brand-navy-1:#0C141C;--brand-navy-2:#204870;--brand-navy-3:#5380B7;--brand-navy-4:#BDDBFF;
  --brand-green-1:#2F4402;--brand-green-2:#5D870C;--brand-green-3:#BDDD93;--brand-green-4:#E5F1D4;
  --brand-neutral-1:#B29D93;--brand-neutral-2:#CCC6C4;--brand-neutral-3:#D1D3D4;--brand-neutral-4:#EFE7E2;--brand-neutral-5:#F5F3F3;
  --ibop-navy:#0B1D2E;--ibop-green:#7BBA27;--ibop-green-d:#5D870C;--ibop-green-dark:#5D870C;
  --ibop-ink:#333333;--ibop-text:#333333;--ibop-muted:#333333;--ibop-line:#E5E2E1;--ibop-border:#E5E2E1;
  --ibop-heading-font:"Franklin Gothic Medium","Franklin Gothic","Libre Franklin","Arial Narrow",Arial,sans-serif;
  --ibop-body-font:"Roboto",Arial,sans-serif;
}
body,input,select,textarea,button,p,li,label,small,blockquote,td,th,figcaption{font-family:"Roboto",Arial,sans-serif}
h1,h2,h3,h4,h5,h6,.ibop-hero-title,.ibop-final h2{font-family:var(--ibop-heading-font)}
h1 *,h2 *,h3 *,h4 *,h5 *,h6 *{font-family:inherit}
body{color:#333333}

/* ===== ibop-landing-compact ===== */
/* ===== Landing page: compact spacing, mobile banner fix, new blocks ===== */
html{scroll-behavior:smooth}
#hero-form{scroll-margin-top:14px}

/* ---- Hero (desktop) ---- */
#home.ibop-hero{min-height:clamp(460px,64vh,580px)}
#home .ibop-hero-inner{padding:32px 24px 72px !important;gap:36px}
#home .ibop-hero-title{margin:0 0 10px !important;font-size:clamp(28px,3.6vw,44px) !important}
#home .ibop-hero-title span{display:block}
#home .ibop-hero-text{max-width:620px;font-size:clamp(15px,1.5vw,17px);line-height:1.55}
#home .ibop-badges{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
#home .ibop-badges li{display:flex;align-items:center;gap:8px;margin:0;padding:8px 12px;background:rgba(255,255,255,.09);border:1px solid rgba(123,186,39,.6);border-radius:8px;color:#fff;font:500 13.5px/1.35 var(--ibop-body-font)}
#home .ibop-badges li:before{content:"✓";flex:none;color:#7BBA27;font-weight:700}
#home .ibop-batch-card{margin-top:16px}

/* ---- Hero (mobile): banner image is the background behind ALL content, fading into navy ---- */
@media (max-width:767px){
  #home.ibop-hero{display:block !important;position:relative;isolation:isolate;height:auto !important;min-height:0 !important;max-height:none !important;overflow:hidden !important;background:#0B1D2E !important}
  #home .ibop-slides{position:absolute !important;top:0;left:0;right:0;bottom:auto;inset:0 0 auto 0 !important;height:480px;overflow:hidden;z-index:0}
  #home .ibop-slide{position:absolute !important;inset:0 !important}
  #home .ibop-slide img{position:absolute !important;top:0;left:0;inset:0 auto auto 0 !important;display:block;width:100% !important;height:auto !important;min-height:100%;object-fit:cover;object-position:top center}
  #home .ibop-hero-shade{display:block !important;position:absolute;inset:0 !important;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(11,29,46,.5) 0,rgba(11,29,46,.78) 200px,rgba(11,29,46,.94) 380px,#0B1D2E 480px) !important}
  #home .ibop-slider-controls{position:static !important;display:flex;justify-content:center;margin:14px 0 0;padding:0}
  #home .ibop-hero-inner{position:relative;z-index:2;display:block !important;width:100%;height:auto !important;min-height:0 !important;padding:26px 16px 24px !important;visibility:visible;opacity:1;transform:none}
  #home .ibop-hero-copy,#home .ibop-hero-card{position:relative;display:block;width:100%;max-width:100%;visibility:visible;opacity:1}
  #home .ibop-hero-copy{margin-bottom:14px}
  #home .ibop-hero-card{max-width:none;padding:20px 16px 16px}
  #home .ibop-hero-title{font-size:26px !important}
  #home .ibop-eyebrow{margin-bottom:6px;font-size:11.5px}
  #home .ibop-badges{margin-top:12px;gap:6px}
  #home .ibop-badges li{flex:1 1 100%;padding:7px 10px;font-size:13px}
  #home .ibop-batch-card{margin-top:12px}
}

/* ---- Global section spacing (desktop) ---- */
.page-wrapper .ibop-sec,.page-wrapper .ibop-what,.page-wrapper .ibop-teach,.page-wrapper .ibop-fw{padding-top:56px !important;padding-bottom:56px !important}
.page-wrapper .ibop-sec-head{margin-bottom:28px}
.page-wrapper .ibop-sec-head h2{margin-bottom:10px}
.page-wrapper .ibop-final,.ibop-final{padding:clamp(36px,5vw,56px) 24px}
.page-wrapper .ibop-final h2,.ibop-final h2{margin-bottom:12px}
.page-wrapper .ibop-final-sub,.ibop-final-sub{margin-bottom:22px}
.ibop-fn{margin-top:22px;padding-top:12px}
.ibop-sec-cta{margin-top:24px}
.ibop-pq{margin-top:24px}
.ibop-voices{margin-top:36px}
.ibop-outcomes{margin-top:32px}
.page-wrapper .ibop-outcomes.ibop-oc{margin-top:36px}
.ibop-spec{margin-bottom:26px}
.ibop-learn{margin-top:26px}
.ibop-pf-rows{margin-bottom:34px}
.ibop-pf3d{margin-bottom:34px}
.ibop-pf3d-item{margin-top:24px}
#programme .ibop-pg-journey{margin-top:34px}
.ibop-pft{margin-bottom:30px}
.ibop-pft-item{margin-bottom:34px}
.ibop-teach-head{margin-bottom:28px}
.ibop-teach-std{margin-top:28px}
.ibop-join-grid{gap:28px}
.ibop-step2{margin-bottom:12px;padding-top:16px;padding-bottom:16px}

/* ---- What is IBOP ---- */
#what-is-ibop .ibop-what-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr) !important;gap:32px !important}
#what-is-ibop .ibop-what-copy h2{margin:0 0 10px}
#what-is-ibop .ibop-what-copy p.ibop-what-sum{margin:0;max-width:640px;font-size:16px;line-height:1.6}
#what-is-ibop .ibop-pull{margin:14px 0 0;padding:12px 16px;font-size:16.5px;line-height:1.5}
#what-is-ibop .ibop-what-media .ibop-media-frame img{display:block;width:100%;max-height:290px;object-fit:cover}
.ibop-wave-panel{margin-top:28px;padding:26px 26px 28px}
.ibop-wave-head{margin:0 auto 18px;text-align:center}
.ibop-wave-head p.ibop-wave-sum{margin:0;max-width:760px;font-size:15.5px;line-height:1.55;color:#E6E7E8}

/* ---- Pricing: EMI first ---- */
.ibop-fee{padding:24px 24px}
.ibop-fee .ibop-fee-from{display:block;margin:2px 0 0;color:#BDDD93;font:700 13px/1.3 var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.ibop-fee strong small{margin-left:4px;color:#E6E7E8;font-size:.38em;font-weight:400}
.page-wrapper .ibop-fee p.ibop-fee-total{margin:8px 0 14px;color:#E6E7E8;font-size:14.5px;line-height:1.5}
.ibop-fee-total b{color:#fff}
.page-wrapper .ibop-fee p.ibop-fee-note{margin:10px 0 0;color:#CCC6C4;font-size:11.5px}

/* ---- Tablet ---- */
@media (max-width:991px){
  #what-is-ibop .ibop-what-grid{grid-template-columns:1fr !important;gap:22px !important}
  #what-is-ibop .ibop-what-media .ibop-media-frame img{max-height:240px}
}

/* ---- Mobile spacing ---- */
@media (max-width:767px){
  .ibop-wrap{padding-left:16px;padding-right:16px}
  .page-wrapper .ibop-sec,.page-wrapper .ibop-what,.page-wrapper .ibop-teach,.page-wrapper .ibop-fw{padding-top:34px !important;padding-bottom:34px !important}
  .page-wrapper .ibop-sec-head{margin-bottom:20px}
  .page-wrapper .ibop-sec-head h2,#what-is-ibop .ibop-what-copy h2{font-size:25px;line-height:1.2}
  .page-wrapper .ibop-sec-head p:not(.ibop-kicker){font-size:15px;line-height:1.55}
  .ibop-fn{margin-top:18px}
  .ibop-voices{margin-top:26px}
  .ibop-teach-head{margin-bottom:20px;gap:14px}
  .ibop-teach-std{margin-top:20px;padding:16px}
  .ibop-join-grid{gap:20px}
  .ibop-pft-item{margin-bottom:26px}
  .page-wrapper .ibop-final,.ibop-final{padding:34px 18px}

  #what-is-ibop .ibop-what-media .ibop-media-frame img{max-height:180px}
  #what-is-ibop .ibop-what-copy p.ibop-what-sum{font-size:15px}
  #what-is-ibop .ibop-pull{padding:10px 12px;font-size:15px}
  .ibop-wave-panel{margin-top:20px;padding:18px 14px 18px}
  .ibop-wave-head{margin-bottom:12px}


  .ibop-fee{padding:20px 16px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ---- For Whom: same layout, tighter spacing ---- */
.ibop-fw-grid{gap:48px}
.ibop-fw-tiles{gap:12px;margin:16px 0}
.ibop-fw-tiles li{padding:12px 14px 12px}
.ibop-tile-no{margin-bottom:4px;font-size:22px}
.ibop-fw-tiles strong{margin-bottom:2px;font-size:18px}
.ibop-fw-line{gap:12px;padding:14px 20px}
.page-wrapper .ibop-fw-line p.ibop-fw-tag{font-size:21px}
.page-wrapper .ibop-fw-copy>p:not(.ibop-kicker){margin-bottom:10px;line-height:1.6}
@media (max-width:991px){.ibop-fw-grid{gap:28px}}
@media (max-width:640px){
  .ibop-fw-tiles{gap:8px;margin:12px 0}
  .ibop-fw-tiles li{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:10px;align-items:center;padding:9px 12px}
  .ibop-tile-no{grid-row:1/span 2;margin:0;font-size:22px}
  .ibop-fw-tiles strong{font-size:16.5px;margin:0}
  .ibop-fw-tiles li>span:last-child{font-size:12.5px;line-height:1.35}
  .ibop-fw-line{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;text-align:left;gap:10px;padding:12px 14px}
  .page-wrapper .ibop-fw-line p.ibop-fw-tag{flex:1 1 180px;font-size:17px;line-height:1.3}
  .ibop-fw-tag br{display:none}
  .ibop-fw-line .ibop-btn{width:auto;flex:0 0 auto;min-height:42px;padding:8px 18px}
}

/* What is investment banking operations: original text, tighter spacing */
.ibop-wave-head h3{margin:0 0 10px}
.ibop-wave-head p{margin:0 0 10px;font-size:15.5px;line-height:1.6}
.ibop-wave-head p.ibop-tagline{margin:0}
@media (max-width:767px){.ibop-wave-head p{font-size:14.5px;line-height:1.55}}

/* badges: hidden on the 1st banner, shown on banners 2 and 3 */
#home .ibop-badges.is-off{display:none !important}

/* ===== ibop-layout-v2 ===== */
/* ===== 1. Hero: 19 Dec card on every slide; slide 1 = brochure button, slides 2-3 = short highlight boxes ===== */
#home .ibop-hero-extras{display:flex;flex-direction:column;align-items:flex-start;gap:14px;max-width:100%;margin-top:18px}
#home .ibop-hero-extras .ibop-batch-card{margin:0}
#home .ibop-extra-swap{display:grid;max-width:100%}
#home .ibop-extra-swap>*{grid-area:1/1;transition:opacity .5s ease,transform .5s ease,visibility .5s ease}
#home .ibop-extra-swap .ibop-hero-actions{margin:0;align-self:start}
#home .ibop-hero-extras.is-first .ibop-badges{opacity:0;visibility:hidden;transform:translateY(10px);pointer-events:none}
#home .ibop-hero-extras:not(.is-first) .ibop-hero-actions{opacity:0;visibility:hidden;transform:translateY(10px);pointer-events:none}
#home .ibop-badges{display:flex!important;flex-wrap:wrap;gap:8px;align-content:start;align-self:start;margin:0;padding:0;list-style:none}
#home .ibop-badges li{padding:8px 13px;gap:8px;background:linear-gradient(100deg,rgba(6,16,26,.94),rgba(11,29,46,.82));border:1px solid rgba(123,186,39,.5);border-left:4px solid #7BBA27;border-radius:9px;box-shadow:0 10px 24px rgba(0,0,0,.55);font:500 13.5px/1.35 var(--ibop-body-font)}
@media(max-width:767px){#home .ibop-hero-extras{width:100%}#home .ibop-badges li{flex:1 1 100%}}

/* ===== 2. What is IBOP buttons ===== */
/* What is IBOP: quote + buttons under the FFET sentence, text column and image card equal height */
.page-wrapper #what-is-ibop .ibop-what-grid{align-items:stretch}
.page-wrapper #what-is-ibop .ibop-what-copy{display:flex;flex-direction:column;justify-content:center}
.page-wrapper #what-is-ibop .ibop-cta-band{margin-top:20px;padding:20px 22px;gap:18px;flex-wrap:wrap}
.page-wrapper #what-is-ibop .ibop-cta-band .ibop-pull{flex:1 1 240px;min-width:0;font-size:17px;line-height:1.5}
.page-wrapper #what-is-ibop .ibop-cta-actions{min-width:160px}
.page-wrapper #what-is-ibop .ibop-what-media{height:100%}
.page-wrapper #what-is-ibop .ibop-media-frame{height:100%}
.page-wrapper #what-is-ibop .ibop-media-frame img{height:100%;aspect-ratio:auto;min-height:340px}
@media(max-width:991px){
  .page-wrapper #what-is-ibop .ibop-what-media,.page-wrapper #what-is-ibop .ibop-media-frame{height:auto}
  .page-wrapper #what-is-ibop .ibop-media-frame img{height:auto;aspect-ratio:5/4;min-height:0}
}

/* ===== small, equal section headings (sections 3-7) ===== */
.page-wrapper #why-ibop .ibop-sec-head h2,
.page-wrapper #about .ibop-fw-copy h2,
.page-wrapper #why-ibop-ffoi .ibop-why-copy h2,
.page-wrapper #service .ibop-teach-title h2,
.page-wrapper #curriculum .ibop-sec-head h2{font-size:clamp(22px,2.3vw,29px)!important;line-height:1.25!important}

/* ===== 3. Why IBOP: charcoal + light-green flip cards, centred icons, equal headings, no gaps ===== */
.page-wrapper #why-ibop.ibop-sec{padding-top:40px!important;padding-bottom:40px!important}
.page-wrapper #why-ibop .ibop-sec-head{margin-bottom:18px}
.page-wrapper #why-ibop .ibop-fcs{gap:10px}
.page-wrapper #why-ibop .ibop-fc{height:370px}
.page-wrapper #why-ibop .ibop-fc-front{background:linear-gradient(155deg,#1F2326 0%,#32393E 50%,#7BBA27 150%)!important;border-bottom:5px solid #BDDD93}
.page-wrapper #why-ibop .ibop-fc-front:after{background:linear-gradient(180deg,transparent 60%,rgba(18,22,25,.45) 100%)}
.page-wrapper #why-ibop .ibop-fc-art{display:flex;align-items:center;justify-content:center;top:0;height:62%;padding:36px 24px 0}
.page-wrapper #why-ibop .ibop-fc-art svg{width:auto;max-width:100%;height:100%;margin:0 auto}
.page-wrapper #why-ibop .ibop-fc-cap{text-align:center;padding:0 22px 20px}
.page-wrapper #why-ibop .ibop-fc-cap h3,
.page-wrapper #why-ibop .ibop-fc-back h4{display:flex!important;align-items:center;justify-content:center;box-sizing:border-box;height:62px;margin:0!important;padding:8px 14px!important;border-radius:8px;border:0!important;font-size:19px!important;line-height:1.25!important;text-align:center}
.page-wrapper #why-ibop .ibop-fc-cap h3{background:#7BBA27;color:#0B1D2E}
.page-wrapper #why-ibop .ibop-fc-hint{margin-top:10px}
.page-wrapper #why-ibop .ibop-fc-back{justify-content:flex-start!important;padding:26px 24px 22px!important;background:linear-gradient(160deg,#BDDD93,#6E9F1B 70%,#2E3A24)}
.page-wrapper #why-ibop .ibop-fc-back h4{margin:30px 0 14px!important;background:#1F2326;color:#BDDD93}
.page-wrapper #why-ibop .ibop-fc-back p{font-size:15.5px;line-height:1.6}

/* ===== 4. For whom: smaller type, compact button, equal-height columns ===== */
.page-wrapper #about .ibop-fw-grid{align-items:stretch}
.page-wrapper #about .ibop-fw-media{height:100%;min-height:440px}
.page-wrapper #about .ibop-fw-big{height:calc(100% - 46px);aspect-ratio:auto}
.page-wrapper #about .ibop-fw-tiles strong{font-size:17px}
.page-wrapper #about .ibop-fw-tiles li>span:last-child{font-size:13px}
.page-wrapper #about .ibop-fw-line{padding:14px 18px;gap:14px}
.page-wrapper #about .ibop-fw-line p.ibop-fw-tag{font-size:19px}
.page-wrapper #about .ibop-fw-line .ibop-btn{flex:none;min-height:40px;padding:9px 20px;font-size:14px;white-space:nowrap}
@media(max-width:991px){.page-wrapper #about .ibop-fw-media{height:auto;min-height:0}.page-wrapper #about .ibop-fw-big{height:auto;aspect-ratio:1/1}}

/* ===== 5. Why IBOP from FFOI: logos always centred, Apply Now on one row ===== */
.page-wrapper #why-ibop-ffoi .ibop-why-logos{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:10px}
.page-wrapper #why-ibop-ffoi .ibop-why-logos .ibop-chip{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;margin:0}
.page-wrapper #why-ibop-ffoi .ibop-why-logos .ibop-chip img{max-width:100%;height:auto;max-height:44px;object-fit:contain}
@media(min-width:521px){
  .page-wrapper #why-ibop-ffoi .ibop-why-line{flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;text-align:left}
  .page-wrapper #why-ibop-ffoi .ibop-why-line p{flex:1 1 auto;min-width:0;font-size:18px}
  .page-wrapper #why-ibop-ffoi .ibop-why-line .ibop-btn{flex:none;width:auto!important;white-space:nowrap;min-height:42px;padding:9px 20px}
}

/* ===== 6. Faculty: two-line standard text, three parameters in a row below, animated ===== */
.page-wrapper #service .ibop-teach-std{flex-direction:column;align-items:center;text-align:center;gap:18px;margin-top:34px;padding:22px 26px}
.page-wrapper #service .ibop-teach-std p{flex:none;max-width:1100px;margin:0 auto;font-size:17px;line-height:1.6;text-align:center}
.page-wrapper #service .ibop-std-pills{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:12px}
.page-wrapper #service .ibop-teach-text p{font-size:16px;line-height:1.6}
.ibop-anim #service .ibop-std-pills li{opacity:0;transform:translateY(18px) scale(.94);transition:opacity .6s ease,transform .6s cubic-bezier(.3,1.3,.5,1)}
.ibop-anim #service .ibop-teach-std.is-in .ibop-std-pills li{opacity:1;transform:none}
.ibop-anim #service .ibop-teach-std.is-in .ibop-std-pills li:nth-child(1){transition-delay:.25s}
.ibop-anim #service .ibop-teach-std.is-in .ibop-std-pills li:nth-child(2){transition-delay:.5s}
.ibop-anim #service .ibop-teach-std.is-in .ibop-std-pills li:nth-child(3){transition-delay:.75s}

/* ===== 7. Curriculum: pillar list on the left (4 visible, rest scrolls), selected pillar centred on the right ===== */
.page-wrapper #curriculum .ibop-cur{display:flex!important;flex-direction:column!important;gap:18px!important;align-items:stretch!important}
.page-wrapper #curriculum .ibop-tabs{display:flex!important;flex-direction:column!important;gap:10px!important;width:100%!important;max-height:478px;overflow-y:auto!important;overflow-x:hidden!important;padding-right:6px;scrollbar-width:thin;scrollbar-color:#7BBA27 transparent;scroll-snap-type:y proximity}
.page-wrapper #curriculum .ibop-tab{flex:0 0 auto!important;height:112px;min-height:112px!important;box-sizing:border-box;padding:12px 18px!important;scroll-snap-align:start;overflow:hidden}
.page-wrapper #curriculum .ibop-tab:hover{transform:none}
.page-wrapper #curriculum .ibop-panel-head{flex-direction:column;align-items:center!important;justify-content:center;text-align:center;gap:10px}
.page-wrapper #curriculum .ibop-panel-head h3{text-align:center}
.page-wrapper #curriculum .ibop-pills{justify-content:center;flex-wrap:wrap}
.page-wrapper #curriculum .ibop-topics{margin:0 auto}
@media(min-width:992px){
  .page-wrapper #curriculum .ibop-cur{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)!important;gap:24px!important;align-items:center!important}
  .page-wrapper #curriculum .ibop-panels{align-self:center}
}

/* ===== 8. What you can do by the end: back faces start at the top, equal heading rows ===== */
.ibop-sq-back{justify-content:flex-start!important;padding-top:34px!important}
.page-wrapper .ibop-sq-back h4{box-sizing:border-box;min-height:52px;display:flex;align-items:flex-end}
.page-wrapper .ibop-sq-back p{margin-top:0}

/* ===== ibop-jt-light ===== */
/* Job-trade + outcomes: Our Learners layout (white section, left heading, white cards with green base) */
.ibop-job-trade{background:#fff;color:#333;padding:56px 0 24px}
.ibop-jt-heading{max-width:none}
.ibop-jt-heading h2{color:#0B1D2E}
.ibop-jt-kicker{color:#4A6E0E}
.ibop-jt-intro{color:#333}
.ibop-jt-card{background:#fff;border:1px solid #E5E2E1;border-top:1px solid #E5E2E1;border-bottom:4px solid #7BBA27;box-shadow:0 10px 26px rgba(11,29,46,.09);transition:transform .3s ease,box-shadow .3s ease}
.ibop-jt-card:hover{transform:translateY(-5px);box-shadow:0 18px 34px rgba(11,29,46,.16)}
.ibop-jt-card h3{color:#0B1D2E}
.ibop-jt-card>p:not(.ibop-jt-time){color:#333}
.ibop-jt-time{color:#47720D}
.ibop-jt-desk{background:#E5F1D4;color:#0B1D2E;border-radius:10px;font-weight:600}
.ibop-jt-highlight{box-shadow:0 10px 26px rgba(11,29,46,.09),inset 0 0 0 2px rgba(123,186,39,.5)}
.ibop-jt-cta{background:#0B1D2E;border:1px solid #0B1D2E;border-left:6px solid #7BBA27}
.ibop-jt-cta>p{color:#fff}
/* outcomes: same cards, 3 per row */
.ibop-oc-jt{margin-top:28px}
.ibop-oc-jt .ibop-jt-card{min-height:0}
.ibop-oc-jt .ibop-jt-desk{display:block;line-height:1.5;padding:8px 14px}
@media(max-width:991px){.ibop-oc-jt{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ibop-oc-jt{grid-template-columns:1fr}}

/* ===== ibop-jt-icons ===== */
.ibop-jt-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}
.ibop-jt-top .ibop-jt-time{margin:0}
.ibop-jt-ico{flex:none;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#0B1D2E;color: #f6f6f6;}
.ibop-jt-desk{background:#7BBA27!important;color:#0B1D2E!important;font-weight:800!important;border-radius:10px}
.ibop-jt-top .ibop-jt-ico{order:1}.ibop-jt-top .ibop-jt-time{order:2;text-align:right}

/* ===== ibop-redesign-v3 ===== */
/* =====================================================================
   v3: Placeflix (after Faculty) | How you join (2 columns) | FAQ (text left, image right)
   ===================================================================== */

/* ---------- Placeflix: heading left, 3 numbered columns ---------- */
.page-wrapper #placeflix.ibop-pfx{padding-top:56px!important;padding-bottom:48px!important}
.page-wrapper #placeflix .ibop-sec-head{max-width:none;margin:0 0 30px;text-align:left}
.page-wrapper #placeflix .ibop-sec-head .ibop-kicker,
.page-wrapper #placeflix .ibop-sec-head h2,
.page-wrapper #placeflix .ibop-sec-head p{text-align:left;margin-left:0}
.page-wrapper #placeflix .ibop-sec-head p:not(.ibop-kicker){max-width:680px;margin-top:10px}
.ibop-pfx-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 40px;margin:0;padding:0;list-style:none}
.ibop-pfx-steps>li{position:relative;display:grid;grid-template-columns:50px minmax(0,1fr);gap:0 16px;align-items:start;margin:0}
.ibop-pfx-n{position:relative;display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:14px;background:#7BBA27;color:#0B1D2E;font:700 18px/1 var(--ibop-heading-font);box-shadow:0 8px 18px rgba(123,186,39,.35)}
.ibop-pfx-n:after{content:"";position:absolute;inset:-4px;border-radius:17px;border:2px solid #7BBA27;opacity:0}
.page-wrapper .ibop-pfx-t h3{margin:0 0 6px;color:#0B1D2E;font-size:21px;line-height:1.25}
.page-wrapper .ibop-pfx-t p{margin:0;color:#333;font-size:16px;line-height:1.65 ;text-align: justify;}
.page-wrapper .ibop-pfx-fn{margin:26px 0 0;color:#333;font-size:13px;line-height:1.5}
.ibop-pfx-steps>li:hover .ibop-pfx-n{transform:rotate(-8deg) scale(1.08);transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.ibop-anim .ibop-pfx-steps .ibop-pfx-n{transform:scale(0) rotate(-120deg);transition:transform .8s cubic-bezier(.3,1.7,.5,1) calc(var(--d,0s) + .2s)}
.ibop-anim .ibop-pfx-steps.is-in .ibop-pfx-n{transform:none}
.ibop-anim .ibop-pfx-steps.is-in .ibop-pfx-n:after{animation:ibopPing 2.6s ease-out infinite;animation-delay:calc(var(--d,0s) + 1.1s)}
.ibop-anim .ibop-pfx-steps .ibop-pfx-t{opacity:0;transform:translateX(-18px);transition:opacity .7s ease calc(var(--d,0s) + .4s),transform .8s cubic-bezier(.2,.8,.2,1) calc(var(--d,0s) + .4s)}
.ibop-anim .ibop-pfx-steps.is-in .ibop-pfx-t{opacity:1;transform:none}
@media(max-width:991px){.ibop-pfx-steps{grid-template-columns:1fr;gap:22px}}
@media(max-width:767px){
  .page-wrapper #placeflix.ibop-pfx{padding-top:34px!important;padding-bottom:30px!important}
  .page-wrapper #placeflix .ibop-sec-head{margin-bottom:18px}
  .ibop-pfx-steps{gap:16px}
  .ibop-pfx-steps>li{grid-template-columns:44px minmax(0,1fr);gap:0 12px}
  .ibop-pfx-n{width:44px;height:44px;border-radius:12px;font-size:16px}
  .page-wrapper .ibop-pfx-t h3{font-size:19px;margin-bottom:3px}
  .page-wrapper .ibop-pfx-t p{font-size:15px;line-height:1.55}
  .page-wrapper .ibop-pfx-fn{margin-top:16px;font-size:12px}
}

/* ---------- How you join: 2 columns ---------- */
.ibop-jn-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:44px;align-items:start}
.ibop-jn-left,.ibop-jn-right{min-width:0}
.ibop-jn-head{margin:0 0 26px}
.ibop-jn-head .ibop-kicker{margin:0 0 8px}
.page-wrapper #how-to-join .ibop-jn-head h2{margin:0;color:#fff;font-size:clamp(26px,3.4vw,40px);line-height:1.15;text-align:left}
.ibop-jn-steps{position:relative;margin:0 0 24px;padding:0;list-style:none}
.ibop-jn-steps>li{position:relative;display:flex;align-items:flex-start;gap:16px;margin:0 0 14px}
.ibop-jn-steps>li:last-child{margin-bottom:0}
.ibop-jn-num{position:relative;z-index:2;flex:none;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:#0B1D2E;border:3px solid #7BBA27;color:#fff;font:400 20px/1 var(--ibop-heading-font);box-shadow:0 0 0 5px rgba(123,186,39,.18)}
.ibop-jn-steps>li:not(:last-child):before{content:"";position:absolute;left:22px;top:46px;bottom:-14px;width:3px;background:linear-gradient(#7BBA27,rgba(123,186,39,.25));transform-origin:top}
.ibop-jn-card{flex:1;min-width:0;padding:16px 20px 17px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-left:4px solid #7BBA27;border-radius:14px;box-shadow:0 16px 36px rgba(0,0,0,.35)}
.page-wrapper #how-to-join .ibop-jn-card h3{margin:0 0 5px;color:#fff;font-size:21px;line-height:1.25}
.page-wrapper #how-to-join .ibop-jn-card p{margin:0;color:#D1D3D4;font-size:15.5px;line-height:1.6}
.ibop-jn-apply .ibop-btn{min-width:170px !important}

.ibop-jn-fee{position:relative;overflow:hidden;padding:28px 26px 24px;background:linear-gradient(135deg,rgba(123,186,39,.28),rgba(255,255,255,.06) 70%);border:1px solid rgba(123,186,39,.55);border-radius:18px;box-shadow:0 22px 50px rgba(0,0,0,.45),0 0 40px rgba(123,186,39,.15)}
.ibop-jn-fee:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);transform:translateX(-120%);pointer-events:none}
.ibop-jn-right.is-in .ibop-jn-fee:after{animation:ibopShine 2.4s ease .8s 1}
.ibop-jn-tag{display:inline-block;margin-bottom:8px;padding:6px 18px;background:#7BBA27;color:#0B1D2E;border-radius:30px;font:700 13px var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.ibop-jn-amt{display:block;color:#fff;font:400 clamp(40px,5vw,60px)/1.1 var(--ibop-heading-font);letter-spacing:-.01em}
.page-wrapper #how-to-join .ibop-jn-desc{margin:8px 0 18px;color:#E6E7E8;font-size:15px;line-height:1.6}
.ibop-jn-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px;padding:0}
.ibop-jn-facts>div{margin:0;padding:12px 14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-top:3px solid #7BBA27;border-radius:10px}
.ibop-jn-facts dt{margin:0 0 3px;color:#7BBA27;font:700 11.5px/1.3 var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
.ibop-jn-facts dd{margin:0;color:#fff;font:400 20px/1.2 var(--ibop-heading-font)}
.ibop-jn-emi{width:100%;animation:ibopPulse 2.2s ease-out infinite}
.ibop-jn-wa{display:flex;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;border:1px dashed rgba(255,255,255,.4);border-radius:10px;color:#fff!important;font:500 14px/1.45 var(--ibop-body-font);text-decoration:none;transition:background .25s,border-color .25s}
.ibop-jn-wa svg{flex:none;color:#7BBA27}
.ibop-jn-wa:hover{background:rgba(123,186,39,.18);border-color:#7BBA27;text-decoration:none}
.ibop-anim #how-to-join .ibop-jn-steps>li:before{transform:scaleY(0);transition:transform .6s ease calc(var(--d,0s) + .45s)}
.ibop-anim #how-to-join .ibop-jn-steps.is-in>li:before{transform:scaleY(1)}
.ibop-anim #how-to-join .ibop-jn-num{transform:scale(.3);transition:transform .7s cubic-bezier(.3,1.7,.5,1) calc(var(--d,0s) + .2s)}
.ibop-anim #how-to-join .ibop-jn-steps.is-in .ibop-jn-num{transform:none}
.ibop-anim .ibop-jn-facts>div{will-change:transform}
@media(max-width:991px){.ibop-jn-grid{grid-template-columns:1fr;gap:26px}}
@media(max-width:767px){
  .ibop-jn-head{margin-bottom:16px}
  .page-wrapper #how-to-join .ibop-jn-head h2{font-size:25px}
  .ibop-jn-steps{margin-bottom:16px}
  .ibop-jn-steps>li{gap:12px;margin-bottom:10px}
  .ibop-jn-num{width:40px;height:40px;font-size:17px;border-width:3px}
  .ibop-jn-steps>li:not(:last-child):before{left:19px;top:40px;bottom:-10px}
  .ibop-jn-card{padding:12px 14px 13px}
  .page-wrapper #how-to-join .ibop-jn-card h3{font-size:18px;margin-bottom:3px}
  .page-wrapper #how-to-join .ibop-jn-card p{font-size:14.5px;line-height:1.5}
  .ibop-jn-apply .ibop-btn{width:100%}
  .ibop-jn-fee{padding:20px 16px 18px}
  .page-wrapper #how-to-join .ibop-jn-desc{margin:6px 0 14px;font-size:14px}
  .ibop-jn-facts{gap:8px;margin-bottom:14px}
  .ibop-jn-facts>div{padding:10px 11px}
  .ibop-jn-facts dd{font-size:17px}
  .ibop-jn-wa{margin-top:12px;padding:10px 12px;font-size:13px}
}

/* ---------- FAQ: text left, image right ---------- */
.page-wrapper #faq .ibop-faq-grid{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);grid-template-areas:"head media" "list media" "cta media";grid-template-rows:auto auto 1fr}
.page-wrapper #faq .ibop-faq-media{grid-area:media}
.page-wrapper #faq .ibop-faq-head{grid-area:head}
.page-wrapper #faq .ibop-faq-list{grid-area:list}
.page-wrapper #faq .ibop-faq-cta{grid-area:cta}
.page-wrapper #faq .ibop-faq-grid{column-gap:clamp(28px,5vw,72px)}
.page-wrapper #faq .ibop-faq-list summary h3{font-size:clamp(15.5px,1.5vw,18px)}
.page-wrapper #faq .ibop-faq-list .ans p{padding-bottom:18px;font-size:15.5px;line-height:1.7; text-align: justify;}
.page-wrapper #faq .ibop-faq-list summary{padding-top:17px;padding-bottom:17px}
@media(max-width:980px){
  .page-wrapper #faq .ibop-faq-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "media" "list" "cta";grid-template-rows:auto}
  .page-wrapper #faq .ibop-faq-media{position:relative;top:0;aspect-ratio:16/10;margin-bottom:18px}
  .page-wrapper #faq .ibop-faq-head{margin-bottom:14px}
}
@media(max-width:640px){
  .page-wrapper #faq .ibop-faq-head .ibop-kicker,.page-wrapper #faq .ibop-faq-head h2{text-align:left}
  .page-wrapper #faq .ibop-faq-cta{margin-top:18px;padding:16px}
  .page-wrapper #faq .ibop-faq-list .ans p{padding-right:4px;font-size:14.5px; text-align: justify;}
}
@media(prefers-reduced-motion:reduce){.ibop-jn-emi{animation:none}.ibop-anim .ibop-pfx-steps .ibop-pfx-n,.ibop-anim .ibop-pfx-steps .ibop-pfx-t,.ibop-anim #how-to-join .ibop-jn-num{transform:none!important;opacity:1!important;transition:none!important}}

/* ===== ibop-v3b ===== */
.ibop-jn-apply{display:flex;flex-wrap:wrap;gap:12px}
.ibop-jn-apply .ibop-btn{min-width:200px}
.page-wrapper #faq .ibop-faq-head h2{margin:0;line-height:1.2}
.page-wrapper #faq .ibop-faq-l1,.page-wrapper #faq .ibop-faq-l2{display:block}
.page-wrapper #faq .ibop-faq-l1{font-size:clamp(26px,3vw,38px);line-height:1.15;white-space:nowrap}
.page-wrapper #faq .ibop-faq-l2{margin-top:4px;font-size:clamp(18px,2vw,24px);line-height:1.25;font-weight:400;color:#333}
@media(max-width:980px){
  .page-wrapper #faq .ibop-faq-grid{grid-template-areas:"head" "list" "cta" "media"}
  .page-wrapper #faq .ibop-faq-media{position:relative;top:0;aspect-ratio:auto;width:100%;max-width:420px;margin:22px auto 0}
  .page-wrapper #faq .ibop-faq-media img{width:100%;height:auto;aspect-ratio:1054/1492;object-fit:cover;object-position:center}
}
@media(max-width:560px){
  .page-wrapper #faq .ibop-faq-l1{white-space:normal;font-size:24px}
  .page-wrapper #faq .ibop-faq-l2{font-size:17px}
}
@media(max-width:767px){.ibop-jn-apply .ibop-btn{flex:1 1 100%;width:100%}}

/* ===== ibop-v3c ===== */
/* How you join: WhatsApp contact button */
.ibop-jn-call{white-space:nowrap}
.ibop-jn-call svg{flex:none;color:#7BBA27}
.ibop-jn-call:hover svg{color:#0B1D2E}
.ibop-jn-apply .ibop-btn-ghost:hover{background:#7BBA27;color:#0B1D2E!important}

/* Sound familiar: cards size to their content (no empty space), front and back share one height */
.page-wrapper #sound-familiar .ibop-sf-grid{align-items:stretch;gap:16px}
.page-wrapper #sound-familiar .ibop-sf-card{display:flex;aspect-ratio:auto;min-height:0}
.page-wrapper #sound-familiar .ibop-sf-in{position:relative;inset:auto;flex:1;display:grid;min-width:0}
.page-wrapper #sound-familiar .ibop-sf-face{position:relative;inset:auto;grid-area:1/1;padding:18px 18px 14px;min-height:0}
.page-wrapper #sound-familiar .ibop-sf-back{justify-content:flex-start;padding-top:20px}
.page-wrapper #sound-familiar .ibop-sf-tag{min-height:0;margin:2px 52px 10px 0}
.page-wrapper #sound-familiar .ibop-sf-hint{padding-top:12px}
.page-wrapper #sound-familiar .ibop-sf-with{margin-bottom:10px}
.page-wrapper #sound-familiar .ibop-sf-cta{margin-top:20px}
@media(max-width:1100px){.page-wrapper #sound-familiar .ibop-sf-grid{max-width:none}}
@media(max-width:767px){
  .page-wrapper #sound-familiar .ibop-sec-head{margin-bottom:16px}
  .page-wrapper #sound-familiar .ibop-sf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .page-wrapper #sound-familiar .ibop-sf-face{padding:14px 12px 10px;border-radius:12px}
  .page-wrapper #sound-familiar .ibop-sf-no{width:32px;height:32px;right:10px;top:10px;font-size:13px}
  .page-wrapper #sound-familiar .ibop-sf-tag{margin:2px 38px 8px 0;font-size:10.5px;letter-spacing:.06em}
  .page-wrapper .ibop-sf-quote{font-size:15px;line-height:1.3}
  .page-wrapper #sound-familiar .ibop-sf-back p{font-size:13px;line-height:1.5}
  .page-wrapper #sound-familiar .ibop-sf-hint{padding-top:8px;font-size:10.5px}
  .page-wrapper #sound-familiar .ibop-sf-with{font-size:11px;padding:4px 9px;margin-bottom:8px}
  .page-wrapper #sound-familiar .ibop-sf-cta{margin-top:14px}
  .page-wrapper #sound-familiar .ibop-sf-cta .ibop-btn{width:100%}
}
@media(max-width:360px){.page-wrapper #sound-familiar .ibop-sf-grid{grid-template-columns:1fr;max-width:none}}

/* ===== ibop-oc2-v3 ===== */
/* Outcomes: image circles (images/outcomes/outcome-1.jpg ... outcome-5.jpg), all text left-aligned */
.ibop-oc2-info{text-align:left!important}
.ibop-oc2-circle{background:#173D54}
.ibop-oc2-circle img{object-position:center}

/* ===== ibop-oc2-v3b ===== */
/* Outcome 5: text sits to the right of its circle inside the stage, like outcome 1 (desktop only) */
@media(min-width:821px){
  .ibop-oc2-item[style*="--i:4"] .ibop-oc2-pill{margin-bottom:.6cqw;padding:.5cqw 2cqw}
  .page-wrapper .ibop-oc2 .ibop-oc2-item[style*="--i:4"] .ibop-oc2-info h3{margin-bottom:.3cqw}
  .page-wrapper .ibop-oc2 .ibop-oc2-item[style*="--i:4"] .ibop-oc2-info p{font-size:clamp(10.5px,1.08cqw,13px);line-height:1.4}
}

/* ===== before-you-leave-popup-css ===== */
.byl-overlay{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(3,17,29,.76);backdrop-filter:blur(4px);font-family:Arial,Helvetica,sans-serif}
  .byl-overlay.byl-open{display:flex}
  .byl-card{position:relative;display:grid;grid-template-columns:minmax(0,0.95fr) minmax(0,1.05fr);width:min(1080px,96vw);height:min(700px,90vh);max-height:90vh;overflow:hidden;background:#fff;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.4);animation:byl-in .22s ease-out}
  @keyframes byl-in{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
  .byl-visual{position:relative;min-width:0;min-height:0;background:#063765;overflow:hidden}
  .byl-banner{display:block;width:100%;height:100%;object-fit:fill;object-position:center}
  .byl-close{position:absolute;top:14px;right:14px;z-index:5;width:42px;height:42px;border:0;border-radius:50%;background:#f4f6f8;color:#10243a;font-size:28px;line-height:1;box-shadow:0 2px 12px #0002;cursor:pointer}
  .byl-body{min-width:0;overflow:auto;padding:42px 38px 28px;color:#12345b;box-sizing:border-box;align-self:stretch}
  .byl-logos{display:flex;align-items:center;gap:16px;margin:0 52px 22px 0;padding-bottom:16px;border-bottom:1px solid #e3e9ef}
  .byl-logos img{display:block;height:44px;width:auto;max-width:42%;object-fit:contain}
  .byl-logo-sep{width:1px;height:32px;background:#cfd8e1}
  .byl-brandline{font-size:13px;letter-spacing:1.4px;font-weight:800;color:#4a9e32;margin:0 0 12px;text-transform:uppercase}
  .byl-body h2{font-size:clamp(25px,2.4vw,34px);line-height:1.12;margin:0 0 14px;color:#082b53;font-weight:800}
  .byl-body .byl-intro{font-size:16px;line-height:1.55;color:#304a69;margin:0 0 24px}
  .byl-body label.byl-label{display:block;margin:15px 0 7px;font-size:14px;font-weight:700;color:#303c4b}
  .byl-body input[type=email],.byl-body input[type=tel]{box-sizing:border-box;width:100%;min-height:52px;border:1px solid #cbd8e7;border-radius:7px;padding:13px 14px;font-size:16px;color:#17212a;background:#fff}
  .byl-body input::placeholder{color:#7d91a9}
  .byl-body input:focus{outline:2px solid #c9e7ae;border-color:#65a83c}
  .byl-consent{display:flex;align-items:flex-start;gap:10px;margin:17px 0 20px;font-size:13px;line-height:1.5;color:#294b74}
  .byl-consent input{margin:3px 0 0;flex:0 0 auto;width:17px;height:17px;accent-color:#4b9e32}
  .byl-submit{width:100%;border:0;border-radius:8px;padding:16px 18px;background:#4b9f31;color:#fff;font-weight:800;font-size:17px;cursor:pointer;transition:background .15s}
  .byl-submit:hover{background:#398125}.byl-submit:disabled{opacity:.65;cursor:wait}
  .byl-note{font-size:12px!important;line-height:1.5!important;color:#68809c!important;margin:16px 0 0!important;text-align:left}
  .byl-message{margin:12px 0;padding:12px;border-radius:7px;background:#edf8e9;color:#245b24;font-size:13px;line-height:1.5}
  .byl-message[hidden]{display:none}
  .byl-honey{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
  html.byl-lock{overflow:hidden}
  @media(max-width:700px){.byl-overlay{padding:10px}.byl-card{grid-template-columns:1fr;width:min(500px,100%);height:auto;max-height:94vh;overflow:auto}.byl-visual{height:230px;min-height:230px}.byl-banner{object-position:center 38%}.byl-body{padding:25px 23px 24px}.byl-body h2{font-size:25px}.byl-body .byl-intro{font-size:14px;margin-bottom:16px}.byl-close{top:10px;right:10px;width:38px;height:38px}}
  @media(max-width:700px){.byl-logos{margin-right:0}.byl-logos img{height:38px}}
  @media(max-width:380px){.byl-visual{height:190px;min-height:190px}.byl-body{padding:20px 17px}}

/* ===== ibop-idcard-hero ===== */
/* ===== Hero: compact ID-card showcase (slider removed). Right-hand IBOP form is untouched ===== */
#home.ibop-hero{background:linear-gradient(160deg,#0B1D2E 0%,#0d2438 55%,#0B1D2E 100%) !important}
#home .ibop-hero-inner{padding-bottom:40px !important}
#home .idz{display:grid;grid-template-columns:240px minmax(0,1fr);gap:34px;align-items:center;max-width:680px}
#home .idz-text{min-width:0}
#home .idz-text .ibop-eyebrow{margin:0 0 8px;font-size:11.5px;animation:idzUp .6s ease both}
#home .idz-title{margin:0;font-family:var(--ibop-heading-font) !important;font-weight:700;font-size:clamp(26px,2.9vw,36px) !important;line-height:1.13 !important;letter-spacing:-.02em;color:#fff !important;animation:idzUp .7s .08s ease both}
#home .idz-title span{display:block;color:var(--ibop-green)}
#home .idz-cta{margin:14px 0 10px;color:#fff;font:600 14px/1.4 var(--ibop-body-font);animation:idzUp .7s .2s ease both}
#home .idz-row{display:flex;gap:8px;animation:idzUp .7s .3s ease both}
#home .idz-input{flex:1 1 auto;min-width:0;height:46px !important;padding:0 14px !important;border:2px solid var(--ibop-green) !important;border-radius:10px !important;background:#fff !important;color:var(--ibop-navy) !important;font:500 15px/1 var(--ibop-body-font) !important;box-shadow:none !important;outline:none}
#home .idz-input:focus{box-shadow:0 0 0 4px rgba(123,186,39,.3) !important}
#home .idz-addbtn{flex:none;height:46px;padding:0 16px;border:2px solid var(--ibop-green);border-radius:10px;background:var(--ibop-green);color:var(--ibop-navy);font:700 13.5px/1 var(--ibop-body-font);cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}
#home .idz-addbtn:hover{background:#BDDD93;transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,.25)}
#home .idz-note{margin:7px 0 0;color:#aab4bf;font:400 11.5px/1.4 var(--ibop-body-font)}
#home .idz-note.idz-err{color:#ffb4a8}
#home .idz-learners{display:flex;align-items:center;gap:10px;margin-top:14px}
#home .idz-avs{display:flex;flex:none}
#home .idz-av{width:32px;height:32px;margin-left:-8px;border:2px solid var(--ibop-navy);border-radius:50%;overflow:hidden;background:var(--ibop-green-d);animation:idzUp .6s ease both}
#home .idz-av:first-child{margin-left:0}
#home .idz-av:nth-child(2){animation-delay:.07s}#home .idz-av:nth-child(3){animation-delay:.14s}#home .idz-av:nth-child(4){animation-delay:.21s}#home .idz-av:nth-child(5){animation-delay:.28s}#home .idz-av:nth-child(6){animation-delay:.35s}
#home .idz-av img{width:100%;height:100%;object-fit:cover;display:block}
#home .idz-learn-txt{display:flex;flex-direction:column;color:#fff;font:700 13px/1.3 var(--ibop-body-font)}
#home .idz-learn-txt span{color:#c9d1d9;font-weight:400;font-size:11.5px}

/* ---- professional animated background: drifting grid, glow, self-drawing trend lines ---- */
#home .idz-bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
#home .idz-bg:before{content:"";position:absolute;inset:-48px;background-image:linear-gradient(rgba(123,186,39,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(123,186,39,.07) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse at 30% 50%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse at 30% 50%,#000 20%,transparent 75%);animation:idzGrid 18s linear infinite}
#home .idz-orb{position:absolute;border-radius:50%;filter:blur(64px);opacity:.5}
#home .idz-orb.o1{width:340px;height:340px;left:-60px;top:12%;background:rgba(123,186,39,.26);animation:idzOrb1 14s ease-in-out infinite}
#home .idz-orb.o2{width:300px;height:300px;right:28%;bottom:-130px;background:rgba(93,135,12,.3);animation:idzOrb2 17s ease-in-out infinite}
#home .idz-chart{position:absolute;left:0;bottom:0;width:100%;height:58%}
#home .idz-line{fill:none;stroke:var(--ibop-green);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:2600;stroke-dashoffset:2600;opacity:.45;animation:idzDraw 11s ease-in-out infinite}
#home .idz-line.l2{stroke:#BDDD93;opacity:.22;animation-delay:1.4s;animation-duration:13s}
#home .idz-area{opacity:0;animation:idzAreaIn 11s ease-in-out infinite}

/* ---- stage: single front-view ID card ---- */
#home .idz-stage{position:relative;height:372px;perspective:1000px}
#home .idz-pulse{position:absolute;left:50%;top:56%;width:260px;height:260px;margin:-130px 0 0 -130px;border-radius:50%;border:1px solid rgba(123,186,39,.5);opacity:0;animation:idzPulse 6s ease-out infinite}
#home .idz-pulse.p2{animation-delay:2s}#home .idz-pulse.p3{animation-delay:4s}
#home .idz-drop{position:absolute;left:50%;top:0;width:210px;margin-left:-105px;animation:idzDrop 1.1s .15s cubic-bezier(.22,1.2,.4,1) both}
#home .idz-swing{position:relative;padding-top:58px;transform-origin:50% 0;animation:idzSwing 7s 1.3s ease-in-out infinite}
#home .idz-strap{position:absolute;top:-11px;left:50%;width:34px;height:96px;margin-left:-17px;clip-path:polygon(0 0,100% 0,82% 100%,18% 100%);background:repeating-linear-gradient(90deg,var(--ibop-green-d) 0 5px,var(--ibop-green) 5px 10px);filter:drop-shadow(0 0 12px rgba(123,186,39,.55));animation:idzGlow 4s ease-in-out infinite}
#home .idz-clip{position:absolute;top:50px;left:50%;width:26px;height:14px;margin-left:-13px;border-radius:3px 3px 5px 5px;background:linear-gradient(#b8c0c9,#7d8793);z-index:3}
#home .idz-tilt{transition:transform .25s ease-out}
#home .idz-card{position:relative;overflow:hidden;background:#fff;border-radius:12px;box-shadow:0 22px 46px rgba(0,0,0,.5);color:var(--ibop-navy)}
#home .idz-top{display:flex;justify-content:space-between;align-items:center;padding:9px 12px 8px;background:var(--ibop-navy);border-bottom:2px solid var(--ibop-green);color:#fff;font:800 8.5px/1 var(--ibop-body-font);letter-spacing:.16em;text-transform:uppercase}
#home .idz-body{display:flex;flex-direction:column;align-items:center;padding:14px 14px 14px;text-align:center}
#home .idz-photo{position:relative;display:block;width:84px;height:84px;padding:0;overflow:hidden;border:3px solid var(--ibop-green);border-radius:50%;background:var(--ibop-line);cursor:pointer;transition:transform .3s ease}
#home .idz-photo:hover{transform:scale(1.05)}
#home .idz-photo:not(.has-img){animation:idzRing 3s 2s ease-in-out infinite}
#home .idz-sil{position:absolute;inset:13px 13px 0;display:block}
#home .idz-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
#home .idz-rot{opacity:0;transition:opacity .8s ease}
#home .idz-rot.is-on{opacity:1}
#home .idz-own{z-index:3}
#home .idz-photo.has-img .idz-rot,#home .idz-photo.has-img .idz-sil{display:none}
#home .idz-photo.has-img{animation:idzPhotoIn .7s cubic-bezier(.22,1.2,.4,1)}
#home .idz-cap{margin-top:5px;height:12px;color:#6b7580;font:600 8px/12px var(--ibop-body-font);letter-spacing:.06em;text-transform:uppercase}
#home .idz-name{margin-top:7px;max-width:100%;font:800 21px/1.15 var(--ibop-heading-font);color:var(--ibop-navy);overflow-wrap:anywhere}
#home .idz-name.idz-pop{animation:idzPop .35s ease}
#home .idz-role{margin-top:6px;color:var(--ibop-green-d);font:700 10px/1.3 var(--ibop-body-font)}
#home .idz-loc{margin-top:8px;color:#6b7580;font:600 8.5px/1.2 var(--ibop-body-font);letter-spacing:.1em;text-transform:uppercase}
#home .idz-barcode{display:block;width:140px;height:30px;margin-top:12px}
#home .idz-barcode rect{fill:#111}
#home .idz-beam{position:absolute;left:0;right:0;top:0;height:40px;z-index:4;pointer-events:none;opacity:0;background:linear-gradient(180deg,transparent,rgba(123,186,39,.25) 70%,rgba(123,186,39,.85));border-bottom:2px solid #BDDD93;transform:translateY(-40px)}
#home .idz-card.scan .idz-beam{animation:idzBeam .9s ease-in-out}
#home .idz-shine{position:absolute;top:0;bottom:0;left:-60%;width:35%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);animation:idzShine 6s 2.2s ease-in-out infinite;pointer-events:none}

@keyframes idzUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes idzDrop{0%{opacity:0;transform:translateY(-110px)}60%{opacity:1}100%{opacity:1;transform:none}}
@keyframes idzSwing{0%,100%{transform:rotate(1.8deg)}50%{transform:rotate(-1.4deg)}}
@keyframes idzGlow{0%,100%{filter:drop-shadow(0 0 9px rgba(123,186,39,.4))}50%{filter:drop-shadow(0 0 20px rgba(123,186,39,.75))}}
@keyframes idzPulse{0%{opacity:.55;transform:scale(.55)}100%{opacity:0;transform:scale(1.5)}}
@keyframes idzGrid{to{transform:translate(48px,48px)}}
@keyframes idzOrb1{0%,100%{transform:translate(0,0)}50%{transform:translate(120px,60px)}}
@keyframes idzOrb2{0%,100%{transform:translate(0,0)}50%{transform:translate(-140px,-50px)}}
@keyframes idzDraw{0%{stroke-dashoffset:2600}55%,80%{stroke-dashoffset:0}100%{stroke-dashoffset:-2600}}
@keyframes idzAreaIn{0%{opacity:0}55%,80%{opacity:1}100%{opacity:0}}
@keyframes idzShine{0%,70%{left:-60%}100%{left:130%}}
@keyframes idzRing{0%,100%{box-shadow:0 0 0 0 rgba(123,186,39,.5)}50%{box-shadow:0 0 0 9px rgba(123,186,39,0)}}
@keyframes idzPop{50%{transform:scale(1.06)}}
@keyframes idzPhotoIn{from{transform:scale(.5);opacity:0}to{transform:none;opacity:1}}
@keyframes idzBeam{0%{opacity:1;transform:translateY(-40px)}100%{opacity:1;transform:translateY(310px)}}

@media (max-width:767px){
  #home .idz{grid-template-columns:1fr;gap:6px}
  #home .idz-stage{width:240px;margin:0 auto}
  #home .idz-title{font-size:26px !important}
}
@media (prefers-reduced-motion:reduce){#home .idz-bg *,#home .idz-bg:before,#home .idz *,#home .idz-drop,#home .idz-swing{animation:none !important}}

/* ===== ibop-hero-compact-outcomes-wave ===== */
/* Hero background: wave lines only */
/* wave lines + square grid lines; no orbs */
#home .idz-orb{display:none !important}
#home .idz-chart{height:70%}
#home.ibop-hero{background:#0B1D2E !important}
/* Desktop / tablet: bigger ID card, bigger + taller headline block (form untouched) */
@media (min-width:768px){
  #home.ibop-hero{min-height:clamp(600px,82vh,720px) !important}
  #home .ibop-hero-inner{padding:56px 24px 64px !important}
  #home .idz{grid-template-columns:300px minmax(0,1fr);gap:40px;max-width:none}
  #home .idz-stage{height:480px}
  #home .idz-drop{width:270px;margin-left:-135px}
  #home .idz-swing{padding-top:70px}
  #home .idz-strap{width:42px;height:116px;margin-left:-21px;top:-36px}
  #home .idz-clip{top:62px;width:32px;height:17px;margin-left:-16px}
  #home .idz-pulse{width:340px;height:340px;margin:-170px 0 0 -170px}
  #home .idz-top{padding:12px 16px 10px;font-size:10.5px}
  #home .idz-body{padding:20px 18px 20px}
  #home .idz-photo{width:116px;height:116px;border-width:4px}
  #home .idz-sil{inset:18px 18px 0}
  #home .idz-cap{margin-top:8px;height:14px;font-size:10px;line-height:14px}
  #home .idz-name{margin-top:10px}
  #home .idz-role{margin-top:8px;font-size:12.5px}
  #home .idz-loc{margin-top:10px;font-size:10.5px}
  #home .idz-barcode{width:180px;height:38px;margin-top:16px}
  #home .idz-text .ibop-eyebrow{font-size:13px;margin-bottom:12px}
  /* #home .idz-title{font-size:clamp(32px,3.5vw,46px) !important;line-height:1.12 !important} */
  #home .idz-cta{margin:20px 0 14px;font-size:16px}
  #home .idz-input{height:52px !important;font-size:16px !important}
  #home .idz-addbtn{height:52px;padding:0 20px;font-size:15px}
  #home .idz-note{font-size:12.5px;margin-top:10px}
  #home .idz-learners{margin-top:22px}
  #home .idz-av{width:40px;height:40px}
  #home .idz-learn-txt{font-size:14.5px}
  #home .idz-learn-txt span{font-size:12.5px}
}
/* Mobile: eyebrow + headline first, then the card, then name/photo box */
@media (max-width:767px){
  #home .idz{display:flex;flex-direction:column;gap:0}
  #home .idz-text{display:contents}
  #home .idz-text .ibop-eyebrow{order:1}
  #home .idz-title{order:2}
  #home .idz-stage{order:3;margin:14px auto 6px}
  #home .idz-cta{order:4}
  #home .idz-row{order:5}
  #home .idz-note{order:6}
  #home .idz-learners{order:7}
}

/* Outcomes: step-by-step wave, same as "What is investment banking operations?" */
.page-wrapper #outcomes .ibop-sec-head{max-width:none;margin:0 0 20px;text-align:left}
.page-wrapper #outcomes .ibop-sec-head h2,.page-wrapper #outcomes .ibop-sec-head p{text-align:left}
.page-wrapper #outcomes .ibop-oc-wavepanel{margin-top:10px}
.page-wrapper #outcomes .ibop-step h4{color:#fff}
.page-wrapper #outcomes .ibop-step p{color:#D1D3D4}

/* ===== ibop-hero-desc ===== */
#home .idz-desc{margin:14px 0 0;max-width:560px;color:#E6E7E8;font:400 15px/1.6 var(--ibop-body-font)}
#home .idz-desc:first-letter{color:inherit}
@media (min-width:768px){#home .idz-desc{font-size:11.5px;margin-top:16px}}
@media (max-width:767px){#home .idz-desc{order:7;font-size:14.5px;margin:12px 0 0}#home .idz-learners{order:8}}

/* ===== ibop-outcomes-align ===== */
/* Outcomes wave: dots sit on the line, text rows aligned and clear of the line */
@media (min-width:768px){
  .page-wrapper #outcomes .ibop-wave-svg{height:120px}
  .page-wrapper #outcomes .ibop-step{padding:0 12px}
  .page-wrapper #outcomes .ibop-step:nth-child(odd) h4{margin-top:60px}
  .page-wrapper #outcomes .ibop-step h4{margin-bottom:8px;line-height:1.25;overflow-wrap:normal;word-break:normal;hyphens:none}
  .page-wrapper #outcomes .ibop-step p{line-height:1.55;overflow-wrap:normal}
  .page-wrapper #outcomes .ibop-oc-wavepanel{padding-bottom:40px;overflow:visible}
}

/* ===== ibop-outcomes-fullwave ===== */
/* Outcomes: no square box; the wave runs edge to edge across the screen (desktop) */
.page-wrapper #outcomes .ibop-oc-wavepanel{background:none;border:0;border-radius:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;margin-top:10px}
@media (min-width:768px){
  .page-wrapper #outcomes{overflow:hidden}
  .page-wrapper #outcomes .ibop-oc-wavepanel{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:0;padding:0 0 40px;overflow:visible}
  .page-wrapper #outcomes .ibop-wave-wrap{width:100%;padding-bottom:0}
  .page-wrapper #outcomes .ibop-wave-svg{left:0;width:100%}
  .page-wrapper #outcomes .ibop-step{padding:0 clamp(12px,2vw,36px)}
  .page-wrapper #outcomes .ibop-step h4{font-size:clamp(18px,1.7vw,24px)}
  .page-wrapper #outcomes .ibop-step p{font-size:clamp(14px,1.15vw,16px);max-width:300px;margin-left:auto;margin-right:auto}
}

/* ===== Outcomes: icons inside the wave dots ===== */
.page-wrapper #outcomes .ibop-dot{width:40px;height:40px;margin-top:-5px;color:#7BBA27}
.page-wrapper #outcomes .ibop-dot svg{display:block;width:20px;height:20px}
.page-wrapper #outcomes .ibop-step:hover .ibop-dot{color:#0B1D2E}
@media(max-width:767px){.page-wrapper #outcomes .ibop-dot{width:48px;height:48px;margin:0 auto 12px}.page-wrapper #outcomes .ibop-dot svg{width:24px;height:24px}}

/* =====================================================================
   ibop-fixes-v4  (loaded last)
   ===================================================================== */

/* 1. Small, equal left/right gap on every section */
.page-wrapper .ibop-wrap,.page-wrapper .ibop-jt-wrap{max-width:none!important;padding-left:3cm!important;padding-right:3cm!important}
.page-wrapper #home .ibop-hero-inner{max-width:none!important;padding-left:3cm!important;padding-right:3cm!important}
.page-wrapper .ibop-final{padding-left:3cm!important;padding-right:3cm!important}

/* 2. Plain white sections, no dots */
.page-wrapper .ibop-sec--pale,.page-wrapper .ibop-sec--light,.page-wrapper #our-learners,.page-wrapper .ibop-job-trade{background:#fff!important}
.page-wrapper .ibop-sec--pale:before,.page-wrapper .ibop-sec--light:before,.ibop-sec--pale:before,.ibop-sec--light:before{display:none!important;content:none!important;background:none!important}
.ibop-fw-dots{display:none!important}

/* 3. All H2 headings: charcoal (white stays only on dark / image sections) */
.page-wrapper section:not(.ibop-sec--dark):not(.ibop-teach):not(.ibop-final):not(.ibop-what):not(.ibop-hero):not(.ibop-oc2) h2,
.page-wrapper section:not(.ibop-sec--dark):not(.ibop-teach):not(.ibop-final):not(.ibop-what):not(.ibop-hero):not(.ibop-oc2) h2 span,
.page-wrapper section:not(.ibop-sec--dark):not(.ibop-teach):not(.ibop-final):not(.ibop-what):not(.ibop-hero):not(.ibop-oc2) h2 em{color:#333333!important}

/* 4. Sound familiar: smaller text on the front of the flip cards */
.page-wrapper .ibop-sf-quote{font-size:15px!important;line-height:1.45!important}
.ibop-sf-tag{font-size:11px!important}
.ibop-sf-hint{font-size:11px!important}

/* 5. The job, in one trade: icon + time in charcoal */
.page-wrapper .ibop-jt-time{color:#333333!important}
.page-wrapper .ibop-jt-ico{background:#333333!important;color:#fff!important}

/* 6. Desks: no + symbol (cards still open by click and automatically) */
.ibop-cp-mini i{display:none!important}

/* 7. How the programme works: 01, 02 ... in charcoal */
.page-wrapper .ibop-hw-num{color:#333333!important}

/* 8. Placeflix: no overlap, calm fade only */
.ibop-pfx-steps>li{align-items:start}
.ibop-pfx-n:after{display:none!important;animation:none!important}
.ibop-pfx-steps>li:hover .ibop-pfx-n{transform:none!important}
.ibop-anim .ibop-pfx-steps .ibop-pfx-n{transform:none!important;opacity:0;transition:opacity .5s ease!important}
.ibop-anim .ibop-pfx-steps.is-in .ibop-pfx-n{opacity:1}
.ibop-anim .ibop-pfx-steps .ibop-pfx-t{transform:none!important;opacity:0;transition:opacity .5s ease .1s!important}
.ibop-anim .ibop-pfx-steps.is-in .ibop-pfx-t{opacity:1}
.ibop-pfx-n{flex:none}

/* 9. How you join: equal-size cards, number left, white fee border */
.ibop-jn-steps{display:grid;grid-auto-rows:1fr;gap:14px}
.ibop-jn-steps>li{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:16px;margin:0!important}
.ibop-jn-steps>li:not(:last-child):before{top:calc(50% + 23px);bottom:auto;height:calc(100% + 14px - 46px)}
.ibop-jn-card{height:100%;min-height:112px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}
.page-wrapper #how-to-join .ibop-jn-fee{border:2px solid #fff!important}

/* 10. FAQ: equal text sizes, scrollable list, no gradient */
.page-wrapper #faq .ibop-faq-head h2{font-size:clamp(22px,2.3vw,30px)!important;line-height:1.3;font-weight:700}
.page-wrapper #faq .ibop-faq-l1,.page-wrapper #faq .ibop-faq-l2{display:block;font-size:inherit!important;font-weight:inherit!important}
.ibop-faq-list summary h3{font-size:18px!important;font-weight:600; text-align: justify;}
.ibop-faq-list .ans p{font-size:16px!important}
.ibop-faq-list details[open]{background:none!important}
.ibop-faq-list details[open] summary{padding-left:0!important}
.ibop-faq-list .ans p{padding-left:0!important}
.page-wrapper #faq .ibop-faq-list{max-height:min(560px,72vh);overflow-y:auto;overscroll-behavior:contain;padding-right:10px;scrollbar-width:thin;scrollbar-color:#7BBA27 #E5E2E1}
.page-wrapper #faq .ibop-faq-list::-webkit-scrollbar{width:6px}
.page-wrapper #faq .ibop-faq-list::-webkit-scrollbar-thumb{background:#7BBA27;border-radius:6px}
.page-wrapper #faq .ibop-faq-list::-webkit-scrollbar-track{background:#E5E2E1}

/* 11. Curriculum: everything left aligned */
.page-wrapper #curriculum .ibop-sec-head,.page-wrapper #curriculum .ibop-sec-head *,
.page-wrapper #curriculum .ibop-panels,.page-wrapper #curriculum .ibop-panels *,
.page-wrapper #curriculum .ibop-tabs,.page-wrapper #curriculum .ibop-tabs *{text-align:left!important}
.page-wrapper #curriculum .ibop-sec-head{max-width:none!important;margin-left:0!important;margin-right:0!important}

/* 12. Image sections: background image visible BEHIND the text */
.page-wrapper #where-learners-work,.page-wrapper #service,.page-wrapper #how-to-join,.page-wrapper #enquire{
  background:linear-gradient(180deg,rgba(7,16,27,.5),rgba(7,16,27,.62)),var(--bg) center/cover no-repeat!important;
  box-shadow:none!important}
.page-wrapper #where-learners-work>*,.page-wrapper #service>*,.page-wrapper #how-to-join>*,.page-wrapper #enquire>*{position:relative;z-index:2}
.page-wrapper #where-learners-work h2,.page-wrapper #service h2,.page-wrapper #how-to-join h2,.page-wrapper #enquire h2,
.page-wrapper #where-learners-work p,.page-wrapper #service p,.page-wrapper #how-to-join p,.page-wrapper #enquire p{text-shadow:0 1px 4px rgba(0,0,0,.55)}
@media(max-width:991px){.page-wrapper #where-learners-work,.page-wrapper #service,.page-wrapper #how-to-join,.page-wrapper #enquire{background-attachment:scroll!important}}

/* side gap: 1 cm on desktop, smaller on phones */
@media(max-width:767px){
.page-wrapper .ibop-wrap,.page-wrapper .ibop-jt-wrap,.page-wrapper #home .ibop-hero-inner,.page-wrapper .ibop-final{padding-left:16px!important;padding-right:16px!important}
}

/* ===== ibop-fixes-v5 ===== */
/* equal side gap: 3 cm on desktop, 1.5 cm on small desktop/tablet, 16px on phones */
.ibop-wrap,.ibop-jt-wrap,#home .ibop-hero-inner,.ibop-final{padding-left:3cm!important;padding-right:3cm!important;box-sizing:border-box}
@media(max-width:1199px){.ibop-wrap,.ibop-jt-wrap,#home .ibop-hero-inner,.ibop-final,.page-wrapper .ibop-wrap,.page-wrapper .ibop-jt-wrap,.page-wrapper #home .ibop-hero-inner,.page-wrapper .ibop-final{padding-left:1.5cm!important;padding-right:1.5cm!important}}
@media(max-width:767px){.ibop-wrap,.ibop-jt-wrap,#home .ibop-hero-inner,.ibop-final,.page-wrapper .ibop-wrap,.page-wrapper .ibop-jt-wrap,.page-wrapper #home .ibop-hero-inner,.page-wrapper .ibop-final{padding-left:16px!important;padding-right:16px!important}}

/* The job, in one trade: background image (path set inline in index.php) behind the text */
.page-wrapper #ibop-job-trade.ibop-job-trade{background:linear-gradient(rgba(255,255,255,.80),rgba(255,255,255,.86)),var(--bg) center/cover no-repeat!important}

/* FAQ: questions on the left with the scroller on the left edge, image on the right */
@media(min-width:981px){
.page-wrapper #faq .ibop-faq-grid{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr)!important;grid-template-areas:"head media" "list media" "cta media"!important}
.page-wrapper #faq .ibop-faq-list{direction:rtl;overflow-y:scroll!important;padding-right:0!important;padding-left:12px}
.page-wrapper #faq .ibop-faq-list>details{direction:ltr}
}
.page-wrapper #faq .ibop-faq-list{scrollbar-width:auto;scrollbar-color:#7BBA27 #E5E2E1}
.page-wrapper #faq .ibop-faq-list::-webkit-scrollbar{width:8px}

/* ===== ibop-fixes-v6 ===== */

/* A. The job, in one trade: dark gradient + shadow over the image, soft grey times */
.page-wrapper #ibop-job-trade.ibop-job-trade{
  background:linear-gradient(180deg,rgba(12,20,28,.94),rgba(11,29,46,.86) 50%,rgba(12,20,28,.96)),var(--bg) center/cover no-repeat!important;
  box-shadow:inset 0 70px 90px -50px rgba(0,0,0,.75),inset 0 -70px 90px -50px rgba(0,0,0,.75)!important;color:#E6E7E8}
.page-wrapper #ibop-job-trade.ibop-job-trade h2,.page-wrapper #ibop-job-trade.ibop-job-trade h2 span{color:#fff!important}
.page-wrapper #ibop-job-trade .ibop-jt-kicker{color:#7BBA27!important}
.page-wrapper #ibop-job-trade .ibop-jt-intro{color:#D1D3D4!important}
.page-wrapper #ibop-job-trade .ibop-jt-card{background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.16)!important;border-bottom:4px solid #7BBA27!important;box-shadow:0 18px 40px rgba(0,0,0,.4)!important}
.page-wrapper #ibop-job-trade .ibop-jt-card:hover{background:rgba(255,255,255,.12)!important;transform:translateY(-6px)}
.page-wrapper #ibop-job-trade .ibop-jt-card h3{color:#fff!important}
.page-wrapper #ibop-job-trade .ibop-jt-card>p:not(.ibop-jt-time){color:#D1D3D4!important}
.page-wrapper #ibop-job-trade .ibop-jt-time{color:rgba(209,213,218,.55)!important;font-weight:700}
.page-wrapper #ibop-job-trade .ibop-jt-ico{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.22);color:#E6E7E8!important}

/* B. Desks: heading on 1 line, intro on 2 lines (desktop) */
@media(min-width:992px){
.page-wrapper #careers .ibop-sec-head{max-width:none!important}
.page-wrapper #careers .ibop-sec-head h2{white-space:nowrap;font-size:clamp(26px,2.9vw,40px)}
.page-wrapper #careers .ibop-sec-head>p:not(.ibop-kicker){max-width:none!important;font-size:16px;line-height:1.65}
}

/* C. How the programme works: faded grey numbers + wow animations */
.page-wrapper .ibop-hw-num{color:#333!important;opacity:.16;font-size:46px!important;transition:opacity .4s ease,transform .5s cubic-bezier(.3,1.5,.5,1)}
.ibop-hw-step{overflow:hidden}
.ibop-hw-step:hover .ibop-hw-num{opacity:.28;transform:scale(1.12)}
.ibop-hw-step:after{content:"";position:absolute;left:0;bottom:0;height:4px;width:100%;background:linear-gradient(90deg,#7BBA27,#BDDD93);transform:scaleX(0);transform-origin:left;transition:transform .5s ease}
.ibop-hw-step:hover:after{transform:scaleX(1)}
.ibop-hw-step:before{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(123,186,39,.14),transparent);transform:skewX(-18deg);pointer-events:none}
.ibop-hw-step:hover:before{animation:hwShine .9s ease}
.ibop-hw-step:hover{transform:translateY(-10px) scale(1.02)!important;box-shadow:0 24px 46px rgba(11,29,46,.18)}
.ibop-hw-icon{transition:transform .5s cubic-bezier(.3,1.6,.5,1),background .3s,color .3s}
.ibop-hw-step:hover .ibop-hw-icon{transform:rotate(-10deg) scale(1.18);background:#7BBA27;color:#0B1D2E}
.ibop-hw-steps.is-in .ibop-hw-icon{animation:hwFloat 3.6s ease-in-out infinite}
.ibop-anim .ibop-hw-steps .ibop-hw-step{opacity:0}
.ibop-anim .ibop-hw-steps.is-in .ibop-hw-step{animation:hwPop .9s cubic-bezier(.2,.9,.3,1.2) both}
.ibop-anim .ibop-hw-steps.is-in .ibop-hw-step:nth-child(2){animation-delay:.18s}
.ibop-anim .ibop-hw-steps.is-in .ibop-hw-step:nth-child(3){animation-delay:.36s}
.ibop-anim .ibop-hw-steps.is-in .ibop-hw-step:nth-child(4){animation-delay:.54s}
@keyframes hwPop{0%{opacity:0;transform:perspective(800px) rotateX(-28deg) translateY(60px) scale(.9)}100%{opacity:1;transform:none}}
@keyframes hwFloat{50%{transform:translateY(-6px)}}
@keyframes hwShine{to{left:130%}}
@media(prefers-reduced-motion:reduce){.ibop-hw-steps .ibop-hw-step,.ibop-hw-icon{animation:none!important;opacity:1!important}}

/* D. Placeflix: highlighted number box with a ring that spreads outward (no overlap) */
.ibop-pfx-steps>li{grid-template-columns:50px minmax(0,1fr)!important;column-gap:28px!important}
.ibop-pfx-n{border:2px solid #7BBA27!important;box-shadow:0 0 0 4px rgba(123,186,39,.18),0 8px 18px rgba(123,186,39,.28)}
.ibop-pfx-n:after{display:block!important;content:"";position:absolute;inset:-2px;border:2px solid #7BBA27;border-radius:inherit;opacity:0;pointer-events:none;animation:pfxRing 2.4s ease-out infinite!important}
.ibop-pfx-steps>li:nth-child(2) .ibop-pfx-n:after{animation-delay:.5s!important}
.ibop-pfx-steps>li:nth-child(3) .ibop-pfx-n:after{animation-delay:1s!important}
@keyframes pfxRing{0%{transform:scale(1);opacity:.85}100%{transform:scale(1.32);opacity:0}}
.ibop-pfx-steps>li:hover .ibop-pfx-n{box-shadow:0 0 0 7px rgba(123,186,39,.28),0 10px 22px rgba(123,186,39,.38)}
@media(max-width:767px){.ibop-pfx-steps>li{grid-template-columns:44px minmax(0,1fr)!important;column-gap:22px!important}}

/* ===== ibop-fixes-v7 ===== */

/* Sound familiar: small, faded number that no longer overlaps the text */
.page-wrapper .ibop-sf-no{width:auto!important;height:auto!important;right:16px!important;top:14px!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;color:rgba(51,51,51,.22)!important;font:700 20px/1 var(--ibop-heading-font)!important;letter-spacing:.02em}
.page-wrapper .ibop-sf-back .ibop-sf-no{background:transparent!important;color:rgba(255,255,255,.28)!important}
.ibop-sf-tag{margin-right:44px!important}
.ibop-sf-with{margin-right:44px}

/* Your Faculty: solid colour behind the whole card, so it is filled to the bottom of the text */
.page-wrapper #service .ibop-tcard{display:flex;flex-direction:column;background:#0B1D2E!important;border:1px solid rgba(255,255,255,.14)}
.page-wrapper #service .ibop-tc-img{flex:none}
.page-wrapper #service .ibop-tc-body{flex:1;background:linear-gradient(180deg,#12283d,#0B1D2E)!important;border-top:3px solid #7BBA27}

/* ===== ibop-fixes-v8 ===== */

/* 1. Before you choose a course: equal square-style cards, justified text */
.page-wrapper #five-questions .ibop-fq-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:1fr;gap:16px;margin:0;padding:0;list-style:none}
.page-wrapper #five-questions .ibop-fq-item{display:flex;flex-direction:column;align-items:flex-start;gap:12px;height:100%;min-height:300px;box-sizing:border-box;margin:0;padding:22px 18px 20px;background:#fff;border:1px solid #E5E2E1;border-top:5px solid #7BBA27;border-left:1px solid #E5E2E1;border-radius:14px;box-shadow:0 8px 22px rgba(11,29,46,.07)}
.page-wrapper #five-questions .ibop-fq-no{flex:none;width:44px;height:44px}
.page-wrapper #five-questions .ibop-fq-item h3{margin:0;font-size:18px;line-height:1.3;text-align:left}
.page-wrapper #five-questions .ibop-fq-item p{margin:0;font-size:14.5px;line-height:1.6;text-align:justify;text-justify:inter-word;hyphens:auto}
@media(max-width:1199px){.page-wrapper #five-questions .ibop-fq-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.page-wrapper #five-questions .ibop-fq-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.page-wrapper #five-questions .ibop-fq-item{min-height:0;padding:16px 14px}.page-wrapper #five-questions .ibop-fq-item p{grid-column:auto;font-size:13.5px}}
@media(max-width:480px){.page-wrapper #five-questions .ibop-fq-list{grid-template-columns:1fr}}

/* 2. How the programme works: one-line intro, no transitions, plain layout */
.page-wrapper #how-programme-works .ibop-hw-heading{max-width:none}
.page-wrapper #how-programme-works .ibop-hw-heading>p:last-child{max-width:none;white-space:nowrap}
@media(max-width:991px){.page-wrapper #how-programme-works .ibop-hw-heading>p:last-child{white-space:normal}}
.ibop-anim #how-programme-works .ibop-reveal,
.ibop-anim #how-programme-works [data-stagger]>*,
.ibop-anim #how-programme-works .ibop-hw-steps .ibop-hw-step{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}
#how-programme-works .ibop-hw-step,
#how-programme-works .ibop-hw-step:hover,
#how-programme-works .ibop-hw-icon,
#how-programme-works .ibop-hw-step:hover .ibop-hw-icon,
#how-programme-works .ibop-hw-num,
#how-programme-works .ibop-hw-step:hover .ibop-hw-num{transition:none!important;animation:none!important;transform:none!important}
#how-programme-works .ibop-hw-steps.is-in .ibop-hw-icon{animation:none!important}
#how-programme-works .ibop-hw-step:before,#how-programme-works .ibop-hw-step:after{display:none!important}
#how-programme-works .ibop-hw-step:hover{box-shadow:0 12px 28px rgba(11,29,46,.07)}
#how-programme-works .ibop-hw-step:hover .ibop-hw-icon{background:#eef5e5;color:var(--ibop-green-dark)}

/* 3. Outcomes: justified text */
.page-wrapper #outcomes .ibop-step p{text-align:justify;text-justify:inter-word;hyphens:auto}

/* 4. Sound familiar: number in a circle on the right */
.page-wrapper .ibop-sf-no,
.page-wrapper .ibop-sf-back .ibop-sf-no{display:flex!important;align-items:center;justify-content:center;width:42px!important;height:42px!important;right:14px!important;top:12px!important;border-radius:50%!important;background:#7BBA27!important;color:#0B1D2E!important;font:700 17px/1 var(--ibop-heading-font)!important;box-shadow:0 0 0 5px rgba(123,186,39,.28)!important}
.ibop-sf-tag,.ibop-sf-with{margin-right:56px!important}
@media(max-width:767px){.page-wrapper .ibop-sf-no,.page-wrapper .ibop-sf-back .ibop-sf-no{width:32px!important;height:32px!important;right:10px!important;top:10px!important;font-size:13px!important;box-shadow:0 0 0 3px rgba(123,186,39,.28)!important}.ibop-sf-tag,.ibop-sf-with{margin-right:42px!important}}

/* ===== ibop-fixes-v9 ===== */

/* 1. One-line intros (desktop); they wrap normally on tablet and phone */
@media(min-width:992px){
  .page-wrapper #placeflix .ibop-sec-head p:not(.ibop-kicker){max-width:none!important;white-space:nowrap;font-size:17px}
  .page-wrapper #sound-familiar .ibop-sec-head>p:not(.ibop-kicker){max-width:none!important;white-space:nowrap;font-size:16px}
  .page-wrapper #careers .ibop-sec-head>p:not(.ibop-kicker){max-width:none!important;white-space:nowrap;font-size:clamp(10.5px,.87vw,15px)!important;line-height:1.5}
}

/* 2. Sound familiar: number circle on the right, front text never overlaps */
.page-wrapper #sound-familiar .ibop-sf-front{padding-bottom:16px}
.page-wrapper #sound-familiar .ibop-sf-tag{display:block;min-height:42px;margin:0 56px 12px 0!important;padding-top:10px}
.page-wrapper #sound-familiar .ibop-sf-quote{flex:none;margin:0 0 14px}
.page-wrapper #sound-familiar .ibop-sf-hint{position:static;margin-top:auto;padding-top:10px}
.page-wrapper #sound-familiar .ibop-sf-face{overflow:hidden;min-height:210px}
.page-wrapper #sound-familiar .ibop-sf-back .ibop-sf-with{margin:10px 56px 12px 0!important}
.page-wrapper #sound-familiar .ibop-sf-back p{position:relative}

/* 3. The job, in one trade: green icon on the left, faded time on the right */
.page-wrapper #ibop-job-trade .ibop-jt-ico{background:rgba(123,186,39,.14)!important;border:1px solid rgba(123,186,39,.45)!important;color:#7BBA27!important}
.page-wrapper #ibop-job-trade .ibop-jt-ico svg{stroke:#7BBA27}
.page-wrapper #ibop-job-trade .ibop-jt-time{color:#fff!important;opacity:.4;font-weight:700}

/* 4. Before you choose a course: animated gradient background + card entrance */
.page-wrapper #five-questions.ibop-sec{background:linear-gradient(120deg,#F5F3F3 0%,#E5F1D4 35%,#BDDD93 60%,#E5F1D4 80%,#F5F3F3 100%)!important;background-size:240% 240%!important;animation:fqBg 14s ease-in-out infinite}
@keyframes fqBg{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.page-wrapper #five-questions.ibop-sec:after{content:"";position:absolute;z-index:-1;right:-140px;top:-120px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(123,186,39,.28),transparent 65%);animation:ibopGlow 9s ease-in-out infinite alternate;pointer-events:none}
.page-wrapper #five-questions .ibop-fq-item{background:rgba(255,255,255,.92);transition:transform .3s ease,box-shadow .3s ease}
.page-wrapper #five-questions .ibop-fq-item:hover{transform:translateY(-6px);box-shadow:0 18px 34px rgba(11,29,46,.16)}
.ibop-anim #five-questions .ibop-fq-list>li{opacity:0;transform:translateY(40px) scale(.94)}
.ibop-anim #five-questions .ibop-fq-list.is-in>li{animation:fqRise .8s cubic-bezier(.2,.9,.3,1.2) both;animation-delay:calc(var(--d,0s) + .1s)}
.ibop-anim #five-questions .ibop-fq-list.is-in .ibop-fq-no{animation:fqPop .7s cubic-bezier(.3,1.7,.5,1) both;animation-delay:calc(var(--d,0s) + .45s)}
@keyframes fqRise{from{opacity:0;transform:translateY(40px) scale(.94)}to{opacity:1;transform:none}}
@keyframes fqPop{from{transform:scale(0) rotate(-90deg)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.page-wrapper #five-questions.ibop-sec,.page-wrapper #five-questions.ibop-sec:after,.ibop-anim #five-questions .ibop-fq-list>li,.ibop-anim #five-questions .ibop-fq-no{animation:none!important;opacity:1!important;transform:none!important}}


/* ===== ibop-fixes-v10: student icon on the ID card until the visitor adds a photo ===== */
#home .idz-stu{display:none;position:absolute;inset:0;z-index:2;align-items:flex-end;justify-content:center;padding:14% 14% 0;box-sizing:border-box;background:linear-gradient(145deg,#BDDD93,#7BBA27)}
#home .idz-stu svg{display:block;width:100%;height:100%}
#home .idz-card.idz-nophoto .idz-stu{display:flex}
#home .idz-card.idz-nophoto .idz-rot,#home .idz-card.idz-nophoto .idz-sil{display:none!important}
#home .idz-photo.has-img .idz-stu{display:none!important}

/* ===== ibop-fixes-v11 ===== */
/* Before you choose a course: each card has its own gradient */
.page-wrapper #five-questions .ibop-fq-item{border:0;border-top:5px solid #7BBA27;color:#fff}
.page-wrapper #five-questions .ibop-fq-item:nth-child(1){background:linear-gradient(155deg,#0B1D2E 0%,#204870 100%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(2){background:linear-gradient(155deg,#2F4402 0%,#5D870C 100%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(3){background:linear-gradient(155deg,#204870 0%,#5380B7 100%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(4){background:linear-gradient(155deg,#0C141C 0%,#2F4402 100%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(5){background:linear-gradient(155deg,#5D870C 0%,#0B1D2E 100%)}
.page-wrapper #five-questions .ibop-fq-item h3{color:#fff}
.page-wrapper #five-questions .ibop-fq-item p{color:#E5E2E1}
.page-wrapper #five-questions .ibop-fq-item .ibop-fq-no{background:#7BBA27;color:#0B1D2E;box-shadow:0 0 0 4px rgba(255,255,255,.18)}
.page-wrapper #five-questions .ibop-fq-item:hover{box-shadow:0 18px 34px rgba(11,29,46,.3)}

/* Since 2000 / 25,000+ stats: highlighted gradient boxes */
.page-wrapper #why-ibop-ffoi .ibop-stat{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.22);border-top:4px solid #BDDD93;box-shadow:0 18px 38px rgba(0,0,0,.45),0 0 28px rgba(123,186,39,.2)}
.page-wrapper #why-ibop-ffoi .ibop-stat:nth-child(1){background:linear-gradient(135deg,#5D870C 0%,#2F4402 55%,#0B1D2E 100%)}
.page-wrapper #why-ibop-ffoi .ibop-stat:nth-child(2){background:linear-gradient(135deg,#204870 0%,#0B1D2E 55%,#5D870C 120%)}
.page-wrapper #why-ibop-ffoi .ibop-stat strong{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.page-wrapper #why-ibop-ffoi .ibop-stat>span{color:#E5F1D4}
.page-wrapper #why-ibop-ffoi .ibop-stat:after{content:"";position:absolute;top:0;bottom:0;left:-70%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-18deg);animation:idzShine 6s 1.5s ease-in-out infinite;pointer-events:none}
@media(prefers-reduced-motion:reduce){.page-wrapper #why-ibop-ffoi .ibop-stat:after{animation:none}}

/* ===== ibop-fixes-v12: Before you choose a course, simple blue gradient cards ===== */
.page-wrapper #five-questions .ibop-fq-item:nth-child(1){background:linear-gradient(155deg,#0B1D2E 0%,#204870 100%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(2){background:linear-gradient(155deg,#0F2B47 0%,#2A5A8F 100%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(3){background:linear-gradient(155deg,#163A63 0%,#3A6EA8 100%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(4){background:linear-gradient(155deg,#0C141C 0%,#204870 100%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(5){background:linear-gradient(155deg,#1B3F6B 0%,#4A7DB5 100%)}

/* ===== ibop-fixes-v13: Before you choose a course, #0B1D2E to #7BBA27 gradients ===== */
.page-wrapper #five-questions .ibop-fq-item{border:0;border-bottom:5px solid #7BBA27;color:#fff}
.page-wrapper #five-questions .ibop-fq-item:nth-child(1){background:linear-gradient(160deg,#0B1D2E 0%,#0B1D2E 55%,#7BBA27 175%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(2){background:linear-gradient(200deg,#0B1D2E 0%,#0B1D2E 50%,#7BBA27 165%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(3){background:linear-gradient(135deg,#0B1D2E 0%,#0B1D2E 45%,#7BBA27 170%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(4){background:linear-gradient(180deg,#0B1D2E 0%,#0B1D2E 50%,#7BBA27 180%)}
.page-wrapper #five-questions .ibop-fq-item:nth-child(5){background:linear-gradient(220deg,#0B1D2E 0%,#0B1D2E 55%,#7BBA27 170%)}
.page-wrapper #five-questions .ibop-fq-item h3{color:#fff}
.page-wrapper #five-questions .ibop-fq-item p{color:#fff}
.page-wrapper #five-questions .ibop-fq-item .ibop-fq-no{background:#7BBA27;color:#0B1D2E}

/* ===== ibop-fixes-v14: Since 2000 / 25,000+ stats, #0B1D2E to #7BBA27 gradients ===== */
.page-wrapper #why-ibop-ffoi .ibop-stat:nth-child(1){background:linear-gradient(135deg,#0B1D2E 0%,#0B1D2E 50%,#7BBA27 170%)}
.page-wrapper #why-ibop-ffoi .ibop-stat:nth-child(2){background:linear-gradient(225deg,#0B1D2E 0%,#0B1D2E 50%,#7BBA27 170%)}
.page-wrapper #why-ibop-ffoi .ibop-stat{border:1px solid rgba(123,186,39,.45);border-top:4px solid #7BBA27}
.page-wrapper #why-ibop-ffoi .ibop-stat strong{  color: #7bba27;}
.page-wrapper #why-ibop-ffoi .ibop-stat>span{color:#fff}


/* ===== Mobile: hide only the Before You Leave popup banner image ===== */
@media (max-width: 700px) {
  #before-you-leave-popup .byl-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #before-you-leave-popup .byl-visual {
    display: none !important;
  }

  #before-you-leave-popup .byl-body {
    width: 100%;
    min-width: 0;
  }
}

/* =========================================================
   IBOP FINAL REQUESTED DESIGN UPDATES
   Appended after all existing CSS so these rules take priority.
   ========================================================= */

/* ===== Final layout corrections: justified text + original green/blue palette ===== */

/* Our Learners */
.page-wrapper #our-learners .ibop-ln-card,
.page-wrapper #our-learners .ibop-ln-card h3,
.page-wrapper #our-learners .ibop-ln-card p,
.page-wrapper #our-learners .ibop-ln-card .ibop-ln-role {
    text-align: justify !important;
    text-align-last: auto !important;
}

/* The job, in one trade */
.page-wrapper #ibop-job-trade .ibop-jt-card,
.page-wrapper #ibop-job-trade .ibop-jt-card h3,
.page-wrapper #ibop-job-trade .ibop-jt-card > p:not(.ibop-jt-time),
.page-wrapper #ibop-job-trade .ibop-jt-card .ibop-jt-desk {
    text-align: justify !important;
    text-align-last: auto !important;
}

/* How the programme works */
.page-wrapper #how-programme-works .ibop-hw-heading,
.page-wrapper #how-programme-works .ibop-hw-heading > p,
.page-wrapper #how-programme-works .ibop-hw-step,
.page-wrapper #how-programme-works .ibop-hw-step h3,
.page-wrapper #how-programme-works .ibop-hw-step p {
    text-align: justify !important;
    text-align-last: auto !important;
}

/* Sound familiar: justify both front and reverse card content */
.page-wrapper #sound-familiar .ibop-sf-front,
.page-wrapper #sound-familiar .ibop-sf-back,
.page-wrapper #sound-familiar .ibop-sf-quote,
.page-wrapper #sound-familiar .ibop-sf-back p,
.page-wrapper #sound-familiar .ibop-sf-tag,
.page-wrapper #sound-familiar .ibop-sf-with,
.page-wrapper #sound-familiar .ibop-sf-hint {
    text-align: justify !important;
    text-align-last: auto !important;
}
.page-wrapper #sound-familiar .ibop-sf-no {
    position: absolute !important;
    right: 14px !important;
    top: 12px !important;
}

/* Before you choose a course: retain original navy/green gradients and add a
   soft green semi-circle glow at the BOTTOM of every card. */
.page-wrapper #five-questions .ibop-fq-item {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
    border: 0 !important;
    border-bottom: 5px solid #7BBA27 !important;
    color: #fff !important;
    text-align: justify !important;
}
.page-wrapper #five-questions .ibop-fq-item:nth-child(1) {
    background-image: radial-gradient(ellipse 78% 58% at 50% 112%, rgba(123,186,39,.95) 0%, rgba(123,186,39,.35) 48%, rgba(123,186,39,0) 100%), linear-gradient(160deg,#0B1D2E 0%,#0B1D2E 55%,#7BBA27 175%) !important;
}
.page-wrapper #five-questions .ibop-fq-item:nth-child(2) {
    background-image: radial-gradient(ellipse 78% 58% at 50% 112%, rgba(123,186,39,.95) 0%, rgba(123,186,39,.35) 48%, rgba(123,186,39,0) 100%), linear-gradient(200deg,#0B1D2E 0%,#0B1D2E 50%,#7BBA27 165%) !important;
}
.page-wrapper #five-questions .ibop-fq-item:nth-child(3) {
    background-image: radial-gradient(ellipse 78% 58% at 50% 112%, rgba(123,186,39,.95) 0%, rgba(123,186,39,.35) 48%, rgba(123,186,39,0) 100%), linear-gradient(135deg,#0B1D2E 0%,#0B1D2E 45%,#7BBA27 170%) !important;
}
.page-wrapper #five-questions .ibop-fq-item:nth-child(4) {
    background-image: radial-gradient(ellipse 78% 58% at 50% 112%, rgba(123,186,39,.95) 0%, rgba(123,186,39,.35) 48%, rgba(123,186,39,0) 100%), linear-gradient(180deg,#0B1D2E 0%,#0B1D2E 50%,#7BBA27 180%) !important;
}
.page-wrapper #five-questions .ibop-fq-item:nth-child(5) {
    background-image: radial-gradient(ellipse 78% 58% at 50% 112%, rgba(123,186,39,.95) 0%, rgba(123,186,39,.35) 48%, rgba(123,186,39,0) 100%), linear-gradient(220deg,#0B1D2E 0%,#0B1D2E 55%,#7BBA27 170%) !important;
}
.page-wrapper #five-questions .ibop-fq-item h3,
.page-wrapper #five-questions .ibop-fq-item p {
    color: #fff !important;
    text-align: justify !important;
    text-align-last: auto !important;
}
.page-wrapper #five-questions .ibop-fq-item .ibop-fq-no {
    background: #7BBA27 !important;
    color: #0B1D2E !important;
}

/* Stats: transparent backgrounds as requested earlier */
.page-wrapper #why-ibop-ffoi .ibop-stat,
.page-wrapper #why-ibop-ffoi .ibop-stat:nth-child(1),
.page-wrapper #why-ibop-ffoi .ibop-stat:nth-child(2) {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}
.page-wrapper #why-ibop-ffoi .ibop-stat:after {
    display: none !important;
    content: none !important;
    animation: none !important;
}
.page-wrapper #why-ibop-ffoi .ibop-stat strong,
.page-wrapper #why-ibop-ffoi .ibop-stat > span {
    text-shadow: none !important;
}

/* Final CTA heading size */
.page-wrapper .ibop-final h2,
.ibop-final h2 {
    font-size: clamp(23px, 2.5vw, 32px) !important;
    line-height: 1.3 !important;
}

/* Existing bottom overlapping images retained */
.page-wrapper #curriculum,
.page-wrapper #sound-familiar {
    position: relative !important;
    padding-bottom: 115px !important;
    overflow: visible !important;
}
/* .page-wrapper #curriculum:after,
.page-wrapper #sound-familiar:after {
    content: "";
    position: absolute;
    z-index: 8;
    left: 50%;
    bottom: -36px;
    transform: translateX(-50%);
    display: block;
    width: 145px;
    height: 96px;
    background: url("../images/banners/02.png") center / cover no-repeat;
    border: 4px solid #fff;
    border-radius: 12px;
    box-shadow: 0 10px 28px rgba(11,29,46,.18);
    pointer-events: none;
} */

@media (max-width: 767px) {
    .page-wrapper .ibop-final h2,
    .ibop-final h2 {
        font-size: 23px !important;
        line-height: 1.35 !important;
    }
    .page-wrapper #curriculum,
    .page-wrapper #sound-familiar {
        padding-bottom: 95px !important;
    }
    .page-wrapper #curriculum:after,
    .page-wrapper #sound-familiar:after {
        width: 112px;
        height: 76px;
        bottom: -28px;
    }
    .page-wrapper #five-questions .ibop-fq-item {
        min-height: 0 !important;
        padding: 18px 14px !important;
    }
}


/* ===== Suresh Chaudhary - Center name, designation and company ===== */
.page-wrapper #our-learners .ibop-ln-card .ibop-ln-name,
.page-wrapper #our-learners .ibop-ln-card .ibop-ln-role {
    width: 100% !important;
    text-align: center !important;
    text-align-last: center !important;
}

.page-wrapper #our-learners .ibop-ln-card .ibop-ln-role {
    display: block !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

.page-wrapper #our-learners .ibop-ln-card .ibop-ln-role b {
    display: inline !important;
}

.page-wrapper #our-learners .ibop-ln-card .ibop-ln-role b:first-child:after {
    content: " · " !important;
}

.page-wrapper #our-learners .ibop-ln-card .ibop-ln-role b:last-child:after {
    content: none !important;
}


/* ===== Before you choose a course - Dark cards with bottom green semicircle ===== */
/* .page-wrapper #five-questions .ibop-fq-item {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
    background: #0B1D2E !important;
    background-image: none !important;
    border: 0 !important;
    color: #fff !important;
}

.page-wrapper #five-questions .ibop-fq-item:after {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    left: 50% !important;
    bottom: -65px !important;
    transform: translateX(-50%) !important;
    width: 90% !important;
    height: 130px !important;
    border-radius: 50% 50% 0 0 !important;
    background: radial-gradient(
        ellipse at 50% 100%,
        rgba(123,186,39,0.95) 0%,
        rgba(123,186,39,0.55) 40%,
        rgba(123,186,39,0.18) 70%,
        transparent 100%
    ) !important;
    pointer-events: none !important;
}

.page-wrapper #five-questions .ibop-fq-item > * {
    position: relative !important;
    z-index: 1 !important;
}

.page-wrapper #five-questions .ibop-fq-item h3,
.page-wrapper #five-questions .ibop-fq-item p {
    color: #fff !important;
}

.page-wrapper #five-questions .ibop-fq-item .ibop-fq-no {
    background: #7BBA27 !important;
    color: #0B1D2E !important;
} */

/* Before you choose a course - Same gradient, reduced opacity */

.page-wrapper #five-questions .ibop-fq-item {
    position: relative !important;
    overflow: hidden !important;
    border: 0 !important;
    border-bottom: 3px solid rgba(123,186,39,0.35) !important;
    color: #fff !important;
}

/* Remove extra corner effects */
.page-wrapper #five-questions .ibop-fq-item::after,
.page-wrapper #five-questions .ibop-fq-item::before {
    content: none !important;
    display: none !important;
}

/* Keep original gradient style, reduce green intensity */
.page-wrapper #five-questions .ibop-fq-item:nth-child(1),
.page-wrapper #five-questions .ibop-fq-item:nth-child(2),
.page-wrapper #five-questions .ibop-fq-item:nth-child(3),
.page-wrapper #five-questions .ibop-fq-item:nth-child(4),
.page-wrapper #five-questions .ibop-fq-item:nth-child(5) {
    background-color: #0B1D2E !important;
    background-image:
        radial-gradient(
            ellipse 78% 58% at 50% 112%,
            rgba(123,186,39,0.22) 0%,
            rgba(123,186,39,0.09) 48%,
            transparent 100%
        ) !important;
}