/* Satbhog Elementor layer — native widgets, premium frontend styling. */
body.elementor-page .elementor { overflow:hidden; }
body.elementor-page .elementor-widget { margin:0; }
.sb-el-inner { width:var(--sb-width) !important; max-width:1240px !important; margin-inline:auto !important; }
.sb-el-section { padding:110px 0; background:var(--sb-ivory); }
.sb-el-section--tight { padding-block:78px; }
.sb-el-section--white { background:#fff; }
.sb-el-section--cream { background:#f7f2e7; }
.sb-el-section--dark { background:#0B0B0D; color:#fff; }
.sb-el-section--dark .elementor-heading-title,
.sb-el-section--dark .elementor-widget-text-editor { color:#fff; }

.sb-el-eyebrow .elementor-heading-title {
  display:flex; align-items:center; gap:10px; margin:0 0 14px;
  color:var(--sb-gold); font:800 12px/1.4 "Manrope",sans-serif;
  letter-spacing:.18em; text-transform:uppercase;
}
.sb-el-eyebrow .elementor-heading-title::before { content:""; width:28px; height:1px; flex:0 0 28px; background:currentColor; }
.sb-el-display .elementor-heading-title {
  margin:0; color:inherit; font:700 clamp(52px,7vw,100px)/.94 "PT Serif",Georgia,serif;
  letter-spacing:-.052em;
}
.sb-el-section-title .elementor-heading-title {
  margin:0; color:inherit; font:700 clamp(40px,4.5vw,66px)/1 "PT Serif",Georgia,serif;
  letter-spacing:-.035em;
}
.sb-el-lead { max-width:760px; }
.sb-el-lead .elementor-widget-container,
.sb-el-copy .elementor-widget-container { color:var(--sb-muted); font-size:17px; line-height:1.78; }
.sb-el-lead,.sb-el-copy { color:var(--sb-muted); font-size:17px; line-height:1.78; }
.sb-el-lead p,.sb-el-copy p { margin:18px 0 0; }
.sb-el-section--dark .sb-el-lead .elementor-widget-container,
.sb-el-section--dark .sb-el-copy .elementor-widget-container { color:rgba(255,255,255,.74); }
.sb-el-section--dark .sb-el-lead,.sb-el-section--dark .sb-el-copy { color:rgba(255,255,255,.74); }

.sb-el-logo-badge { width:172px !important; height:172px; margin:0 0 6px; }
.sb-el-logo-badge .elementor-widget-container {
  width:172px; height:172px; overflow:hidden; border-radius:50%; background:#fff;
  border:1px solid rgba(200,169,81,.55); box-shadow:0 18px 45px rgba(10,35,27,.18);
}
.sb-el-logo-badge img { width:358px !important; max-width:none !important; transform:translate(-93px,-113px); }

/* Elementor's optimized DOM may omit .elementor-widget-container. Clip the
   oversized source artwork on the widget itself so the circular badge stays crisp. */
.sb-el-logo-badge {
  overflow:hidden !important;
  border-radius:50% !important;
  background:#fff;
  border:5px solid rgba(255,255,255,.92);
  box-shadow:0 18px 46px rgba(0,0,0,.32);
}

.sb-el-button { width:max-content !important; }
.sb-el-button .elementor-button {
  position:relative; overflow:hidden; min-height:52px; display:inline-flex; align-items:center; justify-content:center;
  padding:0 24px; border:1px solid transparent; border-radius:999px; font:800 14px/1 "Manrope",sans-serif;
  transition:transform .35s cubic-bezier(.22,1,.36,1), box-shadow .3s ease, background .25s ease, color .25s ease;
}
.sb-el-button .elementor-button:hover { transform:translateY(-3px); box-shadow:0 14px 30px rgba(20,57,47,.17); }
.sb-el-button--gold .elementor-button { background:var(--sb-red); color:#fff; }
.sb-el-button--green .elementor-button { background:var(--sb-green); color:#fff; }
.sb-el-button--outline .elementor-button { background:transparent; color:#fff; border-color:rgba(255,255,255,.4); }
.sb-el-button--link .elementor-button { min-height:0; padding:12px 0; border-radius:0; color:var(--sb-green); background:transparent; }
.sb-el-button-row { display:flex !important; flex-direction:row !important; flex-wrap:wrap; gap:12px; margin-top:28px; }

/* Hero */
.sb-el-hero {
  min-height:100svh; position:relative; justify-content:flex-end; overflow:hidden; padding:150px 0 72px;
  color:#fff; background-color:var(--sb-green-deep); background-image:url('../images/hero-paddy-field.webp');
  background-size:cover; background-position:calc(50% + var(--sb-hero-x,0px)) calc(50% + var(--sb-hero-y,0px) + var(--sb-hero-scroll,0px));
  animation:sbElHeroBreath 14s ease-in-out infinite alternate;
}
.sb-el-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(12,42,33,.94),rgba(12,42,33,.63) 52%,rgba(12,42,33,.27)); pointer-events:none; }
.sb-el-hero::after { content:""; position:absolute; inset:auto 0 0; height:230px; background:linear-gradient(transparent,rgba(10,36,29,.45)); pointer-events:none; }
.sb-el-hero > .sb-el-inner { position:relative; z-index:2; }
.sb-el-hero-grid { display:grid !important; grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr); gap:56px; align-items:end; }
.sb-el-hero-copy { gap:0; }
.sb-el-hero-copy .sb-el-lead { max-width:660px; }
.sb-el-hero-copy .sb-el-lead .elementor-widget-container { color:rgba(255,255,255,.8); font-size:18px; }
.sb-el-hero-copy .sb-el-lead { color:rgba(255,255,255,.8); font-size:18px; }
.sb-el-badges { flex-wrap:wrap !important; gap:10px; margin-top:26px; }
.sb-el-pill { width:auto !important; }
.sb-el-pill .elementor-widget-container { padding:9px 13px; border:1px solid rgba(255,255,255,.18); border-radius:999px; background:rgba(255,255,255,.1); color:#fff; font-size:11px; font-weight:800; backdrop-filter:blur(10px); }
.sb-el-pill { padding:9px 13px; border:1px solid rgba(255,255,255,.18); border-radius:999px; background:rgba(255,255,255,.1); color:#fff; font-size:11px; font-weight:800; backdrop-filter:blur(10px); }
.sb-el-pill p { margin:0; }
.sb-el-hero-card { padding:28px; border:1px solid rgba(255,255,255,.18); border-radius:28px; background:rgba(255,255,255,.1); backdrop-filter:blur(18px); box-shadow:var(--sb-shadow); gap:12px; transition:transform .45s cubic-bezier(.22,1,.36,1), border-color .3s ease; }
.sb-el-hero-card:hover { transform:translateY(-7px); border-color:rgba(200,169,81,.48); }
.sb-el-hero-card::before { content:""; position:absolute; inset:-70% -35%; z-index:-1; background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.12) 50%,transparent 60%); transform:translateX(-52%) rotate(8deg); animation:sbElHeroSheen 7s ease-in-out 1.8s infinite; pointer-events:none; }
.sb-el-card-heading .elementor-heading-title { margin:0; color:#fff; font:700 30px/1.07 "PT Serif",Georgia,serif; }
.sb-el-hero-card .sb-el-copy .elementor-widget-container { color:rgba(255,255,255,.75); font-size:14px; }
.sb-el-hero-card .sb-el-copy { color:rgba(255,255,255,.75); font-size:14px; }
.sb-el-market-grid { display:grid !important; grid-template-columns:1fr 1fr; gap:10px; }
.sb-el-market-card { position:relative; min-height:170px; justify-content:flex-end; overflow:hidden; padding:15px; border:1px solid rgba(255,255,255,.13); border-radius:18px; isolation:isolate; }
.sb-el-market-card::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(transparent 25%,rgba(10,36,29,.88)); }
.sb-el-market-card .elementor-widget-image { position:absolute; inset:0; z-index:-2; height:100%; }
.sb-el-market-card .elementor-widget-image .elementor-widget-container,.sb-el-market-card img { width:100%; height:100%; object-fit:cover; }
.sb-el-market-kicker .elementor-heading-title { color:rgba(255,255,255,.6); font:700 10px/1.2 "Manrope",sans-serif; letter-spacing:.12em; }
.sb-el-market-title .elementor-heading-title { color:#fff; font:800 13px/1.3 "Manrope",sans-serif; }
.sb-el-check-list ul { list-style:none; padding:0; margin:0; display:grid; gap:9px; }
.sb-el-check-list li { position:relative; padding-left:18px; color:rgba(255,255,255,.82); font-size:13px; }
.sb-el-check-list li::before { content:""; position:absolute; left:0; top:.65em; width:7px; height:7px; border-radius:50%; background:var(--sb-gold); box-shadow:0 0 0 4px rgba(200,169,81,.14); }

/* Shared sections and cards */
.sb-el-page-hero { padding:180px 0 92px; background:linear-gradient(180deg,#fff,#f1f1f1); }
.sb-el-page-hero .sb-el-display .elementor-heading-title { color:var(--sb-ink); font-size:clamp(48px,6vw,82px); }
.sb-el-trust-section { position:relative; z-index:4; margin-top:-42px; }
.sb-el-trust-section .sb-el-inner { padding-bottom:44px; }
.sb-el-card-grid { display:grid !important; gap:20px; width:100%; margin-top:40px; }
.sb-el-card-grid.sb-el-cols-1 { grid-template-columns:1fr; }
.sb-el-card-grid.sb-el-cols-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sb-el-card-grid.sb-el-cols-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.sb-el-card-grid.sb-el-cols-5 { grid-template-columns:repeat(5,minmax(0,1fr)); }
.sb-el-card { min-width:0; position:relative; isolation:isolate; overflow:hidden; padding:28px; border:1px solid rgba(30,77,64,.09); border-radius:24px; background:linear-gradient(180deg,#fff,#fbf9f4); box-shadow:0 18px 45px rgba(20,57,47,.07); transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .35s ease,border-color .35s ease; }
.sb-el-card::after { content:""; position:absolute; inset:-100% -45%; z-index:-1; background:linear-gradient(110deg,transparent 42%,rgba(200,169,81,.13) 50%,transparent 58%); transform:translateX(-58%) rotate(8deg); transition:transform .9s cubic-bezier(.22,1,.36,1); pointer-events:none; }
.sb-el-card:hover::after { transform:translateX(62%) rotate(8deg); }
.sb-el-card:hover { transform:translateY(-7px); box-shadow:0 26px 56px rgba(20,57,47,.12); border-color:rgba(200,169,81,.3); }
.sb-el-card-kicker .elementor-heading-title { color:var(--sb-gold); font:900 10px/1.4 "Manrope",sans-serif; letter-spacing:.14em; text-transform:uppercase; }
.sb-el-card-title .elementor-heading-title { margin:7px 0 0; color:var(--sb-green); font:700 28px/1.12 "PT Serif",Georgia,serif; }
.sb-el-card-copy .elementor-widget-container { color:var(--sb-muted); font-size:14px; line-height:1.65; }
.sb-el-card-copy { color:var(--sb-muted); font-size:14px; line-height:1.65; }
.sb-el-card-copy p { margin:8px 0 0; }
.sb-el-trust-grid { margin-top:0; }
.sb-el-trust-grid .sb-el-card { padding:22px 20px; background:rgba(255,255,255,.92); backdrop-filter:blur(16px); }
.sb-el-trust-grid .sb-el-card-title .elementor-heading-title { font-size:23px; }
.sb-el-split { display:grid !important; grid-template-columns:1fr 1fr; gap:76px; align-items:center; }
.sb-el-split-copy { gap:4px; }
.sb-el-split-media { min-width:0; }
.sb-el-rounded-image img { width:100%; min-height:520px; object-fit:cover; border-radius:28px; box-shadow:var(--sb-shadow); }
.sb-el-collage { min-height:590px; position:relative; }
.sb-el-collage .elementor-widget-image { position:absolute; overflow:hidden; border-radius:28px; box-shadow:var(--sb-shadow); }
.sb-el-collage .elementor-widget-image img { width:100%; height:100%; object-fit:cover; }
.sb-el-collage-main { inset:0 100px 100px 0; }
.sb-el-collage-small { width:245px !important; height:185px; border:8px solid var(--sb-ivory); }
.sb-el-collage-small-one { right:0; top:75px; }
.sb-el-collage-small-two { right:25px; bottom:0; }
.sb-el-collage-small-one,.sb-el-collage-small-two { transform:translate3d(0,var(--sb-collage-shift,0px),0); transition:transform .8s cubic-bezier(.22,1,.36,1); }
.sb-el-floating-note { position:absolute; left:24px; bottom:24px; width:auto !important; }
.sb-el-floating-note .elementor-widget-container { padding:11px 15px; border-radius:999px; color:#fff; background:rgba(20,57,47,.92); font-size:11px; font-weight:800; box-shadow:0 18px 30px rgba(16,47,39,.22); }
.sb-el-floating-note { padding:11px 15px; border-radius:999px; color:#fff; background:rgba(20,57,47,.92); font-size:11px; font-weight:800; box-shadow:0 18px 30px rgba(16,47,39,.22); }
.sb-el-floating-note p { margin:0; }

.sb-el-stats { gap:0; border-block:1px solid var(--sb-line); }
.sb-el-stats .sb-el-card { padding:30px 20px; border:0; border-right:1px solid var(--sb-line); border-radius:0; box-shadow:none; background:transparent; }
.sb-el-stats .sb-el-card:last-child { border-right:0; }
.sb-el-stats .sb-el-card:hover { transform:none; box-shadow:none; }
.sb-el-stat .sb-el-card-title .elementor-heading-title { font-size:43px; }
.sb-el-stat .sb-el-card-copy .elementor-widget-container { font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.sb-el-stat .sb-el-card-copy { font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.sb-el-products-track { display:flex !important; flex-direction:row !important; gap:20px; overflow-x:auto; padding:6px 2px 28px; scroll-snap-type:x mandatory; scrollbar-color:var(--sb-gold) transparent; }
.sb-el-product-card { flex:0 0 min(72vw,430px); position:relative; overflow:hidden; scroll-snap-align:start; border:1px solid rgba(30,77,64,.09); border-radius:28px; background:#fff; box-shadow:0 18px 45px rgba(20,57,47,.08); padding:0 0 26px; transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .4s ease; }
.sb-el-product-card:hover { transform:translateY(-8px); box-shadow:0 28px 58px rgba(20,57,47,.15); }
.sb-el-product-card > .elementor-widget:not(.sb-el-product-image) { margin-inline:26px; }
.sb-el-product-image img { width:100%; height:330px; object-fit:cover; transition:transform .7s cubic-bezier(.22,1,.36,1); }
.sb-el-product-card:hover .sb-el-product-image img { transform:scale(1.045); }
.sb-el-product-meta .elementor-widget-container { display:inline-flex; padding:7px 11px; border-radius:999px; background:rgba(30,77,64,.07); color:var(--sb-green); font-size:10px; font-weight:800; }
.sb-el-product-meta { display:inline-flex; width:auto !important; padding:7px 11px; border-radius:999px; background:rgba(30,77,64,.07); color:var(--sb-green); font-size:10px; font-weight:800; }
.sb-el-product-meta p { margin:0; }
.sb-el-dark-cards { margin-top:0; }
.sb-el-dark-cards .sb-el-card { padding:24px; border-color:rgba(255,255,255,.15); background:rgba(255,255,255,.07); box-shadow:none; }
.sb-el-dark-cards .elementor-heading-title { color:#fff; }
.sb-el-process { align-items:start; }
.sb-el-process > .sb-el-split-copy { position:sticky; top:120px; }
.sb-el-process-list { margin-top:0; gap:0; border-left:1px solid rgba(200,169,81,.45); }
.sb-el-process-list .sb-el-card { position:relative; padding:8px 0 34px 42px; border:0; border-radius:0; box-shadow:none; background:transparent; }
.sb-el-process-list .sb-el-card::before { content:""; position:absolute; left:-7px; top:17px; width:13px; height:13px; border-radius:50%; background:var(--sb-green); border:3px solid #f7f2e7; }
.sb-el-process-list .sb-el-card:hover { transform:translateX(6px); box-shadow:none; }
.sb-el-cta { position:relative; overflow:hidden; padding:70px; border-radius:36px; color:#fff; background:linear-gradient(135deg,#09090b 0%,#250005 62%,var(--sb-red) 145%); }
.sb-el-cta::after { content:""; position:absolute; right:-120px; top:-210px; width:420px; height:420px; border:1px solid rgba(200,169,81,.22); border-radius:50%; box-shadow:0 0 0 70px rgba(200,169,81,.04),0 0 0 140px rgba(200,169,81,.025); pointer-events:none; }
.sb-el-cta > * { position:relative; z-index:1; }
.sb-el-cta .elementor-heading-title { color:#fff; }
.sb-el-contact-grid { display:grid !important; grid-template-columns:.85fr 1.15fr; gap:54px; align-items:stretch; }
.sb-el-contact-card { padding:36px; border-radius:28px; color:#fff; background:var(--sb-green); }
.sb-el-contact-card .elementor-heading-title,.sb-el-contact-card a { color:#fff; }
.sb-el-contact-card .sb-el-copy .elementor-widget-container { color:rgba(255,255,255,.78); }
.sb-el-contact-card .sb-el-copy { color:rgba(255,255,255,.78); }
.sb-el-map,.sb-el-map .elementor-widget-container,.sb-el-map iframe { min-height:520px; height:100%; border-radius:28px; overflow:hidden; }
.sb-el-quote-form .sb-form { max-width:900px; }

/* Cinematic entrance motion applied by the theme script. */
.sb-motion-ready .sb-el-reveal { opacity:0; filter:blur(7px); transform:translate3d(0,44px,0) scale(.985); will-change:opacity,transform,filter; transition:opacity .95s cubic-bezier(.22,1,.36,1) var(--sb-delay,0ms),transform .95s cubic-bezier(.22,1,.36,1) var(--sb-delay,0ms),filter .75s ease var(--sb-delay,0ms); }
.sb-motion-ready .sb-el-reveal--left { transform:translate3d(-56px,18px,0) rotate(-1deg); }
.sb-motion-ready .sb-el-reveal--right { transform:translate3d(56px,18px,0) rotate(1deg); }
.sb-motion-ready .sb-el-reveal--zoom { transform:translate3d(0,34px,0) scale(.94); }
.sb-motion-ready .sb-el-reveal.is-visible { opacity:1; filter:none; transform:none; will-change:auto; }
.sb-motion-ready .sb-el-split-media.sb-el-reveal { clip-path:inset(8% 5% 8% 5% round 32px); }
.sb-motion-ready .sb-el-split-media.sb-el-reveal.is-visible { clip-path:inset(0 round 28px); transition:opacity 1s ease var(--sb-delay,0ms),transform 1.05s cubic-bezier(.22,1,.36,1) var(--sb-delay,0ms),filter .8s ease var(--sb-delay,0ms),clip-path 1.15s cubic-bezier(.22,1,.36,1) var(--sb-delay,0ms); }

.sb-motion-ready .sb-el-hero-item { opacity:0; filter:blur(10px); transform:translate3d(0,42px,0); }
.sb-motion-ready body.sb-page-ready .sb-el-hero-item { animation:sbElHeroItemIn 1s cubic-bezier(.16,1,.3,1) var(--sb-hero-delay,0ms) both; }
.sb-motion-ready .sb-el-hero-panel { opacity:0; filter:blur(10px); transform:translate3d(58px,20px,0) scale(.96) rotateY(-4deg); transform-origin:right center; }
.sb-motion-ready body.sb-page-ready .sb-el-hero-panel { animation:sbElHeroPanelIn 1.15s cubic-bezier(.16,1,.3,1) var(--sb-hero-delay,350ms) both; }
.sb-el-eyebrow.sb-el-reveal.is-visible .elementor-heading-title::before,
.sb-el-hero-item.sb-el-eyebrow .elementor-heading-title::before { animation:sbElLineDraw .9s cubic-bezier(.22,1,.36,1) calc(var(--sb-delay,0ms) + 180ms) both; transform-origin:left; }
.sb-el-process-list .sb-el-card.sb-el-reveal.is-visible::before { animation:sbElProcessDot 1.1s cubic-bezier(.22,1,.36,1) var(--sb-delay,0ms) both; }
.sb-el-stat .sb-el-card-title .elementor-heading-title.is-counted { animation:sbElCounterPop .62s cubic-bezier(.16,1,.3,1) both; }

@keyframes sbElHeroItemIn { from { opacity:0; filter:blur(10px); transform:translate3d(0,42px,0); } to { opacity:1; filter:none; transform:none; } }
@keyframes sbElHeroPanelIn { from { opacity:0; filter:blur(10px); transform:translate3d(58px,20px,0) scale(.96) rotateY(-4deg); } to { opacity:1; filter:none; transform:none; } }
@keyframes sbElHeroBreath { from { background-position:calc(50% + var(--sb-hero-x,0px)) calc(50% + var(--sb-hero-y,0px) + var(--sb-hero-scroll,0px) - 5px); } to { background-position:calc(50% + var(--sb-hero-x,0px)) calc(50% + var(--sb-hero-y,0px) + var(--sb-hero-scroll,0px) + 5px); } }
@keyframes sbElHeroSheen { 0%,24% { transform:translateX(-52%) rotate(8deg); } 62%,100% { transform:translateX(58%) rotate(8deg); } }
@keyframes sbElLineDraw { from { transform:scaleX(.08); opacity:.25; } to { transform:scaleX(1); opacity:1; } }
@keyframes sbElProcessDot { 0% { transform:scale(.35); box-shadow:0 0 0 0 rgba(200,169,81,.4); } 55% { transform:scale(1.18); box-shadow:0 0 0 12px rgba(200,169,81,0); } 100% { transform:scale(1); } }
@keyframes sbElCounterPop { 0% { transform:translateY(8px) scale(.82); opacity:.35; } 65% { transform:translateY(-2px) scale(1.07); opacity:1; } 100% { transform:none; opacity:1; } }

@media (max-width:980px) {
  .sb-el-section { padding-block:88px; }
  .sb-el-hero-grid,.sb-el-split,.sb-el-contact-grid { grid-template-columns:1fr; }
  .sb-el-hero { min-height:auto; padding-top:140px; }
  .sb-el-card-grid.sb-el-cols-3,.sb-el-card-grid.sb-el-cols-4,.sb-el-card-grid.sb-el-cols-5 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sb-el-process > .sb-el-split-copy { position:relative; top:auto; }
  .sb-el-collage { min-height:520px; }
}

@media (max-width:640px) {
  .sb-el-section { padding-block:74px; }
  .sb-el-page-hero { padding:142px 0 68px; }
  .sb-el-display .elementor-heading-title { font-size:clamp(48px,15.5vw,68px); }
  .sb-el-page-hero .sb-el-display .elementor-heading-title { font-size:clamp(44px,13vw,62px); }
  .sb-el-section-title .elementor-heading-title { font-size:clamp(36px,11vw,50px); }
  .sb-el-card-grid.sb-el-cols-3,.sb-el-card-grid.sb-el-cols-4,.sb-el-card-grid.sb-el-cols-5 { grid-template-columns:1fr; }
  .sb-el-market-grid { grid-template-columns:1fr; }
  .sb-el-hero-card { padding:24px; }
  .sb-el-collage { min-height:420px; }
  .sb-el-collage-main { inset:0 42px 80px 0; }
  .sb-el-collage-small { width:150px !important; height:118px; border-width:5px; }
  .sb-el-collage-small-one { top:44px; }
  .sb-el-collage-small-two { right:5px; }
  .sb-el-product-card { flex-basis:86vw; }
  .sb-el-product-image img { height:285px; }
  .sb-el-cta { padding:38px 25px; border-radius:26px; }
  .sb-el-stats .sb-el-card { border-right:0; border-bottom:1px solid var(--sb-line); }
  .sb-el-stats .sb-el-card:last-child { border-bottom:0; }
  .sb-el-map,.sb-el-map .elementor-widget-container,.sb-el-map iframe { min-height:390px; }
}

@media (prefers-reduced-motion:reduce) {
  .sb-el-reveal,.sb-el-hero-item,.sb-el-hero-panel { opacity:1 !important; filter:none !important; transform:none !important; clip-path:none !important; animation:none !important; }
  .sb-el-hero,.sb-el-hero-card::before,.sb-el-card,.sb-el-button .elementor-button,.sb-el-product-image img,.sb-el-collage-small-one,.sb-el-collage-small-two { animation:none !important; transition:none !important; transform:none !important; }
}

/* Satbhog 1.1 — production polish across every Elementor section. */
body.elementor-page .elementor { background:#f7f7f8; }
.sb-el-inner { max-width:1280px !important; }
.sb-el-section { padding:104px 0; }
.sb-el-section--tight { padding-block:76px; }
.sb-el-section--cream { background:#f1f1f3; }
.sb-el-section--white { background:#fff; }

.sb-el-eyebrow .elementor-heading-title { margin-bottom:18px; color:#d60016; font-size:11px; letter-spacing:.2em; }
.sb-el-eyebrow .elementor-heading-title::before { width:34px; flex-basis:34px; height:2px; }
.sb-el-section-title .elementor-heading-title {
  max-width:940px; color:#0b0b0d;
  font:800 clamp(40px,4.25vw,64px)/1.03 "Manrope",sans-serif;
  letter-spacing:-.045em;
}
.sb-el-lead .elementor-widget-container,.sb-el-copy .elementor-widget-container,
.sb-el-lead,.sb-el-copy { color:#626269; font-size:16px; line-height:1.82; }

/* Hero: darker, cleaner and brand-led while retaining the rice-field image. */
.sb-el-hero {
  min-height:920px; padding:168px 0 82px;
  background-color:#08080a;
  background-position:calc(50% + var(--sb-hero-x,0px)) calc(48% + var(--sb-hero-y,0px) + var(--sb-hero-scroll,0px));
}
.sb-el-hero::before {
  background:
    linear-gradient(90deg,rgba(4,4,6,.95) 0%,rgba(4,4,6,.79) 44%,rgba(4,4,6,.43) 100%),
    linear-gradient(135deg,rgba(214,0,22,.24),transparent 44%);
}
.sb-el-hero::after { height:260px; background:linear-gradient(transparent,rgba(4,4,6,.88)); }
.sb-el-hero-grid { grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr); gap:74px; align-items:center; }
.sb-el-display .elementor-heading-title {
  max-width:800px; font-size:clamp(64px,6.9vw,108px); line-height:.9; letter-spacing:-.06em;
  text-wrap:balance;
}
.sb-el-hero-copy .sb-el-lead { max-width:690px; }
.sb-el-hero-copy .sb-el-lead .elementor-widget-container,.sb-el-hero-copy .sb-el-lead { color:rgba(255,255,255,.76); font-size:17px; }
.sb-el-button-row { gap:14px; margin-top:32px; }
.sb-el-button .elementor-button { min-height:54px; padding:0 27px; border-radius:12px; font-size:13px; }
.sb-el-button--gold .elementor-button,.sb-el-button--green .elementor-button { background:#d60016; }
.sb-el-button--gold .elementor-button:hover,.sb-el-button--green .elementor-button:hover { background:#b80013; }
.sb-el-button--outline .elementor-button { background:rgba(255,255,255,.035); border-color:rgba(255,255,255,.4); }
.sb-el-badges { gap:8px; margin-top:30px; }
.sb-el-pill .elementor-widget-container,.sb-el-pill { padding:8px 12px; background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.15); font-size:10px; letter-spacing:.035em; }
.sb-el-hero-card {
  gap:13px; padding:32px; border:1px solid rgba(255,255,255,.16); border-radius:24px;
  background:linear-gradient(160deg,rgba(255,255,255,.13),rgba(255,255,255,.055));
  box-shadow:0 34px 90px rgba(0,0,0,.32); backdrop-filter:blur(22px);
}
.sb-el-hero-card:hover { transform:translateY(-5px); border-color:rgba(214,0,22,.52); }
.sb-el-logo-badge { width:128px !important; height:128px; position:absolute; right:26px; top:-54px; z-index:3; }
.sb-el-logo-badge .elementor-widget-container { width:128px; height:128px; border:5px solid rgba(255,255,255,.92); box-shadow:0 18px 46px rgba(0,0,0,.32); }
.sb-el-logo-badge img { width:267px !important; transform:translate(-69px,-84px); }
.sb-el-card-heading .elementor-heading-title { max-width:310px; font:800 28px/1.08 "Manrope",sans-serif; letter-spacing:-.035em; }
.sb-el-market-grid { gap:12px; }
.sb-el-market-card { min-height:186px; padding:17px; border-radius:16px; }
.sb-el-market-card::after { background:linear-gradient(180deg,transparent 20%,rgba(5,5,7,.93)); }
.sb-el-market-kicker .elementor-heading-title { color:#ff5a6a; }
.sb-el-market-title .elementor-heading-title { font-size:13px; }
.sb-el-check-list li { color:rgba(255,255,255,.78); font-size:12px; }
.sb-el-check-list li::before { background:#d60016; box-shadow:0 0 0 4px rgba(214,0,22,.17); }

/* Trust band and page heroes. */
.sb-el-trust-section { margin-top:-34px; }
.sb-el-trust-section .sb-el-inner { padding-bottom:54px; }
.sb-el-trust-grid { overflow:hidden; border:1px solid rgba(11,11,13,.08); border-radius:20px; background:#fff; box-shadow:0 22px 54px rgba(0,0,0,.09); }
.sb-el-trust-grid .sb-el-card { min-height:116px; padding:24px 23px; border:0; border-right:1px solid rgba(11,11,13,.08); border-radius:0; background:#fff; box-shadow:none; }
.sb-el-trust-grid .sb-el-card:last-child { border-right:0; }
.sb-el-trust-grid .sb-el-card:hover { transform:none; background:#fbfbfc; box-shadow:none; }
.sb-el-trust-grid .sb-el-card-title .elementor-heading-title { color:#0b0b0d; font:800 20px/1.2 "Manrope",sans-serif; letter-spacing:-.025em; }
.sb-el-page-hero { padding:188px 0 102px; background:linear-gradient(145deg,#fff 0%,#f4f4f5 68%,#ececef 100%); border-bottom:1px solid rgba(11,11,13,.08); }
.sb-el-page-hero::after { content:""; position:absolute; right:-10vw; bottom:-42%; width:42vw; height:42vw; border-radius:50%; border:1px solid rgba(214,0,22,.12); box-shadow:0 0 0 90px rgba(214,0,22,.025),0 0 0 180px rgba(214,0,22,.018); pointer-events:none; }
.sb-el-page-hero .sb-el-display .elementor-heading-title { max-width:960px; color:#0b0b0d; font-family:"Manrope",sans-serif; font-weight:800; font-size:clamp(48px,5.7vw,84px); line-height:.98; letter-spacing:-.055em; }

/* Image storytelling. */
.sb-el-split { gap:88px; }
.sb-el-rounded-image img { min-height:540px; border-radius:22px; box-shadow:0 28px 68px rgba(0,0,0,.14); }
.sb-el-collage { min-height:620px; }
.sb-el-collage .elementor-widget-image { border-radius:22px; box-shadow:0 28px 68px rgba(0,0,0,.14); }
.sb-el-collage-main { inset:0 116px 92px 0; }
.sb-el-collage-small { width:260px !important; height:192px; border:7px solid #f7f7f8; }
.sb-el-floating-note .elementor-widget-container,.sb-el-floating-note { padding:12px 17px; background:#0b0b0d; border:1px solid rgba(255,255,255,.1); box-shadow:0 16px 36px rgba(0,0,0,.2); }

/* Cards and market grids. */
.sb-el-card-grid { gap:18px; margin-top:42px; }
.sb-el-card {
  min-height:100%; padding:30px; border:1px solid rgba(11,11,13,.085); border-radius:20px;
  background:#fff; box-shadow:0 16px 44px rgba(0,0,0,.055);
}
.sb-el-card::after { background:linear-gradient(110deg,transparent 42%,rgba(214,0,22,.065) 50%,transparent 58%); }
.sb-el-card:hover { transform:translateY(-5px); border-color:rgba(214,0,22,.24); box-shadow:0 24px 54px rgba(0,0,0,.105); }
.sb-el-card-kicker .elementor-heading-title { color:#d60016; font-size:10px; }
.sb-el-card-title .elementor-heading-title { color:#111114; font:800 25px/1.16 "Manrope",sans-serif; letter-spacing:-.035em; }
.sb-el-card-copy .elementor-widget-container,.sb-el-card-copy { color:#6a6a70; font-size:14px; line-height:1.7; }
.sb-el-market-grid + .sb-el-check-list { margin-top:4px; }

/* Metrics become a confident black/red editorial band. */
.sb-el-stats { gap:0; overflow:hidden; margin-top:38px; border:0; border-radius:20px; background:#0b0b0d; }
.sb-el-stats .sb-el-card { min-height:154px; justify-content:center; padding:30px 24px; border:0; border-right:1px solid rgba(255,255,255,.13); background:transparent; }
.sb-el-stats .sb-el-card:last-child { border-right:0; }
.sb-el-stat .sb-el-card-title .elementor-heading-title { color:#fff; font:800 42px/1 "Manrope",sans-serif; letter-spacing:-.055em; }
.sb-el-stat .sb-el-card-copy .elementor-widget-container,.sb-el-stat .sb-el-card-copy { color:rgba(255,255,255,.58); }
.sb-el-stats .sb-el-card:nth-child(2) .sb-el-card-title .elementor-heading-title { color:#ff3449; }

/* Product runway inspired by premium packaged-food catalogues. */
.sb-el-products-track { gap:22px; margin-top:42px; padding:4px 2px 30px; scrollbar-width:thin; scrollbar-color:#d60016 transparent; }
.sb-el-product-card { flex-basis:min(67vw,408px); border-color:rgba(11,11,13,.09); border-radius:22px; box-shadow:0 18px 46px rgba(0,0,0,.08); }
.sb-el-product-card:hover { transform:translateY(-6px); box-shadow:0 26px 60px rgba(0,0,0,.14); }
.sb-el-product-image { position:relative; overflow:hidden; }
.sb-el-product-image::after { content:""; position:absolute; inset:auto 0 0; height:38%; background:linear-gradient(transparent,rgba(0,0,0,.42)); pointer-events:none; }
.sb-el-product-image img { height:320px; }
.sb-el-product-card > .elementor-widget:not(.sb-el-product-image) { margin-inline:24px; }
.sb-el-product-meta .elementor-widget-container,.sb-el-product-meta { background:rgba(214,0,22,.08); color:#b80013; }

/* Dark legacy block and process timeline. */
.sb-el-section--dark { background:linear-gradient(145deg,#070709,#17171b); }
.sb-el-section--dark .sb-el-section-title .elementor-heading-title { color:#fff; }
.sb-el-dark-cards .sb-el-card { border-color:rgba(255,255,255,.11); border-left:3px solid #d60016; border-radius:16px; background:rgba(255,255,255,.055); }
.sb-el-dark-cards .sb-el-card:hover { border-color:rgba(214,0,22,.52); background:rgba(255,255,255,.075); }
.sb-el-process > .sb-el-split-copy { top:110px; }
.sb-el-process-list { border-left:2px solid rgba(214,0,22,.28); }
.sb-el-process-list .sb-el-card { min-height:0; padding:7px 0 36px 46px; }
.sb-el-process-list .sb-el-card::before { left:-8px; width:14px; height:14px; background:#d60016; border-color:#f1f1f3; }
.sb-el-process-list .sb-el-card-title .elementor-heading-title { font-size:23px; }

/* CTA and contact surfaces. */
.sb-el-cta { padding:76px; border-radius:26px; background:linear-gradient(125deg,#08080a 0%,#151518 64%,#5d000b 100%); box-shadow:0 30px 80px rgba(0,0,0,.17); }
.sb-el-cta::after { border-color:rgba(255,52,73,.3); box-shadow:0 0 0 70px rgba(214,0,22,.05),0 0 0 140px rgba(214,0,22,.03); }
.sb-el-contact-card { border-radius:22px; background:linear-gradient(145deg,#d60016,#a90012); box-shadow:0 24px 58px rgba(214,0,22,.22); }
.sb-el-map,.sb-el-map .elementor-widget-container,.sb-el-map iframe { border-radius:22px; }

/* Keep motion restrained and polished. */
.sb-motion-ready .sb-el-reveal { filter:blur(3px); transform:translate3d(0,30px,0); transition-duration:.76s; }
.sb-motion-ready .sb-el-reveal--left { transform:translate3d(-34px,10px,0); }
.sb-motion-ready .sb-el-reveal--right { transform:translate3d(34px,10px,0); }
.sb-motion-ready .sb-el-reveal--zoom { transform:translate3d(0,22px,0) scale(.975); }
.sb-el-hero-card::before { animation:none; }

@media (max-width:1100px) {
  .sb-el-hero-grid { gap:40px; }
  .sb-el-hero-card { padding:26px; }
  .sb-el-logo-badge { width:104px !important; height:104px; right:22px; top:-38px; }
  .sb-el-logo-badge .elementor-widget-container { width:104px; height:104px; }
  .sb-el-logo-badge img { width:217px !important; transform:translate(-56px,-68px); }
  .sb-el-split { gap:58px; }
}

@media (max-width:980px) {
  .sb-el-section { padding-block:86px; }
  .sb-el-hero { min-height:auto; padding:150px 0 82px; }
  .sb-el-hero-grid { grid-template-columns:1fr; gap:72px; }
  .sb-el-display .elementor-heading-title { max-width:760px; font-size:clamp(58px,10vw,92px); }
  .sb-el-hero-card { width:min(100%,680px); margin-inline:0 auto; }
  .sb-el-trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .sb-el-trust-grid .sb-el-card:nth-child(2) { border-right:0; }
  .sb-el-trust-grid .sb-el-card:nth-child(-n+2) { border-bottom:1px solid rgba(11,11,13,.08); }
  .sb-el-card-grid.sb-el-cols-5 { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .sb-el-stats { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  .sb-el-stats .sb-el-card:nth-child(3) { border-right:0; }
  .sb-el-stats .sb-el-card:nth-child(-n+3) { border-bottom:1px solid rgba(255,255,255,.13); }
  .sb-el-collage { min-height:540px; }
}

@media (max-width:640px) {
  .sb-el-section { padding-block:70px; }
  .sb-el-section--tight { padding-block:64px; }
  .sb-el-hero { padding:126px 0 64px; background-position:60% center; }
  .sb-el-hero::before { background:linear-gradient(180deg,rgba(4,4,6,.87),rgba(4,4,6,.78)); }
  .sb-el-display .elementor-heading-title { font-size:clamp(48px,15vw,66px); line-height:.93; }
  .sb-el-hero-copy .sb-el-lead .elementor-widget-container,.sb-el-hero-copy .sb-el-lead { font-size:15px; line-height:1.72; }
  .sb-el-button-row { display:grid !important; grid-template-columns:1fr; width:100%; }
  .sb-el-button { width:100% !important; }
  .sb-el-button .elementor-button { width:100%; }
  .sb-el-badges { display:grid !important; grid-template-columns:1fr 1fr; }
  .sb-el-pill { width:100% !important; text-align:center; }
  .sb-el-hero-card { padding:24px 20px; border-radius:20px; }
  .sb-el-logo-badge { position:relative; right:auto; top:auto; width:88px !important; height:88px; margin-bottom:4px; }
  .sb-el-logo-badge .elementor-widget-container { width:88px; height:88px; border-width:3px; }
  .sb-el-logo-badge img { width:184px !important; transform:translate(-48px,-58px); }
  .sb-el-card-heading .elementor-heading-title { font-size:25px; }
  .sb-el-market-card { min-height:170px; }
  .sb-el-trust-section { margin-top:0; background:#fff; }
  .sb-el-trust-section .sb-el-inner { padding:24px 0 38px; }
  .sb-el-trust-grid { grid-template-columns:1fr !important; border-radius:16px; }
  .sb-el-trust-grid .sb-el-card { min-height:auto; border-right:0; border-bottom:1px solid rgba(11,11,13,.08) !important; }
  .sb-el-trust-grid .sb-el-card:last-child { border-bottom:0 !important; }
  .sb-el-section-title .elementor-heading-title { font-size:clamp(34px,10.6vw,46px); }
  .sb-el-page-hero { padding:138px 0 70px; }
  .sb-el-page-hero .sb-el-display .elementor-heading-title { font-size:clamp(42px,12.5vw,58px); }
  .sb-el-lead .elementor-widget-container,.sb-el-copy .elementor-widget-container,.sb-el-lead,.sb-el-copy { font-size:15px; }
  .sb-el-collage { min-height:430px; }
  .sb-el-collage-main { inset:0 36px 72px 0; }
  .sb-el-collage-small { width:145px !important; height:112px; border-width:5px; }
  .sb-el-card { padding:24px; border-radius:17px; }
  .sb-el-card-title .elementor-heading-title { font-size:23px; }
  .sb-el-stats { grid-template-columns:1fr 1fr !important; border-radius:16px; }
  .sb-el-stats .sb-el-card { min-height:132px; border-right:1px solid rgba(255,255,255,.13); border-bottom:1px solid rgba(255,255,255,.13) !important; }
  .sb-el-stats .sb-el-card:nth-child(2n) { border-right:0; }
  .sb-el-stats .sb-el-card:last-child { grid-column:1/-1; border:0 !important; }
  .sb-el-stat .sb-el-card-title .elementor-heading-title { font-size:36px; }
  .sb-el-product-card { flex-basis:88vw; border-radius:18px; }
  .sb-el-product-image img { height:270px; }
  .sb-el-dark-cards .sb-el-card { border-radius:14px; }
  .sb-el-cta { padding:40px 24px; border-radius:20px; }
  .sb-el-contact-card { padding:28px; border-radius:18px; }
}

/* Final contrast guard against per-page Elementor typography rules. */
body.elementor-page .sb-el-cta .elementor-heading-title {
  color:#fff !important;
}
body.elementor-page .sb-el-cta .elementor-widget-text-editor,
body.elementor-page .sb-el-cta .elementor-widget-text-editor p,
body.elementor-page .sb-el-cta .sb-el-copy,
body.elementor-page .sb-el-cta .sb-el-copy p {
  color:rgba(255,255,255,.76) !important;
}
