/* ==========================================================================
   sourca — Divi child theme styles
   Brand Guidelines v1.0: Sourca Orange #FF6A00 (accent only), Black (dominant),
   White, Space Grotesk (one family).

   The layouts use native Divi modules. Each module carries a sourca-* class
   (Advanced > CSS ID & Classes) and this file gives it the look, so content
   stays editable in the builder.
   ========================================================================== */

@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('../fonts/space-grotesk.woff2') format('woff2-variations'),
       url('../fonts/space-grotesk.woff2') format('woff2');
}

:root {
  --sourca-orange: #FF6A00;
  --sourca-black: #000;
  --sourca-white: #fff;
  --sourca-ink-900: #0B0B0B;
  --sourca-ink-800: #141414;
  --sourca-ink-700: #1F1F1F;
  --sourca-ink-600: #2E2E2E;
  --sourca-ink-400: #8A8A8A;
  --sourca-ink-300: #B5B5B5;
  --sourca-paper: #F3F0E9;
  --sourca-paper-line: #E2DDD2;
  --sourca-muted: #55544F;
  --sourca-font: 'Space Grotesk', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --sourca-gutter: clamp(20px, 4vw, 40px);
  --sourca-ease: cubic-bezier(.2, .7, .1, 1);
}

/* ---------- Global type: one family, everywhere ---------- */
body,
body input, body textarea, body select, body button,
body h1, body h2, body h3, body h4, body h5, body h6,
body .et_pb_module, body .et_pb_button, body .et_pb_menu,
body .et_pb_pricing_table, body .et_pb_toggle_title, body .et_pb_tabs_controls li a {
  font-family: var(--sourca-font) !important;
}
body { -webkit-font-smoothing: antialiased; }
#page-container, #main-content { background: var(--sourca-black); }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }

/* ---------- Section + row baseline ---------- */
.et_pb_section.sourca-section { color: var(--sourca-black); overflow: visible; }
.et_pb_section.sourca-dark { color: var(--sourca-white); }
.sourca-section .et_pb_row.sourca-row {
  box-sizing: border-box;
  padding-left: var(--sourca-gutter) !important;
  padding-right: var(--sourca-gutter) !important;
}
.sourca-section .et_pb_row.sourca-row + .et_pb_row.sourca-row { padding-top: clamp(40px, 5vw, 64px) !important; }
.sourca-section .et_pb_column .et_pb_module:not(.sourca-keep-gap) { margin-bottom: 0 !important; }
.sourca-section .et_pb_text_inner p,
.sourca-section .et_pb_text_inner h1, .sourca-section .et_pb_text_inner h2,
.sourca-section .et_pb_text_inner h3, .sourca-section .et_pb_text_inner h4 { padding-bottom: 0; }
.sourca-section .et_pb_text,
.sourca-section .et_pb_text p { line-height: 1.55; font-size: 17px; }
.sourca-light .et_pb_text, .sourca-white .et_pb_text { color: var(--sourca-black); }
.sourca-dark .et_pb_text { color: var(--sourca-white); }
.sourca-section a { transition: color .2s; }

/* ---------- Type scale ---------- */
.et_pb_section .sourca-display {
  font-size: clamp(42px, 5vw, 72px); line-height: .98; letter-spacing: -.035em; font-weight: 700;
  color: inherit;
}
.et_pb_section .sourca-h2 {
  font-size: clamp(34px, 4.8vw, 60px); line-height: 1.02; letter-spacing: -.03em; font-weight: 700;
  color: inherit; margin-top: 18px;
}
.et_pb_section .sourca-statement {
  font-size: clamp(30px, 3.7vw, 50px); line-height: 1.08; letter-spacing: -.03em; font-weight: 600;
  color: inherit; margin: 22px 0 26px;
}
.et_pb_section .sourca-card-title,
.et_pb_section .sourca-card .et_pb_module_header {
  font-size: clamp(21px, 2vw, 26px); line-height: 1.15; letter-spacing: -.02em; font-weight: 600; color: inherit;
}
.et_pb_section p.sourca-lede { font-size: clamp(18px, 1.6vw, 21px); line-height: 1.5; color: var(--sourca-ink-300); max-width: 34em; margin-top: 26px; }
.et_pb_section p.sourca-body-lg { font-size: clamp(17px, 1.4vw, 19px); line-height: 1.55; margin-top: 20px; }
.et_pb_section .sourca-muted, .et_pb_section p.sourca-muted { color: var(--sourca-muted); }
.sourca-dark .sourca-muted, .sourca-dark p.sourca-muted, .sourca-card--dark .sourca-muted { color: var(--sourca-ink-400) !important; }
.et_pb_section .sourca-orange { color: var(--sourca-orange) !important; }
.sourca-display .sourca-orange { display: block; }
.sourca-cta .sourca-display .sourca-orange { display: inline; }

.et_pb_section p.sourca-label {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 13px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; line-height: 1.3;
  color: var(--sourca-muted);
}
.et_pb_section p.sourca-label.sourca-orange { color: var(--sourca-orange); }
.et_pb_section p.sourca-label--live { color: var(--sourca-white); border: 1px solid var(--sourca-ink-600); border-radius: 100px; padding: 7px 14px 7px 12px; margin-bottom: 26px; }
.sourca-pulse { position: relative; width: 8px; height: 8px; border-radius: 50%; background: var(--sourca-orange); }
.sourca-pulse::after { content: ""; position: absolute; inset: -4px; border-radius: 50%; border: 1px solid var(--sourca-orange); animation: sourca-pulse 2s var(--sourca-ease) infinite; }
@keyframes sourca-pulse { from { transform: scale(.6); opacity: 1; } to { transform: scale(1.8); opacity: 0; } }

.sourca-section a.sourca-link { color: inherit; font-weight: 600; text-decoration: underline; text-decoration-color: var(--sourca-orange); text-decoration-thickness: 2px; text-underline-offset: 4px; }

