@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:400;
  src:url(media/plus-jakarta-sans-cyrillic-ext-400-normal.0nsnl23n_6n31.woff2)format("woff2"), url(media/plus-jakarta-sans-cyrillic-ext-400-normal.1dl2imy1n69qn.woff)format("woff");
  unicode-range:U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:400;
  src:url(media/plus-jakarta-sans-vietnamese-400-normal.0tuhl1a7zqzph.woff2)format("woff2"), url(media/plus-jakarta-sans-vietnamese-400-normal.1ebhu3ydxye98.woff)format("woff");
  unicode-range:U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:400;
  src:url(media/plus-jakarta-sans-latin-ext-400-normal.2dpj9jam_znrc.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-ext-400-normal.1cm1a-poxlrvd.woff)format("woff");
  unicode-range:U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:400;
  src:url(media/plus-jakarta-sans-latin-400-normal.2ysn9gc82zk1v.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-400-normal.0crn-37tc-i3f.woff)format("woff");
  unicode-range:U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:500;
  src:url(media/plus-jakarta-sans-cyrillic-ext-500-normal.414w4lwftrt-p.woff2)format("woff2"), url(media/plus-jakarta-sans-cyrillic-ext-500-normal.1ydt4nm9eri8u.woff)format("woff");
  unicode-range:U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:500;
  src:url(media/plus-jakarta-sans-vietnamese-500-normal.32mqaj4wavu_-.woff2)format("woff2"), url(media/plus-jakarta-sans-vietnamese-500-normal.1l5-kl2e5ltii.woff)format("woff");
  unicode-range:U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:500;
  src:url(media/plus-jakarta-sans-latin-ext-500-normal.39x03kic3z_r6.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-ext-500-normal.2hwdsrui_zphl.woff)format("woff");
  unicode-range:U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:500;
  src:url(media/plus-jakarta-sans-latin-500-normal.1evhelic1rxge.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-500-normal.0ovxcd3rb4vux.woff)format("woff");
  unicode-range:U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:600;
  src:url(media/plus-jakarta-sans-cyrillic-ext-600-normal.21hth67503ask.woff2)format("woff2"), url(media/plus-jakarta-sans-cyrillic-ext-600-normal.06z2bi1zgn__c.woff)format("woff");
  unicode-range:U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:600;
  src:url(media/plus-jakarta-sans-vietnamese-600-normal.0uos7e0hb0vh9.woff2)format("woff2"), url(media/plus-jakarta-sans-vietnamese-600-normal.3bl-erxcxetvl.woff)format("woff");
  unicode-range:U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:600;
  src:url(media/plus-jakarta-sans-latin-ext-600-normal.2mnwxc4ivfhul.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-ext-600-normal.07s-jvr3cnqdh.woff)format("woff");
  unicode-range:U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:600;
  src:url(media/plus-jakarta-sans-latin-600-normal.0p6sew1q6gl7s.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-600-normal.0zi76bk3y5qvy.woff)format("woff");
  unicode-range:U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:700;
  src:url(media/plus-jakarta-sans-cyrillic-ext-700-normal.1nhq2514h9x8o.woff2)format("woff2"), url(media/plus-jakarta-sans-cyrillic-ext-700-normal.1ib5jkckymo9d.woff)format("woff");
  unicode-range:U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:700;
  src:url(media/plus-jakarta-sans-vietnamese-700-normal.1z0ss10ckklg_.woff2)format("woff2"), url(media/plus-jakarta-sans-vietnamese-700-normal.2lsr2bj7wsvqp.woff)format("woff");
  unicode-range:U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:700;
  src:url(media/plus-jakarta-sans-latin-ext-700-normal.1l58qrcouh72i.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-ext-700-normal.2y7a0hldj3559.woff)format("woff");
  unicode-range:U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:700;
  src:url(media/plus-jakarta-sans-latin-700-normal.1dulefe5e4s81.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-700-normal.11xgn1hzdiyec.woff)format("woff");
  unicode-range:U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:800;
  src:url(media/plus-jakarta-sans-cyrillic-ext-800-normal.0ojkb6is8a7oe.woff2)format("woff2"), url(media/plus-jakarta-sans-cyrillic-ext-800-normal.2bu6-h4y8uo_c.woff)format("woff");
  unicode-range:U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:800;
  src:url(media/plus-jakarta-sans-vietnamese-800-normal.2lzwc5afbmc7w.woff2)format("woff2"), url(media/plus-jakarta-sans-vietnamese-800-normal.0ty0ete13dr7w.woff)format("woff");
  unicode-range:U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:800;
  src:url(media/plus-jakarta-sans-latin-ext-800-normal.1tng2c1ur2mkv.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-ext-800-normal.295rw7u83mr5p.woff)format("woff");
  unicode-range:U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:Plus Jakarta Sans;
  font-style:normal;
  font-display:swap;
  font-weight:800;
  src:url(media/plus-jakarta-sans-latin-800-normal.178wlc8rkc-ik.woff2)format("woff2"), url(media/plus-jakarta-sans-latin-800-normal.3jnt1uoqe3s6r.woff)format("woff");
  unicode-range:U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
  font-family:Sora;
  font-style:normal;
  font-display:swap;
  font-weight:600;
  src:url(media/sora-latin-ext-600-normal.2876cssq4pks4.woff2)format("woff2"), url(media/sora-latin-ext-600-normal.3pg9yl6g0rbwn.woff)format("woff");
  unicode-range:U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:Sora;
  font-style:normal;
  font-display:swap;
  font-weight:600;
  src:url(media/sora-latin-600-normal.0m9hhe9_r05oo.woff2)format("woff2"), url(media/sora-latin-600-normal.23oh4hf2t-9-e.woff)format("woff");
  unicode-range:U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
  font-family:Sora;
  font-style:normal;
  font-display:swap;
  font-weight:700;
  src:url(media/sora-latin-ext-700-normal.1zwb0dfstj1x_.woff2)format("woff2"), url(media/sora-latin-ext-700-normal.34b98q0_prf0m.woff)format("woff");
  unicode-range:U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:Sora;
  font-style:normal;
  font-display:swap;
  font-weight:700;
  src:url(media/sora-latin-700-normal.2sw16g-99ruu-.woff2)format("woff2"), url(media/sora-latin-700-normal.3lko8ma-1swrw.woff)format("woff");
  unicode-range:U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
  font-family:Sora;
  font-style:normal;
  font-display:swap;
  font-weight:800;
  src:url(media/sora-latin-ext-800-normal.1roaoszz3j08s.woff2)format("woff2"), url(media/sora-latin-ext-800-normal.1qlc80j9x_7h0.woff)format("woff");
  unicode-range:U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:Sora;
  font-style:normal;
  font-display:swap;
  font-weight:800;
  src:url(media/sora-latin-800-normal.15t47k6ozem97.woff2)format("woff2"), url(media/sora-latin-800-normal.3xc4et8ziutmz.woff)format("woff");
  unicode-range:U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
  font-family:DM Mono;
  font-style:normal;
  font-display:swap;
  font-weight:500;
  src:url(media/dm-mono-latin-ext-500-normal.3a8zr77el0ebr.woff2)format("woff2"), url(media/dm-mono-latin-ext-500-normal.18ptt7gd5u8o6.woff)format("woff");
  unicode-range:U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:DM Mono;
  font-style:normal;
  font-display:swap;
  font-weight:500;
  src:url(media/dm-mono-latin-500-normal.03h2ib040oua6.woff2)format("woff2"), url(media/dm-mono-latin-500-normal.3kj_vp6qk8arx.woff)format("woff");
  unicode-range:U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

