@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');

:root { --ink:#052E4D; --ink-2:#0b3f6a; --paper:#FFFFFF; --paper-2:#f3f7fb; --orange:#FCFE01; --orange-2:#e7e900; --blue:#356CB4; --muted:#5a7185; --line:rgba(5,46,77,.18); --white:#FFFFFF; --display:'Barlow Condensed', Impact, sans-serif; --body:'DM Sans', Arial, sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--body); font-size:16px; line-height:1.5; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
.container { width:min(1180px, calc(100% - 48px)); margin:0 auto; }
.site-header { padding-top:36px; background:var(--ink); color:var(--white); }
.topbar { position:fixed; inset:0 0 auto; z-index:1000; height:36px; overflow:hidden; background:var(--orange); color:var(--ink); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.topbar__viewport { width:100%; overflow:hidden; }
.topbar__track { display:flex; width:max-content; min-width:max-content; animation:topbar-scroll 24s linear infinite; will-change:transform; }
.topbar__group { display:flex; align-items:center; flex:0 0 auto; padding:0 20px; }
.topbar__item { display:inline-flex; align-items:center; white-space:nowrap; line-height:36px; }
.topbar__item + .topbar__item::before { content:'•'; color:rgba(5,46,77,.58); margin:0 14px; font-size:14px; }
@keyframes topbar-scroll { from { transform:translateX(0); } to { transform:translateX(-25%); } }
@media (prefers-reduced-motion:reduce) { .topbar__track { animation-play-state:paused; } }
.nav { min-height:86px; display:flex; align-items:center; gap:30px; }
.nav__offer { margin-left:auto; margin-right:auto; flex-shrink:0; }
.brand { display:flex; align-items:center; flex-shrink:0; }
.brand__logo { display:block; width:210px; height:auto; }
.brand__text { display:flex; flex-direction:column; line-height:.9; }
.brand__text strong { font:800 36px/1 var(--display); letter-spacing:.01em; }
.brand__text small { font-size:11px; letter-spacing:.22em; margin-top:5px; font-weight:700; }
.nav__links { display:flex; gap:30px; margin-left:0; font-size:14px; font-weight:600; }
.nav__links a { padding:8px 0; border-bottom:1px solid transparent; }
.nav__links a:hover { border-color:var(--orange); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:16px; padding:14px 19px; min-height:50px; border:0; cursor:pointer; font-size:13px; line-height:1.1; font-weight:700; text-transform:uppercase; letter-spacing:.08em; transition:transform .2s, background .2s, color .2s; }
.button:hover { transform:translateY(-2px); }
.button span { font-size:20px; font-weight:400; line-height:0; }
.wa-icon { display:block; width:20px; height:20px; flex:0 0 auto; fill:currentColor; }
.button--small { min-height:42px; padding:12px 15px; font-size:11px; }
.button--orange { background:var(--orange); color:var(--ink); }
.button--orange:hover { background:var(--orange-2); }
.button--dark { background:var(--ink); color:var(--white); }
.button--dark:hover { background:var(--orange); }
.nav__toggle { display:none; border:0; color:var(--white); background:transparent; font-size:24px; cursor:pointer; }
.hero { position:relative; background:linear-gradient(90deg,rgba(5,46,77,.96) 0%,rgba(5,46,77,.88) 38%,rgba(5,46,77,.48) 68%,rgba(5,46,77,.34) 100%),url('assets/hero-reis-warehouse.png') center 68%/cover no-repeat; color:var(--white); padding:26px 0 0; overflow:hidden; }
.hero__grid { position:relative; z-index:1; min-height:560px; display:grid; grid-template-columns:1fr; align-items:center; }
.eyebrow { display:flex; align-items:center; gap:10px; color:var(--orange); font-size:11px; text-transform:uppercase; letter-spacing:.16em; font-weight:700; }
.products .eyebrow,.about .eyebrow { color:var(--blue); }
.eyebrow__line { width:38px; height:2px; background:currentColor; display:inline-block; }
.eyebrow--light { color:#ff8b60; }
h1,h2,h3,p { margin-top:0; }
h1,h2 { font:700 clamp(54px, 7vw, 94px)/.88 var(--display); letter-spacing:-.03em; text-transform:uppercase; }
h1 { max-width:680px; margin:27px 0 25px; }
h1 em,h2 em { color:var(--orange); font-style:normal; }
.hero__title { display:flex; flex-direction:column; align-items:flex-start; gap:4px; letter-spacing:.015em; }
.hero__title-top,.hero__title-bottom { display:block; white-space:nowrap; }
.hero__title-top { font-size:clamp(29px, 4.5vw, 58px); line-height:1; }
.hero__title-bottom { color:var(--orange); font-size:clamp(68px, 8.7vw, 116px); line-height:.82; }
.hero__content p { max-width:490px; color:#b9c2c8; font-size:17px; line-height:1.7; }
.hero__actions { display:flex; align-items:center; gap:26px; margin-top:36px; }
.text-link { display:inline-flex; align-items:center; gap:10px; font-size:13px; text-transform:uppercase; letter-spacing:.09em; font-weight:700; }
.text-link:hover { color:var(--orange); }
.text-link span { font-size:18px; }
.hero__visual { display:none; }
.hero__visual::before,.hero__visual::after { content:''; position:absolute; width:140%; height:1px; background:rgba(238,98,49,.4); transform:rotate(-34deg); left:-20%; }
.hero__visual::before { top:38%; background:rgba(252,254,1,.65); box-shadow:0 35px rgba(252,254,1,.18),0 70px rgba(252,254,1,.12),0 105px rgba(252,254,1,.08); }
.hero__visual::after { top:59%; transform:rotate(40deg); background:rgba(255,255,255,.13); box-shadow:0 31px rgba(255,255,255,.07),0 62px rgba(255,255,255,.04); }
.hero__visual-lines { position:absolute; inset:0; background:repeating-linear-gradient(90deg, transparent 0 88px, rgba(255,255,255,.035) 89px 90px); }
.hero__visual-note { position:absolute; top:22px; left:26px; font-size:10px; text-transform:uppercase; letter-spacing:.13em; color:#aebcc3; z-index:1; }
.visual-dot { width:7px; height:7px; background:var(--orange); border-radius:50%; display:inline-block; margin-right:7px; }
.hero__visual-word { position:relative; z-index:1; font:800 clamp(100px,16vw,205px)/.8 var(--display); color:rgba(255,255,255,.08); letter-spacing:-.05em; }
.hero__visual-badge { position:absolute; right:28px; bottom:28px; border:1px solid rgba(255,255,255,.3); color:var(--white); padding:12px 16px; text-align:center; font:700 22px/1 var(--display); letter-spacing:.08em; z-index:1; }
.hero__visual-badge small { font:500 9px/1 var(--body); text-transform:uppercase; letter-spacing:.15em; color:#cad2d6; }
.hero__bottom { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; gap:25px; border-top:1px solid rgba(255,255,255,.35); padding:20px 0 23px; }
.offer-card { display:flex; align-items:center; gap:12px; }
.offer-card__icon { width:43px; height:43px; display:grid; place-items:center; color:var(--orange); font:700 18px var(--display); }
.offer-card__icon img { display:block; width:46px; height:auto; filter:brightness(0) saturate(100%) invert(94%) sepia(95%) saturate(1757%) hue-rotate(4deg) brightness(104%) contrast(107%); }
.offer-card div:last-child { display:flex; flex-direction:column; line-height:1.1; }
.offer-card small,.offer-card span { font-size:10px; color:#aab4ba; text-transform:uppercase; letter-spacing:.1em; }
.nav__offer span { font-size:12px; letter-spacing:.12em; }
.nav__offer span b { font-weight:700; color:var(--white); }
.offer-card strong { font:600 30px var(--display); text-transform:uppercase; letter-spacing:.02em; }
.hero__scroll { color:#aab4ba; font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.hero__scroll span { color:var(--orange); padding-left:8px; font-size:20px; }
.hero__stamp { color:#84919a; font:600 12px var(--display); text-transform:uppercase; letter-spacing:.12em; }
.hero__stamp span { display:inline-grid; place-items:center; width:23px; height:23px; border:1px solid #84919a; margin-right:7px; font-size:16px; }
.section { padding:105px 0; }
.section-heading--split { display:flex; align-items:flex-end; justify-content:space-between; gap:45px; margin-bottom:54px; }
.section-heading h2 { font-size:clamp(53px,6vw,80px); margin:22px 0 0; }
.section-heading h2 em { -webkit-text-stroke:.8px rgba(5,46,77,.32); text-shadow:3px 4px 0 rgba(5,46,77,.28),0 0 8px rgba(5,46,77,.18); }
.section-heading p { max-width:265px; margin:0 0 6px; color:var(--muted); font-size:15px; line-height:1.7; }
.product-carousel { position:relative; display:flex; align-items:center; gap:16px; }
.product-track { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; overflow:hidden; width:100%; }
.product-card { background:var(--white); min-width:0; border:1px solid rgba(5,46,77,.14); box-shadow:0 10px 24px rgba(5,46,77,.08); overflow:hidden; opacity:0; transform:translateY(24px); transition:opacity .65s ease,transform .65s cubic-bezier(.2,.75,.25,1),box-shadow .25s ease; }
.products.is-visible .product-card { opacity:1; transform:translateY(0); }
.products.is-visible .product-card:nth-child(2) { transition-delay:.1s; }
.products.is-visible .product-card:nth-child(3) { transition-delay:.2s; }
.products.is-visible .product-card:nth-child(4) { transition-delay:.3s; }
.product-card:hover { transform:translateY(-8px); box-shadow:0 18px 34px rgba(5,46,77,.16); }
.product-card__media { min-height:265px; position:relative; overflow:hidden; background-color:#052E4D; display:flex; align-items:flex-end; padding:20px; color:var(--white); }
.product-card__media { transition:transform .45s ease; }
.product-card:hover .product-card__media { transform:scale(1.035); }
.product-card__media::after { content:''; position:absolute; inset:0; opacity:.32; background:repeating-linear-gradient(125deg, transparent 0 34px, rgba(252,254,1,.7) 35px 37px, transparent 38px 67px); }
.product-card__media--mesh { background-color:#0b4675; background-image:url('assets/product-ferragem-armada.png'); background-size:cover; background-position:center; }
.product-card__media--mesh::after { display:none; }
.product-card__media--cut { background-image:linear-gradient(rgba(5,46,77,.08),rgba(5,46,77,.28)),url('assets/product-corte-dobra.png'); background-size:cover; background-position:center; }
.product-card__media--cut::after { display:none; }
.product-card__media--column { background-color:#356CB4; background-image:url('assets/product-coluna-armada.jpg'); background-size:cover; background-position:center; }
.product-card__media--column::after { display:none; }
.product-card__media--rebar { background-color:#052E4D; background-image:url('assets/product-vergalhao.png'); background-size:cover; background-position:center; }
.product-card__media--rebar::after { display:none; }
.product-card__media span { position:absolute; top:16px; right:18px; font:600 13px var(--display); color:#c8d0d3; z-index:1; }
.product-card__media b { position:relative; z-index:1; font-size:10px; line-height:1.4; letter-spacing:.14em; color:#d4dbdc; }
.product-card__body { position:relative; min-height:100px; padding:12px 16px 10px; }
.product-card__number { color:var(--blue); font-size:10px; font-weight:700; letter-spacing:.15em; }
.product-card h3 { margin:15px 0 0; font:600 31px/.88 var(--display); text-transform:uppercase; letter-spacing:.01em; }
.product-card__body a { position:absolute; right:16px; top:30px; width:46px; height:46px; display:grid; place-items:center; border:1px solid var(--ink); font-size:24px; }
.product-card__body a .wa-icon { display:none; }
.product-card__body a::before { content:'↗'; font-size:20px; line-height:1; }
.product-card__body a:hover { background:var(--orange); color:var(--white); border-color:var(--orange); }
.carousel-arrow { flex:0 0 36px; width:36px; height:36px; border:1px solid var(--ink); background:transparent; cursor:pointer; font-size:19px; transition:.2s; }
.carousel-arrow:hover { background:var(--orange); color:var(--white); border-color:var(--orange); }
.carousel-footer { display:flex; align-items:center; justify-content:space-between; margin-top:34px; }
.carousel-dots { display:flex; gap:7px; }
.carousel-dots button { width:38px; height:3px; border:0; background:#c8c5bd; cursor:pointer; padding:0; }
.carousel-dots button.is-active { background:var(--blue); }
.benefits { position:relative; isolation:isolate; overflow:hidden; padding:88px 0 96px; background:linear-gradient(115deg,#052e4d 0%,#103b60 53%,#356cb4 100%); color:var(--white); }
.benefits::before { content:''; position:absolute; inset:0; z-index:-1; opacity:.2; background:repeating-linear-gradient(135deg,transparent 0 95px,rgba(255,255,255,.32) 96px,transparent 97px 192px); pointer-events:none; }
.benefits__grid { display:flex; flex-direction:column; align-items:stretch; }
.benefits__intro { width:100%; max-width:1000px; text-align:left; }
.benefits h2 { max-width:950px; margin:0 0 48px; font:700 clamp(50px,5.7vw,78px)/.98 var(--display); text-align:left; }
.benefits__list { width:100%; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.benefit-item { position:relative; display:flex; flex-direction:column; align-items:flex-start; min-height:176px; padding:23px 24px 20px; border:1px solid rgba(255,255,255,.32); border-top:4px solid var(--orange); border-radius:8px; background:rgba(255,255,255,.11); box-shadow:0 12px 30px rgba(3,28,48,.13); backdrop-filter:blur(5px); }
.benefit-item__index { display:grid; place-items:center; min-width:44px; height:40px; padding:0 9px; border-radius:7px; background:var(--orange); color:var(--ink); font:700 18px var(--display); }
.benefit-item__icon { display:none; }
.benefit-item h3 { margin:20px 0 0; font:600 clamp(23px,2vw,29px)/1.05 var(--display); text-transform:uppercase; }
.benefit-item p { margin:11px 0 0; color:#d0dce8; font-size:14px; line-height:1.45; }
.benefits__cta { align-self:center; margin-top:35px; }
.about { background:var(--paper-2); }
.about__grid { display:grid; grid-template-columns:1.08fr .92fr; gap:72px; align-items:center; }
.about__visual { min-height:510px; position:relative; background:var(--ink) url('assets/about-reis-store-wide.png') 60% 18%/auto 115% no-repeat; overflow:hidden; display:flex; align-items:flex-end; padding:26px; border-radius:4px; border:1px solid rgba(53,108,180,.45); box-shadow:0 16px 34px rgba(5,46,77,.14),inset 0 -5px var(--orange); }
.about__visual::before { content:''; position:absolute; top:0; right:0; width:54px; height:54px; border-top:3px solid var(--blue); border-right:3px solid var(--blue); z-index:1; }
.about__visual::after { display:none; }
.about__visual-label { position:relative; z-index:1; font-size:11px; font-weight:700; line-height:1.5; text-transform:uppercase; letter-spacing:.13em; }
.about__visual-label span { color:rgba(17,24,32,.65); font-weight:500; letter-spacing:.06em; }
.about__visual-mark { position:absolute; right:18px; bottom:-42px; color:rgba(17,24,32,.15); font:800 280px/.8 var(--display); z-index:1; }
.about__eyebrow { display:flex; align-items:center; gap:10px; margin-bottom:12px; color:var(--blue); font-size:12px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.about h2 { font-size:clamp(46px,5.2vw,68px); margin:0 0 24px; }
.about__content p { max-width:480px; color:var(--muted); line-height:1.75; }
.about__content p + p { margin-top:14px; }
.about__cta { margin-top:20px; }
.about__cta:hover { box-shadow:0 8px 20px rgba(5,46,77,.18); }
.footer { background:var(--ink); color:var(--white); }
.footer__main { display:grid; grid-template-columns:1.5fr 1fr 1.3fr auto; gap:40px; align-items:start; padding:58px 0 56px; }
.brand--footer .brand__logo { width:225px; }
.footer__label { display:block; margin-bottom:13px; color:var(--orange); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.15em; }
.footer__contact { text-align:center; }
.footer__contact p,.footer__contact a { display:block; margin:0; font-size:15px; line-height:1.6; }
.footer__contact a:hover { color:var(--orange); }
.footer__contact small { display:block; margin-top:8px; color:#849099; font-size:11px; line-height:1.5; }
.footer__up { width:40px; height:40px; border:1px solid rgba(255,255,255,.3); display:grid; place-items:center; font-size:20px; }
.footer__up:hover { background:var(--orange); border-color:var(--orange); }
.footer__bottom { border-top:1px solid rgba(255,255,255,.16); color:#89969d; font-size:11px; }
.footer__bottom .container { display:flex; justify-content:center; gap:20px; padding:18px 0; text-align:center; text-transform:uppercase; letter-spacing:.08em; }
.floating-cta { position:fixed; right:22px; bottom:22px; z-index:10; display:flex; align-items:center; gap:10px; padding:10px 16px 10px 10px; background:var(--orange); color:var(--ink); box-shadow:0 12px 25px rgba(5,46,77,.22); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.floating-cta__icon { width:31px; height:31px; display:grid; place-items:center; border:1px solid rgba(5,46,77,.5); font-size:17px; }
.floating-cta > .wa-icon { width:31px; height:31px; padding:6px; border:1px solid rgba(5,46,77,.5); }
.floating-cta:hover { background:var(--orange-2); }
@media (max-width: 900px) { .container{width:min(100% - 34px, 680px)} .site-header{padding-top:33px}.topbar{height:33px;font-size:10px}.topbar__item{line-height:33px}.topbar__group{padding:0 15px}.topbar__item + .topbar__item::before{margin:0 10px;font-size:12px}.topbar__track{animation-duration:20s}.nav{display:flex;min-height:74px;gap:12px}.brand__logo{width:160px}.nav__offer{margin-left:auto}.nav__offer .offer-card__icon{width:30px;height:30px}.nav__offer .offer-card__icon img{width:34px}.nav__offer strong{font-size:14px}.nav__offer small{display:none}.nav__links{display:none;position:absolute;top:74px;left:0;right:0;z-index:5;background:var(--ink);padding:20px 17px;flex-direction:column;gap:15px;border-bottom:1px solid rgba(255,255,255,.2)}.nav__links.is-open{display:flex}.nav__cta{display:none}.nav__toggle{display:block}.hero__grid{grid-template-columns:1fr;gap:30px;padding-top:48px;min-height:0}.hero__visual{min-height:320px}.hero__bottom{align-items:flex-start;flex-wrap:wrap}.hero__scroll{display:block}.section{padding:80px 0}.section-heading--split{display:block}.section-heading p{margin-top:22px}.product-track{grid-template-columns:repeat(2, minmax(230px,1fr));overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.product-card{scroll-snap-align:start}.benefits__grid,.about__grid{grid-template-columns:1fr;gap:55px}.benefits__intro{max-width:500px}.about__visual{min-height:350px}.footer__main{grid-template-columns:1fr 1fr}.footer__up{justify-self:end}.footer__bottom .container{flex-direction:column;gap:7px} }
@media (max-width: 900px) { #produtos.section { padding:50px 0 45px; } .products .section-heading--split { margin-bottom:34px; } }
@media (max-width: 520px) { .container{width:calc(100% - 30px)}.hero{background-position:center 72%}.hero__title{gap:3px}.hero__title-top{font-size:clamp(24px,7.6vw,34px)}.hero__title-bottom{font-size:clamp(60px,18vw,76px)}.hero__content p{font-size:15px}.hero__actions{align-items:flex-start;flex-direction:column;gap:20px}.hero__visual{min-height:280px;padding:22px}.hero__visual-word{font-size:100px}.hero__bottom{padding-bottom:18px}.offer-card strong{font-size:21px}.hero__stamp{display:none}.section-heading h2,.benefits h2,.about h2{font-size:55px}.product-track{grid-template-columns:repeat(2, minmax(250px,1fr));margin-right:-15px}.carousel-arrow{display:none}.carousel-footer{align-items:flex-start;flex-direction:column;gap:20px}.benefit-item{grid-template-columns:30px 54px 1fr;gap:10px}.benefit-item h3{font-size:21px}.benefit-item p{font-size:12px}.about__visual{min-height:280px}.about__visual-mark{font-size:210px}.footer__main{grid-template-columns:1fr;gap:28px;padding:46px 0}.footer__up{justify-self:start}.floating-cta{right:14px;bottom:14px}.floating-cta span:last-child{font-size:11px} }
@media (max-width: 520px) { .nav{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:10px 12px;padding:14px 0 16px}.brand{grid-column:1;grid-row:1}.brand__logo{width:clamp(175px,58vw,220px)}.nav__toggle{grid-column:2;grid-row:1;justify-self:end}.nav__offer{grid-column:1 / -1;grid-row:2;justify-self:center;margin:0;gap:10px;min-width:0}.nav__offer .offer-card__icon{width:36px;height:36px}.nav__offer .offer-card__icon img{width:40px}.nav__offer strong{font-size:24px;letter-spacing:.02em}.nav__offer span{display:block;white-space:nowrap;font-size:10px;letter-spacing:.12em}.nav__links{top:100%} }
@media (max-width: 520px) { .nav .brand{grid-column:1 / -1;justify-self:center}.nav__offer{justify-self:center;margin:0}.nav__toggle{position:absolute;top:19px;right:0}.hero__grid{padding-top:14px}.hero__content{transform:translateY(-10px)} }
@media (max-width: 900px) { .nav__offer { margin-left:auto; margin-right:0; } }
@media (max-width: 520px) { .nav__offer { margin-left:0; margin-right:0; justify-self:center; } .nav__toggle{position:static;grid-column:2;grid-row:1;align-self:center;justify-self:end;height:auto;display:block;padding:0} }
@media (min-width: 901px) { .product-carousel { display:block; } .product-carousel > .carousel-arrow { display:none; } .product-track { overflow:visible; } .product-card__body { min-height:100px; padding-top:12px; } .product-card__body a { top:27px; width:46px; height:46px; } .product-card__number { display:none; } .carousel-footer { justify-content:center; } .carousel-dots { display:none; } }
@media (min-width: 901px) { #produtos .carousel-controls { display:none; } }
@media (min-width: 901px) { .section-heading h2 br { display:block; } }
@media (min-width: 901px) { .section-heading h2 { font-size:clamp(48px,5vw,70px); } }
@media (max-width: 520px) { .hero__scroll { display:none; } }
@media (prefers-reduced-motion: reduce) { .product-card,.product-card__media { transition:none; } .product-card { opacity:1; transform:none; } .product-card:hover,.product-card:hover .product-card__media { transform:none; } }
@media (max-width: 900px) { .benefits.section { padding:72px 0 78px; } .benefits__grid { display:flex; gap:0; } .benefits__intro { max-width:690px; } .benefits h2 { max-width:690px; font-size:clamp(48px,8vw,70px); margin-bottom:35px; } .benefits__list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; } .benefit-item { display:flex; min-height:160px; padding:22px; } .benefit-item h3 { margin-top:18px; font-size:26px; } .benefit-item p { font-size:14px; } }
@media (max-width: 520px) { .benefits.section { padding:62px 0 68px; } .benefits h2 { font-size:clamp(47px,12vw,60px); margin-bottom:28px; } .benefits__list { grid-template-columns:1fr; gap:12px; } .benefit-item { min-height:0; padding:20px 22px 22px; } .benefit-item h3 { margin-top:18px; font-size:27px; } .benefits__cta { width:100%; margin-top:28px; } }
@media (max-width: 900px) { .about__visual { min-height:410px; } }
@media (max-width: 520px) { .about__visual { min-height:320px; } .about h2 { font-size:48px; } .about__cta { width:100%; } }
@media (max-width: 520px) { .brand--footer { justify-self:center; } }
@media (max-width: 520px) { .floating-cta { width:52px; height:52px; padding:0; justify-content:center; box-sizing:border-box; } .floating-cta > span { display:none; } }
@media (max-width: 520px) { .hero { background-image:linear-gradient(180deg,rgba(5,46,77,.84) 0%,rgba(5,46,77,.68) 45%,rgba(5,46,77,.42) 100%),url('assets/hero-reis-mobile.png'); background-position:center 55%; background-size:cover; } }
@media (max-width: 900px) {
  #produtos .product-track { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:min(540px,calc(100vw - 52px)); overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; padding:0 15px 10px 0; margin-right:-15px; }
  #produtos .product-card { width:100%; min-width:0; scroll-snap-align:start; }
  #produtos .carousel-footer { flex-direction:column; align-items:center; gap:24px; }
  #produtos .carousel-controls { display:flex; align-items:center; justify-content:center; gap:12px; }
  #produtos .carousel-arrow { display:grid; place-items:center; flex:0 0 36px; }
  #produtos .carousel-footer > .button { align-self:center; }
}
@media (max-width: 520px) {
  #produtos .section-heading h2 { max-width:100%; font-size:clamp(34px,9.5vw,48px); line-height:.98; white-space:nowrap; }
  #produtos .section-heading h2 em { white-space:nowrap; }
  #produtos .product-card__body { display:grid; grid-template-columns:minmax(0,1fr) 46px; align-items:center; column-gap:12px; }
  #produtos .product-card__number { grid-column:1 / -1; }
  #produtos .product-card h3 { max-width:none; margin:0; font-size:clamp(19px,6vw,25px); line-height:1; white-space:nowrap; }
  #produtos .product-card h3 br { display:none; }
  #produtos .product-card__body a { position:static; grid-column:2; grid-row:2; width:46px; height:46px; }
}
#produtos .section-heading h2 em { color:var(--ink); -webkit-text-stroke:0; text-shadow:none; }