/* ---------- Buttons (Button module: the class sits on the <a>) ---------- */
body .et_pb_button.sourca-btn,
body .et_pb_button.sourca-btn:hover,
body .sourca-plans .et_pb_pricing_table_button,
body .sourca-plans .et_pb_pricing_table_button:hover {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 52px; padding: 0 24px !important;
  border: 1px solid transparent !important; border-radius: 10px !important;
  font-size: 16px !important; font-weight: 600 !important; line-height: 1 !important; letter-spacing: -.005em;
  text-decoration: none;
  transition: background-color .2s, color .2s, border-color .2s, transform .25s var(--sourca-ease);
}
body .et_pb_button.sourca-btn::after,
body .sourca-plans .et_pb_pricing_table_button::after { display: none !important; }
body .et_pb_button.sourca-btn--arrow::after {
  display: inline-block !important; content: "→" !important; font-family: var(--sourca-font) !important;
  position: static !important; opacity: 1 !important; margin: 0 !important; font-size: 1em !important; line-height: 1 !important;
  transition: transform .25s var(--sourca-ease);
}
body .et_pb_button.sourca-btn--arrow:hover::after { transform: translateX(4px); }
body .et_pb_button.sourca-btn:active { transform: translateY(1px); }
/* Black text on orange: white on #FF6A00 fails contrast */
body .et_pb_button.sourca-btn--orange { background: var(--sourca-orange) !important; color: var(--sourca-black) !important; }
body .et_pb_button.sourca-btn--orange:hover { background: var(--sourca-white) !important; }
body .et_pb_button.sourca-btn--ghost { background: transparent !important; color: var(--sourca-white) !important; border-color: var(--sourca-ink-600) !important; }
body .et_pb_button.sourca-btn--ghost:hover { border-color: var(--sourca-white) !important; }
body .et_pb_button.sourca-btn--lg { min-height: 60px; padding: 0 32px !important; font-size: 18px !important; }

/* HTML-link button (used inside Text modules, e.g. the header) */
.sourca-section a.sourca-btn-html { display: inline-flex; align-items: center; min-height: 42px; padding: 0 18px; border-radius: 10px; background: var(--sourca-orange); color: var(--sourca-black); font-weight: 600; font-size: 15px; text-decoration: none; transition: background-color .2s; }
.sourca-section a.sourca-btn-html:hover { background: var(--sourca-white); color: var(--sourca-black); }

/* ---------- Header (Theme Builder) ---------- */
.sourca-topbar .et_pb_text, .sourca-topbar .et_pb_text p { text-align: center !important; }
.sourca-topbar .et_pb_text p { font-size: 14px !important; line-height: 1.3 !important; color: var(--sourca-ink-300); padding: 11px 0 !important; border-bottom: 1px solid var(--sourca-ink-700); }
.sourca-topbar .et_pb_row.sourca-row { max-width: none !important; }
.sourca-topbar b { color: var(--sourca-white); font-weight: 600; }
.sourca-topbar a { color: var(--sourca-orange); font-weight: 600; text-decoration: none; margin-left: 6px; white-space: nowrap; }

.et_pb_section.sourca-nav { -webkit-backdrop-filter: saturate(1.4) blur(14px); backdrop-filter: saturate(1.4) blur(14px); border-bottom: 1px solid var(--sourca-ink-700); z-index: 99; }
.sourca-nav .et_pb_row.sourca-nav__row { display: flex; align-items: center; min-height: 72px; }
.sourca-nav .et_pb_column { margin-bottom: 0 !important; }
.sourca-nav .et_pb_row.sourca-nav__row::after { display: none; }
.sourca-menu.et_pb_menu, .sourca-menu .et_pb_menu__wrap { background: transparent !important; }
.sourca-menu .et_pb_menu__logo img { max-height: 32px; width: auto; }
.sourca-menu .et_pb_menu_inner_container { align-items: center; }
.sourca-menu .et_pb_menu__menu > nav > ul > li > a { font-size: 15px !important; font-weight: 500; color: var(--sourca-ink-300) !important; padding-bottom: 0 !important; }
.sourca-menu .et_pb_menu__menu > nav > ul > li > a:hover { color: var(--sourca-white) !important; opacity: 1; }
.sourca-menu .et_pb_menu__menu > nav > ul { gap: 30px; list-style: none !important; padding: 0 !important; }
.sourca-menu .et_pb_menu__menu > nav > ul > li { padding-left: 0 !important; padding-right: 0 !important; }
.sourca-menu .et_pb_menu__menu li.sourca-mobile-only { display: none; }
.sourca-menu .mobile_nav .mobile_menu_bar::before { color: var(--sourca-white) !important; }
.sourca-menu .et_mobile_menu { border-top: 2px solid var(--sourca-orange) !important; background: var(--sourca-black) !important; }
.sourca-menu .et_mobile_menu li a { color: var(--sourca-white) !important; font-size: 18px; font-weight: 600; border-bottom: 1px solid var(--sourca-ink-800); }
.sourca-menu .et_mobile_menu li.sourca-mobile-cta a { color: var(--sourca-orange) !important; }
.sourca-nav p.sourca-nav__cta { display: flex; justify-content: flex-end; align-items: center; gap: 22px; }
.sourca-nav a.sourca-nav__signin { color: var(--sourca-ink-300); font-weight: 500; font-size: 15px; text-decoration: none; }
.sourca-nav a.sourca-nav__signin:hover { color: var(--sourca-white); }

