/*!
 * Oyolloo Elements - J10 Split widget.
 * Scoped to .oo-split-sec: no element selector, no :root, nothing leaks.
 */
.oo-split-sec{
  --oos-maxw:1220px;
  --oos-pad:clamp(18px,4.5vw,44px);
  --oos-r:12px;
  --oos-yellow:#F7BE27;
  --oos-yellow-dk:#E0A812;
  --oos-red:#E3000E;
  --oos-brown:#642F21;
  --oos-ink:#212121;
  --oos-muted:#757575;
  --oos-on-dark:#F4F1E9;
  --oos-on-dark-mut:#A9A296;
  --oos-line:#2A2620;
  --oos-border:#EAEAEA;
  --oos-border-2:#D9D9D9;
  --oos-eyebrow:var(--oos-brown);
  --oos-title:var(--oos-brown);
  --oos-text:var(--oos-muted);
  --oos-stat-n:var(--oos-red);
  --oos-stat-bg:#FFFFFF;
  --oos-stat-line:var(--oos-border);
  --oos-f-display:'Oswald','Oswald Fallback','Arial Narrow',Arial,sans-serif;
  --oos-f-head:'Oswald','Oswald Fallback','Arial Narrow',Arial,sans-serif;
  --oos-f-body:'Roboto','Roboto Fallback','Segoe UI',Helvetica,Arial,sans-serif;

  position:relative;
  padding:clamp(50px,6.5vw,92px) 0;
  background:#EFF6F8; color:var(--oos-ink);
  font-family:var(--oos-f-body); font-size:16px; line-height:1.7; font-weight:400;
}
.oo-split-sec,.oo-split-sec *,.oo-split-sec *::before,.oo-split-sec *::after{ box-sizing:border-box; }

