.elementor-7827 .elementor-element.elementor-element-ae9fdb2{--display:flex;}.elementor-7827 .elementor-element.elementor-element-f502016{width:100%;max-width:100%;top:0px;}body:not(.rtl) .elementor-7827 .elementor-element.elementor-element-f502016{left:0px;}body.rtl .elementor-7827 .elementor-element.elementor-element-f502016{right:0px;}@media(max-width:767px){body:not(.rtl) .elementor-7827 .elementor-element.elementor-element-f502016{left:0px;}body.rtl .elementor-7827 .elementor-element.elementor-element-f502016{right:0px;}.elementor-7827 .elementor-element.elementor-element-f502016{top:0px;}}/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800&display=swap');

:root{
  --orange:#a65110;
  --orange-light:#fae8d4;
  --eyebrow-on-light:#9A4A0E;  /* rotulo sobre fundo claro */
  --eyebrow-on-dark:#FF8E38;  /* rotulo sobre fundo escuro */
  --dark:#0d0d0d;
  --gray:#595959;
  --gray-light:#f8f8f8;
  --border:#e0e0e0;
  --black:#0e0e0f;
  --page-dark:#0e0e0f;
  --card-dark:#1c1c1f;
  --card-dark-alt:#2b2b2e;
  --border-dark:#2e2e33;
  --text-muted-dark:#adadb2;
  --container:1760px;
  --icon-placeholder:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23999999' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='3'/%3E%3Ccircle cx='8.5' cy='8.5' r='1.5'/%3E%3Cpath d='M21 15l-5-5L5 21'/%3E%3C/svg%3E");
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Montserrat',sans-serif;
  margin:0;
  color:var(--dark) !important;
  background:#fff !important;
}
a{color:inherit !important;}
img{max-width:100%;display:block;}
.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 24px;}

