/* 2BO Core 4.8.2 — Problem Final Divider + Hover */
.twobo-problem{
  --royal:#0038ff;
  --royal-dark:#0b225f;
  --royal-deep:#081b4a;
  --blue-soft:#eef4ff;
  --blue-mist:#f6f9ff;
  --gold:#bf9150;
  --gold-soft:#e6cfaa;
  --serif:Georgia,"Times New Roman",serif;
  --sans:Arial,Helvetica,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
  position:relative;
  isolation:isolate;
  box-sizing:border-box!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 0%,rgba(0,56,255,.13),transparent 38%),
    linear-gradient(180deg,#eef4ff 0%,#f7faff 58%,#f2f6ff 100%);
  color:var(--royal-deep);
  padding:clamp(80px,8vw,118px) 0 clamp(116px,11vw,168px);
  clear:both!important;
}
.twobo-problem,.twobo-problem *,.twobo-problem *::before,.twobo-problem *::after{box-sizing:border-box!important}
.twobo-problem::before{display:none!important;content:none!important}
.twobo-problem-inner{position:relative;z-index:2;width:100%!important;max-width:1320px!important;margin:0 auto!important;padding:0 clamp(20px,5vw,56px)!important}

.twobo-problem-top-bridge{position:absolute;z-index:4;top:0;left:0;width:100%;height:18px;background:var(--royal-deep);box-shadow:0 10px 28px rgba(8,27,74,.2)}
.twobo-problem-top-bridge span{position:absolute;left:50%;top:100%;width:22px;height:22px;background:var(--royal-deep);border:2px solid var(--gold-soft);transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 7px 16px rgba(8,27,74,.18)}
.twobo-problem-top-bridge span::before,.twobo-problem-top-bridge span::after{content:"";position:absolute;top:50%;width:46px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.twobo-problem-top-bridge span::before{right:calc(100% + 10px);transform:translateY(-50%) rotate(-45deg)}
.twobo-problem-top-bridge span::after{left:calc(100% + 10px);transform:translateY(-50%) rotate(-45deg) scaleX(-1)}

.twobo-problem-decor{position:absolute;z-index:0;width:310px;height:470px;opacity:.16;pointer-events:none;background-image:radial-gradient(circle at 20% 20%,transparent 0 6px,rgba(0,56,255,.45) 7px 8px,transparent 9px),linear-gradient(128deg,transparent 48%,rgba(0,56,255,.26) 49% 50%,transparent 51%);background-size:54px 54px,100% 100%;filter:blur(.1px)}
.twobo-problem-decor--left{left:-150px;top:110px;transform:rotate(-14deg)}
.twobo-problem-decor--right{right:-170px;bottom:105px;transform:rotate(170deg)}

.twobo-problem-head{width:100%;max-width:900px;margin:0 auto;text-align:center}
.twobo-problem-eyebrow{display:inline-flex;align-items:center;gap:14px;margin:0 0 18px;font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.twobo-problem-eyebrow::before,.twobo-problem-eyebrow::after{content:"";width:40px;height:1px;background:var(--gold)}
.twobo-problem-h2{max-width:960px;margin:0 auto 20px!important;font-family:var(--serif);font-size:clamp(38px,4.15vw,64px)!important;font-weight:600;line-height:1.08!important;color:var(--royal-deep)!important;letter-spacing:-.025em}
.twobo-problem-intro{max-width:700px;margin:0 auto!important;font-family:var(--sans);font-size:clamp(16px,1.35vw,19px);line-height:1.72!important;color:#445477}

.twobo-problem-cards{display:grid;width:100%;max-width:1140px;margin:clamp(48px,5vw,70px) auto 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.twobo-problem-card{position:relative;width:100%;min-width:0;padding:0 30px 30px;text-align:center;background:rgba(255,255,255,.94);border:1px solid rgba(0,56,255,.12);border-top:4px solid var(--royal);border-radius:10px;box-shadow:0 18px 50px -32px rgba(8,27,74,.48);transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease)}
.twobo-problem-card:hover{transform:translateY(-5px) scale(1.012);border-color:rgba(0,56,255,.3);box-shadow:0 20px 38px -20px rgba(0,56,255,.48)}
.twobo-problem-card-photo{width:116px;height:116px;margin:-24px auto 0;border-radius:50%;overflow:hidden;border:6px solid #fff;box-shadow:0 12px 25px rgba(8,27,74,.16);background:#dfe8fb}
.twobo-problem-card-photo img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.72) contrast(.96) sepia(.05);object-position:center}
.twobo-problem-card-icon{position:relative;width:54px;height:54px;margin:-18px auto 12px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#174dff,#0038ff);border:3px solid #fff;box-shadow:0 10px 20px rgba(0,56,255,.25);z-index:2}
.twobo-problem-card-icon svg{width:29px;height:29px;display:block;overflow:visible}
.twobo-problem-card h3{margin:0 0 10px!important;font-family:var(--serif);font-size:clamp(21px,1.7vw,25px);font-weight:600;line-height:1.25!important;color:var(--royal-deep)!important}
.twobo-problem-card-rule{display:block;width:34px;height:2px;margin:0 auto 13px;background:var(--gold)}
.twobo-problem-card p{margin:0!important;font-family:var(--sans);font-size:15px;line-height:1.65!important;color:#4d5b78}

.twobo-problem-story{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:clamp(44px,6vw,78px);align-items:center;max-width:1100px;margin:clamp(58px,7vw,94px) auto 0}
.twobo-problem-photo-wrap{position:relative;width:100%;max-width:none;margin:0;opacity:1;transform:none}
.twobo-problem-photo-backdrop{position:absolute;left:-36px;top:-30px;width:58%;height:92%;border-radius:8px;background:linear-gradient(145deg,#1949d8,#0038ff);box-shadow:0 24px 50px -26px rgba(0,56,255,.55)}
.twobo-problem-photo-backdrop::after{content:"";position:absolute;left:-22px;bottom:24px;width:64px;height:64px;background-image:radial-gradient(circle,var(--gold) 1.4px,transparent 1.6px);background-size:10px 10px;opacity:.85}
.twobo-problem-photo-frame{position:relative;z-index:2;border-radius:9px;overflow:hidden;border:1px solid rgba(255,255,255,.8);box-shadow:0 26px 55px -32px rgba(8,27,74,.48)}
.twobo-problem-photo-frame img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.twobo-problem-story-copy{position:relative;padding-left:28px;border-left:1px solid var(--gold)}
.twobo-problem-close{margin:0 0 18px!important;max-width:520px;text-align:left;font-family:var(--serif);font-size:clamp(29px,3vw,44px);font-style:normal;font-weight:500;line-height:1.1!important;color:var(--royal-deep)}
.twobo-problem-story-text{margin:0;max-width:500px;font-family:var(--sans);font-size:16px;line-height:1.75;color:#4a5875}
.twobo-problem-cta-wrap{margin-top:30px;text-align:left;opacity:1;transform:none}
.twobo-problem-cta{display:inline-flex!important;width:auto!important;max-width:100%;min-height:52px!important;height:auto!important;align-items:center!important;justify-content:center!important;padding:13px 28px!important;border:1px solid var(--royal)!important;border-radius:7px!important;background:#fff!important;background-image:none!important;color:var(--royal)!important;box-shadow:none!important;font-family:var(--sans);font-size:14px!important;font-weight:700!important;letter-spacing:.025em!important;text-transform:none!important;text-decoration:none!important;transition:background .3s var(--ease),color .3s var(--ease),transform .3s var(--ease)!important}
.twobo-problem-cta::before{display:none!important}
.twobo-problem-cta:hover,.twobo-problem-cta:focus{background:var(--royal)!important;color:#fff!important;transform:translateY(-2px);text-decoration:none!important}
.twobo-problem a,.twobo-problem a:hover,.twobo-problem a:focus{text-decoration:none!important}

.twobo-problem-bottom-separator{position:absolute;z-index:3;left:0;bottom:-1px;width:100%;height:88px;pointer-events:none}
.twobo-problem-bottom-separator::before{content:"";position:absolute;inset:0;background:#fff;clip-path:polygon(0 58%,50% 100%,100% 58%,100% 100%,0 100%)}
.twobo-problem-bottom-separator::after{content:"";position:absolute;z-index:2;left:clamp(24px,6vw,96px);right:clamp(24px,6vw,96px);top:50px;height:1px;background:linear-gradient(90deg,var(--gold) 0,calc(50% - 20px),transparent calc(50% - 20px),transparent calc(50% + 20px),var(--gold) calc(50% + 20px),var(--gold) 100%);opacity:.95}
.twobo-problem-bottom-separator span{position:absolute;z-index:3;left:50%;top:43px;width:14px;height:14px;background:var(--gold);border:0;transform:translateX(-50%) rotate(45deg);box-shadow:0 0 0 5px rgba(255,255,255,.72)}

.twobo-problem [data-2bo-problem-reveal]{opacity:1!important;transform:none!important}
.twobo-problem.is-reveal-ready [data-2bo-problem-reveal]:not(.is-visible){opacity:0!important;transform:translateY(22px)!important}
body.elementor-editor-active .twobo-problem [data-2bo-problem-reveal],body.elementor-editor-preview .twobo-problem [data-2bo-problem-reveal]{opacity:1!important;transform:none!important}

@media(max-width:900px){
 .twobo-problem-cards{max-width:650px;grid-template-columns:1fr;gap:42px}
 .twobo-problem-story{grid-template-columns:1fr;max-width:720px}
 .twobo-problem-story-copy{padding-left:24px}
}
@media(max-width:760px){
 .twobo-problem{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;padding-top:76px;padding-bottom:120px}
 .twobo-problem-inner{padding-left:20px!important;padding-right:20px!important}
 .twobo-problem-eyebrow{font-size:11px;gap:9px}.twobo-problem-eyebrow::before,.twobo-problem-eyebrow::after{width:22px}
 .twobo-problem-h2{font-size:clamp(31px,10vw,43px)!important}
 .twobo-problem-card{padding-left:22px;padding-right:22px}
 .twobo-problem-photo-backdrop{left:-12px;top:-18px}
 .twobo-problem-story-copy{padding-left:18px}
 .twobo-problem-close{font-size:clamp(29px,9vw,39px)}
 .twobo-problem-cta-wrap,.twobo-problem-cta{width:100%!important;text-align:center}
}
@media(prefers-reduced-motion:reduce){.twobo-problem *{scroll-behavior:auto!important;transition:none!important}}