.oo-split-sec--white{ background:#FFFFFF; }
.oo-split-sec--alt{ background:#F7F7F7; }
.oo-split-sec--cool{ background:#EFF6F8; }
.oo-split-sec--alt::before,.oo-split-sec--cool::before{
  content:""; position:absolute; inset:0 0 auto 0; height:1px;
  background:linear-gradient(90deg,transparent,var(--oos-border-2),transparent);
}

/* on the dark ground the whole palette flips */
.oo-split-sec--dark{
  background:#0E0E0E; color:var(--oos-on-dark);
  --oos-eyebrow:var(--oos-yellow);
  --oos-title:#FFFFFF;
  --oos-text:var(--oos-on-dark-mut);
  --oos-stat-n:var(--oos-yellow);
  --oos-stat-bg:transparent;
  --oos-stat-line:var(--oos-line);
}
/* a faint warm glow off the top edge keeps flat black from reading dead */
.oo-split-sec--dark::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(120% 78% at 50% 0%, rgba(247,190,39,.07), transparent 62%);
}
.oo-split-sec--dark .oo-split-sec__in{ position:relative; z-index:1; }

.oo-split-sec__in{ max-width:var(--oos-maxw); margin-inline:auto; padding-inline:var(--oos-pad); }

.oo-split{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,64px); align-items:center; }
.oo-split-sec--flip .oo-split__media{ order:2; }
.oo-split-sec--flip .oo-split__copy{ order:1; }
@media (max-width:880px){
  .oo-split{ grid-template-columns:1fr; }
  /* stacked, the photo leads the section whichever side it took */
  .oo-split-sec--flip .oo-split__media{ order:1; }
  .oo-split-sec--flip .oo-split__copy{ order:2; }
}

/* Elementor's frontend stylesheet resets the radius on every img it can
   reach; naming the section as well as the image clears it. */
.oo-split-sec .oo-split__img{
  width:100%; max-width:100%; height:auto; display:block;
  border:0; border-radius:var(--oos-r);
  box-shadow:0 2px 6px rgba(33,33,33,.06), 0 14px 30px -18px rgba(33,33,33,.28);
}
/* cut-out photo: no frame, the shadow follows the subject silhouette */
.oo-split__img--cut{
  border-radius:0; box-shadow:none; background:none;
  filter:drop-shadow(0 26px 34px rgba(0,0,0,.65));
}

.oo-split__eyebrow{
  display:inline-flex; align-items:center; gap:10px; margin:0;
  font-family:var(--oos-f-head); font-weight:600; font-size:.78rem;
  letter-spacing:.22em; text-transform:uppercase; color:var(--oos-eyebrow);
}
.oo-split__eyebrow::before{ content:""; flex:none; width:22px; height:2px; background:currentColor; opacity:.5; }
.oo-split__title{
  margin:12px 0 0;
  font-family:var(--oos-f-display); font-weight:700;
  font-size:clamp(1.9rem,4vw,3.1rem); line-height:1.05;
  letter-spacing:.012em; text-transform:uppercase; color:var(--oos-title);
}
.oo-split__p{ margin:18px 0 0; color:var(--oos-text); font-size:1rem; max-width:64ch; }
.oo-split__bullet{
  display:flex; gap:11px; align-items:flex-start; margin:14px 0 0;
  color:var(--oos-text); font-size:.95rem;
}
.oo-split__bullet::before{
  content:"\25CF"; color:var(--oos-red); font-size:.55rem; line-height:1.9; flex-shrink:0;
}

.oo-split__stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:34px; }
.oo-split__stat{
  background:var(--oos-stat-bg); border:1px solid var(--oos-stat-line);
  border-radius:var(--oos-r); padding:22px 20px;
}
.oo-split__stat-n{
  font-family:var(--oos-f-display); font-weight:700; font-size:2.2rem; line-height:1;
  letter-spacing:.012em; color:var(--oos-stat-n); font-variant-numeric:tabular-nums;
}
.oo-split__stat-l{
  margin-top:9px;
  font-family:var(--oos-f-head); font-weight:500; font-size:.72rem;
  letter-spacing:.14em; text-transform:uppercase; color:var(--oos-text);
}
@media (max-width:620px){
  /* three short figures read better as one divided strip than as stacked cards */
  .oo-split__stats{
    grid-template-columns:repeat(3,1fr); gap:0; margin-top:30px;
    border:1px solid var(--oos-stat-line); border-radius:var(--oos-r); overflow:hidden;
  }
  .oo-split__stat{
    background:transparent; border:0; border-radius:0;
    border-inline-end:1px solid var(--oos-stat-line);
    padding:16px 8px; text-align:center;
  }
  .oo-split__stat:last-child{ border-inline-end:0; }
  .oo-split__stat-n{ font-size:1.55rem; }
  .oo-split__stat-l{ margin-top:7px; font-size:.55rem; letter-spacing:.08em; line-height:1.35; }
}

.oo-split__cta{ margin-top:26px; }
.oo-split__btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:14px 30px; border-radius:6px; border:2px solid transparent;
  background:var(--oos-yellow); color:#211A05; text-decoration:none;
  font-family:var(--oos-f-head); font-weight:600; font-size:.86rem;
  letter-spacing:.12em; text-transform:uppercase;
  box-shadow:0 6px 18px -9px rgba(247,190,39,.85);
  transition:background-color .2s ease, transform .12s ease;
}
.oo-split__btn:hover{ background:var(--oos-yellow-dk); color:#211A05; transform:translateY(-1px); }
.oo-split__btn:active{ transform:translateY(1px); }

.oo-split-sec :focus-visible{ outline:3px solid var(--oos-yellow); outline-offset:2px; border-radius:2px; }

.oo-js .oo-split-sec .oo-reveal{ opacity:0; transform:translateY(16px); transition:opacity .6s ease, transform .6s ease; }
.oo-js .oo-split-sec .oo-reveal.oo-is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .oo-js .oo-split-sec .oo-reveal{ opacity:1; transform:none; transition:none; } }

/* theme hardening: a theme styles bare h2/p/img, and those rules beat inheritance */
.oo-split__eyebrow,.oo-split__title,.oo-split__p,.oo-split__bullet{ margin-block-end:0; }
body.elementor-editor-active .oo-split-sec .oo-reveal{ opacity:1; transform:none; }