:root {
  --ink:#151515;
  --muted:#5f6368;
  --paper:#fff;
  --panel:#fff;
  --line:#ece3da;
  --brand:#ce6303;
  --brand-dark:#9b4800;
  --brand-soft:#fff4e8;
  --cream:#fffaf5;
  --neutral:#f9fafb;
  --charcoal:#151515;
  --forest:#151515;
  --teal:#ce6303;
  --lime:#fff;
  --coral:#ce6303;
  --gold:#f4b44c;
  --sky:#6aa7f8;
  --shadow:0 24px 70px #1515151c
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth;
  overflow-x:hidden
}

body {
  color:var(--ink);
  background:var(--paper);
  margin:0;
  font-family:Plus Jakarta Sans, Arial, Helvetica, sans-serif;
  overflow-x:hidden
}

main {
  padding-top:78px;
  overflow-x:clip
}

a {
  color:inherit;
  text-decoration:none
}

img, svg, input, select, textarea, button {
  max-width:100%
}

.section-shell {
  width:min(1160px, 100% - 40px);
  margin:0 auto
}

.site-header {
  z-index:20;
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
  will-change:transform;
  background:#ffffffe6;
  border-bottom:1px solid #ece3dadb;
  transition:transform .22s, opacity .22s;
  position:fixed;
  top:0;
  left:0;
  right:0
}

.site-header.is-hidden {
  opacity:0;
  pointer-events:none;
  transform:translateY(-100%)
}

.navbar {
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:24px;
  min-height:78px;
  display:grid
}

.brand {
  align-items:center;
  gap:10px;
  font-size:1.2rem;
  font-weight:800;
  display:inline-flex
}

.brand img {
  object-fit:contain;
  width:168px;
  height:auto;
  display:block
}

.site-header .brand {
  box-shadow:none;
  background:0 0;
  border:0;
  border-radius:0;
  padding:0
}

.brand-mark {
  color:#fff;
  background:var(--brand);
  border-radius:8px;
  place-items:center;
  width:38px;
  height:38px;
  font-weight:900;
  display:inline-grid
}

.nav-links {
  color:#31413c;
  justify-content:center;
  align-items:center;
  gap:26px;
  font-size:.96rem;
  font-weight:700;
  display:flex
}

.nav-links a {
  transition:color .16s, transform .16s
}

.nav-links a:hover {
  color:var(--teal);
  transform:translateY(-1px)
}

.mobile-quote {
  display:none
}

.nav-cta {
  background:var(--brand);
  white-space:nowrap;
  border-radius:8px;
  justify-self:end;
  padding:12px 16px;
  font-size:.92rem;
  font-weight:800;
  transition:transform .16s, box-shadow .16s;
  color:#fff!important
}

.nav-cta:hover {
  transform:translateY(-1px);
  box-shadow:0 12px 26px #ce630338
}

.nav-toggle, .nav-button {
  display:none
}

.hero {
  background:var(--cream);
  border-bottom:1px solid var(--line);
  grid-template-columns:minmax(0, 1.04fr) minmax(340px, .96fr);
  align-items:center;
  gap:48px;
  padding:90px 0 78px;
  display:grid;
  position:relative
}

.hero-minimal {
  text-align:center;
  grid-template-columns:1fr;
  place-items:center;
  min-height:calc(100svh - 170px);
  display:grid
}

.hero-minimal .hero-copy {
  max-width:820px;
  margin:0 auto
}

.hero-minimal .hero-text {
  margin-inline:auto
}

.hero-minimal .hero-trust, .hero-minimal .hero-services, .hero-minimal .hero-actions {
  justify-content:center
}

.hero-badge {
  width:fit-content;
  color:var(--brand);
  text-transform:uppercase;
  background:0 0;
  border:0;
  border-radius:0;
  margin:0 auto 16px;
  padding:0;
  font-family:DM Mono, monospace;
  font-size:.78rem;
  font-weight:500
}

.hero:before {
  display:none
}

.eyebrow {
  color:var(--teal);
  letter-spacing:0;
  text-transform:uppercase;
  margin:0 0 14px;
  font-size:.82rem;
  font-weight:900
}

h1, h2, h3, p {
  margin-top:0
}

h1 {
  letter-spacing:0;
  max-width:780px;
  margin-bottom:20px;
  font-family:Sora, Arial, Helvetica, sans-serif;
  font-size:clamp(2.6rem, 5.6vw, 5.15rem);
  font-weight:800;
  line-height:1
}

h2 {
  letter-spacing:0;
  margin-bottom:0;
  font-family:Sora, Arial, Helvetica, sans-serif;
  font-size:clamp(2rem, 4vw, 3.6rem);
  font-weight:800;
  line-height:1.02
}

h3 {
  font-family:Sora, Arial, Helvetica, sans-serif;
  font-size:1.28rem;
  font-weight:700;
  line-height:1.2
}

.eyebrow, .card-tag, .process-top span, .mock-metrics span {
  font-family:DM Mono, monospace
}

.hero-text {
  max-width:560px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.7
}

.hero-actions {
  flex-wrap:wrap;
  gap:14px;
  display:flex
}

.hero-services {
  flex-wrap:wrap;
  gap:10px;
  margin:24px 0 30px;
  display:flex
}