/* ===== HEADER / NAV ===== */
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:#fff !important;
  border-radius:0 0 24px 24px;
  box-shadow:0 2px 12px rgba(0,0,0,.05);
}
.header-inner{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 40px;
  max-width:var(--container);
  margin:0 auto;
}
.logo img{height:26px;}
.main-nav{display:flex;gap:36px;list-style:none;margin:0;padding:0;}
.main-nav a{font-size:17px;font-weight:500;color:#4d4d4d !important;text-decoration:none;}
.main-nav a.active{font-weight:700;color:var(--dark) !important;}
.btn-store{
  display:inline-block;
  background:var(--orange) !important;
  color:#fff !important;
  padding:14px 30px;
  border-radius:16px;
  font-weight:800;
  font-size:18px;
  text-decoration:none;
  white-space:nowrap;
}
.nav-toggle{
  display:none;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  background:none !important;
  border:none;
  padding:8px;
  cursor:pointer;
  color:var(--dark) !important;
}
.nav-toggle span{display:block;width:24px;height:2px;background:currentColor !important;border-radius:2px;transition:transform .2s ease,opacity .2s ease;}
.nav-toggle.is-active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle.is-active span:nth-child(2){opacity:0;}
.nav-toggle.is-active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* header escuro (loja) */
.site-header--dark{background:var(--black) !important;box-shadow:0 2px 12px rgba(0,0,0,.3);}
.site-header--dark .main-nav a{color:#b3b3b3 !important;}
.site-header--dark .main-nav a.active{color:#fff !important;}
.site-header--dark .nav-toggle{color:#fff !important;}

/* ===== HERO ===== */
.hero{
  position:relative;
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  align-items:center;
  color:#fff !important;
  background-size:cover;
  background-position:center;
  padding:60px 40px 80px;
  overflow:hidden;
  border-radius:0 0 33px 33px;
}
.site-header + .hero{margin-top:-82px;padding-top:142px;}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(55deg, rgba(0,0,0,.86) 28%, rgba(0,0,0,.10) 72%) !important;
}
.hero-content{position:relative;max-width:720px;z-index:2;}
.hero-content h1{
  font-size:clamp(32px, 3.854vw, 74px);
  font-weight:600;
  line-height:1.05;
  letter-spacing:-1px;
  margin:0 0 20px;
  color:#fff !important;
  -webkit-text-fill-color:#fff;
  background:none !important;
  -webkit-background-clip:initial;
  background-clip:initial;
  text-shadow:none;
  opacity:1;
  animation:none;
  transition:none;
  filter:none;
  mix-blend-mode:normal;
}
.hero-content p{font-size:clamp(16px, 1.25vw, 24px);line-height:1.4;margin:0 0 32px;max-width:640px;}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;}
.btn-light{display:inline-block;background:#fff !important;color:#000 !important;padding:18px 32px;border-radius:60px;font-weight:700;text-decoration:none;font-size:18px;}
.btn-dark{display:inline-block;background:var(--orange) !important;color:#fff !important;padding:18px 32px;border-radius:60px;font-weight:700;text-decoration:none;font-size:18px;}
.hero-legal{
  position:absolute;
  right:40px;
  bottom:44px;
  z-index:2;
  font-size:11px;
  line-height:1.4;
  color:rgba(255,255,255,.65) !important;
  max-width:480px;
  text-align:right;
}
.home-starmini .hero-legal{
  right:auto;
  left:50%;
  bottom:38px;
  transform:translateX(-50%);
  max-width:none;
  white-space:nowrap;
  text-align:center;
}

/* ===== GENERIC SECTIONS ===== */
.section{padding:64px 40px;}
.section-cover-top{
  position:relative;z-index:2;
  margin-top:-33px;
  padding-top:97px;
}
.section-round-both{
  position:relative;z-index:2;
  border-radius:33px;
  margin-top:-33px;
  margin-bottom:-33px;
  padding-top:97px;
  padding-bottom:97px;
}
.section-white{background:#fff !important;}
.section-gray{background:var(--gray-light) !important;}
.section-inner{max-width:var(--container);margin:0 auto;}
/* Rotulo de secao (ex.: "Solucoes Starstore"): sem pilula de fundo, maior,
   e com a cor certa para cada fundo - #9A4A0E no claro, #FF8E38 no escuro
   (a variante escura fica logo abaixo, junto de cada secao escura). */
.eyebrow{
  display:inline-block;
  background:none !important;
  color:var(--eyebrow-on-light) !important;
  font-weight:700;
  font-size:17px;
  padding:0;
  border-radius:0;
  margin-bottom:18px;
}
.section h2.title{font-size:clamp(24px, 1.979vw, 38px);font-weight:700;margin:0 0 14px;line-height:1.2;}
.section p.subtitle{color:var(--gray) !important;font-size:18px;margin:0 0 8px;max-width:900px;}

/* two column (dor / soluÃ§Ã£o) */
.two-col{display:flex;gap:60px;align-items:center;flex-wrap:wrap;}
.two-col.reverse{flex-direction:row-reverse;}
.two-col .text{flex:1 1 420px;min-width:300px;}
.two-col .text h2{font-size:32px;font-weight:700;margin:0 0 16px;line-height:1.25;}
.two-col .text p.lead{color:var(--gray) !important;font-size:17px;line-height:1.5;margin:0 0 20px;}
.icon-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px;}
.icon-list li{display:flex;align-items:center;gap:12px;font-size:16px;}
.icon-check{
  color:var(--orange) !important;
  display:flex;align-items:center;justify-content:center;
  font-size:1em;font-weight:700;flex-shrink:0;
}
.image-placeholder{
  flex:1 1 400px;min-width:300px;
  background:#dedede !important;border-radius:20px;
  min-height:400px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  color:var(--gray) !important;text-align:center;padding:20px;overflow:hidden;
}
.image-placeholder img{width:100%;height:100%;object-fit:cover;}
.image-placeholder .ph-icon{
  width:40px;height:40px;
  background-image:var(--icon-placeholder);
  background-repeat:no-repeat;background-position:center;background-size:contain;
}
.image-placeholder span{font-size:13px;max-width:260px;}

/* benefits grid */
.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px;}
.benefit-card{background:#fff !important;border:1px solid var(--border);border-radius:16px;padding:30px;}
.benefit-card .num{color:var(--orange) !important;font-weight:700;font-size:30px;display:block;margin-bottom:12px;}
.benefit-card h3{font-size:19px;margin:0 0 8px;}
.benefit-card p{font-size:14px;color:var(--gray) !important;margin:0;}

/* segments grid */
.segments-label{font-size:15px;font-weight:600;color:var(--orange) !important;margin:28px 0 14px;}
.segments-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.segment-card{background:#fff !important;border-radius:16px;overflow:hidden;}
.segment-card .seg-image{
  height:130px;background:#dedede !important;display:flex;align-items:center;justify-content:center;
  background-image:var(--icon-placeholder);background-repeat:no-repeat;background-position:center;background-size:28px;
}
.segment-card .seg-image img{width:100%;height:100%;object-fit:cover;}
.segment-card .seg-body{padding:22px;}
.segment-card h3{font-size:18px;margin:8px 0;}
.segment-card p{font-size:14px;color:var(--gray) !important;margin:0;}

/* STARMINI banner */
.starmini-banner{background:var(--black) !important;border-radius:24px;overflow:hidden;display:flex;flex-wrap:wrap;}
.starmini-image{
  flex:1 1 380px;min-height:360px;background:#292929 !important;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  color:#b8b8b8 !important;text-align:center;padding:20px;
}
.starmini-image::before{
  content:"";width:44px;height:44px;
  background-image:var(--icon-placeholder);background-repeat:no-repeat;background-position:center;background-size:contain;
  opacity:.7;
}
.starmini-image small{font-size:13px;}
.starmini-image img{width:100%;height:100%;object-fit:cover;}
.starmini-content{flex:1.4 1 380px;padding:50px;color:#fff !important;}
.starmini-content .eyebrow{background:none !important;color:var(--eyebrow-on-dark) !important;}
.starmini-content h2{font-size:34px;margin:16px 0;}
.starmini-content p{color:#b8b8b8 !important;font-size:17px;line-height:1.5;margin-bottom:26px;}
.starmini-content .icon-list{margin-bottom:24px;}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:32px;}
.faq-card{background:#fff !important;border:1px solid var(--border);border-radius:16px;padding:26px;}
.faq-q{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;font-weight:600;font-size:17px;margin:0;cursor:pointer;user-select:none;}
.faq-q span{color:var(--orange) !important;font-weight:700;font-size:22px;line-height:1;flex-shrink:0;transition:transform .2s ease;}
.faq-card.is-open .faq-q{margin-bottom:10px;}
.faq-card.is-open .faq-q span{transform:rotate(45deg);}
.faq-a{
  color:var(--gray) !important;font-size:15px;margin:0;line-height:1.5;
  max-height:0;opacity:0;overflow:hidden;
  transition:max-height .25s ease,opacity .2s ease;
}
.faq-card.is-open .faq-a{max-height:240px;opacity:1;}

/* CTA box */
.cta-box{background:var(--orange) !important;border-radius:24px;padding:64px 40px;text-align:center;color:#fff !important;}
.cta-box h2{font-size:32px;margin:0 0 16px;}
.cta-box p{font-size:16px;max-width:720px;margin:0 auto 26px;}
.btn-white{background:#fff !important;color:var(--orange) !important;padding:16px 32px;border-radius:60px;font-weight:700;text-decoration:none;display:inline-block;}

/* ===== FOOTER ===== */
.site-footer{position:relative;z-index:2;background:#fff !important;border-radius:33px 33px 0 0;padding:93px 40px 30px;margin-top:-33px;}
.footer-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:40px;max-width:var(--container);margin:0 auto;}
.footer-col h4{font-size:18px;margin:0 0 14px;}
.footer-col a{display:block;color:#000 !important;text-decoration:none;font-size:15px;margin-bottom:8px;}
.footer-legal{text-align:center;font-size:13px;color:#666 !important;margin-top:36px;line-height:1.5;}
.footer-copy{text-align:center;font-size:15px;margin-top:20px;color:#000 !important;}

/* rodapÃ© escuro (loja) */
.site-footer--dark{background:var(--black) !important;}
.site-footer--dark .footer-col h4{color:#fff !important;}
.site-footer--dark .footer-col a{color:#b3b3b3 !important;}
.site-footer--dark .footer-copy{color:#8c8c8c !important;}

/* ===== LOJA ===== */
.store-hero{background:#fff !important;padding:70px 40px 20px;}
.store-hero .container{max-width:var(--container);}
.store-hero h1{font-size:46px;font-weight:700;line-height:1.15;margin:16px 0;max-width:820px;}
.store-hero p{font-size:18px;color:var(--gray) !important;max-width:680px;margin:0;}

.shop-filters{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px;}
.shop-filter{
  background:var(--gray-light) !important;border:1px solid var(--border);color:var(--gray) !important;
  font-family:inherit;font-size:14px;font-weight:600;
  padding:11px 22px;border-radius:100px;cursor:pointer;
}
.shop-filter.active{background:var(--dark) !important;border-color:var(--dark) !important;color:#fff !important;}

.shop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:32px;}
.shop-card{background:#fff !important;border:1px solid var(--border);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;}
.shop-image{
  aspect-ratio:1/1;background:#ededed !important;display:flex;align-items:center;justify-content:center;padding:20px;
  background-image:var(--icon-placeholder);background-repeat:no-repeat;background-position:center;background-size:32px;
}
.shop-image img{width:100%;height:100%;object-fit:contain;}
.shop-body{padding:20px;display:flex;flex-direction:column;gap:6px;flex:1;}
.shop-cat{font-size:12px;color:var(--orange) !important;font-weight:700;text-transform:uppercase;letter-spacing:.03em;}
.shop-body h3{font-size:17px;margin:0;line-height:1.3;}
.shop-body h3 a{color:inherit !important;text-decoration:none;}
.shop-body h3 a:hover{color:var(--orange) !important;}
.shop-price{font-size:20px;font-weight:700;margin-top:auto;padding-top:10px;}
.shop-price small{display:block;font-size:12px;font-weight:500;color:var(--gray) !important;}
.btn-shop{
  margin-top:14px;background:var(--dark) !important;color:#fff !important;text-align:center;
  padding:13px;border-radius:12px;font-weight:700;font-size:14px;
  text-decoration:none;transition:background .15s ease;
}
.btn-shop:hover{background:var(--orange) !important;}

/* preÃ§o com desconto (card e PDP) */
.price-old{font-size:13px;color:var(--gray) !important;text-decoration:line-through;font-weight:500;}
.price-badge{
  display:inline-block;background:var(--dark) !important;color:#fff !important;font-size:11px;font-weight:700;
  padding:3px 9px;border-radius:6px;margin-left:8px;vertical-align:middle;
}
.price-pix{font-size:20px;font-weight:800;color:var(--orange) !important;margin:2px 0 0;}
.price-pix small{font-size:12px;font-weight:600;color:var(--gray) !important;margin-left:4px;}
.price-installment{font-size:13px;color:var(--gray) !important;margin:2px 0 0;}
.price-installment strong{color:var(--dark) !important;}

/* ===== PÃGINA DE PRODUTO (PDP) ===== */
.pd-breadcrumb{font-size:14px;color:var(--gray) !important;margin:0 0 24px;}
.pd-breadcrumb a{color:var(--gray) !important;text-decoration:none;}
.pd-breadcrumb a:hover{color:var(--orange) !important;}
.pd-layout{display:flex;gap:60px;align-items:flex-start;flex-wrap:wrap;}
.pd-gallery{
  flex:1 1 440px;min-width:320px;aspect-ratio:1/1;background:#ededed !important;border-radius:24px;
  display:flex;align-items:center;justify-content:center;padding:40px;overflow:hidden;
}
.pd-gallery img{width:100%;height:100%;object-fit:contain;}
.pd-info{flex:1 1 420px;min-width:320px;}
.pd-info h1{font-size:clamp(26px, 2.1vw, 40px);font-weight:700;margin:14px 0 10px;line-height:1.2;}
.pd-price-block{margin:18px 0 24px;}
.pd-pix-price{font-size:32px;}
.pd-desc{font-size:16px;color:var(--gray) !important;line-height:1.6;margin:0 0 24px;}
.pd-swatches{margin:0 0 26px;}
.pd-swatches-label{font-size:14px;font-weight:600;margin:0 0 10px;}
.pd-swatches-label .selected-color{font-weight:400;color:var(--gray) !important;}
.pd-swatch-list{display:flex;gap:12px;}
.pd-swatch{
  width:40px;height:40px;border-radius:50%;border:2px solid var(--border);cursor:pointer;
  padding:0;position:relative;
}
.pd-swatch[data-color="branco"]{background:#f5f5f5 !important;}
.pd-swatch[data-color="preto"]{background:#111 !important;}
.pd-swatch[data-color="cinza"]{background:#8a8a8a !important;}
.pd-swatch.active{border-color:var(--orange) !important;box-shadow:0 0 0 2px var(--orange-light);}
.pd-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:32px;}
.pd-features{list-style:none;padding:0;margin:0 0 32px;display:flex;flex-direction:column;gap:12px;}
.pd-features li{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--dark) !important;}
.pd-note{font-size:13px;color:var(--gray) !important;border-top:1px solid var(--border);padding-top:20px;}

.trust-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.trust-item{display:flex;gap:14px;align-items:flex-start;}
.trust-icon{display:flex;flex-shrink:0;color:var(--orange) !important;}
.trust-icon svg{width:28px;height:28px;}
.trust-item h4{font-size:15px;margin:0 0 4px;}
.trust-item p{font-size:13px;color:var(--gray) !important;margin:0;}

/* ===== HOME-ONLY SECTIONS ===== */
.product-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:32px;}
.product-card{
  background:#ededed !important;border-radius:16px;aspect-ratio:3/4;position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;padding:20px;
}
.product-card-title{
  position:absolute;top:56px;left:8px;right:8px;text-align:center;z-index:2;
  font-size:clamp(16px, 1.6vw, 24px);font-weight:800;letter-spacing:.01em;color:var(--dark) !important;
}
.product-card img{width:100%;height:64%;object-fit:contain;margin-top:14px;}
.product-card .product-label{
  position:absolute;bottom:16px;left:16px;right:16px;
  background:#000 !important;color:#fff !important;font-weight:700;font-size:clamp(13px, 1.1vw, 16px);
  padding:14px 10px;border-radius:9px;text-align:center;
  text-decoration:none;
}

.tech-cards{display:flex;gap:24px;margin-top:32px;flex-wrap:wrap;}
.tech-card{
  flex:1 1 380px;background-color:#d9d9d9 !important;border-radius:20px;min-height:400px;position:relative;
  overflow:hidden;background-size:cover;background-position:center;
}
.tech-card::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.1) 35%, rgba(0,0,0,.65) 100%) !important;
}
.tech-card .tech-card-title{position:absolute;top:28px;left:28px;z-index:2;color:#fff !important;font-size:32px;font-weight:800;}
.tech-card .saiba-mais{position:absolute;z-index:2;bottom:24px;left:24px;background:#fff !important;padding:14px 28px;border-radius:40px;font-weight:700;text-decoration:none;color:#000 !important;}

.services-section{
  position:relative;background-color:#0d0d0d !important;color:#fff !important;
  padding:130px 40px;background-size:cover;background-position:center;overflow:hidden;
  -webkit-clip-path:url(#servicesSectionClip);
  clip-path:url(#servicesSectionClip);
}
.services-section::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(267deg, rgba(0,0,0,.19) 34%, rgba(0,0,0,.64) 43%, #000 71%) !important;
}
.services-inner{position:relative;max-width:var(--container);margin:0 auto;z-index:2;}
.services-inner h2{font-size:48px;font-weight:700;max-width:800px;line-height:1.1;margin:12px 0 24px;color:#fff !important;-webkit-text-fill-color:#fff;background:none !important;-webkit-background-clip:initial;background-clip:initial;text-shadow:none;opacity:1;animation:none;transition:none;filter:none;mix-blend-mode:normal;}
.services-inner .lead{font-size:22px;max-width:800px;margin:0 0 30px;line-height:1.4;}
.services-list{list-style:disc;padding-left:24px;font-size:18px;line-height:2;max-width:460px;}

.home-starmini{position:relative;padding:clamp(48px, 4.688vw, 90px) 40px calc(clamp(48px, 4.688vw, 90px) + 26px);background:#000 !important;color:#fff !important;}
.home-starmini-inner{display:flex;gap:60px;max-width:var(--container);margin:0 auto;align-items:stretch;flex-wrap:wrap;}
.home-starmini-image{flex:3 1 300px;min-width:260px;max-width:480px;background:#1c1c1f !important;border-radius:20px;overflow:hidden;}
.home-starmini-image img{width:100%;height:100%;object-fit:cover;}
.home-starmini-content{flex:3.6 1 380px;min-width:300px;}
.home-starmini-content .eyebrow{background:none !important;color:var(--eyebrow-on-dark) !important;}
.home-starmini-content h2{font-size:clamp(20px, 2.396vw, 46px);line-height:1.2;margin:12px 0;color:#fff !important;}
.home-starmini-content p{font-size:clamp(14px, 1.042vw, 20px);color:#b8b8b8 !important;margin:0 0 18px;}
.home-starmini-content .icon-list{margin-bottom:24px;gap:10px;}
.home-starmini-content .icon-list li{font-size:clamp(13px, 0.885vw, 17px);}

/* ===== DARK SECTIONS (Corporativa / Mobile e MarÃ­tima / Contato) ===== */
.section-dark{background:var(--page-dark) !important;color:#fff !important;}
.section-black{background:#000 !important;color:#fff !important;}
.section-dark .eyebrow, .section-black .eyebrow{background:none !important;color:var(--eyebrow-on-dark) !important;}
.section-dark h2, .section-black h2,
.section-dark h2.title, .section-black h2.title,
.section-dark .two-col .text h2, .section-black .two-col .text h2{color:#fff !important;}
.section-dark p.subtitle, .section-black p.subtitle,
.section-dark .two-col .text p.lead, .section-black .two-col .text p.lead{color:var(--text-muted-dark) !important;}
.section-dark .icon-list li, .section-black .icon-list li{color:#fff !important;}
.section-dark .image-placeholder, .section-black .image-placeholder{background:var(--card-dark-alt) !important;color:var(--text-muted-dark) !important;}
.section-dark .image-placeholder .ph-icon, .section-black .image-placeholder .ph-icon{opacity:.8;}

.section-dark .benefit-card, .section-black .benefit-card{background:var(--card-dark) !important;border-color:var(--border-dark) !important;}
.section-dark .benefit-card h3, .section-black .benefit-card h3{color:#fff !important;}
.section-dark .benefit-card p, .section-black .benefit-card p{color:var(--text-muted-dark) !important;}

.section-dark .segment-card, .section-black .segment-card{background:var(--card-dark) !important;}
.section-dark .segment-card .seg-image, .section-black .segment-card .seg-image{background:var(--card-dark-alt) !important;}
.section-dark .segment-card h3, .section-black .segment-card h3{color:#fff !important;}
.section-dark .segment-card p, .section-black .segment-card p{color:var(--text-muted-dark) !important;}

.section-dark .faq-card, .section-black .faq-card{background:var(--card-dark) !important;border-color:var(--border-dark) !important;}
.section-dark .faq-q, .section-black .faq-q{color:#fff !important;}
.section-dark .faq-a, .section-black .faq-a{color:var(--text-muted-dark) !important;}

/* ===== CONTATO ===== */
.contact-hero{background:var(--page-dark) !important;padding:70px 40px 40px;}
.contact-hero .container{max-width:var(--container);}
.contact-hero h1{font-size:48px;font-weight:700;color:#fff !important;margin:16px 0;max-width:900px;}
.contact-hero p{font-size:18px;color:var(--text-muted-dark) !important;max-width:800px;margin:0;}

/* ===== PÃGINAS DE POLÃTICA / INSTITUCIONAL ===== */
.policy-block{max-width:900px;}
.policy-block h2{font-size:26px;color:#fff !important;margin:36px 0 14px;}
.policy-block h2:first-child{margin-top:0;}
.policy-block p{color:var(--text-muted-dark) !important;font-size:16px;line-height:1.7;margin:0 0 16px;}
.policy-block ul{color:var(--text-muted-dark) !important;font-size:16px;line-height:1.8;padding-left:22px;margin:0 0 20px;}
.policy-block li{margin-bottom:6px;}
.policy-block strong{color:#fff !important;}
.policy-block a{color:var(--orange) !important;text-decoration:underline;}
.policy-block .btn-dark{margin-top:8px;}

.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px;}
.contact-card{
  background:var(--card-dark) !important;border:1px solid var(--border-dark);border-radius:20px;
  padding:36px 32px;display:flex;flex-direction:column;gap:20px;
}
.contact-card-icon{
  width:52px;height:52px;border-radius:14px;background:#331f0f !important;
  display:flex;align-items:center;justify-content:center;color:var(--orange) !important;
}
.contact-card-icon svg{width:22px;height:22px;}
.contact-card-label{font-size:16px;color:#fff !important;font-weight:600;margin:0;}
.contact-card-value{font-size:20px;color:#fff !important;font-weight:700;margin:0;}
.contact-card .btn-outline{
  margin-top:auto;text-align:center;padding:15px;border-radius:100px;
  border:1.5px solid var(--orange);color:var(--orange) !important;font-weight:600;font-size:15px;
  text-decoration:none;
}
.contact-card .btn-fill{
  margin-top:auto;text-align:center;padding:15px;border-radius:100px;
  background:var(--orange) !important;color:#fff !important;font-weight:600;font-size:15px;
  text-decoration:none;
}

/* ===== RESPONSIVE ===== */
@media (max-width:900px){
  .home-starmini-image{aspect-ratio:662/713;max-width:520px;}
}
@media (max-width:1024px){
  .nav-toggle{display:flex;}
  .main-nav{
    display:none;
    position:absolute;top:100%;left:0;right:0;
    flex-direction:column;gap:0;
    background:#fff !important;padding:8px 40px 20px;
    border-radius:0 0 24px 24px;
    box-shadow:0 16px 24px rgba(0,0,0,.08);
  }
  .main-nav.is-open{display:flex;}
  .main-nav li{border-top:1px solid var(--border);}
  .main-nav li:first-child{border-top:none;}
  .main-nav a{display:block;padding:14px 0;}
  .site-header--dark .main-nav{background:var(--black) !important;box-shadow:0 16px 24px rgba(0,0,0,.4);}
  .site-header--dark .main-nav li{border-top-color:#292929;}
  .two-col, .two-col.reverse{flex-direction:column;}
  .benefits-grid, .segments-grid{grid-template-columns:repeat(2,1fr);}
  .faq-grid{grid-template-columns:1fr;}
  .product-cards{grid-template-columns:repeat(3,1fr);}
  .services-inner h2{font-size:36px;}
  .shop-grid{grid-template-columns:repeat(3,1fr);}
  .trust-bar{grid-template-columns:repeat(2,1fr);}
  .store-hero h1{font-size:36px;}
  .contact-grid{grid-template-columns:1fr;}
  .contact-hero h1{font-size:36px;}
}
@media (max-width:640px){
  .benefits-grid, .segments-grid, .product-cards{grid-template-columns:1fr;}
  .cta-box{padding:40px 24px;}
  .starmini-content{padding:32px;}
  .section{padding:56px 20px;}
  .header-inner{padding:14px 20px;}
  .main-nav{padding:8px 20px 20px;}
  .shop-grid{grid-template-columns:repeat(2,1fr);}
  .trust-bar{grid-template-columns:1fr;}
  .store-hero{padding:50px 20px 10px;}
  .btn-store{
    position:fixed;
    right:16px;
    bottom:16px;
    z-index:150;
    padding:14px 22px;
    border-radius:100px;
    box-shadow:0 8px 20px rgba(0,0,0,.28);
  }
}

/* ===== ACESSIBILIDADE ===== */
.skip-link{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:var(--orange) !important;color:#fff !important;padding:12px 20px;border-radius:0 0 12px 0;
  font-weight:600;font-size:15px;text-decoration:none;
}
.skip-link:focus{left:0;}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px;}

/* ===== HERO INSTITUCIONAL / POLÃTICAS ===== */
.contact-hero .eyebrow{background:none !important;color:var(--eyebrow-on-dark) !important;}
.contact-hero .breadcrumb{font-size:14px;color:var(--text-muted-dark) !important;margin:0 0 18px;}
.contact-hero .breadcrumb a{color:var(--text-muted-dark) !important;text-decoration:none;}
.contact-hero .breadcrumb a:hover{color:var(--orange) !important;}

/* ===== PÃGINAS DE POLÃTICA ===== */
.policy-updated{
  display:inline-block;font-size:13px;color:var(--text-muted-dark) !important;
  border:1px solid var(--border-dark);border-radius:100px;padding:7px 16px;margin:0 0 32px;
}
.policy-block h3{font-size:18px;color:#fff !important;margin:24px 0 10px;}
.policy-note{
  background:var(--card-dark) !important;border:1px solid var(--border-dark);border-left:3px solid var(--orange);
  border-radius:12px;padding:20px 24px;margin:28px 0;
}
.policy-note p{margin:0;}
.policy-steps{list-style:none;padding:0;margin:0 0 24px;counter-reset:step;}
.policy-steps li{
  position:relative;padding-left:46px;margin-bottom:18px;
  color:var(--text-muted-dark) !important;font-size:16px;line-height:1.6;
}
.policy-steps li::before{
  counter-increment:step;content:counter(step);
  position:absolute;left:0;top:-2px;
  width:30px;height:30px;border-radius:50%;
  background:#331f0f !important;color:var(--orange) !important;
  display:flex;align-items:center;justify-content:center;
  font-size:14px;font-weight:700;
}
.policy-table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:15px;}
.policy-table th,.policy-table td{
  text-align:left;padding:14px 16px;border-bottom:1px solid var(--border-dark);
  color:var(--text-muted-dark) !important;line-height:1.5;
}
.policy-table th{color:#fff !important;font-weight:600;font-size:14px;}
.policy-table-wrap{overflow-x:auto;}
.policy-related{border-top:1px solid var(--border-dark);margin-top:48px;padding-top:32px;}
.policy-related h2{font-size:20px;margin:0 0 16px;}
.policy-related-links{display:flex;flex-wrap:wrap;gap:10px;}
.policy-related-links a{
  border:1px solid var(--border-dark);border-radius:100px;padding:10px 20px;
  font-size:14px;color:var(--text-muted-dark) !important;text-decoration:none;
}
.policy-related-links a:hover{border-color:var(--orange) !important;color:var(--orange) !important;}

/* ===== SOBRE A EMPRESA ===== */
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:36px;}
.about-stat{background:var(--card-dark) !important;border:1px solid var(--border-dark);border-radius:16px;padding:30px;}
.about-stat strong{display:block;color:var(--orange) !important;font-size:34px;font-weight:800;line-height:1;margin-bottom:10px;}
.about-stat span{color:var(--text-muted-dark) !important;font-size:14px;line-height:1.5;display:block;}
.eco-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px;}
.eco-card{
  background:var(--card-dark) !important;border:1px solid var(--border-dark);border-radius:20px;
  padding:34px;display:flex;flex-direction:column;gap:12px;
}
.eco-card .eco-tag{
  align-self:flex-start;background:#331f0f !important;color:var(--orange) !important;
  font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  padding:6px 14px;border-radius:100px;
}
.eco-card h3{color:#fff !important;font-size:21px;margin:4px 0 0;}
.eco-card p{color:var(--text-muted-dark) !important;font-size:15px;line-height:1.6;margin:0;}
.eco-card a{margin-top:auto;padding-top:8px;color:var(--orange) !important;font-weight:600;font-size:14px;text-decoration:none;}
.eco-card a:hover{text-decoration:underline;}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px;}
.value-card{background:var(--card-dark) !important;border:1px solid var(--border-dark);border-radius:16px;padding:30px;}
.value-card h3{color:#fff !important;font-size:18px;margin:0 0 8px;}
.value-card p{color:var(--text-muted-dark) !important;font-size:14px;line-height:1.6;margin:0;}

@media (max-width:1024px){
  .about-stats{grid-template-columns:repeat(2,1fr);}
  .eco-grid,.values-grid{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .about-stats{grid-template-columns:1fr;}
  .contact-hero{padding:50px 20px 30px;}
  .contact-hero h1{font-size:30px;}
}

/* rodapÃ©: aviso legal */
.footer-legal{max-width:900px;margin-left:auto;margin-right:auto;}
.site-footer--dark .footer-legal{color:#8c8c8c !important;}

/* ===== CARROSSEL DE PRODUTOS (loop infinito) ===== */
.product-marquee{
  position:relative;
  margin-top:32px;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%);
}
.product-track{
  display:flex;
  gap:20px;
  width:max-content;
  will-change:transform;
}
.product-marquee.is-running .product-track{
  animation:product-marquee var(--marquee-duration,40s) linear infinite;
}
.product-marquee.is-running:hover .product-track,
.product-marquee.is-running:focus-within .product-track{animation-play-state:paused;}
.product-track > .product-card{
  flex:0 0 auto;
  width:clamp(220px,21vw,320px);
  margin-top:0;
}
@keyframes product-marquee{
  from{transform:translateX(0);}
  to{transform:translateX(calc(-50% - 10px));}
}

/* sem animaÃ§Ã£o: vira carrossel de arrastar */
@media (prefers-reduced-motion:reduce){
  .product-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none;}
  .product-marquee.is-running .product-track{animation:none;}
}
@media (max-width:640px){
  .product-track > .product-card{width:clamp(200px,62vw,260px);}
}

/* aviso legal da seÃ§Ã£o STARMINI: o nowrap causava scroll horizontal no mobile */
@media (max-width:900px){
  .home-starmini .hero-legal{
    position:static;
    transform:none;
    white-space:normal;
    max-width:100%;
    margin-top:24px;
  }
}

/* ==========================================================================
   AJUSTES DE MOBILE E DE LARGURA
   --------------------------------------------------------------------------
   Este bloco fica no FIM do arquivo de propósito: por vir depois, ele vence
   as regras acima sem precisar de !important em quase nada.

   Duas coisas que estavam quebrando:

   1) SCROLL LATERAL. A causa não era o Elementor — era `min-width` em filhos
      de flex (.two-col .text, .image-placeholder, .pd-info, etc., com 300 a
      320px). Um item de flex NÃO encolhe abaixo do seu min-width: ele estoura
      o container e empurra a página. Num celular de 320px, com o padding de
      20px de cada lado, sobram 280px de espaço — menos que os 300px exigidos.
      Daí a barra de rolagem horizontal, por mais que a seção estivesse
      configurada como largura total. A correção é zerar esse min-width no
      mobile, deixando o item encolher junto com a tela.

   2) AVISO LEGAL. Ele continua flutuando sobre a seção, como no desktop —
      é assim que deve ser. O que quebrava no celular era o tamanho: com a
      largura de 480px e alinhado à direita, ele cobria os botões. Aqui ele
      passa a ocupar a largura toda, colado embaixo, em corpo bem pequeno e
      centralizado, por cima do conteúdo. A seção ganha um respiro extra
      embaixo para o texto não encostar no que vem antes dele.
   ========================================================================== */

/* nada pode ultrapassar a largura da tela */
img, video, iframe, table, pre {
  max-width: 100%;
}

/* ==========================================================================
   IMAGENS DIFERENTES NO CELULAR/TABLET
   --------------------------------------------------------------------------
   As imagens de fundo agora vêm de duas variáveis declaradas no próprio
   elemento, no HTML:

     style="--img-desktop:url('LINK_A'); --img-mobile:url('LINK_B')"

   Até 1024px (celular e tablet) vale a --img-mobile; acima disso, a
   --img-desktop. O `var(--img-mobile, var(--img-desktop))` traz um atalho
   útil: se a versão de celular não for preenchida, ele cai sozinho na de
   desktop, em vez de a seção ficar sem fundo nenhum.

   O !important aqui não é preguiça, é necessidade: `background` é uma
   propriedade ABREVIADA e, ao ser usada, zera o background-image junto.
   Regras como `background:#0d0d0d !important` (que existiam em
   .services-section e .tech-card) apagavam a imagem de fundo — motivo pelo
   qual essas duas seções nunca exibiram foto nenhuma, nem com o
   background-image inline de antes. As declarações foram trocadas por
   `background-color`, e este !important fica como segunda trava, caso o
   tema ou o Elementor voltem a usar a forma abreviada.
   ========================================================================== */
.hero,
.services-section,
.tech-card {
  background-image: var(--img-desktop) !important;
}

@media (max-width: 1024px) {
  .hero,
  .services-section,
  .tech-card {
    background-image: var(--img-mobile, var(--img-desktop)) !important;
  }
}

/* As fotos que não são de fundo usam <picture>, que é o mecanismo próprio do
   HTML para isso: o navegador escolhe a versão certa e baixa só ela. O
   <picture> precisa herdar o tamanho, senão a foto encolhe para o tamanho
   natural dentro da caixa. */
.image-placeholder picture,
.home-starmini-image picture,
.starmini-image picture {
  display: block;
  width: 100%;
  height: 100%;
}

/* O aviso legal da seção STARMINI usava white-space:nowrap, o que o mantinha
   numa linha só. Como o texto é longo, ele furava a tela em qualquer largura
   menor que a linha inteira (não só no celular). Deixa quebrar sempre. */
.home-starmini .hero-legal {
  white-space: normal;
  max-width: 900px;
}

@media (max-width: 1024px) {
  /* Aviso legal: continua flutuando por cima da seção, colado embaixo, mas
     ocupando a largura toda e em corpo pequeno. O `right` junto do `left`
     é o que faz ele ocupar a largura inteira sem precisar de width fixo —
     e é por isso que o max-width de 480px do desktop precisa ser anulado. */
  .hero-legal,
  .home-starmini .hero-legal,
  .services-section .hero-legal {
    position: absolute;
    left: 20px;
    right: 20px;
    /* 46px, e não 12px, por causa da SOBREPOSIÇÃO ENTRE SEÇÕES: a seção
       seguinte (.section-cover-top, .section-round-both, .site-footer) sobe
       33px com margin-top negativo para criar o efeito de cartão
       arredondado. Tudo que ficar a menos de 33px do fundo é coberto por
       ela. Era isso que cortava o aviso — não o overflow. 46px deixa o
       texto logo acima dessa faixa. */
    bottom: 46px;
    top: auto;
    transform: none;
    width: auto;
    max-width: none;
    margin: 0;
    text-align: center;
    font-size: 9px;
    line-height: 1.35;
    white-space: normal;
    z-index: 5;
  }

  /* as seções que recebem o aviso precisam ser a referência do
     posicionamento, senão ele iria parar no rodapé da página inteira */
  .hero,
  .home-starmini,
  .services-section {
    position: relative;
  }

  /* .hero e .services-section têm overflow:hidden, e era ele que cortava o
     aviso pela metade: no celular o texto ocupa 4 ou 5 linhas, bem mais que
     o espaço que sobrava embaixo. Liberar o overflow resolve na raiz — o
     arredondamento das bordas continua valendo, porque border-radius recorta
     o fundo por conta própria, sem depender de overflow. */
  .hero,
  .services-section {
    overflow: visible;
  }

  /* Respiro embaixo = 33px da sobreposição + ~62px de 5 linhas do aviso
     em 9px + folga. Sem isso o texto subiria por cima do conteúdo. */
  .hero {
    min-height: 0;
    padding-bottom: 124px;
  }
  .home-starmini,
  .services-section {
    padding-bottom: 124px;
  }
  .hero-content {
    max-width: 100%;
  }

  /* logo menor: em 26px ela dominava a barra estreita do celular */
  .logo img {
    height: 20px;
  }

  /* MENU ABERTO: emenda com a barra, sem frestas nos cantos.
     A barra tem border-radius:0 0 24px 24px, ou seja, as quinas de baixo
     curvam para dentro. Com o menu aberto logo abaixo, essas curvas deixam
     dois vãos onde o fundo escuro aparece. Enquanto o menu estiver aberto,
     a barra fica com as quinas retas e sem sombra, e as duas caixas viram
     uma só. O :has() é o que permite estilizar o PAI a partir do estado do
     filho — sem ele seria preciso mexer no JavaScript. */
  .site-header:has(.main-nav.is-open) {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    box-shadow: none;
  }
  /* a sombra passa para o menu, que agora é a borda de baixo do conjunto */
  .main-nav.is-open {
    box-shadow: 0 16px 24px rgba(0, 0, 0, .12);
  }

  /* na home o aviso da seção STARMINI fica dentro de um .container, que
     tem padding próprio: zerado aqui para o texto usar a largura toda */
  .home-starmini > .container {
    position: static;
    padding: 0;
  }

  /* A seção de serviços usa clip-path:url(#servicesSectionClip), mas esse
     SVG não existe em nenhum lugar da página — ou seja, o recorte nunca
     chegou a funcionar. Como um clip-path corta os filhos posicionados de
     forma absoluta, ele poderia comer o aviso legal aqui embaixo. Zerado
     no mobile para não correr esse risco. */
  .services-section {
    -webkit-clip-path: none;
    clip-path: none;
  }
}

/* ==========================================================================
   CARROSSEL MANUAL NO CELULAR E TABLET
   --------------------------------------------------------------------------
   No desktop ele roda sozinho em loop. No toque isso atrapalha: a animação
   toma conta do movimento e não dá para arrastar. Aqui a faixa vira uma
   área de rolagem horizontal comum — o dedo controla, com encaixe suave em
   cada card. A animação é desligada tanto no CSS quanto no JavaScript (que
   também para de duplicar os cards, senão apareceriam repetidos ao deslizar).
   ========================================================================== */
@media (max-width: 1024px) {
  .product-marquee,
  .ss-marquee {
    /* A forma de duas palavras é explícita: rola na horizontal, travado na
       vertical. O !important é porque a regra de origem usa `overflow:hidden`
       na forma abreviada, que define os dois eixos de uma vez. */
    overflow: auto hidden !important;
    -webkit-overflow-scrolling: touch;
    /* SEM ENCAIXE. Testei com scroll-snap e a rolagem funciona, mas os
       pontos de parada ficam a cada ~280px: um arraste curto é puxado de
       volta para o card de origem, o que dá exatamente a sensação de estar
       travado. Arraste livre é o que se espera de "mexer manualmente". */
    scroll-snap-type: none;
    /* o esmaecido das pontas atrapalha quando é o dedo que conduz */
    -webkit-mask-image: none;
    mask-image: none;
    /* espaço para a barra de rolagem não cobrir o card */
    padding-bottom: 6px;
  }
  /* a animação some com ou sem a classe is-running, para não sobrar
     nenhum caminho em que ela volte a assumir o controle do movimento */
  .product-marquee .product-track,
  .product-marquee.is-running .product-track,
  .ss-marquee .ss-marquee-track,
  .ss-marquee.is-running .ss-marquee-track {
    animation: none !important;
    transform: none !important;
  }
  .product-track > .product-card,
  .ss-marquee-track > .ss-marquee-card {
    scroll-snap-align: none;
  }

  /* barra de rolagem discreta, para indicar que dá para arrastar */
  .product-marquee::-webkit-scrollbar,
  .ss-marquee::-webkit-scrollbar {
    height: 4px;
  }
  .product-marquee::-webkit-scrollbar-thumb,
  .ss-marquee::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, .22);
    border-radius: 100px;
  }
  .product-marquee::-webkit-scrollbar-track,
  .ss-marquee::-webkit-scrollbar-track {
    background: transparent;
  }
}

/* ---- a correção do scroll lateral ---- */
@media (max-width: 1024px) {
  .two-col .text,
  .two-col .image-placeholder,
  .image-placeholder,
  .pd-gallery,
  .pd-info,
  .home-starmini-image,
  .home-starmini-content,
  .starmini-image,
  .starmini-content,
  .tech-card {
    min-width: 0;
  }
}

@media (max-width: 640px) {
  /* botões do topo em coluna: lado a lado eles ficavam espremidos e o texto
     quebrava no meio da palavra */
  .hero-ctas {
    flex-direction: column;
    align-items: stretch;
  }
  .hero-ctas a {
    text-align: center;
    font-size: 16px;
    padding: 16px 24px;
  }

  /* respiro lateral: 28px afasta o texto da borda da tela, que é o que
     faltava — antes o parágrafo encostava quase na quina do celular */
  .section,
  .home-starmini,
  .services-section,
  .store-hero,
  .site-footer {
    padding-left: 28px;
    padding-right: 28px;
  }
  .hero {
    padding-left: 28px;
    padding-right: 28px;
  }
  .container {
    padding-left: 0;
    padding-right: 0;
  }

  /* Tipografia proporcional à tela. Os tamanhos do desktop (22px de lead,
     18px de lista) ficam grandes demais num celular: cada frase ocupa muitas
     linhas e a seção vira um paredão de texto. */
  .services-inner .lead {
    font-size: 16px;
    line-height: 1.5;
  }
  .services-list {
    font-size: 15px;
    line-height: 1.9;
    padding-left: 20px;
  }
  .section p.subtitle {
    font-size: 15px;
  }
  .section h2.title {
    font-size: 22px;
  }
  .two-col .text h2 {
    font-size: 24px;
  }
  .two-col .text p.lead {
    font-size: 15px;
  }
  .icon-list li {
    font-size: 15px;
  }
  .starmini-content h2 {
    font-size: 24px;
  }
  .starmini-content p {
    font-size: 15px;
  }

  /* títulos e blocos escuros com proporção melhor na tela pequena */
  .services-inner h2 {
    font-size: 24px;
  }
  /* só o topo: o padding de baixo é o que reserva espaço para o aviso legal
     flutuante, definido na faixa de 1024px acima — não pode ser reduzido */
  .services-section {
    padding-top: 70px;
  }
  .starmini-content {
    padding: 28px 20px;
  }
  .cta-box {
    padding: 40px 20px;
  }
  .cta-box h2 {
    font-size: 26px;
  }

  /* rodapé em coluna, sem os saltos de espaçamento do layout de 3 colunas */
  .footer-grid {
    flex-direction: column;
    gap: 28px;
  }

  /* o vídeo acompanha a largura da tela */
  .video-embed {
    border-radius: 14px;
    margin-top: 24px;
  }

  /* tabelas de política rolam sozinhas, sem arrastar a página junto */
  .policy-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}/* End custom CSS */