/* The marketing page at / and /en: the <style> block of the Laravel view resources/views/landing.blade.php at cc06e06,
   Blade comments removed (docs/asset-provenance.md). */
:root {
    --bg: var(--emsy-lavender);
  --white: var(--emsy-white);
  --dark: var(--emsy-ink);
  --accent: var(--emsy-accent);
  --purple-light: var(--tint-lilac);
  --purple-mid: #c4b5fd;
  --text: var(--emsy-ink);
  --text3: #8884a8;
  --border: #e2e0ed;
  --green: var(--success);
      --wash-violet-hero: rgba(156,125,248,.34);
  --wash-mint-hero: rgba(180,236,205,.6);
  --shadow: 0 4px 24px rgba(59,91,219,.08);
  --shadow-lg: 0 12px 48px rgba(59,91,219,.14);
  --radius-sm: 8px;
  --font: 'Inter', sans-serif;
  --mono: ui-monospace, SFMono-Regular, Menlo, monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden}
.ico{width:1em;height:1em;vertical-align:-.125em;flex-shrink:0;display:inline-flex;line-height:0}
svg.wa-icon{width:1em;height:1em;vertical-align:-.125em;flex-shrink:0}
a{color:inherit;text-decoration:none}

/* ── NAV ── */
nav{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.85);
  backdrop-filter:var(--blur-nav);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:76px;gap:20px}
.nav-logo{display:flex;align-items:center;gap:10px}
.nav-brand{display:flex;align-items:center;gap:10px}
.nav-brand-mark{width:34px;height:34px;border-radius:var(--radius-sm);display:block}
.nav-brand-word{height:17px;width:auto;display:block;margin-top:4px}
.logo-tagline{font-size:var(--fs-12);color:var(--text-faint);font-weight:var(--fw-medium)}
.nav-links{display:flex;align-items:center;gap:30px}
.nav-links a{font-size:var(--fs-14);color:var(--text-muted)}
.nav-links a:hover{color:var(--emsy-violet-deep)}
.nav-cta{display:flex;align-items:center;gap:10px}
.nav-cta .nav-mobile{display:none}
.lang-menu{position:relative}
.lang-trigger i,.lang-trigger svg{font-size:13px}
.lang-trigger[aria-expanded="true"] svg{transform:rotate(180deg)}
.lang-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:60;min-width:210px;padding:6px;background:var(--emsy-white);border:1px solid var(--border-chrome);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}
.lang-option{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--radius-md);font-size:var(--fs-13);color:var(--text-body);white-space:nowrap}
.lang-option:hover,.lang-option:focus-visible{background:var(--neutral-100);color:var(--emsy-ink);outline:none}
.lang-option[aria-current="page"]{font-weight:var(--fw-medium);color:var(--emsy-ink)}
.lang-flag{width:20px;height:10px;flex-shrink:0;border-radius:2px;box-shadow:0 0 0 1px var(--border-chrome)}
.lang-tick{margin-left:auto;font-size:15px;color:var(--emsy-violet-deep)}
.nav-links .lang-row{display:none}

/* ── HERO ── */
.hero{position:relative;overflow:hidden;padding:clamp(48px,7vw,96px) 0 clamp(56px,8vw,110px)}
.hero-glow{
  position:absolute;inset:-10%;pointer-events:none;
  background:radial-gradient(ellipse 70% 55% at 72% 18%, var(--wash-violet-hero) 0%, transparent 68%),
             radial-gradient(ellipse 50% 45% at 12% 82%, var(--wash-mint-hero) 0%, transparent 62%);
}
.hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,64px);align-items:center}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--emsy-white);color:var(--emsy-violet-deep);
  box-shadow:var(--shadow-card);
  font-size:var(--fs-12);font-weight:var(--fw-medium);
  padding:7px 16px;border-radius:var(--radius-pill);
}
.hero-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--success)}
.hero h1{font-size:var(--fs-hero);font-weight:var(--fw-semibold);letter-spacing:var(--ls-hero);line-height:var(--lh-tight);margin:22px 0 0}
.hero h1 span{color:var(--emsy-purple)}
.hero-sub{font-size:var(--fs-16);color:var(--text-body);line-height:var(--lh-body);margin:20px 0 0;max-width:460px}
.hero-bm{font-size:var(--fs-14);color:var(--text-faint);margin:10px 0 0;max-width:460px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0 26px}
.hero-trust{display:flex;gap:18px;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:6px;font-size:var(--fs-13);color:var(--text-muted)}
.trust-item i{font-size:14px;color:var(--success)}