.hero-services span {
  min-height:40px;
  color:var(--brand-dark);
  background:#fff;
  border:1px solid #ce63032e;
  border-radius:8px;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  font-size:.86rem;
  font-weight:900;
  display:inline-flex;
  box-shadow:0 8px 22px #1515150a
}

.hero-trust {
  flex-wrap:wrap;
  justify-content:center;
  gap:12px 18px;
  margin-top:26px;
  display:flex
}

.hero-trust span {
  color:var(--muted);
  align-items:center;
  gap:7px;
  font-size:.92rem;
  font-weight:800;
  display:inline-flex
}

.hero-trust svg {
  color:var(--brand);
  flex:none
}

.hero-trust-line {
  color:var(--muted);
  margin:24px 0 0;
  font-size:.92rem;
  font-weight:800
}

.button {
  border:1px solid var(--brand);
  border-radius:8px;
  justify-content:center;
  align-items:center;
  gap:8px;
  min-height:48px;
  padding:14px 20px;
  font-weight:900;
  transition:transform .16s, box-shadow .16s, background .16s;
  display:inline-flex
}

.button:hover {
  transform:translateY(-2px);
  box-shadow:0 16px 32px #13201d24
}

.button.primary {
  color:#fff;
  background:var(--brand)
}

.button.secondary {
  color:var(--brand-dark);
  background:0 0;
  border-color:#ce630359
}

.hero-visual {
  align-items:center;
  min-height:360px;
  display:grid;
  position:relative
}

.minimal-visual {
  background:var(--charcoal);
  color:#fff;
  border-radius:8px;
  align-content:center;
  min-height:330px;
  padding:42px;
  display:grid;
  box-shadow:0 28px 70px #1515152e
}

.visual-kicker {
  color:#ffb067;
  text-transform:uppercase;
  width:fit-content;
  margin-bottom:20px;
  font-family:DM Mono, monospace;
  font-size:.82rem;
  font-weight:500
}

.minimal-visual strong {
  max-width:360px;
  font-family:Sora, Arial, Helvetica, sans-serif;
  font-size:clamp(1.8rem, 3vw, 3rem);
  line-height:1.08
}

.visual-line {
  background:var(--brand);
  border-radius:999px;
  width:92px;
  height:4px;
  margin:26px 0 18px
}

.minimal-visual p {
  color:#ffffffc2;
  max-width:350px;
  margin:0;
  line-height:1.7
}

.hero-showcase {
  border:1px solid var(--line);
  background:#fff;
  border-radius:8px;
  overflow:hidden;
  box-shadow:0 30px 80px #15151524
}

.showcase-header {
  background:var(--charcoal);
  color:#fff;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  height:54px;
  padding:0 20px;
  display:flex
}

.showcase-header span {
  color:#ffb067;
  font-family:DM Mono, monospace;
  font-size:.78rem
}

