/* Immersive websites: editorial type, real project imagery and XR's pink CTAs. */
:root { color-scheme: dark; --si-pink:#ff248e; --si-muted:#b4b3bc; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body.si-page { margin:0; background:#080808; color:#f8f7fa; font:16px/1.7 Arial,Helvetica,sans-serif; }
.si-page *, .si-page *::before, .si-page *::after { box-sizing:border-box; }
.si-page a { color:inherit; text-decoration:none; }
.si-page button { font:inherit; color:inherit; cursor:pointer; }
.si-page :focus-visible { outline:2px solid #ff70b6; outline-offset:5px; }
.si-page img { display:block; max-width:100%; height:auto; }
.si-page h1,.si-page h2,.si-page h3,.si-page p,.si-page figure { margin:0; }
.si-page h1,.si-page h2,.si-page h3 { line-height:1.08; letter-spacing:-.045em; text-wrap:balance; }
.si-page h2 { font-size:clamp(34px,4.1vw,58px); }
.si-page h3 { font-size:24px; }
.si-page em { color:var(--si-pink); font-style:normal; }
.si-wrap { width:min(1280px,calc(100% - 88px)); margin-inline:auto; }
.si-skip { position:fixed; top:10px; left:10px; z-index:20; background:#080808; padding:12px; transform:translateY(-150%); }
.si-skip:focus { transform:none; }
.si-header { position:sticky; top:0; z-index:10; background:#080808f2; border-bottom:1px solid #ffffff12; }
.si-header-inner { min-height:86px; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.si-logo img { width:137px; }
.si-nav { display:flex; align-items:center; gap:30px; font-size:13px; font-weight:700; }
.si-nav a { display:flex; align-items:center; min-height:44px; }
.si-nav a:hover,.si-footer a:hover { color:var(--si-pink); }
.si-lang { border-left:1px solid #ffffff30; padding-left:25px; }
.si-lang span { color:#777; margin-inline:7px; }
.si-eyebrow { font-size:11px; font-weight:700; letter-spacing:.19em; text-transform:uppercase; color:var(--si-muted); }
.si-eyebrow::before { content:''; display:inline-block; width:7px; height:7px; background:var(--si-pink); border-radius:50%; margin-right:12px; }
.si-hero { padding:76px 0 60px; display:grid; grid-template-columns:1fr 1.08fr; gap:54px; align-items:center; }
.si-hero h1 { font-size:clamp(54px,5.8vw,82px); margin:25px 0; letter-spacing:-.06em; }
.si-hero h1 span { display:block; }
.si-intro { max-width:480px; color:var(--si-muted); font-size:18px; line-height:1.7; text-wrap:pretty; }
.si-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
.si-btn { min-height:56px; padding:15px 25px; display:inline-flex; align-items:center; justify-content:center; gap:22px; background:linear-gradient(135deg,#ff248e,#d4006e); border:0; border-radius:50px; font-size:12px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; box-shadow:0 6px 26px #ff248e29; transition:transform .25s,box-shadow .25s; }
.si-btn span { font-size:23px; line-height:1; }
.si-btn--dark { background:linear-gradient(135deg,#303030,#080808); box-shadow:inset 0 0 0 1px #ffffff24,0 6px 26px #0005; }
.si-btn:hover { transform:translateY(-3px); box-shadow:0 10px 30px #ff248e35; }
.si-visual { min-width:0; position:relative; }
.si-visual::before { content:''; position:absolute; inset:-40px -25px; z-index:-1; background:radial-gradient(ellipse,#ff248e16,transparent 70%); }
.si-browser { border:1px solid #ffffff28; border-radius:18px; overflow:hidden; background:#131315; transform:perspective(1100px) rotateY(-5deg) rotateX(2deg); box-shadow:0 30px 80px #0008; transition:transform .5s; }
.si-browser:hover { transform:perspective(1100px) rotateY(0) rotateX(0); }
.si-browser-bar { display:flex; align-items:center; justify-content:space-between; padding:14px 20px; font-size:10px; letter-spacing:.12em; color:#ceced5; }
.si-browser-dots { display:flex; gap:5px; }
.si-browser-dots i { width:6px; height:6px; background:#5a5860; border-radius:50%; }
.si-browser-dots i:first-child { background:var(--si-pink); }
.si-scene { position:relative; background:#121227; }
.si-scene img { width:100%; aspect-ratio:850/480; object-fit:cover; }
.si-scene[hidden] { display:none; }
.si-scene figcaption { background:#131315; padding:15px 20px; color:var(--si-muted); font-size:12px; }
.si-gallery-controls { margin-top:26px; display:flex; gap:10px; }
.si-gallery-controls button { border:1px solid #ffffff22; background:#121214; padding:10px 13px; border-radius:50px; min-height:44px; font-size:11px; flex:1; }
.si-gallery-controls button[aria-pressed="true"] { border-color:var(--si-pink); background:#ff248e16; }
.si-gallery-controls button span { color:var(--si-pink); margin-right:7px; }
.si-gallery-note { color:#a3a1ad; font-size:11px; margin-top:12px!important; text-align:center; }
.si-ribbon { display:flex; justify-content:space-between; gap:20px; padding:24px 0; border-block:1px solid #ffffff19; font-size:12px; letter-spacing:.06em; color:#b4b3bc; }
.si-ribbon span::before { content:'↗'; margin-right:12px; color:var(--si-pink); }
.si-section { padding-block:100px; }
.si-section-head { display:grid; grid-template-columns:1.05fr .95fr; gap:70px; align-items:end; margin-bottom:45px; }
.si-page .si-section-head h2 { font-size:clamp(30px,4.4vw,48px); letter-spacing:-.04em; }
.si-section-head .si-eyebrow { margin-bottom:18px; }
.si-section-head>p { color:var(--si-muted); max-width:46ch; font-size:17px; line-height:1.65; text-wrap:pretty; }
.si-formats { border-top:1px solid #ffffff25; }
.si-format { display:grid; grid-template-columns:60px 1fr 1.15fr; gap:25px; padding:30px 0; border-bottom:1px solid #ffffff20; align-items:start; }
.si-format>span { color:var(--si-pink); font:13px/2 monospace; }
.si-format h3 { font-size:26px; padding-top:3px; }
.si-format p { color:var(--si-muted); }
.si-case { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:36px; padding:32px; background:radial-gradient(ellipse at 90% 0,#ff248e12,transparent 65%),#111113; border:1px solid #ffffff20; border-radius:24px; }
.si-case-top { display:grid; gap:20px; }
.si-case-copy p { color:var(--si-muted); font-size:15px; margin-bottom:14px; }
.si-case-image { border-radius:14px; overflow:hidden; }
.si-case-image img { width:100%; aspect-ratio:850/480; object-fit:cover; border-radius:14px; }
.si-case-image figcaption { font-size:11px; color:var(--si-muted); padding-top:12px; }
.si-process { border-top:1px solid #ffffff20; }
.si-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:38px; list-style:none; padding:0; margin:0; }
.si-steps li { border-top:2px solid #ff248e; padding-top:24px; }
.si-steps span { font:12px monospace; color:var(--si-pink); }
.si-steps h3 { margin:20px 0 15px; }
.si-steps p { color:var(--si-muted); font-size:15px; }
.si-faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; padding-top:0; }
.si-faq .si-eyebrow { margin-bottom:20px; }
.si-faq details { border-bottom:1px solid #ffffff22; padding-block:13px; }
.si-faq details:first-child { padding-top:0; }
.si-faq summary { font-weight:700; cursor:pointer; padding:9px 12px 9px 0; }
.si-faq details p { color:var(--si-muted); font-size:15px; padding-top:16px; }
.si-contact { border:1px solid #ff248e50; border-radius:24px; background:radial-gradient(ellipse at 90% 90%,#ff248e22,transparent 65%),#111; padding:64px; display:flex; align-items:center; justify-content:space-between; gap:50px; }
.si-contact h2 { max-width:650px; margin-block:20px; }
.si-contact p:last-child { color:var(--si-muted); }
.si-contact .si-btn { flex-shrink:0; }
.si-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:4px 20px; padding-block:34px; font-size:12px; color:var(--si-muted); }
.si-footer a { display:inline-flex; align-items:center; min-height:44px; }
/* SEO/GEO content blocks: H1 keyword, use cases, update date. */
.si-hero h1 .si-h1-kw { font-size:clamp(17px,1.6vw,21px); font-weight:700; letter-spacing:.01em; color:var(--si-muted); margin-bottom:18px; line-height:1.3; }
.si-intro strong { color:#f8f7fa; font-weight:700; }
.si-format p a { color:#f8f7fa; text-decoration:underline; text-decoration-color:var(--si-pink); text-underline-offset:3px; }
.si-format p a:hover { color:var(--si-pink); }
.si-hero>div:first-child { min-width:0; }
.si-usecases { padding-bottom:40px; }
.si-case-links { list-style:none; margin:14px 0 0; padding:0; display:grid; gap:8px; }
.si-case-links li { color:var(--si-muted); font-size:15px; padding-left:18px; position:relative; }
.si-case-links li::before { content:'↗'; position:absolute; left:0; color:var(--si-pink); font-size:12px; top:3px; }
.si-case-links a { color:#f8f7fa; font-weight:700; text-decoration:underline; text-decoration-color:var(--si-pink); text-underline-offset:3px; }
.si-case-links a:hover { color:var(--si-pink); }
.si-updated { margin-top:18px!important; font-size:12px; color:#a3a1ad; }

/* === Multiplataforma: celular, computador e oculos VR === */
.si-platform-chips { list-style:none; display:flex; flex-wrap:wrap; gap:9px; margin:26px 0 0; padding:0; }
.si-platform-chips li { display:inline-flex; align-items:center; gap:9px; border:1px solid #ffffff24; background:#121214; border-radius:50px; padding:9px 16px; font-size:12px; font-weight:700; letter-spacing:.02em; color:#dedde4; }
.si-platform-chips svg { width:15px; height:15px; flex:none; fill:none; stroke:var(--si-pink); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.si-platforms-grid { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.si-platforms-grid li { border:1px solid #ffffff20; border-radius:20px; background:#111113; padding:30px 28px; }
.si-platform-icon { display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; margin-bottom:20px; border:1px solid #ff248e40; border-radius:14px; background:#ff248e16; }
.si-platform-icon svg { width:22px; height:22px; fill:none; stroke:var(--si-pink); stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.si-platforms-grid h3 { font-size:21px; margin-bottom:12px; }
.si-platforms-grid p { color:var(--si-muted); font-size:15px; }
.si-compare { margin-top:34px; border:1px solid #ffffff20; border-radius:20px; background:#111113; overflow:hidden; }
.si-compare-toggle { display:flex; align-items:center; gap:14px; padding:20px 26px; cursor:pointer; list-style:none; font-size:13px; font-weight:700; color:#f8f7fa; transition:background .25s; }
.si-compare-toggle::-webkit-details-marker { display:none; }
.si-compare-toggle:hover { background:#ffffff08; }
.si-compare-toggle-text { color:var(--si-pink); letter-spacing:.04em; text-transform:uppercase; font-size:12px; }
.si-compare-hint { flex:1; min-width:0; font-weight:400; font-size:13px; color:var(--si-muted); }
.si-compare-chevron { flex:none; width:11px; height:11px; border-right:2px solid var(--si-pink); border-bottom:2px solid var(--si-pink); transform:rotate(45deg) translate(-2px,-2px); transition:transform .25s; }
.si-compare[open] .si-compare-chevron { transform:rotate(-135deg) translate(-2px,-2px); }
.si-compare[open] .si-compare-toggle { border-bottom:1px solid #ffffff18; }
.si-compare-caption { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 14px; padding:20px 28px 0; font-size:13px; font-weight:700; color:#dedde4; }
.si-compare-swipe { display:none; font-size:11px; font-weight:400; letter-spacing:.04em; color:var(--si-pink); }
.si-compare tbody th, .si-compare thead th:first-child { position:sticky; left:0; z-index:1; }
.si-compare tbody th { background:#111113; }
.si-compare thead th:first-child { background:#141416; }
.si-compare-scroll { overflow-x:auto; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
.si-compare table { width:100%; min-width:680px; border-collapse:collapse; font-size:14px; }
.si-compare th, .si-compare td { text-align:left; padding:15px 20px; border-bottom:1px solid #ffffff14; vertical-align:top; }
.si-compare thead th { background:#141416; font-size:11px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; color:var(--si-muted); }
.si-compare tbody th { width:30%; font-weight:600; color:#f8f7fa; }
.si-compare td { color:var(--si-muted); }
.si-compare .is-xr { background:#ff248e0e; border-inline:1px solid #ff248e3a; color:#f8f7fa; font-weight:600; }
.si-compare thead .is-xr { background:#ff248e1f; color:#fff; }
.si-compare tbody tr:last-child th, .si-compare tbody tr:last-child td { border-bottom:0; }
.si-compare-note { padding:17px 28px; border-top:1px solid #ffffff18; font-size:12px; color:#a3a1ad; }
/* === Cases: protagonismo, destaque e vitrine filtravel === */
.si-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0 0 50px; border-top:1px solid #ffffff25; }
.si-stats > div { display:flex; flex-direction:column; gap:9px; padding:28px 22px 6px 0; }
.si-stats > div + div { padding-left:28px; border-left:1px solid #ffffff18; }
.si-stats dt { font-size:11px; font-weight:700; letter-spacing:.17em; text-transform:uppercase; color:#8d8b97; }
.si-stats dd { margin:0; }
.si-stats .si-stat-value { font-size:clamp(28px,2.5vw,34px); font-weight:700; letter-spacing:-.045em; line-height:1; color:#f8f7fa; font-variant-numeric:tabular-nums; }
.si-stats .si-stat-note { font-size:13px; line-height:1.6; color:#a3a1ad; text-wrap:pretty; }
.si-page .si-case-title { margin-top:14px; font-size:clamp(30px,2.9vw,38px); line-height:1.08; letter-spacing:-.045em; }
.si-page .si-case-title small { display:block; margin-top:11px; font-size:17px; font-weight:400; letter-spacing:-.02em; color:#cac8d0; }
.si-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.si-case + .si-cards { margin-top:34px; }
.si-cards.si-cards--solo { grid-template-columns:1fr; }
.si-cards--solo .si-card--wide { grid-column:1; }
.si-cards--two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.si-card { display:flex; flex-direction:column; border:1px solid #ffffff20; border-radius:20px; background:#111113; overflow:hidden; transition:border-color .3s,transform .3s; }
.si-card:hover { border-color:#ff248e88; transform:translateY(-4px); }
.si-card[hidden] { display:none; }
.si-card-media { position:relative; overflow:hidden; }
.si-card-media img { width:100%; aspect-ratio:16/10; object-fit:cover; transition:transform .6s; }
.si-card:hover .si-card-media img { transform:scale(1.045); }
.si-card-flag { position:absolute; top:14px; left:14px; padding:6px 13px; border:1px solid #ff248e5c; border-radius:50px; background:#080808d9; font-size:10px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; color:#fff; }
.si-card-body { flex:1; display:flex; flex-direction:column; gap:12px; padding:25px; }
.si-card-client { font-size:11px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; color:var(--si-pink); }
.si-card h3 { display:flex; align-items:start; justify-content:space-between; gap:14px; font-size:22px; }
.si-card h3 span { flex:none; font-size:19px; color:var(--si-pink); }
.si-card-desc { font-size:14px; color:var(--si-muted); }
.si-page .si-plat-seal { display:flex; align-items:center; gap:9px; margin-top:2px; padding:8px 12px; border:1px solid #ff248e3d; border-radius:50px; background:#ff248e0f; font-size:11px; font-weight:700; letter-spacing:.02em; color:#ffb9db; width:fit-content; max-width:100%; }
.si-page .si-plat-seal-icons { display:inline-flex; gap:6px; }
.si-page .si-plat-seal svg { width:14px; height:14px; flex:none; fill:none; stroke:var(--si-pink); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.si-page .si-plat-seal--case { margin:4px 0 20px; padding:10px 15px; font-size:12px; }
.si-page .si-plat-seal--case svg { width:15px; height:15px; }
.si-card-tags { list-style:none; display:flex; flex-wrap:wrap; gap:7px; margin:auto 0 0; padding:14px 0 0; border-top:1px solid #ffffff14; }
.si-card-tags li { padding:5px 11px; border:1px solid #ffffff1f; border-radius:50px; font-size:11px; color:#b4b3bc; }
.si-card--wide { grid-column:span 2; flex-direction:row; }
.si-card--wide .si-card-media { flex:1 1 54%; }
.si-card--wide .si-card-media img { height:100%; min-height:300px; aspect-ratio:auto; }
.si-card--wide .si-card-body { flex:1 1 46%; justify-content:center; padding:34px; }
.si-card--wide h3 { font-size:26px; }
.si-card--wide .si-card-tags { margin-top:16px; }
.si-cases-more { display:flex; margin-top:34px; }
.si-cases .si-stats { margin-bottom:44px; }
.si-cases + .si-section, .si-section + .si-cases { padding-top:0; }
@media (max-width:1100px) {
 .si-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .si-stats > div { padding:26px 20px 6px 0; }
 .si-stats > div + div { padding-left:26px; }
 .si-stats > div:nth-child(2n+1) { padding-left:0; border-left:0; }
 .si-stats > div:nth-child(n+3) { border-top:1px solid #ffffff18; }
 .si-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .si-platforms-grid li { padding:26px 24px; }
 .si-wrap { width:calc(100% - 56px); }
 .si-hero { gap:30px; } .si-hero h1 { font-size:58px; }
 .si-actions { gap:10px; } .si-btn { padding-inline:20px; }
 .si-case { padding:28px; gap:28px; } .si-section-head { gap:40px; }
 .si-contact { padding:40px; flex-wrap:wrap; }
}
@media (max-width:800px) {
 .si-hero { grid-template-columns:1fr; padding-top:44px; gap:45px; }
 .si-hero h1 { font-size:clamp(52px,9.5vw,78px); }
 .si-intro { max-width:580px; } .si-visual { max-width:650px; width:100%; margin:auto; }
 .si-browser { transform:none; } .si-visual::before { inset:-20px 0; }
 .si-section-head,.si-case-top,.si-faq { grid-template-columns:1fr; gap:28px; }
 .si-case { grid-template-columns:1fr; } .si-case-top { gap:18px; }
 .si-section { padding-block:64px; } .si-faq { padding-top:0; }
 .si-format { grid-template-columns:35px 1fr; gap:12px; } .si-format p,.si-format>div { grid-column:2; }
 .si-steps { gap:24px; } .si-ribbon { flex-wrap:wrap; justify-content:flex-start; column-gap:28px; }
 .si-nav { gap:20px; } .si-nav .si-nav-process { display:none; }
 .si-platforms-grid { grid-template-columns:1fr; }
 .si-page .si-case-title { font-size:clamp(28px,5.4vw,34px); }
 .si-section-head>p { font-size:16px; }
 .si-card--wide { flex-direction:column; }
 .si-card--wide .si-card-media img { min-height:0; aspect-ratio:16/10; }
 .si-card--wide .si-card-body { padding:25px; } .si-card--wide h3 { font-size:22px; }
}
@media (max-width:520px) {
 .si-wrap { width:calc(100% - 40px); }
 .si-header-inner { min-height:74px; gap:12px; } .si-logo img { width:112px; }
 .si-nav { gap:14px; font-size:11px; } .si-nav .si-nav-experiences { display:none; }
 .si-lang { padding-left:14px; } .si-lang span { margin-inline:4px; }
 .si-hero h1 { font-size:52px; } .si-intro { font-size:16px; }
 .si-actions { flex-direction:column; align-items:stretch; } .si-btn { font-size:11px; }
 .si-gallery-controls { gap:6px; margin-top:18px; } .si-gallery-controls button { font-size:10px; padding:10px 7px; }
 .si-gallery-controls button span { margin-right:3px; }
 .si-ribbon { font-size:10px; gap:13px 20px; }
 .si-format h3 { font-size:24px; }
 .si-case { padding:25px; }
 .si-case-image img { aspect-ratio:850/480; } .si-case .si-btn { width:100%; }
 .si-steps { grid-template-columns:1fr; gap:32px; }
 .si-contact { padding:30px 25px; gap:15px; } .si-contact .si-btn { width:100%; }
 .si-contact h2 { font-size:36px; }
 .si-stats { grid-template-columns:1fr; }
 .si-stats > div, .si-stats > div + div { padding:22px 0 4px; border-left:0; }
 .si-stats > div + div { border-top:1px solid #ffffff18; }
 .si-stats > div:first-child { padding-top:24px; }
 .si-cards { grid-template-columns:1fr; } .si-card--wide { grid-column:span 1; }
 .si-case + .si-cards { margin-top:22px; }
 .si-page .si-case-title { font-size:30px; } .si-page .si-case-title small { font-size:16px; }
 .si-compare-toggle,.si-compare-caption,.si-compare-note { padding-inline:22px; }
 .si-compare-swipe { display:inline; }
 .si-compare-hint { display:none; }
 .si-platform-chips li { padding:8px 13px; font-size:11px; }
 .si-page .si-plat-seal { padding:7px 11px; font-size:11px; gap:7px; }
 .si-page .si-plat-seal--case { margin:2px 0 18px; padding:7px 11px; font-size:11px; }
 .si-page .si-plat-seal--case svg { width:14px; height:14px; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 .si-page *, .si-page *::before, .si-page *::after { transition:none!important; animation:none!important; }
 .si-browser,.si-browser:hover,.si-btn:hover { transform:none; }
 .si-card:hover,.si-card:hover .si-card-media img { transform:none; }
}

/* Shared responsive layer for all public PT/EN pages. */
/* Keep intrinsic aspect ratios without overriding component image sizes. */
:where(img[width][height]) { width: auto; height: auto; }
:root {
  --body-font: 'Rubik', Arial, Helvetica, sans-serif;
  --heading: 'Nunito', Arial, Helvetica, sans-serif;
  --heading-1: 'Arimo', Arial, Helvetica, sans-serif;
  --heading-2: 'Oswald', Arial, Helvetica, sans-serif;
  --heading-3: 'Jost', Arial, Helvetica, sans-serif;
  --heading-4: 'Poppins', Arial, Helvetica, sans-serif;
}
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
.xr-mobile-toggle { display: none; }
.xr-mobile-dialog { box-sizing: border-box; }
.xr-mobile-dialog:not([open]) { display: none; }
.xr-mobile-dialog[open] {
  position: fixed; inset: 0 0 0 auto; margin: 0; width: min(90vw, 380px);
  max-width: 100%; height: 100%; height: 100dvh; max-height: 100dvh;
  padding: max(20px, env(safe-area-inset-top)) max(22px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) 22px;
  border: 0; border-left: 1px solid #ffffff24; color: #fff; background: #0c0b0e;
  overflow-y: auto; overscroll-behavior: contain; font: 15px/1.5 Arial, Helvetica, sans-serif;
}
.xr-mobile-dialog::backdrop { background: #000b; backdrop-filter: blur(5px); }
.xr-mobile-dialog-head { position: sticky; top: 0; z-index: 1; background: #0c0b0e; display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 24px; }
.xr-mobile-dialog-brand { display: flex; align-items: center; min-height: 44px; }
.xr-mobile-dialog-brand img { width: 138px; height: auto; }
.xr-mobile-close { display: grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; color: white; border: 1px solid #ffffff30; border-radius: 50%; background: #ffffff08; cursor: pointer; }
.xr-mobile-close svg { width: 19px; height: 19px; }
.xr-mobile-dialog nav ul { margin: 0; padding: 0; list-style: none; }
.xr-mobile-dialog nav a { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 53px; padding: 14px 0; border-bottom: 1px solid #ffffff17; color: #eeeaf0; text-decoration: none; font-size: 16px; font-weight: 600; }
.xr-mobile-dialog nav a[aria-current="page"] { color: #ff248e; }
.xr-mobile-dialog nav a span { color: #a190a3; font-size: 14px; }
.xr-mobile-dialog-contact { display: flex; align-items: center; justify-content: center; min-height: 50px; padding: 13px 16px; margin-top: 26px; background: #ed167e; border-radius: 5px; color: #fff !important; text-align: center; text-decoration: none; font-size: 14px; font-weight: 600; }
.xr-mobile-dialog-language { display: inline-flex; align-items: center; min-height: 44px; margin-top: 14px; color: #cbbccd; font-size: 13px; }
.xr-mobile-dialog :focus-visible, .xr-mobile-toggle:focus-visible { outline: 2px solid #ff80bd; outline-offset: 4px; }
html.xr-mobile-menu-open, html.xr-mobile-menu-open body { overflow: hidden !important; overscroll-behavior: none; }
body.xr-mobile-ready .scrollup { display: none !important; }
body.xr-mobile-ready.xr-page-scrolled .scrollup { display: grid !important; place-items: center; }

@media (max-width: 1024px) {
  .xr-mobile-ready #preloader { display: none !important; }
  .xr-mobile-ready .en-hamburger, .xr-mobile-ready .xr-hamburger,
  .xr-mobile-ready .mobile_menu, .xr-mobile-ready .en-mobile-nav,
  .xr-mobile-ready .xr-mobile-nav, .xr-mobile-ready .en-mobile-nav-backdrop,
  .xr-mobile-ready .xr-mobile-nav-backdrop { display: none !important; }
  .xr-mobile-ready .en-nav, .xr-mobile-ready .ori-main-navigation-area,
  .xr-mobile-ready .en-cta-wa, .xr-mobile-ready .header-whatsapp-btn { display: none !important; }
  .xr-mobile-ready .en-header, .xr-mobile-ready .lp-header,
  .xr-mobile-ready .pe-header, .xr-mobile-ready .lm-header,
  .xr-mobile-ready .ori-header-section {
    position: fixed; top: 0; left: 0; right: 0; width: 100%; min-height: 68px;
    padding: max(10px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));
    background: #080809f5; border-bottom: 1px solid #ffffff14; z-index: 9990;
  }
  .xr-mobile-ready header, .xr-mobile-ready .en-header-right,
  .xr-mobile-ready .lm-header-inner, .xr-mobile-ready .ori-header-content { gap: 10px; }
  .xr-mobile-ready header { display: flex; align-items: center; justify-content: space-between; }
  .xr-mobile-ready header > .lm-container { width: 100%; padding: 0; }
  .xr-mobile-ready .lm-header-inner, .xr-mobile-ready .ori-header-content { display: flex; align-items: center; width: 100%; }
  .xr-mobile-ready .ori-header-content-area { width: 100%; padding: 0; }
  .xr-mobile-ready .ori-header-section .ori-header-content { padding: 0; }
  .xr-mobile-ready .ori-header-section .brand-logo { position: static !important; transform: none !important; width: auto; margin: 0 auto 0 0 !important; }
  .xr-mobile-ready .en-header-right { display: flex; align-items: center; flex-shrink: 0; }
  .xr-mobile-ready header a:has(img) { display: flex; align-items: center; min-height: 44px; flex-shrink: 1; }
  .xr-mobile-ready header img { width: auto; max-width: 140px; max-height: 36px; height: auto; object-fit: contain; }
  .xr-mobile-ready header .brand-logo, .xr-mobile-ready .lm-logo { min-width: 0; margin-right: auto; }
  .xr-mobile-ready header .lang-switcher, .xr-mobile-ready header .en-lang-btn, .xr-mobile-ready header .pe-lang {
    display: inline-flex; align-items: center; justify-content: center; min-width: 68px; min-height: 44px;
    margin-left: auto; padding: 8px 10px; font-size: 11px; letter-spacing: .06em; flex-shrink: 0;
  }
  .xr-mobile-toggle { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; flex-shrink: 0; width: 44px; height: 44px; padding: 10px; border: 1px solid #ffffff21; border-radius: 5px; color: #fff; background: transparent; cursor: pointer; margin-left: auto; }
  .xr-mobile-toggle span { display: block; width: 21px; height: 2px; background: currentColor; border-radius: 2px; }
  .xr-mobile-ready header .lp-header-cta, .xr-mobile-ready header .pe-header-cta, .xr-mobile-ready header .lm-header-cta { display: none; }
  .xr-mobile-ready :is(section[id], main[id]) { scroll-margin-top: calc(84px + env(safe-area-inset-top)); }
  .xr-mobile-ready .project-info-box { position: static; }
  .xr-mobile-ready .mfp-bg { z-index: 10020; }
  .xr-mobile-ready .mfp-wrap { z-index: 10021; }
}

@media (max-width: 768px) {
  html { overflow-x: clip; }
  body { min-width: 0; }
  .container, .lm-container { padding-left: max(20px, env(safe-area-inset-left)); padding-right: max(20px, env(safe-area-inset-right)); }
  :is(.row, .xr-bento-grid, .xrp-product-top, .xrp-metrics, .lm-hero-grid, .en-header-right) > * { min-width: 0; }
  :is(h1,h2,h3,h4,p,li,a,button,label,.value) { overflow-wrap: anywhere; }
  :is(button, a, input, select, textarea) { touch-action: manipulation; }
  :is(button,[role="button"]):focus-visible, a:focus-visible { outline: 2px solid #ff80bd; outline-offset: 3px; }
  input:not([type="checkbox"]):not([type="radio"]), select, textarea { max-width: 100%; font-size: 16px !important; min-height: 48px; }
  img, video { max-width: 100%; }
  video { height: auto; }
  .xr-responsive-embed { width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; }
  .xr-scroll-table { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
  .cursor, .cursor-follower, .mouse-cursor { display: none !important; }

  /* Headings and first-screen spacing, including the English home. */
  .en-hero { padding: 110px 0 52px; min-height: auto; }
  .en-hero h1 { font-size: clamp(26px, 7.8vw, 46px); line-height: 1.1; letter-spacing: -.04em; }
  .en-hero p { font-size: 15px; line-height: 1.75; margin-bottom: 26px; }
  .en-eyebrow, .lp-eyebrow, .case-eyebrow, .pe-eyebrow, .xrp-eyebrow { max-width: 100%; font-size: 10px; letter-spacing: .1em; white-space: normal; }
  .lp-hero, .pe-hero, .lm-hero { padding-top: 112px; padding-bottom: 52px; }
  .lp-hero h1, .pe-hero h1, .lm-hero-headline { font-size: clamp(28px, 8.2vw, 44px); line-height: 1.12; letter-spacing: -.035em; }
  .case-hero { min-height: 440px; min-height: min(72svh, 550px); padding: 110px 0 36px; }
  .case-hero h1 { font-size: clamp(30px, 8.4vw, 44px); line-height: 1.12; }
  .case-hero-meta { gap: 12px; margin-top: 20px; }
  .case-tags { gap: 7px; }
  .case-tag { font-size: 10px; padding: 6px 10px; }
  .case-hero-glow, .lp-hero-glow { max-width: 100vw; }
  .ori-slider-text h1 { font-size: clamp(30px, 8.8vw, 46px); line-height: 1.15; }
  .ori-slider-text h1 i { font-size: .75em; }
  .ori-breadcrumbs-section { padding: 115px 0 45px; }
  .ori-breadcrumb-content { padding: 0; }
  .ori-breadcrumb-content h1 { font-size: clamp(30px, 8.5vw, 46px); line-height: 1.15; }
  .ori-breadcrumb-content li { font-size: 13px; }
  .xr-hero { padding-top: calc(80px + env(safe-area-inset-top)); }
  .xr-hero-actions { display: grid; grid-template-columns: 1fr; width: 100%; max-width: 380px; }
  .xr-hero-actions a { width: 100%; min-height: 50px; justify-content: space-between; padding: 0 18px; font-size: 13px; }
  .xr-hero-signature { font-size: clamp(11px,3vw,14px); letter-spacing: .2em; }
  .xr-hero-scene { height: clamp(275px, 78vw, 350px); }
  .xr-hero-mode { min-height: 46px; font-size: 10px; }
  .xr-hero-mode span { font-size: 9px; }
  .xr-hero-controls { width: 100%; justify-content: space-between; }
  .xr-hero-pause { flex-shrink: 0; }

  /* Comfortable spacing and card layouts. */
  .lp-section, .pe-section, .en-section, .lm-services, .lm-cases, .lm-process, .lm-faq,
  .xr-diferenciais-section, .xr-bento-section, .xr-cases-destaque-section, .xr-faq-section,
  .ori-portfolio-details-section, .ori-blog-feed-section { padding-top: 52px; padding-bottom: 52px; }
  .lp-section-title, .pe-title, .en-section h2, .lm-section-title, .xrp-h2,
  .ori-inner-section-title h2, .xr-bento-lead h2, .xr-cases-destaque-header h2 { font-size: clamp(27px,7.4vw,36px); line-height: 1.18; }
  .lp-section-title[style] { font-size: clamp(27px,7.4vw,34px) !important; }
  .case-desc-text, .lp-section p, .pe-sub, .lm-hero-sub { font-size: 15px; line-height: 1.8; }
  .info-card, .project-info-box { padding: 25px 20px; border-radius: 14px; }
  .info-card p, .solutions-list li { font-size: 14px; line-height: 1.75; }
  .project-info-row { align-items: start; gap: 12px; }
  .project-info-row .label { flex: 0 0 30%; font-size: 11px; }
  .project-info-row .value { flex: 1; min-width: 0; text-align: right; font-size: 13px; line-height: 1.6; }
  .gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .gallery-item { border-radius: 10px; }
  .case-numbers { padding: 30px 0; }
  .case-number-item { padding: 18px 6px; }
  .case-number-item .num { font-size: clamp(28px,8vw,38px); }
  .case-number-item p { font-size: 10px; line-height: 1.6; letter-spacing: .05em; color: #b2aeb5; }
  .en-numbers { padding: 30px 0; }
  .en-number-item { padding: 18px 6px; }
  .en-number-item .num { font-size: clamp(32px,9vw,44px); }
  .en-number-item p { font-size: 10px; line-height: 1.6; letter-spacing: .04em; color: #b2aeb5; }
  .en-marquee-section { padding: 36px 0; }
  .lp-logos-wrapper, .en-marquee-wrapper { mask-image: none; -webkit-mask-image: none; }
  .lp-logos-track, .en-marquee-track { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px 16px; width: 100%; animation: none; transform: none; }
  .lp-logo-item, .en-marquee-item { min-width: 0; padding: 0; display: flex; justify-content: center; align-items: center; }
  .lp-logo-item img, .en-marquee-item img { max-width: 100%; width: auto; height: 30px; object-fit: contain; opacity: .8; }
  .xr-logo-duplicate { display: none; }
  .xr-bento-cell, .xr-bento-lead, .xrp-product-info, .xrp-product-side { min-width: 0; }
  .xr-bento-media { min-height: 240px; }
  .xr-bento-lead { padding: 26px 22px; }
  .xr-bento-lead p { font-size: 14px; line-height: 1.75; }
  .xr-bento-ctas { gap: 14px; flex-wrap: wrap; }
  .xr-featured-case-content { padding: 24px 20px; }
  .xr-featured-case-content h3 { font-size: clamp(26px,7vw,36px); }
  .ori-about-play-top-content { flex-direction: column; align-items: start !important; gap: 22px; }
  .ori-about-play-top-text, .ori-inner-section-title { max-width: 100%; width: 100%; }
  .ori-about-play-top-text { font-size: 15px; line-height: 1.8; }
  .ori-service-content-1 { padding-top: 32px; }
  .ori-portfolio-details-text { padding: 24px 0; }
  .ori-blog-sidebar { margin-bottom: 32px; }

  /* CTAs and filters stay readable and usable with a thumb. */
  .en-hero-btns, .lp-hero-btns, .pe-hero-btns, .lm-hero-btns { gap: 12px; }
  .lp-btn-primary, .lp-btn-outline, .lp-btn-secondary, .pe-btn-primary, .pe-btn-outline, .pe-btn-secondary,
  .lm-btn-primary, .lm-btn-secondary, .en-btn-primary, .en-btn-outline, .en-btn-secondary,
  .project-cta, .project-cta-outline, .xrp-btn-primary, .xrp-btn-ghost {
    min-height: 50px; max-width: 100%; padding: 14px 18px; white-space: normal;
    font-size: 13px; line-height: 1.5; letter-spacing: .04em; text-align: center;
  }
  .lp-hero :is(.lp-btn-primary,.lp-btn-outline,.lp-btn-secondary),
  .en-hero-btns a, .pe-hero :is(.pe-btn-primary,.pe-btn-outline,.pe-btn-secondary),
  .lm-hero :is(.lm-btn-primary,.lm-btn-secondary) { width: 100%; justify-content: center; }
  .pg-filter, .en-case-filter, .xr-case-filter, .portfolio-filter button { min-height: 44px; padding: 11px 14px; font-size: 12px; }
  .pg-filters, .en-portfolio-filters, .xr-cases-filters { flex-wrap: wrap; gap: 8px; }
  .back-link { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: 14px; }
  .lp-final-cta, .pe-final-cta, .lm-final-cta, .en-cta-section, .xrp-cta { padding: 56px 0; }
  .lp-final-cta h2, .pe-final-cta h2, .lm-final-cta h2, .en-cta-section h2, .xrp-cta h2 { font-size: clamp(28px,8vw,40px); line-height: 1.2; }

  /* Long answers expand to their actual height on narrow screens. */
  .xr-faq-q, .enfaq-q, .vrfaq-faq-q, .lm-faq-q, .xrp-faq-q, .pe-faq-q { min-height: 56px; padding: 18px; gap: 14px; font-size: 15px; text-align: left; }
  .xr-faq-q h3, .enfaq-q h3, .vrfaq-faq-q h3 { font-size: 15px; line-height: 1.5; }
  .xr-faq-item.open .xr-faq-a, .enfaq-item.open .enfaq-a, .vrfaq-faq-item.open .vrfaq-faq-a,
  .xrp-faq-item.open .xrp-faq-a, .pe-faq-item.open .pe-faq-a { max-height: none !important; }
  .xr-faq-a p, .enfaq-a p, .vrfaq-faq-a p, .xrp-faq-a p { font-size: 14px; line-height: 1.8; }

  /* Footer columns, device safe areas and utility controls. */
  .ori-footer-widget-wrapper .row { padding: 0 !important; }
  .ori-footer-widget-wrapper .contact-widget { text-align: left !important; }
  .ori-footer-widget-wrapper .logo-widget { justify-content: start; }
  .ori-footer-widget-wrapper > .row > div { text-align: left; margin-bottom: 28px; }
  .ori-footer-copyright { flex-wrap: wrap; gap: 14px; }
  .en-footer-inner, .en-footer-bottom { align-items: start; flex-direction: column; gap: 20px; }
  .en-footer-contact { text-align: left; }
  .en-footer-links { gap: 8px 20px; }
  .en-footer-links a, .lp-footer a, .pe-footer a, .lm-footer a, .ori-footer-section .contact-info a { display: inline-flex; align-items: center; min-height: 44px; }
  .en-footer-social a, .ori-copyright-social a { display: inline-grid; place-items: center; width: 44px; height: 44px; }
  footer { padding-bottom: max(30px,calc(env(safe-area-inset-bottom) + 22px)); }
  .floating-whatsapp, .lp-float-wa, .lm-float-wa, .pe-float-wa, .en-float-wa, .xr-float-wa {
    width: 48px !important; height: 48px !important;
    right: max(14px,env(safe-area-inset-right)) !important;
    bottom: max(16px,calc(env(safe-area-inset-bottom) + 10px)) !important;
  }
  .floating-whatsapp i, .lp-float-wa i, .lm-float-wa i, .pe-float-wa i, .en-float-wa i, .xr-float-wa i { font-size: 25px !important; }
  .scrollup { width: 44px !important; height: 44px !important; line-height: 44px !important; right: max(16px,env(safe-area-inset-right)) !important; bottom: max(76px,calc(env(safe-area-inset-bottom) + 70px)) !important; }
  .floating-whatsapp-tooltip { display: none !important; }
  .xr-hero-in-view :is(.floating-whatsapp,.lp-float-wa,.lm-float-wa,.pe-float-wa,.en-float-wa,.xr-float-wa) { visibility: hidden; pointer-events: none; }
  body.xr-mobile-ready.xr-hero-in-view .scrollup { display: none !important; }
  #cookiescript_injected { max-width: 100% !important; max-height: 52svh !important; overflow-y: auto !important; box-sizing: border-box !important; }
  #cookiescript_description { font-size: 12px !important; line-height: 1.6 !important; }
  #cookiescript_accept, #cookiescript_reject, #cookiescript_save { min-height: 44px !important; }
  .mfp-image-holder .mfp-close { right: 0; min-width: 44px; min-height: 44px; }
  .mfp-img { max-height: calc(100svh - 80px) !important; object-fit: contain; }
}
@media (max-width: 380px) {
  .xr-mobile-ready header img { max-width: 122px; }
  .xr-mobile-ready header .lang-switcher, .xr-mobile-ready header .en-lang-btn { min-width: 65px; padding: 8px; }
  .gallery-grid, .lm-cases-grid, .lm-process-grid { grid-template-columns: 1fr; }
  .xr-hero-mode { padding: 10px 5px; font-size: 9px; }
  .xr-hero-mode span { font-size: 8px; margin-right: 3px; }
  .xr-hero-pause { margin-left: 2px; }
  .en-hero h1 { font-size: 26px; }
  .xrp-metrics { grid-template-columns: 1fr; }
}
@media (hover: none) {
  .gallery-item-overlay { background: linear-gradient(transparent 55%,#0006); align-items: end; justify-content: end; padding: 12px; }
  .gallery-item-overlay i { opacity: 1; transform: none; font-size: 18px; }
  .xr-mobile-ready .info-card:hover, .xr-mobile-ready .lm-service-card:hover { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .xr-mobile-dialog *, .xr-mobile-toggle, .case-eyebrow-dot { animation: none !important; transition: none !important; }
  .lp-logos-track, .en-marquee-track, .xr-marquee-track, .line_animation .line_area::after { animation: none !important; }
}

/* ============================================================
   Cabeçalho XR Studio — o mesmo em todas as páginas principais.
   Fonte única: as páginas que ainda trazem estas regras inline
   (index, martech, projetos) devem migrar para cá.
   Markup esperado: <header class="en-header"> + .en-mobile-nav,
   comportamento em assets/js/xr-header.js.
   ============================================================ */

.en-header {
	position: fixed; top: 0; left: 0; right: 0; z-index: 9990;
	/* Sem esta linha o menu herdava a fonte de cada pagina — Rubik na home,
	   Inter em live-mkt e projetos-especiais, Arimo em projetos, Arial em
	   sites-imersivos — e o mesmo 13px rendia larguras diferentes. A fonte
	   vem do <link> do Google Fonts que acompanha esta folha em cada pagina. */
	font-family: 'Rubik', Arial, Helvetica, sans-serif;
	display: flex; align-items: center; justify-content: space-between;
	padding: 18px 48px;
	background: rgba(8,8,8,0.92);
	backdrop-filter: blur(14px);
	border-bottom: 1px solid rgba(255,255,255,0.06);
}
.en-header img { height: 38px; }
.en-header-right { display: flex; align-items: center; gap: 16px; }
.en-nav { display: flex; align-items: center; gap: 28px; list-style: none; margin: 0; padding: 0; }
.en-nav a { color: rgba(255,255,255,0.6); font-size: 13px; font-weight: 600; text-decoration: none; letter-spacing: 0.06em; text-transform: uppercase; transition: color 200ms; }
.en-nav a:hover { color: #FF248E; }
.en-cta-wa {
	display: inline-flex; align-items: center; gap: 8px;
	background: linear-gradient(135deg,#FF248E,#d4006e);
	color: #fff !important; font-size: 13px; font-weight: 700;
	padding: 12px 24px; border-radius: 50px; letter-spacing: 0.06em;
	text-transform: uppercase; text-decoration: none;
	transition: 300ms all ease; box-shadow: 0 4px 20px rgba(255,36,142,0.35);
}
.en-cta-wa:hover { transform: translateY(-2px); box-shadow: 0 8px 30px rgba(255,36,142,0.5); }
.en-lang-btn {
	display: inline-flex; align-items: center; gap: 5px;
	border: 1px solid rgba(255,255,255,0.18); color: rgba(255,255,255,0.55) !important;
	font-size: 12px; font-weight: 700; padding: 8px 14px; border-radius: 50px;
	text-decoration: none; letter-spacing: 0.1em; text-transform: uppercase;
	transition: 300ms all ease;
}
.en-lang-btn:hover { border-color: #FF248E; color: #FF248E !important; }
.en-lang-active { color: #FF248E; }

/* Mobile menu (hamburger + drawer) */
.en-hamburger {
	display: none;
	flex-direction: column; justify-content: center; align-items: center; gap: 5px;
	width: 40px; height: 40px; background: transparent; border: none; padding: 0;
	cursor: pointer; flex-shrink: 0;
}
.en-hamburger span { display: block; width: 22px; height: 2px; background: #fff; border-radius: 2px; transition: 300ms all ease; }
.en-hamburger[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.en-hamburger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.en-hamburger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.en-mobile-nav-backdrop {
	position: fixed; inset: 0; background: rgba(0,0,0,0.55);
	z-index: 9988; opacity: 0; pointer-events: none; transition: opacity 300ms ease;
}
.en-mobile-nav-backdrop.is-open { opacity: 1; pointer-events: auto; }

.en-mobile-nav {
	font-family: 'Rubik', Arial, Helvetica, sans-serif;
	position: fixed; top: 0; right: 0; height: 100%; width: min(82vw, 320px);
	background: rgba(8,8,8,0.98); backdrop-filter: blur(14px);
	border-left: 1px solid rgba(255,255,255,0.08);
	z-index: 9989; padding: 100px 32px 32px;
	transform: translateX(100%); transition: transform 350ms ease;
	display: flex; flex-direction: column; gap: 28px; overflow-y: auto;
}
.en-mobile-nav.is-open { transform: translateX(0); }
.en-mobile-nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.en-mobile-nav ul a {
	display: block; padding: 16px 0; color: #fff; font-size: 17px; font-weight: 600;
	text-decoration: none; border-bottom: 1px solid rgba(255,255,255,0.08);
	text-transform: uppercase; letter-spacing: 0.04em;
}
.en-mobile-nav ul a:hover, .en-mobile-nav ul a:active { color: #FF248E; }
.en-mobile-nav-cta {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	background: linear-gradient(135deg,#FF248E,#d4006e); color: #fff !important;
	font-size: 14px; font-weight: 700; padding: 15px 24px; border-radius: 50px;
	text-decoration: none; letter-spacing: 0.06em; text-transform: uppercase;
}
body.en-nav-open { overflow: hidden; }

/* Tablet + mobile: o nav completo (5 itens + CTA + idioma) não cabe — vira hambúrguer */
@media (max-width: 1024px) {
	.en-nav { display: none; }
	.en-hamburger { display: flex; }
	.en-header { padding: 16px 28px; }
}
@media (max-width: 768px) {
	.en-header { padding: 14px 20px; }
	.en-cta-wa span { display: none; }
}

/* Item da página atual — o único acréscimo ao bloco da home. */
.en-nav a.is-current { color: #FF248E; }
.en-mobile-nav ul a.is-current { color: #FF248E; }

/* O cabeçalho é fixo: páginas cujo topo encostava num header estático
   ganham este respiro via .xr-header-offset no primeiro bloco. */
.xr-header-offset { padding-top: 76px; }
@media (max-width: 1024px) { .xr-header-offset { padding-top: 70px; } }
@media (max-width: 768px)  { .xr-header-offset { padding-top: 64px; } }

/* Seis itens não cabem entre 1024 e 1200px: nesta faixa o nav vira
   hambúrguer. A regra vivia em xr-special-brand.css, que nem toda
   página carrega — como o cabeçalho é o mesmo em todas, ela vem junto. */
@media (max-width: 1200px) {
	.xr-has-sites-nav .en-nav { display: none; }
	.xr-has-sites-nav .en-hamburger { display: flex; }
}

/* O ícone do WhatsApp no drawer é SVG inline: sem esta regra ele cai no
   tamanho intrínseco (300x150) nas páginas que não definem .xr-svg-icon. */
.en-mobile-nav-cta svg { display: inline-block; width: 1em; height: 1em; fill: currentColor; vertical-align: -0.125em; }

/* No mobile quem aparece e o menu compartilhado do xr-responsive.js, montado
   no <body>. Ele ja era uniforme entre as paginas, mas em Arial: o atalho
   `font:` de .xr-mobile-dialog[open] (xr-responsive.css) fixa a familia junto
   com o tamanho. Repetimos aquela especificidade para alinhar o menu mobile
   ao cabecalho, sem mexer em xr-responsive.css — que as paginas de case usam
   sem carregar a Rubik. */
.xr-mobile-dialog[open], .xr-mobile-toggle { font-family: 'Rubik', Arial, Helvetica, sans-serif; }