.hero-visual{position:relative}
.hero-card{
  background:var(--white);
  border-radius:var(--radius-xl);
  border:1px solid var(--border);
  box-shadow:var(--shadow-lg);
  overflow:hidden;
  animation:floatup .8s ease forwards;
  opacity:0;transform:translateY(20px);
}
@keyframes floatup{to{opacity:1;transform:translateY(0)}}
.hc-topbar{background:var(--dark);padding:12px 16px;display:flex;align-items:center;justify-content:space-between}
.hc-logo{display:flex;align-items:center;gap:8px}
.hc-logo-pill{background:var(--emsy-purple);color:var(--emsy-white);font-size:11px;font-weight:800;padding:3px 9px;border-radius:5px}
.hc-company{font-size:11px;color:rgba(255,255,255,.5)}
.hc-dots{display:flex;gap:5px}
.hc-dot{width:8px;height:8px;border-radius:50%}
.hc-body{padding:16px}
.hc-greeting{font-size:13px;font-weight:600;color:var(--text);margin-bottom:12px}
.hc-stats{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-bottom:12px}
.hc-stat{background:var(--bg);border-radius:var(--radius-sm);padding:10px 12px}
.hc-stat-val{font-size:18px;font-weight:700;color:var(--text);line-height:1}
.hc-stat-lbl{font-size:10px;color:var(--text3);margin-top:2px}
.hc-stat-up{font-size:10px;color:var(--green);font-weight:600;margin-top:3px}
.hc-alert{background:var(--purple-light);border:1px solid var(--purple-mid);border-radius:var(--radius-sm);padding:8px 10px;display:flex;align-items:center;gap:8px;margin-bottom:10px}
.hc-alert-dot{width:6px;height:6px;border-radius:50%;background:var(--danger);flex-shrink:0}
.hc-alert-text{font-size:10px;color:var(--accent);font-weight:500}
.hc-rows{display:flex;flex-direction:column;gap:4px}
.hc-row{display:flex;align-items:center;gap:8px;padding:6px 8px;background:var(--bg);border-radius:6px}
.hc-row-av{width:22px;height:22px;border-radius:50%;background:var(--purple-light);display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;color:var(--accent)}
.hc-row-name{font-size:10px;font-weight:500;color:var(--text);flex:1}
.hc-row-val{font-size:10px;font-weight:600;color:var(--text);font-family:var(--mono)}
.hc-row-badge{font-size:9px;padding:1px 6px;border-radius:10px}
.badge-green{background:var(--success-bg);color:var(--success-fg)}
.badge-amber{background:var(--warning-bg);color:var(--warning-fg)}

.hero-float-1,.hero-float-2{
  position:absolute;background:var(--white);border:1px solid var(--border);
  border-radius:10px;padding:8px 12px;box-shadow:var(--shadow);
  display:flex;align-items:center;gap:8px;animation:floatup 1s ease .3s forwards;
  opacity:0;transform:translateY(10px);
}
.hero-float-1{top:-16px;right:-16px}
.hero-float-2{bottom:-16px;left:-16px}
.hf-icon{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:14px}
.hf-text{font-size:11px}
.hf-label{font-weight:600;color:var(--text);display:block}
.hf-sub{color:var(--text3)}

/* ── SHELL ── */
.shell{max-width:calc(var(--content-max) + 2 * clamp(20px,4vw,40px));margin:0 auto;padding:0 clamp(20px,4vw,40px)}
.shell-c{text-align:center}
.section-label{font-size:var(--fs-12);font-weight:var(--fw-medium);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--emsy-purple)}
.section-title{font-size:var(--fs-section);font-weight:var(--fw-semibold);letter-spacing:var(--ls-hero);line-height:var(--lh-tight);margin:14px 0 0}
.section-sub{font-size:var(--fs-16);color:var(--text-muted);line-height:var(--lh-body);max-width:560px;margin:16px auto 0}

/* ── KIT BUTTON ── */
.kbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--radius-pill);font-family:var(--font-sans);font-weight:var(--fw-medium);line-height:1.3;white-space:nowrap;text-decoration:none;cursor:pointer;transition:opacity var(--dur-base),background var(--dur-base),border-color var(--dur-base)}
.kbtn-full{display:flex;width:100%}
.kbtn-sm{padding:6px 12px;font-size:var(--fs-12-5)}
.kbtn-lg{padding:9px 18px;font-size:var(--fs-13-5)}
.kbtn-lg i,.kbtn-lg svg{font-size:15px}
.kbtn-sm i{font-size:13px}
.kbtn-md{padding:7px 14px;font-size:var(--fs-13)}
.kbtn-md i{font-size:14px}
.kbtn-xl{padding:12px 24px;font-size:var(--fs-14)}
.kbtn-xl i,.kbtn-xl svg{font-size:16px}
.kbtn-primary{background:var(--action-primary);color:var(--emsy-white);border:1px solid transparent;font-weight:var(--fw-semibold)}
.kbtn-outline{background:var(--emsy-white);color:var(--emsy-ink);border:1px solid var(--border-chrome)}
.kbtn-quiet{background:transparent;color:var(--text-muted);border:1px solid var(--border-chrome)}
.kbtn-quiet:hover{background:var(--neutral-100);border-color:var(--neutral-300);color:var(--emsy-ink)}
.kbtn-primary:hover{opacity:var(--hover-opacity)}
.kbtn-outline:hover{background:var(--neutral-100);border-color:var(--neutral-300)}