.showcase-screen {
  background:linear-gradient(135deg, #fff, var(--cream));
  grid-template-columns:1.2fr .8fr;
  gap:18px;
  min-height:374px;
  padding:22px;
  display:grid
}

.showcase-copy {
  background:var(--brand-soft);
  border:1px solid #ce630329;
  border-radius:8px;
  align-content:end;
  min-height:330px;
  padding:24px;
  display:grid
}

.showcase-copy>span {
  background:linear-gradient(135deg, var(--brand), var(--brand-dark));
  border-radius:8px;
  width:78px;
  height:78px;
  margin-bottom:auto
}

.showcase-copy strong {
  margin-bottom:10px;
  font-family:Sora, Arial, Helvetica, sans-serif;
  font-size:1.55rem;
  line-height:1.12
}

.showcase-copy p {
  color:var(--muted);
  margin:0;
  line-height:1.6
}

.showcase-cards {
  gap:14px;
  display:grid
}

.showcase-cards div {
  border:1px solid var(--line);
  min-height:96px;
  color:var(--brand);
  background:#fff;
  border-radius:8px;
  align-items:center;
  gap:10px;
  padding:18px;
  font-weight:900;
  display:flex
}

.showcase-cards span {
  color:var(--ink)
}

.campaign-card, .clinic-card {
  background:#fff;
  border:1px solid #ce63032e;
  border-radius:8px;
  position:absolute;
  box-shadow:0 22px 54px #15151529
}

.campaign-card {
  width:246px;
  padding:18px;
  bottom:22px;
  right:-16px
}

.campaign-card>div:first-child, .clinic-card {
  align-items:center;
  gap:10px;
  display:flex
}

.campaign-card p {
  color:var(--muted);
  margin:0;
  font-size:.8rem;
  font-weight:900
}

.campaign-card strong {
  margin:12px 0 14px;
  display:block
}

.mini-chart {
  align-items:end;
  gap:8px;
  height:54px;
  display:flex
}

.mini-chart span {
  background:var(--brand);
  border-radius:6px 6px 0 0;
  flex:1
}

.mini-chart span:first-child {
  height:44%
}

.mini-chart span:nth-child(2) {
  background:var(--gold);
  height:68%
}

.mini-chart span:nth-child(3) {
  background:var(--brand-dark);
  height:54%
}

.mini-chart span:nth-child(4) {
  background:var(--charcoal);
  height:88%
}

.clinic-card {
  width:260px;
  color:var(--brand);
  padding:16px;
  top:52px;
  left:-18px
}

.clinic-card strong, .clinic-card span {
  display:block
}

.clinic-card strong {
  color:var(--ink)
}

.clinic-card span {
  color:var(--muted);
  font-size:.82rem;
  font-weight:800
}

.browser-card {
  background:var(--panel);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  border-radius:8px;
  overflow:hidden
}

.browser-top {
  background:var(--brand-soft);
  border-bottom:1px solid var(--line);
  align-items:center;
  gap:8px;
  height:46px;
  padding:0 18px;
  display:flex
}

.browser-top span {
  background:var(--coral);
  border-radius:50%;
  width:10px;
  height:10px
}

.browser-top span:nth-child(2) {
  background:var(--gold)
}

.browser-top span:nth-child(3) {
  background:var(--charcoal)
}

.mock-grid {
  grid-template-columns:104px 1fr;
  min-height:365px;
  display:grid
}

.mock-sidebar {
  background:var(--charcoal);
  align-content:start;
  gap:16px;
  padding:24px 18px;
  display:grid
}

.mock-sidebar span {
  background:#ffffff52;
  border-radius:999px;
  height:12px
}

.mock-main {
  padding:28px
}

.mock-hero-line {
  background:linear-gradient(90deg, #ce63033d, transparent 70%), var(--brand-soft);
  border-radius:8px;
  width:min(320px, 100%);
  height:84px;
  margin-bottom:24px
}

.mock-metrics {
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
  margin-bottom:28px;
  display:grid
}

.mock-metrics div {
  border:1px solid var(--line);
  background:#fff;
  border-radius:8px;
  min-height:94px;
  padding:16px
}

.mock-metrics strong {
  margin-bottom:8px;
  font-size:1.3rem;
  display:block
}

.mock-metrics span {
  color:var(--muted);
  font-size:.78rem;
  font-weight:700
}

.chart-bars {
  background:var(--cream);
  border-radius:8px;
  align-items:end;
  gap:12px;
  height:114px;
  padding:16px;
  display:flex
}

.chart-bars span {
  background:var(--teal);
  border-radius:7px 7px 0 0;
  flex:1;
  min-width:14px
}

.chart-bars span:first-child {
  height:38%
}

.chart-bars span:nth-child(2) {
  background:var(--sky);
  height:56%
}

.chart-bars span:nth-child(3) {
  height:45%
}

.chart-bars span:nth-child(4) {
  background:var(--gold);
  height:78%
}

.chart-bars span:nth-child(5) {
  background:var(--brand-dark);
  height:64%
}

.chart-bars span:nth-child(6) {
  background:var(--charcoal);
  height:92%
}

.floating-panel {
  background:var(--charcoal);
  color:#fff;
  width:min(292px, 100% - 20px);
  box-shadow:var(--shadow);
  border-radius:8px;
  align-items:center;
  gap:12px;
  padding:16px;
  display:flex;
  position:absolute;
  bottom:42px;
  right:-18px
}

.floating-panel strong, .floating-panel span {
  display:block
}

.floating-panel span:last-child {
  color:#ffffffb8;
  font-size:.85rem
}

.pulse {
  background:var(--brand);
  border-radius:50%;
  flex:none;
  width:14px;
  height:14px;
  box-shadow:0 0 0 8px #ce630329
}

.trust-strip {
  border-block:1px solid var(--line);
  background:var(--brand-soft)
}

.trust-items {
  grid-template-columns:repeat(4, 1fr);
  gap:12px;
  padding:18px 0;
  display:grid
}

.trust-items span {
  min-height:72px;
  color:var(--charcoal);
  text-align:center;
  background:#ffffffc7;
  border:1px solid #ce63031f;
  border-radius:8px;
  justify-content:center;
  align-items:center;
  gap:10px;
  padding:16px;
  font-weight:900;
  display:flex;
  box-shadow:0 10px 24px #1515150a
}

.trust-items svg {
  color:var(--teal);
  flex:none
}

.section-block {
  padding:96px 0
}

.section-heading {
  max-width:760px;
  margin-bottom:34px
}

.section-heading.compact {
  text-align:center;
  max-width:700px;
  margin-inline:auto
}

.seo-intro {
  grid-template-columns:.95fr 1.05fr;
  align-items:stretch;
  gap:28px;
  padding:74px 0 0;
  display:grid
}

.seo-intro-copy {
  background:var(--cream);
  border:1px solid var(--line);
  border-radius:8px;
  padding:34px
}

.seo-intro-copy h2 {
  max-width:560px;
  margin:0 0 18px;
  font-size:clamp(1.75rem, 3vw, 2.65rem);
  line-height:1.12
}

.seo-intro-copy p:not(.eyebrow) {
  color:var(--muted);
  margin:0;
  line-height:1.75
}

.seo-intro-panel {
  background:var(--charcoal);
  box-shadow:var(--shadow);
  border:1px solid #1515151a;
  border-radius:8px;
  gap:18px;
  padding:24px;
  display:grid
}

.seo-panel-label {
  color:#ffffff9e;
  letter-spacing:0;
  text-transform:uppercase;
  margin-bottom:12px;
  font-family:DM Mono, monospace;
  font-size:.72rem;
  font-weight:500;
  display:block
}

.seo-focus-list {
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  display:grid
}

.seo-focus-list span {
  color:#fff;
  background:#ffffff14;
  border:1px solid #ffffff1f;
  border-radius:8px;
  align-items:center;
  gap:9px;
  min-height:54px;
  padding:13px 14px;
  font-weight:850;
  display:flex
}

.seo-focus-list svg {
  color:var(--brand);
  stroke-width:2.6px;
  flex:none
}

.seo-area-tags {
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
  display:grid
}

.seo-area-tags span {
  color:#fff;
  text-align:center;
  background:#ce6303e6;
  border:1px solid #ffffff1f;
  border-radius:999px;
  place-items:center;
  min-height:44px;
  padding:8px 10px;
  font-size:.78rem;
  font-weight:900;
  display:grid
}

.service-grid {
  grid-template-columns:repeat(2, 1fr);
  gap:20px;
  display:grid
}

.service-card {
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:8px;
  grid-template-rows:auto 1fr auto;
  min-height:300px;
  padding:30px;
  transition:transform .18s, border-color .18s, box-shadow .18s;
  display:grid;
  position:relative;
  overflow:hidden;
  box-shadow:0 12px 34px #1515150e
}

.service-card:before {
  content:"";
  background:var(--brand);
  pointer-events:none;
  width:5px;
  position:absolute;
  inset:0 auto 0 0
}

.service-card:hover {
  border-color:#ce630359;
  transform:translateY(-4px);
  box-shadow:0 22px 58px #1515151a
}

.service-card-top {
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:26px;
  display:flex
}

.icon-box {
  color:#fff;
  background:var(--brand);
  border:0;
  border-radius:8px;
  place-items:center;
  width:58px;
  height:58px;
  display:grid;
  box-shadow:0 14px 28px #ce63032e
}

.icon-box svg {
  stroke-width:2.2px
}

.card-tag {
  width:fit-content;
  color:var(--brand-dark);
  background:var(--brand-soft);
  border:1px solid var(--line);
  border-radius:8px;
  padding:8px 11px;
  font-size:.78rem;
  font-weight:900
}

.service-outcome {
  width:fit-content;
  color:var(--brand);
  text-transform:uppercase;
  margin-bottom:14px;
  font-family:DM Mono, monospace;
  font-size:.74rem;
  font-weight:500
}

.service-card h3 {
  margin-bottom:12px;
  font-size:1.55rem
}

.service-card p {
  max-width:560px;
  color:var(--muted);
  line-height:1.7
}

.service-points {
  grid-template-columns:repeat(3, 1fr);
  gap:10px;
  margin:8px 0 26px;
  display:grid
}

.service-points span {
  min-height:42px;
  color:var(--ink);
  background:var(--neutral);
  text-align:center;
  border:1px solid #ce630329;
  border-radius:8px;
  justify-content:center;
  align-items:center;
  padding:8px 10px;
  font-size:.74rem;
  font-weight:900;
  display:flex
}

.service-whatsapp {
  color:#fff;
  background:var(--brand);
  border:1px solid var(--brand);
  border-radius:8px;
  justify-content:center;
  align-items:center;
  gap:6px;
  width:fit-content;
  min-height:46px;
  padding:12px 16px;
  font-weight:900;
  transition:background .18s, border-color .18s, box-shadow .18s, transform .18s;
  display:inline-flex;
  box-shadow:0 12px 28px #ce63032e
}

.service-whatsapp:hover {
  background:var(--brand-dark);
  border-color:var(--brand-dark);
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 18px 38px #ce63033d
}

.service-whatsapp svg {
  flex:none
}

.why-section {
  background:var(--charcoal);
  color:#fff;
  padding:86px 0
}

.why-section .eyebrow, .why-section .section-heading h2 {
  color:#fff
}

.why-layout {
  grid-template-columns:.9fr 1.1fr;
  align-items:start;
  gap:54px;
  display:grid
}

.why-grid {
  grid-template-columns:repeat(2, 1fr);
  gap:14px;
  display:grid
}

.why-item {
  background:#ffffff14;
  border:1px solid #ffffff21;
  border-radius:8px;
  align-items:center;
  gap:12px;
  min-height:76px;
  padding:18px;
  display:flex
}

.why-item span {
  color:#fff;
  background:var(--brand);
  border-radius:50%;
  flex:none;
  place-items:center;
  width:28px;
  height:28px;
  font-weight:900;
  display:grid
}

.why-item svg {
  stroke-width:2.4px
}

.why-item p {
  margin:0;
  font-weight:800
}

.process-grid {
  grid-template-columns:repeat(4, 1fr);
  gap:18px;
  display:grid;
  position:relative
}

.process-grid:before {
  content:"";
  background:linear-gradient(90deg, #ce63031f, #ce63037a, #ce63031f);
  height:2px;
  position:absolute;
  top:39px;
  left:12%;
  right:12%
}

.process-card {
  border:1px solid var(--line);
  background:#fff;
  border-radius:8px;
  min-height:248px;
  padding:24px;
  transition:transform .18s, border-color .18s, box-shadow .18s;
  position:relative;
  box-shadow:0 12px 34px #1515150e
}

.process-card:hover {
  border-color:#ce630357;
  transform:translateY(-5px);
  box-shadow:0 22px 54px #ce63031f
}

.process-top {
  color:var(--teal);
  justify-content:space-between;
  align-items:center;
  margin-bottom:30px;
  display:flex
}

.process-top span {
  color:#fff;
  background:var(--brand);
  border:4px solid #fff;
  border-radius:50%;
  place-items:center;
  width:54px;
  height:54px;
  font-size:.86rem;
  font-weight:900;
  display:grid;
  box-shadow:0 12px 28px #ce63032e
}

.process-top svg {
  color:var(--brand);
  stroke-width:2.2px
}

.process-card h3 {
  margin-bottom:12px;
  font-size:1.22rem
}

.process-card p {
  color:var(--muted);
  line-height:1.55
}

.portfolio-section {
  background:var(--neutral)
}

.portfolio-top {
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin-bottom:10px;
  display:flex
}

.portfolio-slider {
  gap:20px;
  display:grid
}

.portfolio-window {
  overflow:hidden
}

.portfolio-track {
  transform:translateX(calc(var(--portfolio-index) * -1 * ((100% - (20px * (var(--portfolio-per-view) - 1))) / var(--portfolio-per-view) + 20px)));
  gap:20px;
  transition:transform .36s;
  display:flex
}

.project-card {
  flex:0 0 calc((100% - (20px * (var(--portfolio-per-view) - 1))) / var(--portfolio-per-view));
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:8px;
  min-height:430px;
  padding:18px;
  transition:transform .18s, border-color .18s, box-shadow .18s;
  box-shadow:0 14px 44px #13201d14
}

.project-card:hover {
  border-color:#ce630347;
  transform:translateY(-5px);
  box-shadow:0 24px 56px #ce63031a
}

.project-mock {
  aspect-ratio:1.55;
  border:1px solid var(--line);
  background:#fff;
  border-radius:8px;
  height:auto;
  margin-bottom:22px;
  overflow:hidden
}

.project-mock img {
  object-fit:cover;
  width:100%;
  height:100%;
  transition:transform .22s;
  display:block
}

.project-card:hover .project-mock img {
  transform:scale(1.035)
}

.project-card p {
  color:var(--teal);
  font-weight:900
}

.project-tags {
  grid-template-columns:repeat(3, minmax(0, 1fr));
  align-items:stretch;
  gap:8px;
  display:grid
}

.project-tags span {
  color:#31413c;
  background:var(--brand-soft);
  border:1px solid var(--line);
  text-align:center;
  border-radius:999px;
  justify-content:center;
  align-items:center;
  min-height:42px;
  padding:8px 10px;
  font-size:.78rem;
  font-weight:850;
  line-height:1.15;
  display:inline-flex
}

.product-features span {
  color:#31413c;
  background:var(--brand-soft);
  border:1px solid var(--line);
  border-radius:999px;
  padding:8px 10px;
  font-size:.84rem;
  font-weight:800
}

.portfolio-controls {
  justify-content:center;
  align-items:center;
  gap:16px;
  display:flex
}

.portfolio-controls button {
  width:42px;
  height:42px;
  color:var(--brand);
  cursor:pointer;
  background:#fff;
  border:1px solid #ce630338;
  border-radius:8px;
  place-items:center;
  transition:background .18s, color .18s, transform .18s;
  display:grid
}

.portfolio-controls button:hover {
  color:#fff;
  background:var(--brand);
  transform:translateY(-2px)
}

.portfolio-dots {
  align-items:center;
  gap:7px;
  display:flex
}

.portfolio-dots span {
  background:#ce63033d;
  border-radius:999px;
  width:8px;
  height:8px;
  transition:width .18s, background .18s
}

.portfolio-dots .active {
  background:var(--brand);
  width:22px
}

.testimonial-slider {
  gap:20px;
  display:grid
}

.testimonial-window {
  overflow:hidden
}

.testimonial-track {
  transform:translateX(calc(var(--testimonial-index) * -1 * ((100% - (20px * (var(--testimonial-per-view) - 1))) / var(--testimonial-per-view) + 20px)));
  gap:20px;
  transition:transform .36s;
  display:flex
}

.testimonial-card {
  flex:0 0 calc((100% - (20px * (var(--testimonial-per-view) - 1))) / var(--testimonial-per-view));
  border:1px solid var(--line);
  background:#fff;
  border-radius:8px;
  align-content:space-between;
  min-height:318px;
  padding:26px;
  transition:transform .18s, border-color .18s, box-shadow .18s;
  display:grid;
  box-shadow:0 12px 34px #1515150e
}

.testimonial-card:hover {
  border-color:#ce630357;
  transform:translateY(-5px);
  box-shadow:0 22px 54px #ce63031c
}

.quote-mark {
  color:var(--brand);
  font-family:Sora, Arial, Helvetica, sans-serif;
  font-size:3.2rem;
  font-weight:800;
  line-height:.8
}

.testimonial-card p {
  color:var(--muted);
  margin:18px 0 28px;
  line-height:1.75
}

.testimonial-card strong, .testimonial-card span {
  display:block
}

.testimonial-card strong {
  color:var(--ink);
  margin-bottom:6px;
  font-weight:900
}

.testimonial-card span {
  color:var(--brand);
  font-size:.86rem;
  font-weight:800
}

.testimonial-controls {
  justify-content:center;
  align-items:center;
  gap:16px;
  display:flex
}

.testimonial-controls button {
  width:42px;
  height:42px;
  color:var(--brand);
  cursor:pointer;
  background:#fff;
  border:1px solid #ce630338;
  border-radius:8px;
  place-items:center;
  transition:background .18s, color .18s, transform .18s;
  display:grid
}

.testimonial-controls button:hover {
  color:#fff;
  background:var(--brand);
  transform:translateY(-2px)
}

.testimonial-dots {
  align-items:center;
  gap:7px;
  display:flex
}

.testimonial-dots span {
  background:#ce63033d;
  border-radius:999px;
  width:8px;
  height:8px;
  transition:width .18s, background .18s
}

.testimonial-dots .active {
  background:var(--brand);
  width:22px
}

.faq-section {
  padding-top:20px
}

.faq-grid {
  grid-template-columns:repeat(2, 1fr);
  gap:16px;
  display:grid
}

.faq-item {
  border:1px solid var(--line);
  background:#fff;
  border-radius:8px;
  padding:24px;
  box-shadow:0 12px 34px #1515150e
}

.faq-item h3 {
  margin-bottom:12px;
  font-size:1.05rem
}

.faq-item p {
  color:var(--muted);
  margin:0;
  line-height:1.65
}

.product-features span {
  align-items:center;
  gap:7px;
  display:inline-flex
}

.tech-section {
  padding:86px 0
}

.tech-strip {
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:16px;
  max-width:1120px;
  margin:0 auto;
  display:grid
}

.tech-logo {
  min-height:104px;
  color:var(--ink);
  border:1px solid var(--line);
  text-align:left;
  background:#fff;
  border-radius:8px;
  justify-content:center;
  align-items:center;
  gap:12px;
  padding:18px;
  font-size:.82rem;
  font-weight:900;
  transition:transform .18s, border-color .18s, box-shadow .18s, background .18s;
  display:flex;
  box-shadow:0 10px 28px #1515150d
}

.tech-logo:hover {
  background:var(--brand-soft);
  border-color:#ce630361;
  transform:translateY(-5px);
  box-shadow:0 18px 42px #ce630324
}

.tech-logo svg {
  width:28px;
  height:28px;
  transition:transform .18s
}

.tech-logo:hover svg {
  transform:scale(1.12)
}

.product-section {
  grid-template-columns:1fr .9fr;
  align-items:center;
  gap:42px;
  padding:78px 0 98px;
  display:grid
}

.product-copy p {
  max-width:620px;
  color:var(--muted);
  line-height:1.7
}

.product-features {
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  max-width:620px;
  margin:24px 0 28px;
  display:grid
}

.product-features span {
  text-align:center;
  justify-content:center;
  min-height:42px
}

.product-dashboard {
  background:var(--panel);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  border-radius:8px;
  padding:24px
}

.dash-row {
  border-bottom:1px solid var(--line);
  justify-content:space-between;
  gap:18px;
  margin-bottom:20px;
  padding-bottom:18px;
  display:flex
}

.dash-row span {
  color:var(--muted);
  font-weight:800
}

.dash-list {
  gap:12px;
  display:grid
}

.dash-list div {
  background:var(--cream);
  border-radius:8px;
  grid-template-columns:64px 1fr auto;
  align-items:center;
  gap:14px;
  padding:14px;
  display:grid
}

.dash-list span, .dash-list strong {
  color:var(--teal);
  font-size:.84rem;
  font-weight:900
}

.dash-list p {
  margin:0;
  font-weight:800
}

.final-cta {
  color:#fff;
  background:var(--charcoal);
  padding:96px 0
}

.quote-layout {
  grid-template-columns:.86fr 1.14fr;
  align-items:center;
  gap:54px;
  display:grid
}

.final-cta .eyebrow {
  color:#ffb067
}

.quote-copy h2 {
  max-width:540px;
  margin-bottom:18px
}

.quote-copy p {
  color:#d6d6d6;
  max-width:560px;
  font-size:1.08rem;
  line-height:1.75
}

.quote-points {
  gap:12px;
  margin-top:28px;
  display:grid
}

.quote-points span {
  color:#fff;
  align-items:center;
  gap:10px;
  font-weight:800;
  display:inline-flex
}

.quote-points svg {
  color:#ffb067
}

.quote-form {
  color:var(--ink);
  background:#fff;
  border:1px solid #ffffff24;
  border-radius:8px;
  grid-template-columns:repeat(2, 1fr);
  gap:16px;
  padding:28px;
  display:grid;
  box-shadow:0 30px 90px #00000047
}

.form-row {
  gap:8px;
  display:grid
}

.form-row.full {
  grid-column:1/-1
}

.form-row label {
  color:var(--ink);
  font-size:.86rem;
  font-weight:900
}

.form-row label span {
  color:var(--muted);
  font-weight:700
}

.form-row input, .form-row select, .form-row textarea {
  border:1px solid var(--line);
  background:var(--cream);
  width:100%;
  color:var(--ink);
  font:inherit;
  border-radius:8px;
  outline:0;
  font-size:.95rem;
  transition:border-color .16s, box-shadow .16s, background .16s
}

.form-row input, .form-row select {
  height:50px;
  padding:0 14px
}

.form-row textarea {
  resize:vertical;
  min-height:126px;
  padding:14px
}

.form-row input:focus, .form-row select:focus, .form-row textarea:focus {
  border-color:var(--brand);
  background:#fff;
  box-shadow:0 0 0 4px #ce63031f
}

.quote-button {
  cursor:pointer;
  grid-column:1/-1;
  width:100%
}

.quote-button:disabled {
  cursor:wait;
  opacity:.78
}

.form-message {
  border-radius:8px;
  grid-column:1/-1;
  margin:0;
  padding:12px 14px;
  font-size:.92rem;
  font-weight:800
}

.form-message.success {
  color:#17663a;
  background:#eaf8ef;
  border:1px solid #bee8ce
}

.form-message.error {
  color:#9b2f00;
  background:#fff4e8;
  border:1px solid #ce630340
}

.button.light.primary {
  color:var(--charcoal);
  background:#fff;
  border-color:#fff
}

.button.light.secondary {
  color:#fff;
  border-color:#ffffff6b
}

.footer {
  color:#dce8e2;
  background:var(--charcoal);
  padding-top:64px
}

.footer-grid {
  grid-template-columns:1.4fr repeat(3, 1fr);
  gap:34px;
  display:grid
}

.footer p {
  color:#aebfba;
  max-width:340px;
  line-height:1.7
}

.footer h3 {
  color:#fff;
  margin-bottom:16px;
  font-size:1rem
}

.footer a, .footer span {
  color:#c5d5d0;
  margin-bottom:11px;
  font-weight:700;
  display:block
}

.footer-brand {
  background:#fff;
  border:1px solid #ffffff29;
  border-radius:8px;
  width:fit-content;
  margin-bottom:16px;
  padding:10px 12px
}

.footer-brand img {
  width:178px;
  height:auto
}

.socials {
  gap:10px;
  margin-top:12px;
  display:flex
}

.socials a {
  background:#ffffff14;
  border:1px solid #ffffff29;
  border-radius:8px;
  place-items:center;
  width:36px;
  height:36px;
  margin:0;
  display:grid
}

.socials svg {
  color:#fff
}

.copyright {
  color:#aebfba;
  border-top:1px solid #ffffff1f;
  margin-top:44px;
  padding:20px 0
}

.floating-whatsapp {
  z-index:18;
  color:#fff;
  background:var(--brand);
  border:1px solid var(--brand);
  border-radius:999px;
  justify-content:center;
  align-items:center;
  gap:9px;
  min-height:54px;
  padding:14px 18px;
  font-weight:900;
  transition:transform .18s, background .18s, box-shadow .18s;
  display:inline-flex;
  position:fixed;
  bottom:22px;
  right:22px;
  box-shadow:0 18px 42px #ce630347
}

.floating-whatsapp:hover {
  color:#fff;
  background:var(--brand-dark);
  transform:translateY(-3px);
  box-shadow:0 24px 54px #ce630357
}

.floating-whatsapp svg {
  flex:none
}

@media (max-width:980px) {
  .hero, .why-layout, .product-section, .quote-layout {
  grid-template-columns:1fr
}

.hero {
  padding-top:52px
}

.hero-visual {
  min-height:auto
}

.campaign-card, .clinic-card {
  width:100%;
  margin-top:14px;
  position:relative;
  inset:auto
}

.service-grid, .process-grid {
  grid-template-columns:repeat(2, 1fr)
}

.seo-intro, .faq-grid {
  grid-template-columns:1fr
}

.footer-grid {
  grid-template-columns:1fr 1fr
}

.trust-items {
  grid-template-columns:repeat(2, 1fr)
}

.tech-strip {
  grid-template-columns:repeat(3, 1fr)
}

}

@media (max-width:760px) {
  main {
  padding-top:68px
}

.section-shell {
  width:min(100% - 28px, 1160px)
}

.navbar {
  grid-template-columns:1fr auto;
  min-height:68px
}

.brand img {
  width:138px
}

.nav-cta {
  display:none
}

.nav-button {
  border:1px solid var(--line);
  cursor:pointer;
  background:#fff;
  border-radius:8px;
  place-content:center;
  gap:5px;
  width:42px;
  height:42px;
  display:grid
}

.nav-button span {
  background:var(--ink);
  width:18px;
  height:2px
}

.nav-links {
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  background:#fff;
  border-radius:8px;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  padding:12px;
  display:none;
  position:absolute;
  top:68px;
  left:14px;
  right:14px
}

.nav-links a {
  text-align:center;
  padding:13px
}

.nav-links .mobile-quote {
  color:#fff;
  background:var(--brand);
  text-align:center;
  border-radius:8px;
  margin-top:8px;
  display:block
}

.nav-toggle:checked~.nav-links {
  display:flex
}

h1 {
  font-size:clamp(2.25rem, 11vw, 3.4rem);
  line-height:1.04
}

h2 {
  font-size:clamp(1.75rem, 7.5vw, 2.35rem);
  line-height:1.1
}

.hero {
  gap:34px;
  padding:44px 0 38px
}

.hero-minimal {
  text-align:center;
  min-height:auto
}

.hero-minimal .hero-services, .hero-minimal .hero-trust, .hero-minimal .hero-actions {
  justify-content:center
}

.hero-badge {
  margin-left:auto;
  margin-right:auto
}

.hero-text {
  font-size:1rem
}

.hero-services span {
  flex:100%;
  justify-content:center
}

.hero-actions .button {
  width:100%
}

.hero-trust {
  grid-template-columns:1fr 1fr;
  gap:10px;
  display:grid
}

.hero-trust-line {
  line-height:1.8
}

.mock-grid {
  grid-template-columns:74px 1fr
}

.mock-main {
  padding:18px
}

.mock-metrics {
  grid-template-columns:1fr
}

.hero:before {
  inset:18px 0 12px
}

.showcase-screen {
  grid-template-columns:1fr
}

.showcase-copy {
  min-height:240px
}

.minimal-visual {
  min-height:230px;
  padding:26px
}

.minimal-visual strong {
  font-size:1.8rem
}

.floating-panel {
  margin:-24px auto 0;
  position:relative;
  bottom:auto;
  right:auto
}

.service-grid, .why-grid, .process-grid, .footer-grid {
  grid-template-columns:1fr
}

.process-grid:before {
  display:none
}

.tech-strip {
  grid-template-columns:repeat(3, 1fr);
  gap:12px
}

.tech-logo {
  text-align:center;
  flex-direction:column;
  gap:7px;
  min-height:82px;
  padding:12px 6px;
  font-size:.68rem
}

.tech-logo svg {
  width:24px;
  height:24px
}

.section-block {
  padding:64px 0
}

.seo-intro {
  gap:20px;
  padding:58px 0 0
}

.seo-intro-copy, .seo-intro-panel {
  padding:22px
}

.seo-focus-list, .seo-area-tags {
  grid-template-columns:repeat(2, minmax(0, 1fr))
}

.portfolio-top {
  align-items:start;
  display:grid
}

.portfolio-top .button {
  width:100%
}

.service-card {
  min-height:auto;
  padding:24px
}

.service-points {
  grid-template-columns:1fr
}

.service-whatsapp {
  width:100%
}

.process-card {
  min-height:auto
}

.product-section {
  padding:64px 0
}

.product-features span {
  flex:initial;
  white-space:normal;
  justify-content:center;
  min-width:0;
  padding:8px 6px;
  font-size:.72rem;
  line-height:1.2
}

.product-features span svg {
  flex:none;
  width:13px;
  height:13px
}

.dash-row, .dash-list div {
  grid-template-columns:1fr
}

.footer {
  padding-top:52px
}

.quote-form {
  grid-template-columns:1fr;
  padding:20px
}

.quote-copy p {
  font-size:1rem
}

.floating-whatsapp {
  min-height:50px;
  padding:13px 15px;
  bottom:14px;
  right:14px
}

}

@media (max-width:430px) {
  .section-shell {
  width:min(100% - 22px, 1160px)
}

.brand img {
  width:122px
}

.nav-button {
  width:40px;
  height:40px
}

.hero:before {
  inset:12px 0 8px
}

.hero-services {
  margin:20px 0 24px
}

.hero-trust {
  grid-template-columns:1fr
}

.seo-intro-copy, .seo-intro-panel {
  padding:18px
}

.seo-focus-list {
  grid-template-columns:1fr
}

.seo-area-tags {
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px
}

.seo-area-tags span {
  min-height:40px;
  font-size:.72rem
}

.floating-whatsapp span {
  display:none
}

.floating-whatsapp {
  width:52px;
  height:52px;
  padding:0
}

.button {
  min-height:46px;
  padding:12px 14px;
  font-size:.92rem
}

.minimal-visual {
  padding:22px
}

.trust-items span {
  text-align:left;
  justify-content:flex-start;
  min-height:64px
}

.service-card-top {
  flex-direction:column;
  align-items:flex-start
}

.project-card {
  min-height:auto
}

.project-tags {
  gap:6px
}

.project-tags span {
  min-height:38px;
  padding:7px 5px;
  font-size:.68rem
}

.tech-strip {
  grid-template-columns:repeat(3, 1fr)
}

.quote-layout {
  gap:30px
}

.quote-form {
  padding:16px
}

.form-row input, .form-row select {
  height:48px
}

.footer-grid {
  gap:24px
}

}

@media (max-width:980px) {
  .process-grid:before {
  display:none
}

}

@media (max-width:640px) {
  .section-shell {
  width:min(100% - 24px, 1160px)
}

.navbar {
  gap:12px
}

.nav-links {
  max-height:calc(100vh - 88px);
  overflow-y:auto
}

.hero {
  grid-template-columns:1fr;
  padding:42px 0 38px
}

.hero:before {
  inset:10px 0 8px
}

.hero-services {
  gap:8px
}

.trust-items {
  grid-template-columns:1fr;
  gap:10px;
  padding:14px 0
}

.trust-items span {
  text-align:left;
  justify-content:flex-start;
  min-height:58px
}

.service-card, .project-card, .process-card, .product-dashboard, .quote-form {
  width:100%
}

.tech-strip {
  grid-template-columns:repeat(3, 1fr)
}

.tech-logo {
  text-align:center;
  flex-direction:column;
  justify-content:center;
  min-height:72px;
  padding:10px 5px
}

.quote-layout {
  gap:34px
}

.footer-grid {
  grid-template-columns:1fr
}

}

@media (max-width:360px) {
  .section-shell {
  width:min(100% - 18px, 1160px)
}

h1 {
  font-size:2rem
}

h2 {
  font-size:1.55rem
}

.brand img {
  width:112px
}

.minimal-visual, .service-card, .quote-form {
  padding:18px
}

.service-card h3 {
  font-size:1.32rem
}

}

/* Quote form alignment fix */
.quote-form {
  align-items: start;
}

.form-row.full {
  gap: 8px;
}

.form-row textarea {
  display: block;
  min-height: 112px;
  line-height: 1.5;
  vertical-align: top;
}

/* WhatsApp click reminder */
.floating-whatsapp {
  animation: whatsapp-bounce 3.2s ease-in-out infinite;
  box-shadow: 0 18px 38px rgba(37, 211, 102, .32), 0 0 0 0 rgba(37, 211, 102, .32);
}

.floating-whatsapp::after {
  content: "";
  position: absolute;
  inset: -6px;
  border: 1px solid rgba(37, 211, 102, .45);
  border-radius: inherit;
  animation: whatsapp-pulse 3.2s ease-out infinite;
  pointer-events: none;
}

.floating-whatsapp:hover {
  animation-play-state: paused;
}

@keyframes whatsapp-bounce {
  0%, 62%, 100% { transform: translateY(0); }
  70% { transform: translateY(-8px); }
  78% { transform: translateY(0); }
  86% { transform: translateY(-4px); }
  94% { transform: translateY(0); }
}

@keyframes whatsapp-pulse {
  0%, 62% { opacity: 0; transform: scale(.95); }
  72% { opacity: .65; }
  100% { opacity: 0; transform: scale(1.28); }
}

@media (prefers-reduced-motion: reduce) {
  .floating-whatsapp,
  .floating-whatsapp::after {
    animation: none;
  }
}
/* WhatsApp official color */
.floating-whatsapp {
  background: #25d366;
  border-color: #25d366;
  box-shadow: 0 18px 38px rgba(37, 211, 102, .32), 0 0 0 0 rgba(37, 211, 102, .32);
}

.floating-whatsapp:hover {
  background: #128c4a;
  border-color: #128c4a;
  box-shadow: 0 24px 54px rgba(37, 211, 102, .36);
}
