/* FONIA — premium black image integration */
:root {
  --maxw: 1380px;
  --bg: #000;
  --bg-1: #000;
  --bg-elevated: #000;
}

html, body, main, section, .section-alt { background:#000 !important; }

/* Keep the main navigation visually centred on every desktop page. */
@media (min-width:981px) {
  .nav { position:relative; }
  .nav-links {
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    gap:42px;
    white-space:nowrap;
  }
}

.hero .wrap { grid-template-columns: minmax(340px,.78fr) minmax(560px,1.22fr); gap: 64px; }
.hero-visual,
.detail-hero-visual,
.why-visual,
.ai-visual,
.design-visual,
.latam-visual {
  position: relative;
  border-radius:0;
  overflow:visible;
  background:#000;
  border:0;
  box-shadow:none;
}
.hero-visual img,
.detail-hero-visual img { width: 100%; min-height: 610px; object-fit: cover; border-radius: 0; }

.product { padding: 130px 0; overflow: hidden; }
.product .wrap { grid-template-columns: minmax(560px,1.3fr) minmax(340px,.7fr); gap: 76px; }
.product.reverse .wrap { grid-template-columns: minmax(340px,.7fr) minmax(560px,1.3fr); }
.product-visual {
  min-height: 650px;
  border-radius:0;
  background:#000;
  border:0;
  overflow: visible;
}
.product-visual img {
  width:100%;
  max-width:680px;
  height:auto;
  border-radius:0;
  filter:none;
  object-fit:contain;
  image-rendering:auto;
  transform:translateZ(0);
}
.product:hover .product-visual img { transform:translateZ(0); }
.product-glow { display:none !important; }
.product-footer { justify-content: flex-end; }

.why-head-grid,
.ai-section .wrap,
.design-section .wrap,
.latam-wrap { grid-template-columns: minmax(420px,.86fr) minmax(560px,1.14fr); gap: 72px; }
.why-visual img,
.ai-visual img { width:100%; height:auto; min-height:0; object-fit:contain; border-radius:0; }
.design-visual img,
.latam-visual img { width:100%; height:auto; min-height:0; object-fit:contain; object-position:center; border-radius:0; }
.partners-cta { background:#000 !important; border:0 !important; box-shadow:none !important; }
.partners-cta-img { width:44%; min-height:300px; object-fit:contain; background:#000; border:0; }
.final-phones img { width:100%; max-width:1120px; border-radius:0; box-shadow:none; }

/* Large, confident business metrics. */
.hero-stats .num { font-size:clamp(58px,6vw,86px) !important; line-height:.9; letter-spacing:-.055em; }
.latam-stats .num { font-size:clamp(64px,7vw,96px) !important; line-height:.9; letter-spacing:-.055em; }

/* Product detail pages: black-on-black photography, with no frame or halo. */
.detail-hero-visual { background:#000; border:0; box-shadow:none; overflow:visible; }
.detail-hero-visual img {
  width:100%;
  height:auto;
  min-height:0;
  object-fit:contain;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none;
  image-rendering:auto;
}

@media (max-width: 1100px) {
  .hero .wrap,
  .product .wrap,
  .product.reverse .wrap,
  .why-head-grid,
  .ai-section .wrap,
  .design-section .wrap,
  .latam-wrap { grid-template-columns: 1fr; }
  .hero-visual,
  .product-visual { order: -1; }
  .product.reverse .product-visual,
  .product.reverse .product-info { order: initial; }
  .product.reverse .product-visual { order: -1; }
  .hero-visual img,
  .detail-hero-visual img { min-height: 520px; }
  .product-visual { min-height: 560px; }
}

@media (max-width: 640px) {
  .hero { padding-top: 100px; }
  .hero-visual,
  .detail-hero-visual,
  .product-visual { margin-left: -20px; margin-right: -20px; border-radius: 0; }
  .hero-visual img,
  .detail-hero-visual img { min-height: 390px; }
  .product { padding: 88px 0; }
  .product-visual { min-height: 440px; }
  .product-visual img { width:100%; max-width:520px; }
  .why-visual img,
  .ai-visual img,
  .design-visual img,
  .latam-visual img { min-height:0; }
  .partners-cta-img { width: 100%; min-height: 250px; }
}

/* Language selector */
.language-switcher { display:flex; align-items:center; gap:8px; margin-left:auto; margin-right:14px; padding:6px 10px; border:1px solid rgba(255,255,255,.13); border-radius:999px; background:#000; backdrop-filter:blur(10px); }
.language-switcher button { appearance:none; border:0; background:transparent; color:var(--text-faint); padding:2px 3px; font:600 11px/1 'IBM Plex Mono',monospace; letter-spacing:.08em; cursor:pointer; transition:color .2s ease; }
.language-switcher button:hover,.language-switcher button.active { color:#fff; }
.language-switcher button.active { text-shadow:0 0 14px rgba(91,141,255,.8); }
.language-switcher span { width:1px; height:12px; background:rgba(255,255,255,.16); }
@media (max-width:560px) { .language-switcher { margin-left:auto; margin-right:8px; } .nav-cta { display:none; } }