/* ── FEATURES ── */
.features{padding:var(--section-pad) 0;line-height:normal}
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:56px;text-align:left}
.feat-card{background:var(--emsy-white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-card);padding:28px}
.feat-icon{width:48px;height:48px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:18px}
.feat-title{font-size:var(--fs-18);font-weight:var(--fw-medium);letter-spacing:var(--ls-title)}
.feat-desc{font-size:var(--fs-14);color:var(--text-muted);line-height:var(--lh-body);margin:10px 0 0}
.feat-tag{display:inline-block;font-size:var(--fs-11);font-weight:var(--fw-semibold);padding:2px 8px;border-radius:var(--radius-pill);margin-top:10px}

/* ── COMPLIANCE ── */
.compliance{padding:0 0 var(--section-pad);line-height:normal}
.compliance-panel{background:var(--gradient-violet);border-radius:var(--radius-3xl);padding:clamp(32px,5vw,64px);color:var(--emsy-white);position:relative;overflow:hidden}
.compliance-bg{position:absolute;width:620px;height:620px;top:-260px;right:-180px;background:radial-gradient(circle,rgba(255,255,255,.22) 0%,transparent 65%);pointer-events:none}
.compliance-inner{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(28px,4vw,56px);align-items:center}
.compliance-inner .section-label{color:var(--emsy-purple-mid)}
.compliance-inner .section-title{color:var(--emsy-white)}
.compliance-lead{font-size:var(--fs-16);color:rgba(255,255,255,.78);line-height:var(--lh-body);margin:18px 0 0;max-width:420px}
.comp-list{display:grid;gap:10px;min-width:0}
.comp-item{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.14);border-radius:var(--radius-pill);padding:12px 18px;min-width:0}
.comp-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.comp-name{font-size:var(--fs-14);font-weight:var(--fw-medium);min-width:118px}
.comp-desc{flex:1;min-width:0;font-size:var(--fs-13);color:rgba(255,255,255,.72)}
.comp-badge{font-size:var(--fs-12);background:var(--emsy-white);color:var(--emsy-violet-deep);border-radius:var(--radius-pill);padding:3px 12px;white-space:nowrap}
.comp-statutory{margin:26px 0 0}
.comp-statutory-label{font-size:var(--fs-12);letter-spacing:var(--ls-label);text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:12px}
.comp-statutory-row{display:flex;flex-wrap:wrap;gap:8px}

