/* ==========================================================================
   FAVNIR TRADING L.L.C-FZ — brand layer
   Loaded last. Rebrand is done at the CSS-variable source, no patch blocks.
   ========================================================================== */
/* Locally hosted fonts (no third-party font CDN) */
@font-face { font-family:'Archivo'; font-style:normal; font-weight:400; font-display:swap; src:url('../fonts/local/archivo-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family:'Archivo'; font-style:normal; font-weight:500; font-display:swap; src:url('../fonts/local/archivo-latin-500-normal.woff2') format('woff2'); }
@font-face { font-family:'Archivo'; font-style:normal; font-weight:600; font-display:swap; src:url('../fonts/local/archivo-latin-600-normal.woff2') format('woff2'); }
@font-face { font-family:'Archivo'; font-style:normal; font-weight:700; font-display:swap; src:url('../fonts/local/archivo-latin-700-normal.woff2') format('woff2'); }
@font-face { font-family:'Inter'; font-style:normal; font-weight:400; font-display:swap; src:url('../fonts/local/inter-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family:'Inter'; font-style:normal; font-weight:500; font-display:swap; src:url('../fonts/local/inter-latin-500-normal.woff2') format('woff2'); }
@font-face { font-family:'Inter'; font-style:normal; font-weight:600; font-display:swap; src:url('../fonts/local/inter-latin-600-normal.woff2') format('woff2'); }

* {
  /* typography */
  --body-font: "Inter", Helvetica, Arial, sans-serif;
  --heading-font: "Archivo", Helvetica, Arial, sans-serif;
  --alt-font-1: "Archivo", Helvetica, Arial, sans-serif;
  --body-font-color: rgba(30, 38, 46, .78);
  --heading-font-color: #1E262E;
  --heading-font-weight: 600;
  --h1-font-size: 72px;
  --h1-line-height: .95em;

  /* surfaces: cool graphite instead of template browns */
  --bg-default: #F2F0EC;
  --bg-light: #F7F6F3;
  --bg-dark-1: #1E262E;
  --bg-dark-2: #26303A;
  --bg-dark-3: #2F3B47;
  --bg-dark-1-rgb: 30, 38, 46;
  --border-default: solid 1px rgba(30, 38, 46, 1);

  /* logo */
  --logo-width: 200px;
  --logo-footer-width: 210px;
}

/* accent: burnt copper */
:root {
  --primary-color: #C1622B;
  --primary-color-rgb: 193, 98, 43;
  --secondary-color: #C1622B;
  --secondary-color-rgb: 193, 98, 43;
}

/* mobile heading size */
@media only screen and (max-width: 768px) {
  * { --h1-font-size: 44px; }
}

/* WOW fallback: if animation library fails (iOS Safari, saveData),
   content must never stay invisible */
html.no-wow .wow { visibility: visible !important; animation: none !important; opacity: 1 !important; }

/* small utilities used by Favnir pages */
.fv-icon-lg { font-size: 42px; color: var(--primary-color); }
.fv-card { background: #fff; border: 1px solid rgba(30,38,46,.08); padding: 32px; height: 100%; }
.bg-dark .fv-card { background: var(--bg-dark-2); border-color: rgba(255,255,255,.06); }
.fv-meta { letter-spacing: 2px; text-transform: uppercase; font-size: 13px; color: var(--primary-color); }
img.fv-cover { width: 100%; height: 100%; object-fit: cover; }
.fv-map { width: 100%; height: 380px; border: 0; filter: grayscale(35%); }
.fv-legal p, .fv-legal li { line-height: 1.9; }
.fv-legal h3 { margin-top: 34px; }

/* full-bleed section background image (no JS, no CSS-bg dependency) */
.fv-hero { min-height: 62vh; }
.fv-hero-tall { min-height: 92vh; display: flex; align-items: center; }
img.fv-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }



/* accordion polish */
.accordion-s1 { padding: 0 20px; }
.accordion-section-content { padding: 0 0 16px; line-height: 1.8; }

/* ===== Mobile refinements (v21) ===== */
.fv-foot-links { display: none; }
@media only screen and (max-width: 768px) {
  /* compact heroes (override inline paddings) */
  .fv-hpad-tall { padding: 96px 0 60px !important; }
  .fv-hpad      { padding: 96px 0 52px !important; }
  .fv-hpad-cta  { padding: 64px 0 !important; }
  .fv-hpad-tall .btn-main { display: block; width: 100%; margin: 0 0 12px !important; }

  /* shorter scroll: tighter sections */
  section { padding-top: 60px; padding-bottom: 60px; }

  /* product cards: horizontal swipe strip */
  .fv-cards { display: flex; flex-wrap: nowrap; overflow-x: auto;
              scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch;
              padding-bottom: 10px; }
  .fv-cards > [class*="col-"] { flex: 0 0 80%; max-width: 80%; scroll-snap-align: start; }

  /* steps 2x2 */
  .fv-card { padding: 18px; }
  .fv-card .fs-40 { font-size: 28px; }

  /* header CTA visible on mobile, compact */
  .menu_side_area .fv-head-cta { display: inline-block; padding: 9px 12px;
                                 font-size: 12px; margin-right: 10px; }

  /* compact footer: hide link columns, show one-line nav */
  .fv-foot-widgets { display: none; }
  .fv-foot-links { display: block; }
  footer { padding-top: 48px; }
}

/* ===== A2: header fits 320px ===== */
.fv-cta-short { display: none; }
@media only screen and (max-width: 480px) {
  header .logo-mobile { max-width: 128px; }
  .fv-cta-full { display: none; }
  .fv-cta-short { display: inline; }
  .menu_side_area .fv-head-cta { padding: 8px 12px; font-size: 12px; margin-right: 8px; }
}