/* ---------- Footer (Theme Builder) ---------- */
.sourca-footer, .sourca-footer .et_pb_text, .sourca-footer .et_pb_text p { color: var(--sourca-ink-400) !important; font-size: 15px; }
.sourca-footer .sourca-footer__logo img { height: 30px; width: auto; }
.sourca-footer .sourca-footer__logo { margin-bottom: 18px !important; text-align: left; }
.et_pb_section.sourca-footer p.sourca-footer__heading { color: var(--sourca-white) !important; padding-bottom: 14px !important; font-size: 13px !important; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.sourca-footer .sourca-footer__row a { display: block; padding: 5px 0; color: var(--sourca-ink-400); text-decoration: none; }
.sourca-footer a:hover { color: var(--sourca-orange) !important; }
.sourca-footer .et_pb_row.sourca-footer__base { margin-top: 40px; padding-top: 22px !important; padding-bottom: 22px !important; border-top: 1px solid var(--sourca-ink-800); }
.sourca-footer__base p, .sourca-footer__base a { font-size: 14px !important; color: var(--sourca-ink-400); text-decoration: none; }

/* ---------- Checklist ---------- */
.et_pb_section ul.sourca-ticks {
  list-style: none !important; padding: 0 !important; margin: 30px 0 0 !important;
  display: grid; grid-template-columns: 1fr 1fr; gap: 12px 28px; max-width: 580px; line-height: 1.45 !important;
}
.sourca-ticks li { position: relative; padding-left: 30px; font-size: 16px; color: var(--sourca-white); }
.sourca-ticks li::before { content: ""; position: absolute; left: 0; top: 2px; width: 18px; height: 18px; border-radius: 4px; background: var(--sourca-orange); }
.sourca-ticks li::after { content: ""; position: absolute; left: 5px; top: 6px; width: 8px; height: 5px; border-left: 2px solid var(--sourca-black); border-bottom: 2px solid var(--sourca-black); transform: rotate(-45deg); }

/* ---------- Hero ---------- */
.et_pb_section.sourca-hero { position: relative; overflow: hidden; }
.et_pb_section.sourca-hero::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image:
    repeating-linear-gradient(30deg, transparent 0 55px, rgba(255,255,255,.045) 55px 56px),
    repeating-linear-gradient(-30deg, transparent 0 55px, rgba(255,255,255,.045) 55px 56px),
    repeating-linear-gradient(90deg, transparent 0 95px, rgba(255,255,255,.03) 95px 96px);
  -webkit-mask-image: radial-gradient(ellipse 70% 70% at 72% 45%, #000 20%, transparent 75%);
          mask-image: radial-gradient(ellipse 70% 70% at 72% 45%, #000 20%, transparent 75%);
}
.sourca-hero .et_pb_row.sourca-hero__row { display: flex; align-items: center; }
.sourca-hero .et_pb_row.sourca-hero__row::after { display: none; }
.sourca-hero .sourca-hero__copy .et_pb_button_module_wrapper { display: inline-block; margin: 38px 12px 0 0 !important; }
.sourca-hero .sourca-hero__copy .et_pb_button_module_wrapper + .et_pb_button_module_wrapper { margin-right: 0 !important; }
.et_pb_section p.sourca-fineprint { margin-top: 16px; font-size: 14px; color: var(--sourca-ink-400); }

.et_pb_column.sourca-hero__visual { position: relative; min-height: clamp(560px, 52vw, 680px); }
.sourca-hero__visual .et_pb_module.sourca-hero__iphone,
.sourca-hero__visual .et_pb_module.sourca-hero__galaxy { position: absolute !important; top: 50%; left: 60%; margin: 0 !important; }
.sourca-hero__visual .et_pb_module.sourca-hero__iphone { width: clamp(240px, 22vw, 290px); transform: translate(-50%, -50%); z-index: 2; }
.sourca-hero__visual .et_pb_module.sourca-hero__galaxy { width: clamp(210px, 19vw, 252px); transform: translate(-112%, -45%) rotate(-5deg); z-index: 1; }
.sourca-hero__visual .et_pb_module.sourca-hero__tag { position: absolute !important; left: -2%; bottom: 6%; z-index: 3; margin: 0 !important; }
.et_pb_section p.sourca-tag {
  display: grid; gap: 4px; min-width: 210px;
  background: var(--sourca-white); color: var(--sourca-black);
  border-left: 4px solid var(--sourca-orange); border-radius: 6px; padding: 12px 16px;
  font-size: 15px; line-height: 1.25;
}
.sourca-tag__k { font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--sourca-muted); }
.sourca-tag__v b { font-weight: 700; }

/* ---------- Device mockups (Image modules or .sourca-device markup) ---------- */
.sourca-device { position: relative; container-type: inline-size; line-height: 0; }
.sourca-device.et_pb_image { text-align: left; }
.sourca-device .et_pb_image_wrap,
.sourca-device .sourca-screen {
  position: relative; display: flex !important; flex-direction: column;
  margin: 4.4cqw; width: auto; max-width: none; overflow: hidden; background: #F6F4EF;
}
.sourca-device .et_pb_image_wrap img,
.sourca-device .sourca-screen img { display: block; width: 100%; height: auto; max-width: 100%; aspect-ratio: 390 / 844; object-fit: cover; object-position: top; }
/* Status bar: time left, signal + battery right */
.sourca-device .et_pb_image_wrap::before,
.sourca-device .sourca-screen::before {
  content: "9:41"; flex: none; display: flex; align-items: center;
  aspect-ratio: 390 / 50; padding: 1.5cqw 9cqw 0;
  font: 600 4.2cqw/1 -apple-system, 'SF Pro Text', system-ui, var(--sourca-font); letter-spacing: -.01em; color: #111;
  background: url('../icons/status-offline.svg') no-repeat right 8cqw center / auto 3.6cqw;
}
.sourca-device--online .et_pb_image_wrap::before,
.sourca-device--online .sourca-screen::before { background-image: url('../icons/status-online.svg'); background-size: auto 3.6cqw; }
.sourca-device::before, .sourca-device::after { content: ""; position: absolute; width: 1.1cqw; border-radius: 1cqw; }

/* iPhone: titanium band, Dynamic Island */
.sourca-device--iphone .et_pb_image_wrap,
.sourca-device--iphone .sourca-screen {
  border-radius: 12cqw;
  box-shadow: 0 0 0 3.4cqw #0e0e10, 0 0 0 3.9cqw #3f3f44, 0 0 0 4.4cqw #1b1b1e, 0 40px 70px -24px rgba(0,0,0,.6);
}
.sourca-device--iphone .et_pb_image_wrap::after,
.sourca-device--iphone .sourca-screen::after {
  content: ""; position: absolute; left: 50%; top: 2.6cqw; transform: translateX(-50%);
  width: 29cqw; height: 8.4cqw; background: #000; border-radius: 10cqw;
}
.sourca-device--iphone::before { left: -.6cqw; top: 20%; height: 6.5%; background: #3f3f44; box-shadow: 0 12cqw 0 #3f3f44, 0 -8cqw 0 #3f3f44; }
.sourca-device--iphone::after { right: -.6cqw; top: 28%; height: 10%; background: #3f3f44; }

/* Samsung Galaxy: flat frame, centred punch-hole camera */
.sourca-device--galaxy .et_pb_image_wrap,
.sourca-device--galaxy .sourca-screen {
  border-radius: 6.5cqw;
  box-shadow: 0 0 0 2.6cqw #050506, 0 0 0 3.6cqw #2d2d31, 0 0 0 4.4cqw #121214, 0 40px 70px -24px rgba(0,0,0,.6);
}
.sourca-device--galaxy .et_pb_image_wrap::before,
.sourca-device--galaxy .sourca-screen::before { padding-inline: 7cqw; font-family: Roboto, system-ui, var(--sourca-font); font-weight: 500; background-position: right 6cqw center; }
.sourca-device--galaxy .et_pb_image_wrap::after,
.sourca-device--galaxy .sourca-screen::after {
  content: ""; position: absolute; left: 50%; top: 3.2cqw; transform: translateX(-50%);
  width: 4.4cqw; height: 4.4cqw; border-radius: 50%; background: #050505; box-shadow: inset 0 0 0 .8cqw #17171a;
}
.sourca-device--galaxy::after { right: -.6cqw; top: 20%; height: 12%; background: #2d2d31; box-shadow: 0 21cqw 0 #2d2d31; }

/* ---------- Problem ---------- */
.sourca-problem .et_pb_row.sourca-problem__row { display: flex; align-items: center; }
.sourca-problem .et_pb_row.sourca-problem__row::after { display: none; }
.sourca-strike { position: relative; white-space: nowrap; }
.sourca-strike::after { content: ""; position: absolute; left: -2%; right: -2%; top: 56%; height: .12em; background: var(--sourca-orange); transform: scaleX(0); transform-origin: left; transition: transform .9s .3s var(--sourca-ease); }
.is-in .sourca-strike::after, .et-fb .sourca-strike::after, .sourca-no-js .sourca-strike::after { transform: scaleX(1); }

.sourca-mess { position: relative; height: 440px; line-height: 1.25; }
.sourca-mess__card {
  position: absolute; display: grid; gap: 4px; width: min(280px, 80%);
  background: var(--sourca-white); border: 1px solid var(--sourca-paper-line); border-radius: 6px; padding: 16px 20px;
  transition: transform .9s var(--sourca-ease), opacity .9s var(--sourca-ease);
}
.sourca-mess__card .k { font-size: 12px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--sourca-muted); }
.sourca-mess__card .v { font-size: 20px; font-weight: 600; letter-spacing: -.015em; color: var(--sourca-black); }
.sourca-mess__card--1 { left: 0; top: 4%; transform: rotate(-6deg); }
.sourca-mess__card--2 { right: 0; top: 18%; transform: rotate(5deg); background: #FFF6CC; border-color: #EEDF9E; transition-delay: .08s; }
.sourca-mess__card--3 { left: 8%; top: 40%; transform: rotate(3deg); transition-delay: .16s; }
.sourca-mess__card--4 { right: 4%; top: 60%; transform: rotate(-4deg); transition-delay: .24s; }
.sourca-mess__card--5 { left: 2%; bottom: 0; transform: rotate(-2deg); background: var(--sourca-black); border-color: var(--sourca-black); transition-delay: .32s; }
.sourca-mess__card--5 .k { color: var(--sourca-orange); }
.sourca-mess__card--5 .v { color: var(--sourca-white); }
.sourca-js .sourca-mess:not(.is-in) .sourca-mess__card { opacity: 0; transform: translateY(40px) rotate(0); }

/* ---------- Section heads ---------- */
.et_pb_module.sourca-head { max-width: 760px; }
.et_pb_section .sourca-head p.sourca-muted:not(.sourca-body-lg) { margin-top: 20px; }
.et_pb_module.sourca-head--center { margin-left: auto !important; margin-right: auto !important; text-align: center; }
.sourca-features .et_pb_row:first-child .sourca-head,
.sourca-how .et_pb_row:first-child .sourca-head { margin-bottom: 0; }
.sourca-sticky { position: sticky !important; top: 120px; }

/* ---------- How it works: Tabs module styled as a route ---------- */
.et_pb_tabs.sourca-route { border: 0; background: transparent; overflow: visible; }
.sourca-route .et_pb_tabs_controls {
  position: relative; display: grid; grid-template-columns: repeat(5, 1fr);
  list-style: none !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; line-height: 1.2 !important;
  background: transparent !important; border-top: 1px solid var(--sourca-ink-600); counter-reset: sourca-step;
}
.sourca-route .et_pb_tabs_controls::after { display: none !important; }
.sourca-route .et_pb_tabs_controls::before {
  content: ""; position: absolute; left: 0; top: -2px; height: 3px; background: var(--sourca-orange);
  width: calc((var(--sourca-step, 0) + .5) * 20%); transition: width .6s var(--sourca-ease);
}
.sourca-route .et_pb_tabs_controls li {
  float: none; display: block; height: auto; position: relative; counter-increment: sourca-step;
  border: 0 !important; background: transparent !important; padding: 26px 16px 26px 0; margin: 0;
}
.sourca-route .et_pb_tabs_controls li::before {
  content: ""; position: absolute; top: -6px; left: 0; width: 11px; height: 11px;
  background: var(--sourca-black); border: 2px solid var(--sourca-ink-600); transform: rotate(45deg); transition: background .25s, border-color .25s;
}
.sourca-route .et_pb_tabs_controls li.et_pb_tab_active::before,
.sourca-route .et_pb_tabs_controls li.sourca-done::before { background: var(--sourca-orange); border-color: var(--sourca-orange); }
.sourca-route .et_pb_tabs_controls li a {
  display: block; padding: 0 !important; line-height: 1.1 !important;
  font-size: clamp(22px, 2.4vw, 32px) !important; font-weight: 700; letter-spacing: -.025em;
  color: var(--sourca-ink-400) !important; transition: color .25s;
}
.sourca-route .et_pb_tabs_controls li a::before {
  content: counter(sourca-step, decimal-leading-zero); display: block; margin-bottom: 8px;
  font-size: 13px; font-weight: 600; letter-spacing: .08em; color: var(--sourca-orange);
}
.sourca-route .et_pb_tabs_controls li a:hover,
.sourca-route .et_pb_tabs_controls li.et_pb_tab_active a { color: var(--sourca-white) !important; }
.sourca-route .et_pb_all_tabs { margin-top: clamp(32px, 5vw, 56px); background: var(--sourca-ink-800) !important; border: 1px solid var(--sourca-ink-700); border-radius: 16px; overflow: hidden; }
.sourca-route .et_pb_tab { padding: clamp(28px, 5vw, 64px) !important; }
.sourca-route .et_pb_tab_content { color: var(--sourca-white); }

.sourca-step { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(32px, 6vw, 80px); align-items: center; }
.sourca-step__copy { max-width: 460px; }
.et_pb_section p.sourca-step__place { font-size: 13px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--sourca-orange); margin-bottom: 14px; }
.sourca-step__copy .sourca-card-title { color: var(--sourca-white); }
.et_pb_section p.sourca-step__meta { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--sourca-ink-600); font-size: 15px; color: var(--sourca-ink-300); }
.et_pb_section p.sourca-step__meta::before { content: "→ "; color: var(--sourca-orange); }
.sourca-step__shot { display: grid; place-items: center; min-height: 600px; }
.sourca-step__shot .sourca-device { width: min(270px, 78%); }

.sourca-browser { width: 100%; border: 1px solid var(--sourca-paper-line); border-bottom: 0; border-radius: 10px 10px 0 0; overflow: hidden; background: var(--sourca-paper); line-height: 0; }
.sourca-browser__bar { display: flex; align-items: center; gap: 6px; padding: 10px 12px; border-bottom: 1px solid var(--sourca-paper-line); background: var(--sourca-white); line-height: 1; }
.sourca-browser__bar i { width: 9px; height: 9px; border-radius: 50%; background: var(--sourca-paper-line); }
.sourca-browser__bar span { margin-left: 10px; font-size: 12px; color: var(--sourca-muted); }
.sourca-browser__view { overflow: hidden; }
.sourca-browser__view img { width: 100%; height: auto; display: block; transition: transform 2.4s var(--sourca-ease); }
.sourca-browser--dark { border-color: var(--sourca-ink-600); background: var(--sourca-ink-700); border-radius: 10px; border-bottom: 1px solid var(--sourca-ink-600); }
.sourca-browser--dark .sourca-browser__bar { background: var(--sourca-ink-700); border-color: var(--sourca-ink-600); }
.sourca-browser--dark .sourca-browser__bar i { background: var(--sourca-ink-600); }
.sourca-browser--dark .sourca-browser__bar span { color: var(--sourca-ink-400); }
.sourca-step .sourca-browser--dark .sourca-browser__view { height: 480px; }

/* ---------- Features: bento grid on the column ---------- */
.et_pb_column.sourca-bento {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
  grid-template-areas:
    "money money card"
    "last  teams order"
    "desk  desk  order"
    "pack  pack  app";
}
.et_pb_column.sourca-bento::after, .et_pb_column.sourca-bento::before { display: none !important; }
.sourca-bento > .b-money { grid-area: money; } .sourca-bento > .b-card { grid-area: card; }
.sourca-bento > .b-last { grid-area: last; } .sourca-bento > .b-teams { grid-area: teams; }
.sourca-bento > .b-order { grid-area: order; } .sourca-bento > .b-desk { grid-area: desk; }
.sourca-bento > .b-pack { grid-area: pack; } .sourca-bento > .b-app { grid-area: app; }

.sourca-bento > .et_pb_module.sourca-card {
  margin: 0 !important; overflow: hidden;
  background: var(--sourca-white); border: 1px solid var(--sourca-paper-line); border-radius: 16px;
  padding: clamp(24px, 3vw, 36px); transition: border-color .25s;
}
.sourca-bento > .et_pb_module.sourca-card:hover { border-color: var(--sourca-black); }
.sourca-card p, .sourca-card .et_pb_blurb_description p { font-size: 16px; }
.sourca-card .sourca-card-title { margin: 14px 0; }
.sourca-bento > .sourca-card--neutral { background: var(--sourca-paper) !important; border-color: var(--sourca-paper) !important; }
.sourca-bento > .sourca-card--dark { background: var(--sourca-black) !important; border-color: var(--sourca-black) !important; color: var(--sourca-white) !important; }
.sourca-card--wide .et_pb_text_inner { display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(24px, 3vw, 40px); align-items: center; }
.sourca-card--shot { padding-bottom: 0 !important; }
.sourca-card--shot .et_pb_text_inner { align-items: end; }
.sourca-card--shot .sourca-card__copy { align-self: center; padding-bottom: clamp(24px, 3vw, 36px); }
.sourca-card--shot .sourca-browser__view { height: 260px; }
.sourca-card--shot:hover .sourca-browser__view img { transform: translateY(-22%); }

/* Blurb cards */
.sourca-card.et_pb_blurb .et_pb_blurb_content { max-width: none; text-align: left; }
.sourca-card.et_pb_blurb .et_pb_main_blurb_image { margin-bottom: 22px; }
.sourca-card.et_pb_blurb .et_pb_main_blurb_image img { width: 48px; height: 48px; }
.sourca-card.et_pb_blurb .et_pb_module_header { padding-bottom: 14px; color: var(--sourca-black); }
.sourca-card.et_pb_blurb .et_pb_blurb_description { color: var(--sourca-muted); }
.sourca-card .sourca-icon-tile img { width: 48px; height: 48px; margin-bottom: 8px; }

.sourca-money { background: var(--sourca-ink-800); border: 1px solid var(--sourca-ink-700); border-radius: 10px; padding: 24px; }
.et_pb_section p.sourca-money__k { font-size: 14px; color: var(--sourca-ink-400); }
.et_pb_section p.sourca-money__v { margin-top: 6px; white-space: nowrap; font-size: clamp(30px, 3.4vw, 46px); font-weight: 700; letter-spacing: -.035em; line-height: 1; font-variant-numeric: tabular-nums; color: var(--sourca-white); }
.sourca-money__row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 20px; }
.sourca-money__row div { border-top: 1px solid var(--sourca-ink-600); padding-top: 10px; display: grid; gap: 4px; }
.sourca-money__row span { font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--sourca-ink-400); }
.sourca-money__row b { font-weight: 600; font-size: 15px; white-space: nowrap; font-variant-numeric: tabular-nums; color: var(--sourca-white); }
.et_pb_section p.sourca-money__note { margin-top: 16px; font-size: 12px !important; color: var(--sourca-ink-400); }

