/*
Theme Name: MTB Elementor
Theme URI: https://mytruckingboard.com/
Author: My Trucking Board
Description: Blank-canvas, Elementor-ready theme for My Trucking Board. Header and footer are built into the theme (edited via Appearance > Customize and Appearance > Menus); every page's body content is built and edited with Elementor.
Version: 1.0
Requires PHP: 7.4
Text Domain: mtb-elementor
*/

:root{
  --mtb-ink: #221E1F;
  --mtb-ink-2: #2C2728;
  --mtb-paper: #EFF1EE;
  --mtb-paper-2: #E5E8E3;
  --mtb-orange: #FF6C3A;
  --mtb-orange-deep: #F05828;
  --mtb-white: #FFFFFF;
  --mtb-steel: #4B5563;
  --mtb-steel-light: #A8A19E;
  --mtb-line: rgba(28,31,35,0.12);
  --mtb-line-dark: rgba(255,255,255,0.14);
  --mtb-display: 'Oswald', sans-serif;
  --mtb-body: 'IBM Plex Sans', sans-serif;
  --mtb-mono: 'IBM Plex Mono', monospace;
  --mtb-script: 'Pacifico', cursive;
}

*{box-sizing:border-box;}
body{
  font-family: var(--mtb-body);
  color: var(--mtb-ink);
  background: var(--mtb-paper);
  margin:0;
  line-height:1.5;
}
img{max-width:100%;height:auto;}
a{color:inherit;}
h1,h2,h3,h4,h5,h6{font-family:var(--mtb-display);text-transform:uppercase;letter-spacing:0.02em;}

/* ---------- Header ---------- */
.mtb-header{
  background:var(--mtb-white);
  border-bottom:1px solid var(--mtb-line);
  position:sticky;top:0;z-index:999;
}
.mtb-header-inner{
  max-width:1160px;margin:0 auto;padding:14px 28px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.mtb-logo img{height:34px;width:auto;display:block;}
.mtb-nav{display:flex;gap:32px;list-style:none;margin:0;padding:0;flex-wrap:wrap;}
.mtb-nav a{
  font-family:var(--mtb-mono);font-size:13px;letter-spacing:0.04em;text-transform:uppercase;
  text-decoration:none;color:var(--mtb-steel);padding:6px 0;border-bottom:2px solid transparent;
}
.mtb-nav a:hover, .mtb-nav .current-menu-item > a{color:var(--mtb-ink);border-color:var(--mtb-orange);}
.mtb-header-cta{display:flex;align-items:center;gap:14px;}
.mtb-menu-toggle{display:none;background:none;border:none;font-size:24px;cursor:pointer;color:var(--mtb-ink);}

/* ---------- Buttons (apply as Elementor "CSS Classes") ---------- */
.mtb-btn{
  font-family:var(--mtb-display);text-transform:uppercase;letter-spacing:0.04em;
  font-size:14px;font-weight:600;padding:14px 28px;border-radius:8px;
  border:2px solid transparent;display:inline-flex;align-items:center;gap:8px;
  text-decoration:none;transition:transform .15s ease, box-shadow .15s ease;
}
.mtb-btn-primary{background:var(--mtb-orange);color:var(--mtb-white) !important;}
.mtb-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--mtb-orange-deep);}
.mtb-btn-dark{background:var(--mtb-ink);color:var(--mtb-white) !important;}
.mtb-btn-dark:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--mtb-steel);}
.mtb-btn-ghost{background:transparent;color:var(--mtb-ink) !important;border-color:var(--mtb-line);}
.mtb-btn-ghost:hover{border-color:var(--mtb-ink);}

/* ---------- Utility classes for Elementor widgets ---------- */
.mtb-eyebrow{
  font-family:var(--mtb-mono) !important;font-size:12px !important;letter-spacing:0.14em;
  text-transform:uppercase;color:var(--mtb-steel) !important;
}
.mtb-section-dark{background:var(--mtb-ink);color:var(--mtb-white);}
.mtb-section-dark h1, .mtb-section-dark h2, .mtb-section-dark h3{color:var(--mtb-white);}
.mtb-section-orange{background:var(--mtb-orange);color:var(--mtb-white);}
.mtb-section-paper2{background:var(--mtb-paper-2);}
.mtb-card{background:var(--mtb-white);border:1px solid var(--mtb-line);border-radius:8px;}
.mtb-accent-text{color:var(--mtb-orange) !important;}
.mtb-mono-text{font-family:var(--mtb-mono) !important;}

/* ---------- Footer ---------- */
.mtb-footer{background:var(--mtb-ink);color:var(--mtb-steel-light);padding:64px 0 32px;}
.mtb-footer-inner{max-width:1160px;margin:0 auto;padding:0 28px;}
.mtb-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;}
.mtb-footer-grid h5{font-family:var(--mtb-mono);color:var(--mtb-white);font-size:12px;text-transform:uppercase;letter-spacing:0.1em;margin-bottom:16px;}
.mtb-footer-grid ul{list-style:none;margin:0;padding:0;}
.mtb-footer-grid li{margin-bottom:10px;font-size:14px;}
.mtb-footer-grid a{text-decoration:none;color:var(--mtb-steel-light);}
.mtb-footer-grid a:hover{color:var(--mtb-orange);}
.mtb-footer-logo{display:flex;align-items:center;gap:2px;text-decoration:none;margin-bottom:14px;}
.mtb-footer-logo .my{font-family:var(--mtb-script);font-size:30px;color:var(--mtb-orange);line-height:1;}
.mtb-footer-logo .tb{font-family:var(--mtb-display);font-weight:700;font-size:22px;color:var(--mtb-white);letter-spacing:0.02em;}
.mtb-footer-bottom{border-top:1px solid var(--mtb-line-dark);padding-top:24px;display:flex;justify-content:space-between;font-size:13px;flex-wrap:wrap;gap:8px;}

@media (max-width:860px){
  .mtb-nav{display:none;}
  .mtb-menu-toggle{display:block;}
  .mtb-footer-grid{grid-template-columns:1fr 1fr;}
}
