/* ShareMyOrder homepage v1. Scope every rule; never override WooCommerce or Dokan globally. */
.smo-home {
  --smo-navy:#2c3e50; --smo-teal:#1abc9c; --smo-teal-ink:#1abc9c;
  --smo-yellow:#ffc107; --smo-orange:#ff9800; --smo-muted:#607184;
  --smo-line:#e0e7ee; --smo-soft:#f5f8fa; --smo-mint:#effaf7;
  --smo-space:112px; --smo-radius:16px;
  box-sizing:border-box; width:min(100% - 80px,1200px)!important; max-width:1200px!important;
  margin-inline:auto!important; padding:72px 0 104px!important;
  display:flex!important; flex-direction:column!important; gap:var(--smo-space)!important;
  font-family:'SMO Manrope',Manrope,Arial,sans-serif; font-size:16px; line-height:1.65; color:var(--smo-navy);
  --container-default-padding-top:0; --container-default-padding-right:0;
  --container-default-padding-bottom:0; --container-default-padding-left:0;
}
.smo-home *, .smo-home *::before, .smo-home *::after {box-sizing:border-box}
.smo-home .e-con {min-width:0;--width:100%;--content-width:100%;--container-widget-width:100%}
.smo-home .elementor-widget {margin:0!important;min-width:0;max-width:100%}
.smo-home .elementor-widget-container {margin:0;padding:0}
.smo-home .elementor-widget-heading .elementor-heading-title,
.smo-home h1,.smo-home h2,.smo-home h3 {font-family:inherit;color:var(--smo-navy);margin:0;letter-spacing:-.035em;font-weight:800;text-wrap:balance}
.smo-home .elementor-heading-title {line-height:1.18}
.smo-home h1.elementor-heading-title {font-size:clamp(40px,4.4vw,62px);line-height:1.09;letter-spacing:-.045em}
.smo-home h2.elementor-heading-title {font-size:clamp(29px,3vw,40px)}
.smo-home h3.elementor-heading-title,.smo-home h3 {font-size:21px;line-height:1.35;letter-spacing:-.025em}
.smo-home p {margin:0;color:var(--smo-muted)}
.smo-home p+p {margin-top:12px}
.smo-home a {color:var(--smo-teal-ink);text-underline-offset:4px;text-decoration-thickness:1px}
.smo-home a:focus-visible {outline:3px solid var(--smo-navy);outline-offset:5px;border-radius:4px}
.smo-home .smo-accent {color:var(--smo-teal-ink)}
.smo-home .smo-kicker, .smo-home .smo-kicker p {font-size:12px;line-height:1.4;font-weight:800;letter-spacing:.15em;color:var(--smo-teal-ink);text-transform:uppercase}
.smo-home .smo-section {width:100%;padding:0!important;display:flex;flex-direction:column;gap:32px!important}
.smo-home .smo-stack {padding:0!important;display:flex;flex-direction:column;gap:24px!important}
.smo-home .smo-heading {display:flex;flex-direction:column;gap:12px!important;padding:0!important}
.smo-home .smo-heading p {font-size:18px}
.smo-home .smo-center {text-align:center;align-items:center}
.smo-home .smo-split {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px!important;align-items:center;padding:0!important}
.smo-home .smo-hero {gap:64px!important}
.smo-home .smo-hero-copy {gap:26px!important}
.smo-home .smo-hero-copy>.elementor-widget-text-editor:not(.smo-kicker):not(.smo-tagline) p {font-size:19px;max-width:490px;line-height:1.7}
.smo-home .smo-tagline p {color:var(--smo-navy);font-size:15px;font-weight:800}
.smo-home .smo-button,.smo-home .elementor-button {
  display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;
  padding:13px 26px;border:1px solid var(--smo-teal);border-radius:7px;background:var(--smo-teal);
  color:var(--smo-navy);font:800 15px/1.45;
  text-decoration:none;box-shadow:none;transition:background .18s,border-color .18s,transform .18s;
}
.smo-home .smo-button:hover,.smo-home .elementor-button:hover {background:#38c9ad;border-color:#38c9ad;color:var(--smo-navy);transform:translateY(-1px)}
.smo-home .smo-outline .elementor-button {border-color:var(--smo-navy);background:transparent;color:var(--smo-navy)}
.smo-home .smo-outline .elementor-button:hover {background:var(--smo-mint);border-color:var(--smo-teal-ink)}
.smo-home .smo-text-cta .elementor-button {min-height:44px;padding:8px 0;background:none;border:0;color:var(--smo-teal-ink);text-decoration:underline}
.smo-home .smo-hero .elementor-button {min-width:244px;min-height:54px}
.smo-home .smo-hero-art {background:linear-gradient(145deg,#f9fbfc,#f0f5f8);border:1px solid var(--smo-line);border-radius:var(--smo-radius);padding:32px;min-height:510px;display:flex;align-items:center;justify-content:center}
.smo-home .smo-hero-art img {width:100%;height:450px;object-fit:contain;display:block}
.smo-home .smo-grid-3 {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px!important;padding:0!important}
.smo-home .smo-card {width:100%;display:flex;flex-direction:column;align-items:stretch;gap:20px!important;padding:32px!important;border:1px solid var(--smo-line);border-radius:var(--smo-radius);background:#fff}
.smo-home .smo-card-featured {background:var(--smo-mint);border-color:#5dceb8}
.smo-home .smo-route-card .smo-card-cta {margin-top:auto!important;padding-top:12px}
.smo-home .smo-card-cta .elementor-button {width:100%}
.smo-home .smo-icon {width:56px!important;align-self:flex-start}
.smo-home .smo-icon img {width:56px;height:56px;display:block}
.smo-home .smo-route-card h3.elementor-heading-title {font-size:20px}
.smo-home .smo-process .smo-heading {gap:16px!important;max-width:850px;align-self:center}
.smo-home .smo-process .smo-heading h2 {font-size:30px;line-height:1.4}
.smo-home .smo-steps {display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px!important;padding:0!important}
.smo-home .smo-step {position:relative;padding:0!important;display:flex;flex-direction:column;gap:16px!important}
.smo-home .smo-step-top {display:flex;flex-direction:row;gap:24px!important;align-items:center;padding:0!important;margin-bottom:8px}
.smo-home .smo-step-no p {width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--smo-teal);color:var(--smo-navy);font-size:13px;font-weight:800}
.smo-home .smo-step-top .smo-step-no {width:auto}
.smo-home .smo-step h3.elementor-heading-title {font-size:17px}
.smo-home .smo-step p {font-size:15px}
.smo-home .smo-example-frame {background:var(--smo-soft);padding:32px!important;border:1px solid var(--smo-line);border-radius:var(--smo-radius);display:flex;flex-direction:column;gap:28px!important}
.smo-home .smo-order-diagram {padding:32px 20px 44px;min-height:320px;display:flex;flex-direction:column;justify-content:center}
.smo-home .smo-order-labels {display:grid;grid-template-columns:3fr 3fr 3fr 2fr;gap:4px;margin-bottom:24px;color:var(--smo-navy);font-size:14px;font-weight:800;text-align:center}
.smo-home .smo-order-labels span::after {content:'';display:block;width:1px;height:25px;background:currentColor;margin:10px auto -22px}
.smo-home .smo-container-plan {display:grid;grid-template-columns:3fr 3fr 3fr 2fr;gap:4px;padding:12px;border:2px solid #aab9c7;border-radius:4px;background:#fff;min-height:148px;box-shadow:0 16px 0 -7px #e7edf2}
.smo-home .smo-load {background-color:var(--smo-teal);background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(33.333% - 1px),#ffffff4d calc(33.333% - 1px),#ffffff4d 33.333%),repeating-linear-gradient(0deg,transparent 0,transparent calc(33.333% - 1px),#ffffff4d calc(33.333% - 1px),#ffffff4d 33.333%);border:1px solid #ffffff60;min-width:0}
.smo-home .smo-load-navy {background-color:var(--smo-navy)}
.smo-home .smo-load-orange {background-color:var(--smo-orange)}
.smo-home .smo-load-yellow {background-color:var(--smo-yellow)}
.smo-home .smo-load-free {background-color:#e0e7ee}
.smo-home .smo-saving {display:flex;flex-direction:row;align-items:center;gap:20px!important;background:#fff9e9;border:1px solid #f9e7b8;border-radius:10px;padding:20px 24px!important}
.smo-home .smo-saving .smo-stack {gap:8px!important;flex:1}
.smo-home .smo-saving h3.elementor-heading-title {font-size:18px}
.smo-home .smo-saving p {font-size:12px;line-height:1.7}
.smo-home .smo-checklist ul {margin:0;padding:0;list-style:none;display:grid;gap:16px}
.smo-home .smo-checklist li {margin:0;position:relative;padding-left:35px;color:var(--smo-muted)}
.smo-home .smo-checklist li::before {content:'✓';position:absolute;left:0;top:0;color:var(--smo-teal-ink);width:24px;height:24px;border:1.5px solid var(--smo-teal);border-radius:50%;display:grid;place-items:center;font-size:14px;font-weight:800}
.smo-home .smo-small, .smo-home .smo-small p {font-size:13px;line-height:1.65}
.smo-home .smo-trader-art {border:1px solid var(--smo-line);border-radius:var(--smo-radius);background:var(--smo-soft);padding:28px!important}
.smo-home .smo-trader-art .smo-order-diagram {min-height:335px;padding:16px 0}
.smo-home .smo-trader-caption {text-align:center;font-size:13px;font-weight:800;color:var(--smo-teal-ink);margin-bottom:32px}
.smo-home .smo-trader-art .smo-order-labels, .smo-home .smo-trader-art .smo-container-plan {grid-template-columns:2fr 2fr 2fr 3fr}
.smo-home .smo-trader-art .smo-container-plan {min-height:132px}
.smo-home .smo-live-card {border:1px solid var(--smo-line);border-radius:var(--smo-radius);padding:32px;background:#fff;min-height:310px}
.smo-home .smo-private-invite {display:grid;grid-template-columns:76px minmax(0,1fr);gap:28px;padding:30px 10px;max-width:780px;align-items:start;margin-inline:auto}
.smo-home .smo-private-invite h3 {font-size:28px;margin-bottom:16px}
.smo-home .smo-private-invite p {margin:0 0 24px;max-width:550px}
.smo-home .smo-private-invite .smo-small {margin:20px 0 0}
.smo-home .smo-private-icon {width:76px;height:76px;display:grid;place-items:center;border-radius:18px;background:var(--smo-mint)}
.smo-home .smo-featured-grid {display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,1.75fr);gap:40px}
.smo-home .smo-featured-info h3 {margin:14px 0 24px;overflow-wrap:anywhere}
.smo-home .smo-featured-info dl {display:grid;gap:16px;margin:0 0 24px}
.smo-home .smo-featured-info dt {font-weight:800;font-size:13px;margin-bottom:4px}
.smo-home .smo-featured-info dd {margin:0;color:var(--smo-muted)}
.smo-home .smo-badge {display:inline-block;padding:4px 10px;border-radius:6px;font-size:13px;background:#dcf5ee;color:#086e5e;font-weight:700}
.smo-home .smo-percent {display:flex;align-items:baseline;gap:12px;font-size:14px;color:var(--smo-muted)}
.smo-home .smo-percent strong {font-size:42px;line-height:1.25;color:var(--smo-teal-ink);letter-spacing:-.04em}
.smo-home progress {display:block;width:100%;height:12px;margin:16px 0 24px;border:0;border-radius:20px;overflow:hidden;background:#e0e7ee;accent-color:var(--smo-teal)}
.smo-home progress::-webkit-progress-bar {background:#e0e7ee}
.smo-home progress::-webkit-progress-value {background:var(--smo-teal);border-radius:20px}
.smo-home progress::-moz-progress-bar {background:var(--smo-teal)}
.smo-home .smo-featured-info>.smo-button {width:100%;margin-bottom:16px}
.smo-home .smo-live-visual {position:relative;min-height:390px;border:1px solid var(--smo-line);border-radius:12px;background:var(--smo-soft);overflow:hidden}
.smo-home .smo-live-visual canvas {display:block;width:100%;height:100%;min-height:390px;touch-action:pan-y}
.smo-home .smo-legend {position:absolute;bottom:46px;left:20px;background:#fff;padding:10px 14px;border-radius:8px;display:flex;gap:16px;font-size:12px}
.smo-home .smo-legend span {display:flex;align-items:center;gap:8px}
.smo-home .smo-legend i {display:inline-block;width:12px;height:12px;border-radius:3px}
.smo-home .smo-dot-navy {background:var(--smo-navy)}
.smo-home .smo-dot-grey {background:#dce3eb}
.smo-home .smo-rotate-hint {position:absolute;bottom:12px;left:20px;font-size:11px}
.smo-home .smo-benefits {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px!important;padding:0!important}
.smo-home .smo-benefit {display:flex;flex-direction:row;align-items:flex-start;gap:24px!important}
.smo-home .smo-benefit .smo-stack {gap:10px!important;flex:1}
.smo-home .smo-benefit h3.elementor-heading-title {font-size:19px}
.smo-home .smo-beginners {background:var(--smo-mint);padding:48px!important;border:1px solid #cbeee5;border-radius:var(--smo-radius);gap:48px!important}
.smo-home .smo-beginners h2.elementor-heading-title {font-size:32px}
.smo-home .smo-facts {padding:0 0 0 40px!important;border-left:1px solid #c9e2dc;display:flex;flex-direction:column;gap:0!important}
.smo-home .smo-fact {display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1.35fr);gap:20px!important;align-items:center;padding:19px 0!important;border-bottom:1px solid #d7e8e3}
.smo-home .smo-fact:last-child {border:0}
.smo-home .smo-fact .smo-icon, .smo-home .smo-fact .smo-icon img {width:28px!important;height:28px}
.smo-home .smo-fact p {font-size:13px}
.smo-home .smo-final .smo-card {text-align:center;align-items:center;padding:28px!important;gap:16px!important}
.smo-home .smo-final .smo-icon {align-self:center}
.smo-home .smo-final h3.elementor-heading-title {font-size:16px}
.smo-home .smo-final .smo-card-cta {width:100%}

@media (max-width:1024px) {
  .smo-home {width:calc(100% - 48px)!important;--smo-space:88px;padding-top:48px!important}
  .smo-home .smo-split {gap:36px!important}
  .smo-home .smo-hero-art {min-height:420px;padding:20px}
  .smo-home .smo-hero-art img {height:360px}
  .smo-home .smo-card {padding:24px!important}
  .smo-home .smo-grid-3 {gap:16px!important}
  .smo-home .smo-route-card h3.elementor-heading-title {font-size:18px}
  .smo-home .smo-card p {font-size:14px}
  .smo-home .smo-steps {gap:24px!important;grid-template-columns:repeat(2,minmax(0,1fr))}
  .smo-home .smo-step {padding:16px 0!important}
  .smo-home .smo-beginners {padding:32px!important}
  .smo-home .smo-facts {padding-left:24px!important}
  .smo-home .smo-fact {gap:12px!important;grid-template-columns:24px minmax(0,1fr)}
  .smo-home .smo-fact>.elementor-widget:last-child {grid-column:2}
}
@media (max-width:767px) {
  .smo-home {width:calc(100% - 40px)!important;--smo-space:64px;padding:36px 0 64px!important}
  .smo-home .smo-section {gap:28px!important}
  .smo-home .smo-split,.smo-home .smo-grid-3,.smo-home .smo-benefits,.smo-home .smo-featured-grid {grid-template-columns:minmax(0,1fr);gap:24px!important}
  .smo-home h1.elementor-heading-title {font-size:42px}
  .smo-home h2.elementor-heading-title {font-size:30px}
  .smo-home .smo-hero-copy {gap:24px!important}
  .smo-home .smo-hero-copy>.elementor-widget-text-editor:not(.smo-kicker):not(.smo-tagline) p {font-size:17px}
  .smo-home .smo-hero-art {margin-top:12px;min-height:370px;padding:24px}
  .smo-home .smo-hero-art img {height:330px}
  .smo-home .smo-route-card {padding:28px!important;gap:16px!important}
  .smo-home .smo-route-card h3.elementor-heading-title {font-size:21px}
  .smo-home .smo-card p {font-size:16px}
  .smo-home .smo-process .smo-heading h2 {font-size:25px}
  .smo-home .smo-steps {gap:24px!important;grid-template-columns:repeat(2,minmax(0,1fr))}
  .smo-home .smo-step-top {gap:14px!important}
  .smo-home .smo-step .smo-icon,.smo-home .smo-step .smo-icon img {width:44px!important;height:44px}
  .smo-home .smo-step h3.elementor-heading-title {font-size:17px}
  .smo-home .smo-step p {font-size:14px}
  .smo-home .smo-example-frame {padding:16px!important;gap:12px!important}
  .smo-home .smo-order-diagram {min-height:220px;padding:20px 0 30px}
  .smo-home .smo-order-labels {font-size:11px}
  .smo-home .smo-container-plan {padding:8px;min-height:110px;gap:3px}
  .smo-home .smo-saving {padding:20px!important;gap:14px!important;align-items:flex-start}
  .smo-home .smo-saving .smo-icon,.smo-home .smo-saving .smo-icon img {width:32px!important;height:32px}
  .smo-home .smo-saving h3.elementor-heading-title {font-size:16px}
  .smo-home .smo-saving p {font-size:11px}
  .smo-home .smo-trader-art {padding:20px!important}
  .smo-home .smo-trader-art .smo-order-diagram {min-height:245px}
  .smo-home .smo-live-card {padding:24px;min-height:0}
  .smo-home .smo-private-invite {grid-template-columns:minmax(0,1fr);gap:24px;padding:4px 0}
  .smo-home .smo-private-invite h3 {font-size:25px}
  .smo-home .smo-private-invite .smo-button {width:100%}
  .smo-home .smo-featured-grid {gap:32px!important}
  .smo-home .smo-live-visual,.smo-home .smo-live-visual canvas {min-height:320px}
  .smo-home .smo-benefit {padding:24px!important;gap:20px!important}
  .smo-home .smo-benefit .smo-icon,.smo-home .smo-benefit .smo-icon img {width:44px!important;height:44px}
  .smo-home .smo-beginners {padding:28px!important;gap:32px!important}
  .smo-home .smo-beginners h2.elementor-heading-title {font-size:29px}
  .smo-home .smo-facts {border-left:0;border-top:1px solid #c9e2dc;padding:12px 0 0!important}
  .smo-home .smo-fact {grid-template-columns:28px minmax(0,1fr) minmax(0,1.3fr);gap:12px!important}
  .smo-home .smo-fact>.elementor-widget:last-child {grid-column:auto}
  .smo-home .smo-final .smo-grid-3 {gap:16px!important}
  .smo-home .smo-final .smo-card {gap:14px!important;padding:24px!important}
}
@media (max-width:370px) {
  .smo-home h1.elementor-heading-title {font-size:38px}
  .smo-home .smo-steps {grid-template-columns:1fr;gap:24px!important}
  .smo-home .smo-fact {grid-template-columns:24px 1fr}
  .smo-home .smo-fact>.elementor-widget:last-child {grid-column:2}
}
@media (prefers-reduced-motion:reduce) {
  .smo-home .smo-button,.smo-home .elementor-button {transition:none}
  .smo-home .smo-button:hover,.smo-home .elementor-button:hover {transform:none}
}