.sourca-sheet-peek { margin: 24px calc(-1 * clamp(24px, 3vw, 36px)) calc(-1 * clamp(24px, 3vw, 36px)); padding: 24px 24px 0; height: 320px; overflow: hidden; }
.sourca-sheet-peek img { width: 100%; height: auto; transform: rotate(-2.5deg) translateY(6px); transform-origin: top left; border: 1px solid var(--sourca-paper-line); background: var(--sourca-white); transition: transform .6s var(--sourca-ease); }
.sourca-card:hover .sourca-sheet-peek img { transform: rotate(0) translateY(-10px); }

.sourca-pack { background: var(--sourca-paper); border-radius: 10px; padding: 22px; }
.sourca-pack__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--sourca-black); border: 1.5px solid var(--sourca-black); }
.sourca-pack__grid div { display: grid; gap: 4px; background: var(--sourca-white); padding: 12px 14px; }
.sourca-pack__grid span { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.sourca-pack__grid b { font-size: 26px; font-weight: 700; letter-spacing: -.02em; line-height: 1.1; font-variant-numeric: tabular-nums; }
.sourca-pack__grid small { font-size: 15px; font-weight: 500; }
.et_pb_section p.sourca-pack__file { display: flex; align-items: center; gap: 10px; margin-top: 14px; font-size: 14px !important; color: var(--sourca-muted); }
.sourca-pack__file span { background: var(--sourca-black); color: var(--sourca-white); font-size: 11px; font-weight: 700; padding: 3px 7px; border-radius: 4px; letter-spacing: .05em; }

/* ---------- Why it's built this way ---------- */
.et_pb_column.sourca-principles {
  display: grid; grid-template-columns: 1fr 1fr; gap: 1px; counter-reset: sourca-principle;
  background: var(--sourca-ink-700); border: 1px solid var(--sourca-ink-700); border-radius: 16px; overflow: hidden;
}
.et_pb_column.sourca-principles::after, .et_pb_column.sourca-principles::before { display: none !important; }
.sourca-principles > .et_pb_module.sourca-principle { margin: 0 !important; background: var(--sourca-black); padding: clamp(24px, 3vw, 36px); min-height: 240px; counter-increment: sourca-principle; transition: background .25s; }
.sourca-principles > .et_pb_module.sourca-principle:hover { background: var(--sourca-ink-900); }
.sourca-principle .et_pb_blurb_content { max-width: none; text-align: left; }
.sourca-principle .et_pb_blurb_content::before {
  content: counter(sourca-principle, upper-alpha); display: grid; place-items: center;
  width: 34px; height: 34px; margin-bottom: 28px; border: 1.5px solid var(--sourca-orange); border-radius: 6px;
  color: var(--sourca-orange); font-weight: 700; font-size: 15px;
}
.sourca-principle .et_pb_module_header { color: var(--sourca-white) !important; font-size: 21px; line-height: 1.2; letter-spacing: -.02em; font-weight: 600; padding-bottom: 10px; }
.sourca-principle .et_pb_blurb_description, .sourca-principle .et_pb_blurb_description p { color: var(--sourca-ink-400) !important; font-size: 16px; line-height: 1.55; }

/* ---------- Pricing: switch + Pricing Tables modules ---------- */
.sourca-toggle-wrap { text-align: center; margin-top: 30px !important; }
.sourca-toggle { display: inline-flex; padding: 4px; border-radius: 100px; background: var(--sourca-paper); }
.sourca-toggle button { padding: 10px 20px; border: 0; border-radius: 100px; background: transparent; font: 600 15px/1.2 var(--sourca-font); color: var(--sourca-muted); cursor: pointer; transition: background .25s, color .25s; }
.sourca-toggle button em { font-style: normal; font-size: 12px; margin-left: 6px; padding: 2px 8px; border-radius: 100px; background: var(--sourca-orange); color: var(--sourca-black); }
.sourca-toggle button[aria-checked="true"] { background: var(--sourca-black); color: var(--sourca-white); }

.sourca-pricing:not(.is-monthly) .sourca-plans--monthly,
.sourca-pricing.is-monthly .sourca-plans--annual { display: none; }
.et-fb .sourca-pricing .sourca-plans--monthly, .et-fb .sourca-pricing .sourca-plans--annual { display: block; margin-bottom: 40px !important; }

.sourca-plans .et_pb_pricing_table_wrap { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 16px; align-items: stretch; }
.sourca-plans .et_pb_pricing_table_wrap::after { display: none !important; }
body .sourca-plans .et_pb_pricing_table {
  float: none; width: auto !important; margin: 0 !important; display: flex; flex-direction: column;
  padding: clamp(28px, 3vw, 40px) !important; text-align: left;
  background: var(--sourca-white) !important; border: 1px solid var(--sourca-paper-line) !important; border-radius: 16px; box-shadow: none !important;
}
.sourca-plans .et_pb_pricing_heading, .sourca-plans .et_pb_pricing_content_top { display: contents; }
.sourca-plans .et_pb_pricing_title { order: 1; text-align: left; font-size: 20px !important; font-weight: 600; color: var(--sourca-black) !important; padding: 0 !important; }
.sourca-plans .et_pb_et_price { order: 2; display: flex; align-items: baseline; gap: 2px; margin-top: 18px; padding: 0; color: var(--sourca-black) !important; }
.sourca-plans .et_pb_dollar_sign, .sourca-plans .et_pb_sum {
  position: static; margin: 0; font-size: clamp(46px, 5vw, 60px) !important; line-height: 1 !important; font-weight: 700;
  letter-spacing: -.04em; font-variant-numeric: tabular-nums; color: inherit !important;
}
.sourca-plans .et_pb_frequency { margin-left: 6px; font-size: 17px !important; font-weight: 500; color: var(--sourca-muted) !important; }
.sourca-plans .et_pb_best_value { order: 3; display: block; margin-top: 10px; min-height: 1.5em; font-size: 15px !important; font-weight: 400; color: var(--sourca-muted) !important; text-align: left; }
.sourca-plans .et_pb_button_wrapper { order: 4; margin-top: 28px; padding: 0; }
body .sourca-plans .et_pb_pricing_table_button { width: 100%; background: transparent !important; color: var(--sourca-black) !important; border: 1.5px solid var(--sourca-black) !important; }
body .sourca-plans .et_pb_pricing_table_button:hover { background: var(--sourca-black) !important; color: var(--sourca-white) !important; }
.sourca-plans .et_pb_pricing_content { order: 5; padding: 0 !important; margin-top: 26px; border-top: 1px solid var(--sourca-paper-line); }
.sourca-plans ul.et_pb_pricing { list-style: none !important; padding: 22px 0 0 !important; margin: 0 !important; }
.sourca-plans ul.et_pb_pricing li { position: relative; padding: 0 0 12px 26px !important; font-size: 16px; line-height: 1.5; text-align: left; color: var(--sourca-black) !important; }
.sourca-plans ul.et_pb_pricing li span::before {
  content: "" !important; position: absolute; left: 2px !important; top: 8px !important; width: 10px; height: 6px;
  border: solid var(--sourca-orange) !important; border-width: 0 0 2px 2px !important; border-radius: 0 !important; transform: rotate(-45deg);
}
body .sourca-plans .et_pb_featured_table { background: var(--sourca-black) !important; border-color: var(--sourca-black) !important; }
.sourca-plans .et_pb_featured_table .et_pb_pricing_title,
.sourca-plans .et_pb_featured_table .et_pb_et_price,
.sourca-plans .et_pb_featured_table ul.et_pb_pricing li { color: var(--sourca-white) !important; }
.sourca-plans .et_pb_featured_table .et_pb_frequency,
.sourca-plans .et_pb_featured_table .et_pb_best_value { color: var(--sourca-ink-400) !important; }
.sourca-plans .et_pb_featured_table .et_pb_pricing_content { border-top-color: var(--sourca-ink-700); }
body .sourca-plans .et_pb_featured_table .et_pb_pricing_table_button { background: var(--sourca-orange) !important; border-color: var(--sourca-orange) !important; color: var(--sourca-black) !important; }
body .sourca-plans .et_pb_featured_table .et_pb_pricing_table_button:hover { background: var(--sourca-white) !important; border-color: var(--sourca-white) !important; }
.et_pb_section p.sourca-pricing__note { text-align: center; margin-top: 28px; font-size: 14px !important; color: var(--sourca-muted); }

/* ---------- FAQ: Accordion module ---------- */
.sourca-acc.et_pb_accordion { border-top: 1.5px solid var(--sourca-black); }
.sourca-acc .et_pb_toggle { margin: 0 !important; padding: 0 !important; border: 0 !important; border-bottom: 1px solid var(--sourca-paper-line) !important; background: transparent !important; }
.sourca-acc .et_pb_toggle_title {
  position: relative; padding: 24px 56px 24px 0 !important; cursor: pointer;
  font-size: clamp(18px, 1.7vw, 22px) !important; font-weight: 600; letter-spacing: -.015em; line-height: 1.3 !important; color: var(--sourca-black) !important;
}
.sourca-acc .et_pb_toggle_title::before {
  content: "" !important; position: absolute; right: 0 !important; top: 50% !important; margin-top: -16px !important;
  width: 32px; height: 32px; border-radius: 50%;
  background: var(--sourca-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M10 16h12M16 10v12' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / 100%;
  transition: transform .3s var(--sourca-ease), background-color .2s;
}
.sourca-acc .et_pb_toggle_open .et_pb_toggle_title::before { transform: rotate(45deg); background-color: var(--sourca-orange); }
.sourca-acc .et_pb_toggle_content { padding: 0 56px 26px 0 !important; }
.sourca-acc .et_pb_toggle_content p { font-size: 17px; line-height: 1.6; color: var(--sourca-muted); padding-bottom: 0; }

/* ---------- Final CTA ---------- */
.sourca-cta .et_pb_row.sourca-cta__row { text-align: center; }
.sourca-cta .sourca-cta__mark { margin: 0 auto 36px !important; }
.sourca-cta .sourca-cta__mark img { width: 88px; height: 88px; }
.sourca-cta .sourca-cta__text p.sourca-body-lg { margin-top: 24px; }
.sourca-cta .et_pb_button_module_wrapper { margin-top: 40px !important; }

/* ---------- Reveal on scroll (front end only) ---------- */
.sourca-js .sourca-reveal { opacity: 0; transform: translateY(28px); transition: opacity .9s var(--sourca-ease), transform .9s var(--sourca-ease); }
.sourca-js .sourca-reveal.is-in { opacity: 1; transform: none; }

/* ---------- Responsive (Divi breakpoints: 980px tablet, 767px phone) ---------- */
@media (max-width: 1080px) {
  .et_pb_column.sourca-bento { grid-template-columns: 1fr 1fr; grid-template-areas: "money money" "card last" "order teams" "order app" "desk desk" "pack pack"; }
}
@media (max-width: 980px) {
  .sourca-hero .et_pb_row.sourca-hero__row, .sourca-problem .et_pb_row.sourca-problem__row { display: block; }
  .et_pb_column.sourca-hero__visual { max-width: 560px; margin: 40px auto 0 !important; }
  .sourca-sticky { position: static !important; }
  .sourca-nav .et_pb_row.sourca-nav__row { min-height: 64px; }
  .sourca-nav .et_pb_column:last-child { display: none; }
  .sourca-menu .et_pb_menu__menu li.sourca-mobile-only { display: block; }
  .sourca-route .et_pb_tabs_controls { grid-template-columns: repeat(5, minmax(120px, 1fr)); overflow-x: auto; scrollbar-width: none; padding-top: 6px; margin-top: -6px; }
  .sourca-route .et_pb_tabs_controls::-webkit-scrollbar { display: none; }
  .sourca-route .et_pb_tabs_controls::before { display: none; }
  .sourca-step { grid-template-columns: 1fr; }
  .sourca-step__shot { min-height: 0; }
  .sourca-step .sourca-browser--dark .sourca-browser__view { height: 340px; }
  .sourca-plans .et_pb_pricing_table_wrap { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
  .et_pb_column.sourca-principles { grid-template-columns: 1fr; }
  .sourca-principles > .et_pb_module.sourca-principle { min-height: 0; }
}
@media (max-width: 767px) {
  .et_pb_section ul.sourca-ticks { grid-template-columns: 1fr; }
  .sourca-hero .sourca-hero__copy .et_pb_button_module_wrapper { display: block; margin-right: 0 !important; }
  .sourca-hero .sourca-hero__copy .et_pb_button_module_wrapper + .et_pb_button_module_wrapper { margin-top: 12px !important; }
  body .et_pb_button.sourca-btn { width: 100%; }
  .et_pb_column.sourca-hero__visual { min-height: 520px; }
  .sourca-hero__visual .et_pb_module.sourca-hero__iphone { width: 210px; left: 62%; }
  .sourca-hero__visual .et_pb_module.sourca-hero__galaxy { width: 176px; left: 62%; transform: translate(-106%, -45%) rotate(-5deg); }
  .sourca-hero__visual .et_pb_module.sourca-hero__tag { bottom: 2%; }
  .et_pb_section p.sourca-tag { min-width: 0; padding: 10px 12px; font-size: 14px; }
  .sourca-topbar a { display: none; }
  .sourca-mess { height: 400px; margin-top: 40px; }
  .et_pb_column.sourca-bento { grid-template-columns: 1fr; grid-template-areas: "money" "card" "last" "order" "teams" "desk" "pack" "app"; }
  .sourca-card--wide .et_pb_text_inner { grid-template-columns: 1fr; }
  .sourca-card--shot .sourca-browser__view { height: 200px; }
  .sourca-sheet-peek { height: 260px; }
  .sourca-money__row b { font-size: 13px; }
  .sourca-pack__grid b { font-size: 21px; }
  .sourca-acc .et_pb_toggle_content { padding-right: 0 !important; }
  .sourca-footer .et_pb_row.sourca-footer__base .et_pb_text { text-align: left !important; }
}

@media (prefers-reduced-motion: reduce) {
  .sourca-section *, .sourca-section *::before, .sourca-section *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  html { scroll-behavior: auto; }
}

/* ==========================================================================
   Hardened overrides for Divi rules that beat the styles above on live sites
   ========================================================================== */

/* Header: logo size and menu alignment (Menu module) */
html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et_pb_menu__logo-wrap {
  flex: none !important; width: auto !important; max-width: none !important; margin: 0 40px 0 0 !important; padding: 0 !important;
}
html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et_pb_menu__logo,
html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et_pb_menu__logo a { display: block !important; width: auto !important; max-width: none !important; line-height: 0 !important; }
html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et_pb_menu__logo img {
  display: block !important; height: 32px !important; max-height: 32px !important; width: auto !important; max-width: none !important;
}
html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et_pb_menu_inner_container { display: flex !important; align-items: center !important; }
html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et_pb_menu__wrap { flex: 1 1 auto !important; justify-content: center !important; align-items: center !important; }
html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et-menu-nav > ul { display: flex !important; align-items: center !important; flex-wrap: nowrap !important; gap: 30px; margin: 0 !important; }
html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et-menu-nav > ul > li { margin: 0 !important; padding: 0 !important; }
html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et-menu-nav > ul > li > a { padding: 0 !important; line-height: 1.2 !important; white-space: nowrap; }
html body .et_pb_section.sourca-nav .et_pb_row.sourca-nav__row { display: flex !important; align-items: center !important; }
html body .et_pb_section.sourca-nav .et_pb_row.sourca-nav__row > .et_pb_column { display: flex !important; flex-direction: column; justify-content: center; }

/* Pricing: full-width cards in the three-column grid (Pricing Tables module) */
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing .et_pb_pricing_table_wrap {
  display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 16px !important;
  width: 100% !important; max-width: none !important; margin: 0 !important;
}
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing .et_pb_pricing_table_wrap .et_pb_pricing_table {
  width: 100% !important; min-width: 0 !important; max-width: none !important; flex: none !important; float: none !important; margin: 0 !important;
}
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing .et_pb_pricing_table .et_pb_pricing_title,
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing .et_pb_pricing_table .et_pb_best_value,
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing .et_pb_pricing_table li { word-break: normal !important; overflow-wrap: normal !important; hyphens: none !important; }
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing .et_pb_et_price { flex-wrap: nowrap !important; white-space: nowrap !important; }
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing .et_pb_button_wrapper,
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing .et_pb_pricing_table_button { width: 100% !important; white-space: nowrap !important; }

@media (max-width: 980px) {
  html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing .et_pb_pricing_table_wrap { grid-template-columns: minmax(0, 1fr) !important; max-width: 480px !important; margin: 0 auto !important; }
  html body .et_pb_section.sourca-nav .et_pb_menu.sourca-menu .et_pb_menu__wrap { justify-content: flex-end !important; }
}

/* Pricing feature ticks: draw on the <li>, not Divi's <span>, and reset Divi's list indent */
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing ul.et_pb_pricing {
  list-style: none !important; margin: 0 !important; padding: 22px 0 0 !important;
}
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing ul.et_pb_pricing li {
  position: relative !important; list-style: none !important; margin: 0 !important;
  padding: 0 0 12px 28px !important; text-align: left !important;
}
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing ul.et_pb_pricing li span { position: static !important; padding: 0 !important; }
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing ul.et_pb_pricing li span::before { content: none !important; display: none !important; }
html body .et_pb_section .et_pb_row .et_pb_column .sourca-plans.et_pb_pricing ul.et_pb_pricing li::before {
  content: "" !important; position: absolute !important; left: 3px !important; top: .5em !important;
  width: 11px !important; height: 6px !important; margin: 0 !important; background: none !important;
  border: solid var(--sourca-orange) !important; border-width: 0 0 2px 2px !important; border-radius: 0 !important;
  transform: rotate(-45deg) !important;
}