/* ── PRICING ── */
.pricing{padding:0 0 var(--section-pad);line-height:normal}
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:56px;text-align:left}
.plan-card{background:var(--emsy-white);border-radius:var(--radius-2xl);padding:28px;position:relative;box-shadow:var(--shadow-card)}
.plan-card.popular{box-shadow:var(--shadow-brand-lg);outline:2px solid var(--emsy-purple);outline-offset:-2px}
.popular-badge{position:absolute;top:-13px;left:28px;background:var(--emsy-purple);color:var(--emsy-white);font-size:var(--fs-12);font-weight:var(--fw-medium);padding:4px 14px;border-radius:var(--radius-pill)}
.plan-name{font-size:var(--fs-13);color:var(--text-muted);letter-spacing:var(--ls-label);text-transform:uppercase}
.plan-price{margin:10px 0 4px}
.plan-price-val{font-size:var(--fs-32);font-weight:var(--fw-semibold);letter-spacing:var(--ls-stat)}
.plan-price-unit{font-size:var(--fs-13);color:var(--text-faint)}
.plan-price-talk{font-size:var(--fs-18);font-weight:var(--fw-medium);letter-spacing:normal}
.plan-limit{font-size:var(--fs-13);color:var(--text-muted);padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--border-hairline)}
.plan-features{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.plan-feat{display:flex;gap:9px;font-size:var(--fs-14);color:var(--text-body)}
.plan-feat i{font-size:15px;flex-shrink:0}
.plan-feat.has i{color:var(--success)}
.plan-feat.no,.plan-feat.no i{color:var(--text-faint)}

/* ── HOW IT WORKS ── */
.how{padding:0 0 var(--section-pad);line-height:normal}
.how .shell{max-width:900px}
.how-steps{display:grid;gap:14px;margin-top:48px;text-align:left}
.how-step{display:flex;gap:20px;align-items:flex-start;background:var(--emsy-white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-card);padding:26px}
.how-num{width:44px;height:44px;border-radius:50%;background:var(--emsy-purple-light);color:var(--emsy-violet-deep);display:flex;align-items:center;justify-content:center;font-size:var(--fs-16);font-weight:var(--fw-medium);flex-shrink:0}
.how-title{font-size:var(--fs-16);font-weight:var(--fw-medium)}
.how-desc{font-size:var(--fs-14);color:var(--text-muted);line-height:var(--lh-body);margin:6px 0 0}

/* ── FAQ ── */
.faq{padding:0 0 var(--section-pad);line-height:normal}
.faq .shell{max-width:820px}
.faq-list{display:grid;gap:10px;margin-top:44px;text-align:left}
.faq-item{background:var(--emsy-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);overflow:hidden}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-15);font-weight:var(--fw-medium);color:var(--emsy-ink);text-align:left}
.faq-ico{font-size:18px;color:var(--emsy-purple);flex-shrink:0;display:inline-flex}
.faq-q[aria-expanded="false"] .faq-ico-open{display:none}
.faq-q[aria-expanded="true"] .faq-ico-shut{display:none}
.faq-q:focus-visible{outline:2px solid var(--emsy-purple);outline-offset:-2px}
.faq-a{padding:0 24px 22px;margin:0;font-size:var(--fs-14);color:var(--text-muted);line-height:var(--lh-body)}

/* ── FINAL CTA ── */
.final-cta{padding:0 0 var(--section-pad);line-height:normal}
.final-cta-panel{background:var(--emsy-purple-faint);border-radius:var(--radius-3xl);padding:clamp(40px,6vw,80px);text-align:center;position:relative;overflow:hidden}
.final-cta-bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 50% 110%,var(--wash-violet-cta) 0%,transparent 70%);pointer-events:none}
.final-cta-inner{position:relative}
.final-cta-inner h2{font-size:var(--fs-section);font-weight:var(--fw-semibold);letter-spacing:var(--ls-hero);line-height:var(--lh-tight);margin:0}
.final-cta-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:32px}

/* ── FOOTER ── */
footer{background:var(--emsy-ink);color:var(--emsy-white);padding:64px 0 28px;line-height:normal}
.footer-top{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;margin-bottom:48px}
.footer-wordmark{height:20px;width:auto;display:block;filter:brightness(0) invert(1)}
.footer-brand p{font-size:var(--fs-13);color:rgba(255,255,255,.55);line-height:var(--lh-body);margin:16px 0 0;max-width:260px}
.footer-col h4{font-size:var(--fs-12);letter-spacing:var(--ls-label);text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:16px;font-weight:400}
.footer-col a{display:block;font-size:var(--fs-13);color:rgba(255,255,255,.7);text-decoration:none;margin-bottom:10px}
.footer-col a:hover{color:var(--emsy-white)}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:var(--fs-12);color:rgba(255,255,255,.4)}

/* ── RESPONSIVE ── */
@media(min-width:769px) and (max-width:950px){
  .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:768px){
  .logo-tagline{display:none}
  .btn-ghost{display:none}
  .hero-inner{grid-template-columns:minmax(0,1fr);gap:40px}
  .hero-visual{display:none}
  .nav-links{display:none}
  .nav-links.is-open{
    display:flex;flex-direction:column;align-items:flex-start;gap:16px;
    position:absolute;top:76px;left:0;right:0;
    background:var(--emsy-white);
    padding:16px clamp(20px,4vw,40px);
    border-bottom:1px solid var(--border);
  }
  .nav-cta .nav-mobile{display:inline-flex;padding:6px 9px}
  .nav-cta .lang-menu{display:none}
  .nav-links.is-open .lang-row{display:flex;flex-direction:column;align-self:stretch;gap:2px;margin:0 -10px;padding-top:12px;border-top:1px solid var(--border-hairline)}
  .nav-links.is-open .lang-row .lang-option{font-size:var(--fs-14)}
  .comp-item{flex-wrap:wrap;row-gap:6px}
  .comp-name{min-width:0;flex:1}
  .comp-desc{flex:1 1 100%;order:4}
}

/* emsy-cf (D-229): the headings and the list the port made semantic keep the look of the divs they were. */
h3.plan-name{font-weight:400}
h3.feat-title,h3.how-title{font-family:inherit}
ol.how-steps{list-style:none}
