:root {
  --ink: #11120f;
  --muted: #66685f;
  --paper: #fbfaf6;
  --white: #ffffff;
  --brand: #f6b516;
  --brand-deep: #e69b00;
  --green: #2f7d54;
  --line: rgba(17, 18, 15, 0.12);
  --shadow: 0 30px 80px rgba(44, 36, 9, 0.14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top:100px; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: "DM Sans", sans-serif; }
a { color: inherit; text-decoration: none; }

.site-header {
  width: min(1180px, calc(100% - 40px));
  height: 86px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.brand { display: inline-flex; align-items: center; gap: 7px; font: 800 32px/1 "Manrope"; letter-spacing: -2px; }
.brand small { margin-left: 0; color: #ffb923; font-size: 10px; letter-spacing: 1.8px; vertical-align: middle; }
.brand-original { display: block; width: 94px; height: 38px; flex: 0 0 auto; }
.brand-original img { display: block; width: 100%; height: 100%; object-fit: contain; }
.site-header nav { display: flex; gap: 30px; color: #35362f; font-weight: 600; font-size: 14px; }
.site-header nav a { transition: color .2s ease; }
.site-header nav a:hover { color: var(--brand-deep); }
.nav-toggle { display:none; align-items:center; justify-content:center; gap:9px; min-height:42px; padding:0 14px; border:1px solid var(--line); border-radius:11px; background:#fff; color:var(--ink); font:700 13px/1 "DM Sans"; cursor:pointer; box-shadow:0 8px 20px rgba(17,18,15,.08); }
.nav-toggle-icon { display:grid; gap:3px; width:17px; }
.nav-toggle-icon i { display:block; width:17px; height:2px; border-radius:2px; background:currentColor; transition:transform .2s ease, opacity .2s ease; }
.nav-toggle[aria-expanded="true"] .nav-toggle-icon i:nth-child(1) { transform:translateY(5px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle-icon i:nth-child(2) { opacity:0; }
.nav-toggle[aria-expanded="true"] .nav-toggle-icon i:nth-child(3) { transform:translateY(-5px) rotate(-45deg); }

.button { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 54px; padding: 0 24px; border-radius: 14px; background: var(--brand); color: var(--ink); font-weight: 700; box-shadow: 0 12px 24px rgba(246, 181, 22, .24); transition: transform .2s ease, box-shadow .2s ease; }
.button:hover { transform: translateY(-2px); box-shadow: 0 16px 30px rgba(246, 181, 22, .32); }
.button-small { min-height: 44px; padding: 0 18px; border-radius: 12px; font-size: 13px; }

.hero {
  width: min(1180px, calc(100% - 40px));
  min-height: 640px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  align-items: center;
  gap: 60px;
  padding: 48px 0 66px;
}
.eyebrow { display: inline-flex; align-items: center; gap: 9px; font: 800 12px/1 "Manrope"; letter-spacing: 2.5px; color: #5e5f57; }
.eyebrow span { width: 28px; height: 3px; border-radius: 2px; background: var(--brand); }
h1 { max-width: 640px; margin: 20px 0 22px; font: 800 clamp(48px, 5.3vw, 75px)/1.02 "Manrope"; letter-spacing: -4px; }
h1 em { display: block; color: var(--brand-deep); font-style: normal; }
.hero-copy > p { max-width: 590px; margin: 0; color: var(--muted); font-size: 18px; line-height: 1.7; }
.hero-actions { display: flex; align-items: center; gap: 28px; margin-top: 32px; }
.text-link { font-weight: 700; border-bottom: 2px solid var(--ink); padding: 8px 0 5px; }
.trust-list { display: flex; flex-wrap: wrap; gap: 22px; margin: 32px 0 0; padding: 0; list-style: none; color: #46473f; font-size: 13px; font-weight: 600; }
.trust-list span { display: inline-grid; place-items: center; width: 20px; height: 20px; margin-right: 7px; border-radius: 50%; background: #eef6ee; color: var(--green); }

.product-stage { position: relative; min-height: 520px; border-radius: 36px; background: linear-gradient(145deg, #f4c94e 0%, #f7b915 48%, #e99d00 100%); overflow: hidden; box-shadow: var(--shadow); }
.product-stage::after { content: ""; position: absolute; inset: 16px; border: 1px solid rgba(255,255,255,.48); border-radius: 26px; pointer-events: none; }
.halo { position: absolute; border-radius: 50%; border: 1px solid rgba(255,255,255,.5); }
.halo-one { width: 470px; height: 470px; right: -130px; top: -110px; }
.halo-two { width: 320px; height: 320px; left: -120px; bottom: -130px; }
.dashboard-card { position: absolute; left: 42px; top: 75px; width: 350px; height: 265px; padding: 22px; border-radius: 22px; background: rgba(255,255,255,.96); box-shadow: 0 24px 54px rgba(45, 31, 0, .22); transform: rotate(-3deg); }
.dashboard-top { display: flex; justify-content: space-between; align-items: center; }
.mini-brand { font: 800 18px/1 "Manrope"; letter-spacing: -1px; }
.status { color: var(--green); font-size: 11px; font-weight: 700; }
.dashboard-title { margin-top: 28px; color: var(--muted); font-size: 12px; }
.dashboard-card > strong { display: block; margin-top: 5px; font: 800 28px/1 "Manrope"; }
.chart { height: 72px; display: flex; align-items: end; gap: 9px; margin-top: 22px; border-bottom: 1px solid var(--line); }
.chart i { flex: 1; border-radius: 5px 5px 0 0; background: linear-gradient(var(--brand), #ffd96e); }
.chart i:nth-child(1) { height: 34%; } .chart i:nth-child(2) { height: 48%; } .chart i:nth-child(3) { height: 42%; } .chart i:nth-child(4) { height: 70%; } .chart i:nth-child(5) { height: 57%; } .chart i:nth-child(6) { height: 86%; } .chart i:nth-child(7) { height: 100%; }
.metrics { display: flex; gap: 32px; margin-top: 14px; color: var(--muted); font-size: 10px; }
.metrics b { display: block; color: var(--ink); font-size: 13px; }
.smart-pos { position: absolute; right: 43px; bottom: -52px; width: 186px; height: 390px; padding: 18px 13px; border-radius: 29px 29px 38px 38px; background: #1b1c18; box-shadow: 0 28px 55px rgba(37, 27, 2, .35); transform: rotate(5deg); z-index: 2; }
.pos-speaker { width: 44px; height: 4px; margin: 2px auto 12px; border-radius: 5px; background: #4e5048; }
.pos-screen { height: 196px; padding: 16px; border-radius: 14px; background: #fbfaf6; }
.pos-total { margin-top: 37px; }
.pos-total small { display: block; color: var(--muted); }
.pos-total b { display: block; margin-top: 5px; font: 800 21px/1 "Manrope"; }
.pos-screen button { width: 100%; margin-top: 24px; padding: 10px 4px; border: 0; border-radius: 8px; background: var(--brand); font-size: 10px; font-weight: 800; }
.pos-keys { display: grid; grid-template-columns: repeat(3, 1fr); gap: 11px; padding: 19px 15px; }
.pos-keys i { height: 17px; border-radius: 4px; background: #3a3c35; }
.smart-pos-device { position: absolute; right: 12px; bottom: -18px; z-index: 2; display: block; width: 240px; height: auto; filter: drop-shadow(0 28px 30px rgba(37,27,2,.35)); transform: rotate(2deg); transform-origin: center bottom; }
.floating-card { position: absolute; display: flex; align-items: center; gap: 10px; padding: 12px 15px; border-radius: 14px; background: rgba(255,255,255,.96); box-shadow: 0 15px 32px rgba(45,31,0,.17); z-index: 3; }
.floating-card span { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 10px; background: #fff4d4; color: var(--brand-deep); font-weight: 800; }
.floating-card b, .floating-card small { display: block; }
.floating-card b { font-size: 11px; } .floating-card small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.floating-card-one { left: 24px; bottom: 87px; }
.floating-card-two { right: 138px; top: 32px; }

.quick-benefits { width: min(1180px, calc(100% - 40px)); margin: 0 auto 90px; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.quick-benefits article { display: flex; gap: 18px; padding: 30px 28px; border-right: 1px solid var(--line); }
.quick-benefits article:last-child { border-right: 0; }
.quick-benefits article > span { color: var(--brand-deep); font: 700 11px/1 "Manrope"; }
.quick-benefits h2 { margin: 0 0 8px; font: 700 16px/1.2 "Manrope"; }
.quick-benefits p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.5; }

.client-logos-section { padding:0 max(28px,calc((100vw - 1180px)/2)) 28px; overflow:hidden; }
.client-logos-heading { max-width:780px; margin:0 auto 38px; text-align:center; }
.client-logos-heading h2 { margin:12px 0 16px; font:800 clamp(34px,4vw,52px)/1.08 "Manrope"; letter-spacing:-2.5px; }
.client-logos-heading h2 mark { padding:0; background:transparent; color:var(--brand-deep); }
.client-logos-heading p { max-width:650px; margin:0 auto; color:var(--muted); font-size:16px; line-height:1.7; }
.client-logo-marquee { position:relative; overflow:hidden; padding:12px 0; mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent); -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent); }
.client-logo-track { display:flex; width:max-content; animation:client-logo-scroll var(--logo-duration,27s) linear infinite; }
.client-logo-set { display:flex; flex:0 0 auto; gap:4.2px; padding-right:4.2px; }
.client-logo-card { display:grid; place-items:center; width:190px; height:102px; padding:4px 8px; overflow:hidden; border:1px solid rgba(17,18,15,.08); border-radius:18px; background:#fff; box-shadow:0 14px 34px rgba(31,33,28,.07); }
.client-logo-card img { display:block; width:100%; height:100%; object-fit:contain; }
.client-logo-track.is-empty { width:100%; animation:none; }
.client-logo-track.is-empty p { width:min(680px,100%); margin:0 auto; padding:24px; border:1px dashed rgba(17,18,15,.16); border-radius:16px; background:rgba(255,255,255,.62); color:#77796f; font-size:13px; text-align:center; }
.client-logo-marquee:hover .client-logo-track,.client-logo-marquee:focus-within .client-logo-track { animation-play-state:paused; }
@keyframes client-logo-scroll { to { transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce) { .client-logo-track { animation:none; transform:none; } .client-logo-marquee { overflow-x:auto; mask-image:none; -webkit-mask-image:none; } .client-logo-set[aria-hidden="true"] { display:none; } }

@media (min-width: 981px) {
  .site-header {
    position:sticky;
    top:12px;
    z-index:30;
    width:min(1100px,calc(100% - 40px));
    height:68px;
    margin:12px auto 0;
    padding:0 14px 0 16px;
    border:1px solid rgba(17,18,15,.09);
    border-radius:18px;
    background:rgba(251,250,246,.94);
    box-shadow:0 14px 38px rgba(17,18,15,.12);
    backdrop-filter:blur(14px);
  }
  .site-header nav { gap:22px; font-size:13px; }
  .site-header .button-small { min-height:40px; padding:0 15px; }
}

@media (max-width: 980px) {
  .site-header { position:relative; z-index:30; }
  .site-header .button-small { display:none; }
  .site-header nav { display:none; position:fixed; top:max(70px,calc(env(safe-area-inset-top) + 56px)); right:max(14px,env(safe-area-inset-right)); z-index:31; width:min(310px,calc(100vw - 28px)); flex-direction:column; gap:0; padding:10px; border:1px solid var(--line); border-radius:16px; background:#fff; box-shadow:0 22px 54px rgba(17,18,15,.22); }
  .site-header nav.is-open { display:flex; }
  .site-header nav a { padding:13px 15px; border-radius:10px; font-size:15px; }
  .site-header nav a:hover,.site-header nav a:focus-visible { background:#fff4d4; color:var(--ink); }
  .nav-toggle { display:inline-flex; position:fixed; top:max(14px,env(safe-area-inset-top)); right:max(14px,env(safe-area-inset-right)); z-index:32; flex:0 0 auto; border-color:rgba(17,18,15,.08); background:var(--brand); box-shadow:0 14px 30px rgba(58,43,4,.28); }
  .nav-toggle:hover { transform:translateY(-2px); box-shadow:0 18px 34px rgba(58,43,4,.34); }
  .nav-toggle:focus-visible { outline:3px solid #fff; outline-offset:3px; }
  .hero { grid-template-columns: 1fr; padding-top: 36px; }
  .hero-copy { max-width: 720px; }
  .product-stage { min-height: 500px; }
  .quick-benefits { grid-template-columns: 1fr; }
  .quick-benefits article { border-right: 0; border-bottom: 1px solid var(--line); }
  .quick-benefits article:last-child { border-bottom: 0; }
}

@media (max-width: 620px) {
  .site-header { width: min(100% - 28px, 1180px); height: 74px; }
  .hero { width: min(100% - 28px, 1180px); gap: 38px; padding-top: 30px; }
  h1 { font-size: clamp(43px, 13vw, 61px); letter-spacing: -3px; }
  .hero-copy > p { font-size: 16px; }
  .hero-actions { align-items: stretch; flex-direction: column; gap: 16px; }
  .text-link { align-self: flex-start; }
  .trust-list { gap: 12px; flex-direction: column; }
  .product-stage { min-height: 460px; border-radius: 28px; }
  .dashboard-card { left: 26px; top: 63px; width: 282px; height: 232px; padding: 18px; }
  .chart { height: 56px; }
  .smart-pos { right: 18px; width: 144px; height: 330px; bottom: -70px; }
  .smart-pos-device { right: 0; bottom: -10px; width: 198px; }
  .pos-screen { height: 163px; padding: 12px; }
  .pos-total { margin-top: 25px; }
  .floating-card-one { left: 17px; bottom: 30px; }
  .floating-card-two { right: 16px; top: 21px; }
  .quick-benefits { width: min(100% - 28px, 1180px); }
  .client-logos-section { padding-right:14px; padding-left:14px; }
  .client-logos-heading { margin-bottom:28px; padding:0 8px; }
  .client-logos-heading h2 { font-size:36px; letter-spacing:-2px; }
  .client-logos-heading p { font-size:15px; }
  .client-logo-card { width:150px; height:86px; padding:3px 2px; }
}

@media (max-width: 420px) {
  .product-stage { min-height: 450px; }
  .dashboard-card { left: 20px; width: 245px; }
  .smart-pos-device { right: -8px; bottom: -8px; width: 174px; }
}

.section { width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 110px 0; }
.section-heading { margin-bottom: 52px; }
.section-heading h2, .food-copy h2, .plan-copy h2, .support-content h2 { margin: 12px 0 18px; font: 800 clamp(36px, 4vw, 56px)/1.08 "Manrope"; letter-spacing: -2.8px; }
.section-heading p, .food-copy > p, .plan-copy > p { color: var(--muted); font-size: 16px; line-height: 1.7; }
.section-heading mark, .food-copy mark { padding: 0; background: none; color: var(--brand-deep); }
.section-kicker { color: var(--brand-deep); font: 800 11px/1 "Manrope"; letter-spacing: 2px; }
.centered { max-width: 760px; margin-left: auto; margin-right: auto; text-align: center; }
.centered p { max-width: 650px; margin-left: auto; margin-right: auto; }
.split-heading { display: flex; justify-content: space-between; align-items: end; gap: 60px; }
.split-heading > div { max-width: 690px; }
.split-heading > p { max-width: 390px; margin-bottom: 20px; }

.intro-section { padding-top: 86px; }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line); border-radius: 28px; overflow: hidden; background: rgba(255,255,255,.4); }
.feature-grid article { min-height: 250px; padding: 34px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .2s ease, transform .2s ease; }
.feature-grid article:nth-child(3n) { border-right: 0; }
.feature-grid article:nth-child(n+4) { border-bottom: 0; }
.feature-grid article:hover { background: var(--white); transform: translateY(-3px); }
.feature-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 15px; background: #fff2c8; color: var(--brand-deep); font: 800 19px/1 "Manrope"; }
.feature-grid h3, .device h3, .segment-copy h3, .flow-steps h3, .implementation-steps h3 { margin: 26px 0 10px; font: 700 20px/1.2 "Manrope"; }
.feature-grid p, .device p, .segment-copy p, .flow-steps p, .implementation-steps p { margin: 0; color: var(--muted); line-height: 1.65; }

.solutions-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.solution-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid rgba(17,18,15,.08); border-radius: 24px; background: var(--white); box-shadow: 0 18px 46px rgba(31,33,28,.08); transition: transform .25s ease, box-shadow .25s ease; }
.solution-card:hover { transform: translateY(-5px); box-shadow: 0 26px 58px rgba(31,33,28,.13); }
.solution-card-media { aspect-ratio: 16 / 9; overflow: hidden; background: #ecebe5; }
.solution-card-media img { display: block; width: 100%; height: 100%; object-fit: cover; mix-blend-mode: multiply; transition: transform 1.2s ease; }
.solution-card-media--totem { position:relative; display:grid; place-items:center; }
.solution-card-media--totem::before { content:""; position:absolute; width:165px; height:165px; border-radius:50%; background:#f8e9b3; }
.solution-card-media.solution-card-media--totem img { position:relative; z-index:1; width:auto; height:92%; object-fit:contain; mix-blend-mode:normal; filter:drop-shadow(0 12px 12px rgba(17,18,15,.18)); }
.solution-card:hover .solution-card-media img { transform: scale(1.055); }
.solution-card-body { display: flex; flex: 1; flex-direction: column; align-items: center; padding: 30px 27px 32px; text-align: center; }
.solution-card h3 { margin: 0 0 14px; font: 800 24px/1.14 "Manrope"; letter-spacing: -1px; }
.solution-card h3.solution-card-title-long { max-width: 310px; font-size: 21px; line-height: 1.2; }
.solution-card p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.65; }

.devices-section { padding-top: 92px; }
.device-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 18px; }
.device { grid-column: span 4; min-height: 390px; padding: 26px; border: 1px solid var(--line); border-radius: 24px; background: var(--white); overflow: hidden; }
.device-main { grid-column: span 4; }
.device:nth-child(2) { grid-column: span 4; }
.device-visual { position: relative; display: grid; place-items: center; height: 210px; border-radius: 18px; background: #f3f1e9; overflow: hidden; }
.device-visual::before { content: ""; position: absolute; width: 170px; height: 170px; border-radius: 50%; background: rgba(246,181,22,.22); filter: blur(2px); }
.device-photo { isolation: isolate; padding: 14px; }
.device-photo::before { width: 190px; height: 190px; background: rgba(246,181,22,.18); }
.device-photo img { position: relative; z-index: 1; display: block; max-width: 92%; max-height: 92%; object-fit: contain; filter: drop-shadow(0 16px 16px rgba(17,18,15,.16)); }
.device-photo-computer img { max-width: 86%; max-height: 88%; }
.device-photo-smartphone img { width: auto; height: 180px; max-height: none; border-radius: 12px; box-shadow: 0 15px 24px rgba(17,18,15,.18); filter: none; }
.device-photo-tablet img { width: 300px; max-width: none; max-height: none; border-radius: 16px; mix-blend-mode: multiply; filter: brightness(1.08) contrast(1.06) drop-shadow(0 16px 16px rgba(17,18,15,.14)); }
.device-photo-smartpos img { max-width: 98%; max-height: 82%; }
.device-photo-minipdv img { width: 250px; max-width: 96%; max-height: 188px; object-fit: contain; border-radius: 12px; mix-blend-mode: multiply; filter: brightness(1.04) contrast(1.04) drop-shadow(0 16px 16px rgba(17,18,15,.14)); }
.device-photo-autoatendimento img { width: auto; height: 188px; max-height: none; }
.desktop-device::after { content: ""; position: absolute; width: 230px; height: 8px; bottom: 25px; border-radius: 50%; background: rgba(17,18,15,.18); filter: blur(4px); }
.screen-ui { position: relative; width: 240px; height: 145px; padding: 18px; border: 9px solid #22231f; border-radius: 8px; background: #fff; box-shadow: 0 18px 34px rgba(17,18,15,.2); z-index: 1; }
.screen-ui::after { content: ""; position: absolute; width: 74px; height: 38px; left: 50%; bottom: -44px; transform: translateX(-50%); border-bottom: 8px solid #22231f; border-left: 20px solid transparent; border-right: 20px solid transparent; }
.screen-ui b, .screen-ui span { display: block; font-size: 10px; }
.screen-ui span { margin: 6px 0 15px; color: var(--muted); }
.screen-ui i { display: inline-block; width: 29%; height: 36px; margin-right: 4%; border-radius: 5px; background: #fff1c2; }
.phone-device > div, .tablet-device > div, .pos-device > div, .kiosk-device > div { position: relative; z-index: 1; display: flex; flex-direction: column; justify-content: space-between; padding: 17px; border: 8px solid #22231f; background: #fff; box-shadow: 0 18px 35px rgba(17,18,15,.2); }
.phone-device > div { width: 94px; height: 178px; border-radius: 21px; }
.tablet-device > div { width: 210px; height: 145px; border-radius: 15px; }
.pos-device > div { width: 104px; height: 186px; border-radius: 17px 17px 28px 28px; background: #fff9e9; }
.kiosk-device > div { width: 145px; height: 190px; border-radius: 12px; border-width: 10px; }
.phone-device span, .tablet-device span, .pos-device span, .kiosk-device span { color: var(--brand-deep); font-size: 10px; font-weight: 700; }

.partners-strip { padding: 110px max(28px, calc((100vw - 1180px) / 2)); background: #f7f5ef; color: var(--ink); overflow: hidden; }
.partners-inner { width: min(100%, 1180px); }
.machine-kicker { display:block; margin-bottom:20px; color:var(--brand); font:800 12px/1 "Manrope"; letter-spacing:1.6px; }
.partners-strip h2 { max-width:660px; margin:0; font:800 clamp(46px,5.2vw,72px)/.96 "Manrope"; letter-spacing:-4px; }
.partners-strip p { max-width:650px; margin:24px 0 0; color:var(--muted); font-size:clamp(17px,1.7vw,21px); line-height:1.55; }
.machine-brand-picker { display:grid; grid-template-columns:repeat(7,minmax(88px,1fr)); gap:16px 22px; margin:62px 0 52px; }
.machine-brand { display:grid; place-items:center; min-width:0; height:44px; padding:0; border:0; border-radius:9px; background:transparent; cursor:pointer; opacity:.86; transition:opacity .18s ease,box-shadow .18s ease,transform .18s ease; }
.machine-brand:hover,.machine-brand:focus-visible { opacity:1; outline:0; transform:translateY(-2px); }
.machine-brand:focus-visible { box-shadow:0 0 0 3px rgba(246,181,22,.72); }
.machine-brand.is-active { opacity:1; box-shadow:inset 0 -3px 0 var(--brand); }
.machine-brand img { display:block; width:100%; height:42px; object-fit:cover; object-position:center; mix-blend-mode:multiply; }
.machine-carousel { position:relative; display:grid; grid-template-columns:64px minmax(0,1fr) 64px; align-items:center; gap:28px; width:min(100%,760px); margin:0 auto; }
.machine-carousel-stage { display:grid; place-items:center; min-height:610px; margin:0; padding:28px; border-radius:30px; background:#fff; box-shadow:0 24px 65px rgba(27,26,21,.10); overflow:hidden; }
.machine-carousel-stage img { display:block; width:100%; max-width:560px; max-height:610px; object-fit:contain; }
.machine-carousel-stage img.is-changing { animation:machine-carousel-slide .46s ease both; }
@keyframes machine-carousel-slide { from { opacity:.2; transform:translateX(30px); } to { opacity:1; transform:translateX(0); } }
@media (prefers-reduced-motion: reduce) { .machine-carousel-stage img.is-changing { animation:none; } }
.machine-carousel-control { display:grid; place-items:center; width:60px; height:60px; border:1px solid #e2dfd6; border-radius:50%; background:#fff; color:var(--ink); font:500 40px/.8 "DM Sans"; cursor:pointer; box-shadow:0 12px 28px rgba(27,26,21,.08); transition:transform .18s ease,border-color .18s ease; }
.machine-carousel-control:hover,.machine-carousel-control:focus-visible { border-color:var(--brand); outline:0; transform:translateY(-2px); }
.machine-carousel-status { margin:22px auto 0 !important; text-align:center; font-size:14px !important; }
.machine-carousel-status strong { color:var(--ink); }

.segments-section { padding-bottom: 130px; }
.segment-tabs { display: flex; justify-content: center; gap: 8px; margin-bottom: 28px; }
.segment-tab { min-height: 48px; padding: 0 24px; border: 1px solid var(--line); border-radius: 999px; background: transparent; color: var(--muted); font: 700 14px/1 "DM Sans"; cursor: pointer; }
.segment-tab.is-active { border-color: var(--ink); background: var(--ink); color: var(--white); }
.segment-panel { display: grid; grid-template-columns: .78fr 1.22fr; min-height: 540px; border-radius: 32px; background: #f2c64c; overflow: hidden; box-shadow: var(--shadow); }
.segment-copy { padding: 60px; }
.segment-copy > span { font: 800 11px/1 "Manrope"; letter-spacing: 2px; }
.segment-copy h3 { max-width: 410px; margin-top: 20px; font-size: 38px; letter-spacing: -2px; }
.segment-copy p { color: #4b452d; }
.segment-copy ul { display: grid; gap: 12px; margin: 30px 0 0; padding: 0; list-style: none; }
.segment-copy li::before { content: "✓"; display: inline-grid; place-items: center; width: 20px; height: 20px; margin-right: 10px; border-radius: 50%; background: rgba(255,255,255,.55); font-size: 11px; font-weight: 800; }
.segment-showcase { display: grid; place-items: center; padding: 45px 45px 45px 0; }
.showcase-window { width: 100%; max-width: 650px; min-height: 390px; border: 9px solid #292a25; border-radius: 18px; background: #fff; box-shadow: 0 28px 55px rgba(45,31,0,.24); transform: rotate(1.5deg); overflow: hidden; }
.showcase-header { display: flex; align-items: center; gap: 7px; height: 38px; padding: 0 12px; background: #292a25; color: #fff; }
.showcase-header i { width: 7px; height: 7px; border-radius: 50%; background: var(--brand); }
.showcase-header span { margin-left: auto; font-size: 10px; }
.showcase-body { display: grid; grid-template-columns: 150px 1fr; min-height: 350px; }
.showcase-body aside { display: flex; flex-direction: column; gap: 18px; padding: 26px 20px; background: #f4f2eb; font-size: 11px; }
.showcase-body main { padding: 38px; }
.showcase-body main small, .showcase-body main strong { display: block; }
.showcase-body main strong { margin-top: 8px; font: 800 28px/1 "Manrope"; }
.line-chart { display: flex; align-items: end; gap: 14px; height: 120px; margin-top: 28px; border-bottom: 1px solid var(--line); }
.line-chart i { flex: 1; background: linear-gradient(var(--brand), #ffe49b); border-radius: 5px 5px 0 0; }
.line-chart i:nth-child(1){height:28%}.line-chart i:nth-child(2){height:48%}.line-chart i:nth-child(3){height:37%}.line-chart i:nth-child(4){height:73%}.line-chart i:nth-child(5){height:61%}.line-chart i:nth-child(6){height:92%}
.showcase-stats { display: flex; gap: 20px; margin-top: 24px; }
.showcase-stats span { flex: 1; padding: 13px; border-radius: 10px; background: #f7f5ef; color: var(--muted); font-size: 10px; }.showcase-stats b { display: block; color: var(--ink); font-size: 16px; }

.segment-video-section { padding: 110px max(28px, calc((100vw - 1180px) / 2)); background: #050505; color: var(--white); }
.segment-video-heading { max-width: 820px; }
.segment-video-heading h2 { max-width: 760px; margin: 14px 0 18px; font: 800 clamp(40px, 5vw, 66px)/1.04 "Manrope"; letter-spacing: -3.2px; }
.segment-video-heading h2 mark { padding: 0; background: transparent; color: var(--brand); }
.segment-video-heading > p { max-width: 660px; color: #b9bbb4; font-size: 18px; line-height: 1.65; }
.segment-video-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; max-width: 1080px; margin: 54px auto 0; }
.segment-video-card { border: 1px solid rgba(255,255,255,.12); border-radius: 26px; background: #11120f; box-shadow: 0 24px 60px rgba(0,0,0,.34); overflow: hidden; }
.segment-video-frame { position: relative; aspect-ratio: 9 / 16; background: radial-gradient(circle at 50% 35%, rgba(246,181,22,.2), transparent 38%), #191a16; overflow: hidden; }
.segment-video-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.segment-video-placeholder { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 18px; padding: 30px; color: #c8c9c3; text-align: center; }
.segment-video-placeholder span { display: grid; place-items: center; width: 68px; height: 68px; padding-left: 4px; border-radius: 50%; background: var(--brand); color: var(--ink); font-size: 24px; box-shadow: 0 16px 34px rgba(246,181,22,.2); }
.segment-video-placeholder p { max-width: 190px; font-size: 13px; line-height: 1.5; }
.segment-video-copy { position: relative; min-height: 154px; padding: 25px 25px 28px; }
.segment-video-copy small { position: absolute; top: 27px; right: 24px; color: var(--brand); font: 800 12px/1 "Manrope"; }
.segment-video-copy h3 { margin: 0 0 10px; font: 800 23px/1.15 "Manrope"; }
.segment-video-copy p { margin: 0; color: #aeb0aa; font-size: 14px; line-height: 1.55; }

.testimonial-section { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 90px; }
.testimonial-heading { max-width: 540px; }
.testimonial-heading h2 { margin: 14px 0 20px; font: 800 clamp(40px, 4.8vw, 64px)/1.05 "Manrope"; letter-spacing: -3.2px; }
.testimonial-heading > p { color: var(--muted); font-size: 18px; line-height: 1.7; }
.testimonial-video-card { display: grid; grid-template-columns: minmax(250px, 330px) minmax(220px, 1fr); align-items: stretch; border: 1px solid var(--line); border-radius: 30px; background: var(--white); box-shadow: var(--shadow); overflow: hidden; }
.testimonial-video-frame { position: relative; aspect-ratio: 9 / 16; min-height: 530px; background: radial-gradient(circle at 50% 35%, rgba(246,181,22,.22), transparent 38%), #171814; overflow: hidden; }
.testimonial-video-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.testimonial-video-placeholder { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 18px; padding: 28px; color: #d3d4ce; text-align: center; }
.testimonial-video-placeholder span { display: grid; place-items: center; width: 70px; height: 70px; padding-left: 4px; border-radius: 50%; background: var(--brand); color: var(--ink); font-size: 24px; }
.testimonial-video-placeholder p { max-width: 190px; font-size: 13px; line-height: 1.5; }
.testimonial-video-copy { display: flex; flex-direction: column; justify-content: center; padding: 38px 32px; }
.testimonial-video-copy > span { height: 52px; color: var(--brand); font: 800 72px/.8 Georgia,serif; }
.testimonial-video-copy h3 { margin: 12px 0 14px; font: 800 27px/1.12 "Manrope"; letter-spacing: -1px; }
.testimonial-video-copy p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.65; }

.implementation-section { padding: 110px max(28px, calc((100vw - 1180px) / 2)); background: #f0eee6; }
.implementation-steps { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; margin: 60px 0 0; padding: 0; list-style: none; }
.implementation-steps li { position: relative; padding: 0 25px; text-align: center; }.implementation-steps li::after { content: "→"; position: absolute; right: -8px; top: 21px; color: #aaa99f; }.implementation-steps li:last-child::after { display:none; }
.implementation-steps li > span { display: grid; place-items: center; width: 52px; height: 52px; margin: 0 auto; border-radius: 50%; background: var(--brand); font: 800 17px/1 "Manrope"; }.implementation-steps h3 { margin: 20px 0 8px; font-size: 16px; }.implementation-steps p { font-size: 12px; }

.section-heading .pricing-freedom-note { display:flex; align-items:center; gap:10px; width:max-content; max-width:100%; box-sizing:border-box; margin:25px auto 0; padding:12px 18px 12px 12px; border:1px solid rgba(246,181,22,.62); border-radius:999px; background:#fff5d7; color:var(--ink); font:700 14px/1.35 "Manrope"; box-shadow:0 12px 28px rgba(112,82,8,.12); }
.pricing-freedom-note::before { content:"✓"; display:grid; flex:0 0 30px; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--ink); color:var(--brand); font:900 15px/1 "Manrope"; }
.pricing-freedom-note strong { font-weight:900; }
.pricing-segment-toggle { display:flex; width:max-content; margin:38px auto 0; padding:5px; border:1px solid var(--line); border-radius:999px; background:#fff; box-shadow:0 12px 32px rgba(31,33,28,.07); }
.pricing-segment-toggle button { min-width:150px; min-height:46px; padding:0 24px; border:0; border-radius:999px; background:transparent; color:var(--muted); font:800 13px/1 "Manrope"; cursor:pointer; transition:.2s ease; }
.pricing-segment-toggle button.is-active { background:var(--ink); color:var(--white); box-shadow:0 9px 20px rgba(17,18,15,.18); }
.pricing-segment-toggle button:focus-visible { outline:3px solid var(--brand); outline-offset:2px; }
.pricing-segment-note { margin:16px auto 0; color:var(--muted); text-align:center; font-size:14px; }
.pricing-adhesion-note { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:center; gap:0 11px; width:max-content; max-width:calc(100% - 32px); box-sizing:border-box; margin:14px auto 0; padding:15px 24px; border:1px solid rgba(246,181,22,.78); border-radius:18px; background:linear-gradient(135deg,#fff2bf 0%,#fffaf0 100%); box-shadow:0 10px 24px rgba(146,104,10,.1); color:var(--ink); font:800 25px/1.15 "Manrope"; letter-spacing:-.8px; text-align:center; }.pricing-adhesion-note strong { font-weight:900; }.pricing-adhesion-note span { font-weight:700; }
.pricing-installment-note { display:block; width:100%; box-sizing:border-box; margin:8px auto 0; color:var(--muted); font:700 13px/1.35 "DM Sans"; text-align:center; }
.pricing-adhesion-note.is-black-friday { align-items:center; gap:7px 12px; padding:13px 22px 15px; border-color:#11120f; background:linear-gradient(135deg,#11120f 0%,#2c291d 100%); box-shadow:0 16px 30px rgba(17,18,15,.22); color:#fff; }.pricing-black-friday-badge { flex-basis:100%; width:max-content; margin:0 auto 1px; color:#11120f; padding:5px 9px; border-radius:999px; background:var(--brand); font:900 10px/1 "Manrope"; letter-spacing:1.2px; text-transform:uppercase; }.pricing-black-friday-offer { font:800 21px/1.1 "Manrope"; letter-spacing:-.7px; }.pricing-black-friday-offer s { color:#d2d2ca; font-size:17px; font-weight:700; text-decoration-thickness:2px; }.pricing-black-friday-offer strong { color:var(--brand); font-size:31px; letter-spacing:-1.4px; }.pricing-black-friday-saving { flex-basis:100%; color:#f9e5a3; font:800 12px/1.35 "Manrope"; letter-spacing:.1px; }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:34px; }
.pricing-card { display:flex; flex-direction:column; min-height:0; padding:34px; border:1px solid var(--line); border-radius:26px; background:#fff; box-shadow:0 12px 38px rgba(31,33,28,.06); }.pricing-card.featured { border:2px solid var(--brand-deep); transform:translateY(-8px); }.pricing-card > span,.pricing-addon-copy > span { color:#7b6a31; font:800 11px/1 "Manrope"; letter-spacing:1.7px; }.pricing-card h3 { margin:16px 0 22px; font:800 25px/1.1 "Manrope"; }.pricing-value { display:flex; align-items:baseline; gap:7px; }.pricing-value strong { font:800 58px/1 "Manrope"; letter-spacing:-3px; }.pricing-value small { color:var(--muted); font-size:14px; }.pricing-card > p { margin:22px 0 18px; color:var(--muted); line-height:1.6; }.pricing-audience { min-height:26px; font-weight:700; }.pricing-card .button { width:100%; margin-top:auto; border:0; cursor:pointer; }
.pricing-card-segment { display:inline-flex; align-items:center; align-self:flex-start; gap:8px; margin:-8px 0 22px; padding:7px 10px; border:1px solid rgba(246,181,22,.45); border-radius:999px; background:#fff6dc; }.pricing-card-segment small { color:#766526; font:800 8px/1 "Manrope"; letter-spacing:1.2px; }.pricing-card-segment strong { color:var(--ink); font:800 12px/1 "Manrope"; }
.select-plan { justify-content:space-between; text-align:left; }.select-plan > span { font:800 13px/1.2 "Manrope"; }.select-plan > small { display:inline-flex; align-items:center; min-height:28px; padding:0 10px; border-radius:999px; background:rgba(255,255,255,.55); color:#493c14; font:800 10px/1 "Manrope"; white-space:nowrap; }
.pricing-features { display:grid; gap:10px; margin:0 0 30px; padding:0; list-style:none; }
.pricing-features li { position:relative; padding-left:24px; color:#4e5049; font-size:13px; line-height:1.42; }
.pricing-features li::before { content:"✓"; position:absolute; left:0; top:0; color:#28b967; font-weight:900; }
.pricing-features li.pricing-includes { width:max-content; max-width:100%; margin:0 0 4px; padding:8px 13px 8px 34px; border:1px solid rgba(246,181,22,.62); border-radius:999px; background:#fff5d7; color:var(--ink); font-weight:800; box-shadow:0 8px 20px rgba(112,82,8,.1); }
.pricing-features li.pricing-includes::before { left:13px; top:50%; color:var(--brand-deep); transform:translateY(-50%); }
.pricing-features li.pricing-key-feature { width:max-content; max-width:100%; margin:0 0 4px; padding:9px 14px 9px 36px; border-radius:999px; background:var(--ink); color:var(--white); font-weight:800; box-shadow:0 9px 22px rgba(17,18,15,.16); }
.pricing-features li.pricing-key-feature::before { left:14px; top:50%; color:var(--brand); transform:translateY(-50%); }
.pricing-addon { display:grid; grid-template-columns:1fr auto; align-items:start; gap:18px 30px; margin-top:22px; padding:30px 34px; border-radius:22px; background:var(--brand); }.pricing-addon h3 { margin:8px 0 7px; font:800 22px/1.1 "Manrope"; }.pricing-addon p { margin:0; color:#5d522f; }.pricing-addon-value { display:flex; align-items:baseline; gap:7px; white-space:nowrap; }.pricing-addon-value strong { font:800 28px/1 "Manrope"; }.pricing-addon-value small { color:#5d522f; }
.pricing-addon-features { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px 24px; margin:4px 0 0; padding:20px 0 0; border-top:1px solid rgba(17,18,15,.14); list-style:none; }
.pricing-addon-features li { position:relative; padding-left:22px; color:#473f27; font-size:12px; font-weight:700; line-height:1.45; }.pricing-addon-features li::before { content:"✓"; position:absolute; left:0; color:#173c71; font-weight:900; }
.pricing-help { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,360px); grid-template-areas:"kicker button" "title button"; align-items:center; gap:8px 42px; overflow:hidden; margin-top:30px; padding:34px 38px 34px 46px; border:1px solid rgba(246,181,22,.45); border-radius:24px; background:linear-gradient(118deg,#11120f 0%,#1d1e19 62%,#29291e 100%); box-shadow:0 18px 45px rgba(17,18,15,.16); text-align:left; }
.pricing-help::before { content:""; position:absolute; inset:0 auto 0 0; width:7px; background:var(--brand); }
.pricing-help::after { content:"?"; position:absolute; z-index:-1; right:31%; top:50%; color:rgba(246,181,22,.09); font:900 150px/1 "Manrope"; transform:translateY(-50%); }
.pricing-help > span { grid-area:kicker; display:flex; align-items:center; gap:9px; color:var(--brand); font:800 10px/1 "Manrope"; letter-spacing:1.9px; }
.pricing-help > span::before { content:""; width:24px; height:2px; border-radius:999px; background:currentColor; }
.pricing-help h3 { grid-area:title; margin:2px 0 0; color:var(--white); font:800 clamp(21px,2.2vw,28px)/1.2 "Manrope"; letter-spacing:-.8px; }
.pricing-help .button { grid-area:button; width:100%; border:0; cursor:pointer; }
.specialist-whatsapp { background:#25d366; color:#092c18; box-shadow:0 14px 30px rgba(37,211,102,.24); animation:specialist-attention 4.8s ease-in-out infinite; }
.specialist-whatsapp:hover { background:#20c45d; animation-play-state:paused; transform:translateY(-2px); }
@keyframes specialist-attention { 0%,72%,100%{transform:translateX(0) rotate(0)} 76%{transform:translateX(-4px) rotate(-1.5deg)} 80%{transform:translateX(4px) rotate(1.5deg)} 84%{transform:translateX(-3px) rotate(-1deg)} 88%{transform:translateX(3px) rotate(1deg)} 92%{transform:translateX(0) rotate(0)} }
@media (prefers-reduced-motion: reduce) { .specialist-whatsapp { animation:none; } }

.faq-list { max-width: 900px; margin: 0 auto; border-top: 1px solid var(--line); }.faq-list details { border-bottom: 1px solid var(--line); }.faq-list summary { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 25px 4px; font: 700 17px/1.4 "Manrope"; cursor:pointer; list-style:none; }.faq-list summary::-webkit-details-marker { display:none; }.faq-list summary span { flex:0 0 auto; color: var(--brand-deep); font-size: 24px; transition:transform .2s ease; }.faq-list details[open] summary span { transform: rotate(45deg); }.faq-answer { margin:-8px 0 25px; color:var(--muted); line-height:1.7; }.faq-answer p { margin:0; }.faq-answer p + p, .faq-answer ul + p { margin-top:13px; }.faq-answer ul { display:grid; gap:7px; margin:0; padding-left:20px; }.faq-answer li { padding-left:4px; }.faq-answer strong { color:#34352f; }.faq-answer sup { color:var(--brand-deep); font-weight:800; }.faq-answer .faq-footnote { padding:12px 14px; border-radius:10px; background:#f4f1e8; font-size:12px; }
.support-section { padding:96px max(28px,calc((100vw - 1180px)/2)); background:linear-gradient(135deg,#f8c13d 0%,var(--brand) 52%,#eea900 100%); }
.support-inner { width:min(1180px,100%); margin:0 auto; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr); align-items:center; gap:64px; }
.support-content .section-kicker { color:#171813; }
.support-content h2 { max-width:650px; }
.support-content > p { max-width:620px; margin:0; color:#58491c; font-size:17px; line-height:1.65; }
.support-hours { display:grid; gap:10px; margin-top:28px; }
.support-hours article { display:grid; grid-template-columns:minmax(185px,.8fr) minmax(190px,1fr); align-items:center; gap:22px; min-height:76px; padding:14px 18px; border:1px solid rgba(255,255,255,.56); border-radius:16px; background:rgba(255,255,255,.82); box-shadow:0 10px 26px rgba(74,53,4,.1); }
.support-hours article > span { color:#715c19; font:800 15px/1.3 "Manrope"; letter-spacing:.35px; }
.support-hours article > div { display:flex; flex-wrap:wrap; align-items:baseline; gap:5px 9px; }
.support-hours strong { color:var(--ink); font:800 15px/1.3 "Manrope"; }
.support-hours small { color:#5f604f; font:700 15px/1.3 "Manrope"; }
.support-hours .support-closed { background:rgba(30,31,27,.9); border-color:rgba(30,31,27,.9); }
.support-hours .support-closed > span { color:#f7ca59; }
.support-hours .support-closed strong { color:#fff; font-size:15px; }
.support-hours .support-closed a { color:#f7ca59; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.support-hours .support-closed a:hover { color:#fff; }
.support-button { margin-top:26px; }
.support-visual { position:relative; min-width:0; margin:0; aspect-ratio:4/3; overflow:hidden; border:10px solid rgba(255,255,255,.7); border-radius:30px; background:#fff; box-shadow:0 30px 65px rgba(60,43,4,.24); transform:rotate(1.2deg); }
.support-visual::after { content:""; position:absolute; inset:0; box-shadow:inset 0 0 0 1px rgba(17,18,15,.08); border-radius:20px; pointer-events:none; }
.support-visual img { display:block; width:100%; height:100%; object-fit:cover; }
.support-visual figcaption { position:absolute; left:22px; bottom:20px; display:flex; align-items:center; gap:9px; padding:11px 15px; border-radius:999px; background:rgba(255,255,255,.94); color:var(--ink); font-size:12px; font-weight:800; box-shadow:0 12px 30px rgba(17,18,15,.2); }
.support-visual figcaption span { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:var(--brand); }
.dark-button { background: var(--ink); color: #fff; box-shadow: 0 14px 28px rgba(17,18,15,.18); white-space: nowrap; }

@media (max-width:980px) {
  .support-inner { grid-template-columns:1fr; max-width:760px; }
  .support-visual { aspect-ratio:16/10; transform:none; }
}

@media (max-width:620px) {
  .support-section { padding-top:68px; padding-bottom:68px; }
  .support-inner { gap:42px; }
  .support-content h2 { font-size:38px; letter-spacing:-2px; }
  .support-content > p { font-size:16px; }
  .support-hours article { grid-template-columns:1fr; gap:8px; }
  .support-button { width:100%; }
  .support-visual { aspect-ratio:4/3; border-width:7px; border-radius:24px; }
  .support-visual figcaption { left:14px; bottom:14px; }
}

footer { padding:0; background:#171814; color:#fff; }
.footer-main { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:start; gap:48px; padding:72px max(28px,calc((100vw - 1180px)/2)) 58px; }
.footer-main section { min-width:0; }
.footer-heading { margin:0 0 18px; color:#fff; font:800 15px/1.2 "Manrope"; }
.footer-main a { color:#fff; font-size:14px; line-height:1.35; transition:color .2s ease, transform .2s ease; }
.footer-main a:hover { color:var(--brand); }
.footer-brand { display:flex; align-items:center; flex-direction:column; text-align:center; }
.footer-brand .brand { justify-content:center; color:#fff; }
.footer-brand .brand-original { width:132px; }
.footer-brand p { max-width:170px; margin:13px 0 20px; color:#fff; font-size:14px; line-height:1.25; }
.aws-mark { position:relative; display:inline-block; padding:0 4px 8px; color:#fff; font:700 25px/1 Arial,sans-serif; letter-spacing:-1.5px; }
.aws-mark::after { content:""; position:absolute; left:4px; right:1px; bottom:1px; height:8px; border-bottom:4px solid var(--brand); border-radius:0 0 70% 70%; transform:rotate(5deg); }
.footer-contact-links,.footer-institutional nav { display:grid; gap:7px; }
.footer-contact-links a { display:flex; align-items:center; gap:9px; }
.footer-contact-links a > span { flex:0 0 18px; color:var(--brand); font-size:17px; font-weight:800; text-align:center; }
.social-links { display:flex; flex-wrap:wrap; gap:10px; }
.social-links a { display:grid; place-items:center; width:44px; height:44px; border:2px solid transparent; border-radius:50%; background:#fff; transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.social-links a:hover { transform:translateY(-3px); border-color:var(--brand); box-shadow:0 10px 24px rgba(0,0,0,.28); }
.social-links a:focus-visible { outline:3px solid var(--brand); outline-offset:3px; }
.social-links img { display:block; width:20px; height:20px; filter:invert(77%) sepia(83%) saturate(1197%) hue-rotate(346deg) brightness(101%) contrast(93%); }
.footer-bottom { display:flex; justify-content:space-between; align-items:flex-end; gap:32px; padding:18px max(28px,calc((100vw - 1180px)/2)); background:var(--brand); color:#11120f; }
.footer-bottom span,.footer-bottom a { color:#11120f; font-size:13px; }
.footer-bottom a { text-decoration:underline; text-underline-offset:3px; }
.footer-legal { display:grid; gap:4px; }
.footer-legal p,.footer-legal address { margin:0; color:#11120f; font-size:13px; line-height:1.4; font-style:normal; }
.footer-legal .footer-rights { font-weight:800; letter-spacing:.05px; }
.footer-bottom-actions { display:flex; align-items:center; gap:24px; flex:0 0 auto; }
.footer-bottom .footer-back-top { display:grid; place-items:center; width:30px; height:30px; margin-left:0; font-size:23px; line-height:1; text-decoration:none; }

@media (min-width:1101px) {
  .footer-legal .footer-rights { white-space:nowrap; }
}

@media (max-width:1100px) {
  .footer-main { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:720px) {
  footer { padding-top:0; }
  .footer-main { grid-template-columns:1fr; gap:38px; padding-top:56px; }
  .footer-main section { grid-column:1; }
  .footer-brand { align-items:center; text-align:center; }
  .footer-brand .brand { justify-content:center; }
  .footer-contact-links a { overflow-wrap:anywhere; }
  .footer-bottom { align-items:flex-start; flex-direction:column; gap:8px; }
  .footer-bottom-actions { width:100%; justify-content:space-between; }
  .footer-bottom .footer-back-top { align-self:auto; margin:0; }
}

dialog { width: min(620px, calc(100% - 28px)); max-height: calc(100vh - 30px); border: 0; border-radius: 26px; padding: 0; background: #fff; box-shadow: 0 30px 90px rgba(0,0,0,.3); }dialog::backdrop { background: rgba(13,14,12,.7); backdrop-filter: blur(5px); }dialog form { position:relative; display:grid; gap:16px; padding:38px; }dialog h2 { margin:5px 0 0; font:800 31px/1.1 "Manrope"; letter-spacing:-1.4px; }dialog p { margin:0 0 5px; color:var(--muted); }.dialog-close { position:absolute; right:18px; top:16px; width:38px; height:38px; border:0; border-radius:50%; background:#f2f0e8; font-size:24px; cursor:pointer; }dialog label { display:grid; gap:7px; color:#46473f; font-size:12px; font-weight:700; }dialog input, dialog select { width:100%; min-height:48px; border:1px solid var(--line); border-radius:11px; padding:0 13px; background:#fff; font:500 14px/1 "DM Sans"; }.checkout-segment-summary,.checkout-adhesion-summary { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:4px 12px; padding:14px 16px; border:1px solid rgba(246,181,22,.52); border-radius:14px; background:#fff6dc; }.checkout-segment-summary > span,.checkout-adhesion-summary > span { grid-row:1; color:#746323; font:800 9px/1 "Manrope"; letter-spacing:1.2px; text-transform:uppercase; }.checkout-segment-summary > strong,.checkout-adhesion-summary > strong { grid-row:1; justify-self:end; font:800 16px/1 "Manrope"; }.checkout-segment-summary > small,.checkout-adhesion-summary > small { grid-column:1/-1; color:#625a42; font-size:11px; line-height:1.4; }.form-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.addon-options { display:grid; gap:8px; margin:0; padding:0; border:0; }.addon-options legend { margin-bottom:7px; color:#46473f; font-size:12px; font-weight:700; }.addon-options label { display:flex; align-items:center; gap:12px; padding:13px; border:1px solid var(--line); border-radius:12px; cursor:pointer; }.addon-options input { width:18px; min-height:18px; }.addon-options span { display:flex; justify-content:space-between; align-items:center; flex:1; gap:15px; }.addon-options small { color:var(--muted); font-weight:600; }.checkout-total { display:flex; justify-content:space-between; align-items:center; padding:13px 15px; border-radius:12px; background:#f4f1e8; }.checkout-total span { color:var(--muted); font-size:12px; }.checkout-total strong { font:800 17px/1 "Manrope"; }.consent { grid-template-columns:auto 1fr; align-items:start; line-height:1.5; }.consent input { width:17px; min-height:17px; }.checkout-submit { width:100%; border:0; cursor:pointer; }#checkout-message { color:#9b2d24; font-size:12px; }
dialog form { max-height:calc(100vh - 30px); overflow-y:auto; }
.checkout-adhesion-summary.is-black-friday { border-color:#11120f; background:linear-gradient(135deg,#11120f 0%,#2c291d 100%); }.checkout-adhesion-summary.is-black-friday > span { color:#f6b516; }.checkout-adhesion-summary.is-black-friday > strong { color:#fff; }.checkout-adhesion-summary.is-black-friday > small { color:#f9e5a3; }.checkout-adhesion-summary.is-black-friday s { color:#d2d2ca; text-decoration-thickness:2px; }
.payment-options { grid-template-columns:1fr 1fr; }
.payment-options legend { grid-column:1/-1; }
.payment-options label:has(input:checked) { border-color:rgba(246,181,22,.8); background:#fff8e6; box-shadow:0 0 0 1px rgba(246,181,22,.18); }
.payment-options span { display:grid; justify-content:start; gap:4px; }
.payment-options small { font-size:10px; }
.checkout-address-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.checkout-address-wide { grid-column:1/-1; }
@media (max-width:560px) { .payment-options { grid-template-columns:1fr; } .payment-options legend { grid-column:auto; } .checkout-address-grid { grid-template-columns:1fr; } .checkout-address-wide { grid-column:auto; } }
dialog label > small { color:var(--muted); font-size:10px; font-weight:600; line-height:1.4; }
dialog input:disabled { background:#f1f0eb; color:#8b8c85; cursor:not-allowed; }
.checkout-document-field output, .checkout-postal-code-field output { min-height:0; color:var(--muted); font-size:10px; font-weight:700; line-height:1.4; }
.checkout-document-field output:empty, .checkout-postal-code-field output:empty { display:none; }
.checkout-document-field output[data-state="loading"], .checkout-postal-code-field output[data-state="loading"] { color:#806a20; }
.checkout-document-field output[data-state="success"], .checkout-postal-code-field output[data-state="success"] { color:#217249; }
.checkout-document-field output[data-state="warning"], .checkout-postal-code-field output[data-state="warning"] { color:#9b5a24; }
.checkout-privacy-notice { margin:0; padding:12px 14px; border-left:3px solid var(--yellow); border-radius:8px; background:#f7f5ee; color:#5f6059; font-size:11px; line-height:1.55; }
.checkout-privacy-notice a { color:#26271f; font-weight:800; text-decoration:underline; text-underline-offset:2px; }
.whatsapp-float { position:fixed; right:24px; bottom:24px; display:grid; place-items:center; width:56px; height:56px; border-radius:50%; background:#25d366; box-shadow:0 16px 34px rgba(21,125,60,.3); transition:transform .2s ease, box-shadow .2s ease; z-index:20; }
.whatsapp-float img { display:block; width:28px; height:28px; }
.whatsapp-float:hover { transform:translateY(-3px) scale(1.03); box-shadow:0 20px 38px rgba(21,125,60,.36); }
.whatsapp-float:focus-visible { outline:3px solid #fff; outline-offset:3px; }
.status-page { width:min(760px,calc(100% - 32px)); margin:0 auto; padding:34px 0 70px; }.status-page > section { margin-top:80px; padding:55px; border-radius:28px; background:#fff; box-shadow:var(--shadow); text-align:center; }.status-symbol { display:grid; place-items:center; width:74px; height:74px; margin:0 auto 24px; border-radius:50%; background:#fff1c2; color:var(--brand-deep); font:800 32px/1 "Manrope"; }.status-page h1 { margin:12px 0 14px; font:800 42px/1.06 "Manrope"; letter-spacing:-2px; }.status-page p { color:var(--muted); line-height:1.7; }.status-page section > div { display:flex; justify-content:center; align-items:center; gap:25px; margin-top:28px; }
.status-page .status-selection { width:max-content; max-width:100%; margin:22px auto 0; padding:11px 16px; border:1px solid rgba(246,181,22,.48); border-radius:999px; background:#fff6dc; color:var(--ink); font-weight:800; }

@media (max-width: 980px) {
  .section { padding: 82px 0; }.feature-grid { grid-template-columns:1fr 1fr; }.feature-grid article, .feature-grid article:nth-child(3n), .feature-grid article:nth-child(n+4) { border-right:1px solid var(--line); border-bottom:1px solid var(--line); }.feature-grid article:nth-child(2n) { border-right:0; }.feature-grid article:nth-last-child(-n+2) { border-bottom:0; }
  .solutions-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .split-heading { align-items:start; flex-direction:column; gap:0; }.split-heading > p { max-width:650px; }.device { grid-column:span 6; }.device-main,.device:nth-child(2){grid-column:span 6}.segment-panel { grid-template-columns:1fr; }.segment-showcase { padding:0 40px 45px; }.food-flow { grid-template-columns:1fr; gap:45px; }.video-gallery { grid-template-columns:1fr 1fr; }.implementation-steps { grid-template-columns:1fr; gap:14px; max-width:520px; margin-left:auto; margin-right:auto; }.implementation-steps li { display:grid; grid-template-columns:52px 1fr; column-gap:18px; text-align:left; }.implementation-steps li::after { display:none; }.implementation-steps li > span { grid-row:1/3; }.implementation-steps h3 { margin:4px 0 5px; }.pricing-grid { grid-template-columns:1fr; max-width:620px; margin-left:auto; margin-right:auto; }.pricing-card.featured { transform:none; }
  .segment-video-grid { gap: 16px; }
  .testimonial-section { grid-template-columns: 1fr; gap: 45px; }
  .testimonial-heading { max-width: 720px; }
  .testimonial-video-card { width: min(100%, 720px); margin: 0 auto; }
  .pricing-addon-features { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .partners-strip { padding-top:72px; padding-bottom:72px; }
  .partners-strip h2 { font-size:46px; letter-spacing:-2.5px; }
  .partners-strip p { font-size:16px; }
  .machine-brand-picker { grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px 15px; margin:38px 0; }
  .machine-brand { height:38px; }
  .machine-brand img { height:36px; }
  .machine-carousel { grid-template-columns:1fr; gap:0; }
  .machine-carousel-stage { min-height:430px; padding:14px; border-radius:22px; }
  .machine-carousel-stage img { max-height:430px; }
  .machine-carousel-control { position:absolute; z-index:1; top:50%; width:42px; height:42px; font-size:30px; transform:translateY(-50%); }
  .machine-carousel-control--previous { left:8px; }
  .machine-carousel-control--next { right:8px; }
  .machine-carousel-control:hover,.machine-carousel-control:focus-visible { transform:translateY(-50%); }
  .machine-carousel-status { font-size:12px !important; }
  .section { width:min(100% - 28px,1180px); padding:68px 0; }.section-heading h2,.food-copy h2,.support-content h2 { font-size:38px; letter-spacing:-2px; }.feature-grid { grid-template-columns:1fr; }.feature-grid article,.feature-grid article:nth-child(2n),.feature-grid article:nth-last-child(-n+2) { border-right:0; border-bottom:1px solid var(--line); }.feature-grid article:last-child { border-bottom:0; }.device-grid { grid-template-columns:1fr; }.device,.device-main,.device:nth-child(2){grid-column:1;}.segment-tabs { justify-content:flex-start; overflow-x:auto; padding-bottom:5px; }.segment-tab { flex:0 0 auto; }.segment-copy { padding:35px 26px; }.segment-copy h3 { font-size:32px; }.segment-showcase { padding:0 18px 26px; }.showcase-body { grid-template-columns:1fr; }.showcase-body aside { display:none; }.showcase-body main { padding:25px; }.food-flow { padding-top:75px; padding-bottom:75px; }.featured-video,.video-placeholder,.featured-video video { min-height:350px; height:350px; }.video-gallery { grid-template-columns:1fr; }.implementation-section { padding-top:75px; padding-bottom:75px; }.pricing-card { padding:28px 24px; }.pricing-addon { align-items:flex-start; flex-direction:column; padding:25px; }.pricing-help { grid-template-columns:1fr; grid-template-areas:"kicker" "title" "button"; gap:12px; padding:30px 24px 26px 30px; text-align:center; }.pricing-help > span { justify-content:center; }.pricing-help h3 { margin:0 0 5px; }.pricing-help .button { width:100%; }.form-row { grid-template-columns:1fr; }dialog form { padding:34px 22px 24px; }
  .solutions-grid { grid-template-columns: 1fr; gap: 16px; }
  .solution-card-body { padding: 27px 23px 29px; }
  .segment-video-section { padding-top: 75px; padding-bottom: 75px; }
  .segment-video-heading h2 { font-size: 38px; letter-spacing: -2px; }
  .segment-video-heading > p { font-size: 16px; }
  .segment-video-grid { grid-template-columns: 1fr; gap: 18px; max-width: 360px; margin-top: 38px; }
  .testimonial-heading h2 { font-size: 38px; letter-spacing: -2px; }
  .testimonial-heading > p { font-size: 16px; }
  .testimonial-video-card { grid-template-columns: 1fr; max-width: 360px; }
  .testimonial-video-frame { min-height: 0; }
  .testimonial-video-copy { padding: 32px 26px 36px; }
  .section-heading .pricing-freedom-note { width:100%; max-width:360px; justify-content:center; padding-right:14px; }
  .pricing-segment-toggle { width:100%; max-width:360px; }
  .pricing-segment-toggle button { flex:1; min-width:0; padding:0 14px; }
  .pricing-addon { grid-template-columns:1fr; }
  .pricing-addon-value { justify-self:start; }
  .pricing-addon-features { grid-column:1; grid-template-columns:1fr; }
}

@media (max-width:620px) {
  footer { padding-top:0; }
}

#checkout-message[data-state="success"] { color:#217249; font-weight:700; }
