/* ==========================================================================
   inner-pages.css — Unified typography + shared header/footer for ALL
   inner pages (about, services, project, contact, news). Loaded LAST on
   inner pages so it wins over page stylesheets and inline <style> blocks.
   The home page (index.php) does NOT load this file.
   ========================================================================== */

/* --- Fonts (self-hosted) --- */
@font-face{font-family:Switzer;src:url('../fonts/Switzer-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Switzer;src:url('../fonts/Switzer-Semibold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Involve;src:url('../fonts/Involve-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Involve;src:url('../fonts/URWGothicL-Demi.woff2') format('woff2');font-weight:700;font-display:swap}

/* Local vars used ONLY by the shared header/footer so page palettes
   (--lime, --ink, --container …) are never overridden. */
:root{--ip-lime:#e6f23a;--ip-ink:#11140e;--ip-muted:#6d7068}

/* ==========================================================================
   1. Global typography hierarchy (all inner pages)
   ========================================================================== */
:root {
    --e-global-typography-accent-font-family: "Switzer", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    --e-global-typography-text-font-family: "Switzer", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
}
body{font-family:var(--e-global-typography-text-font-family);font-size:16px;line-height:1.55}
a{color:inherit;font-size:inherit;font-weight:inherit}
h1,h2,h3,h4,h5,h6{font-family:Involve,Switzer,Arial,sans-serif;font-weight:600}
h1{font-size:clamp(54px,6vw,78px);line-height:.95;letter-spacing:-3px}
h2{font-size:clamp(42px,4.4vw,63px);line-height:.98;letter-spacing:-2.7px}
h3{font-size:24px;line-height:1.1;letter-spacing:-.5px}
h4{font-size:20px;line-height:1.2}
h5{font-size:17px;line-height:1.3}
h6{font-size:15px;line-height:1.35}
p{font-size:16px;line-height:1.6}
button,input,select,textarea{font-family:var(--e-global-typography-text-font-family);font-size:16px;font-weight:400}
button{font-weight:600;cursor:pointer;line-height:1.3}
small,.eyebrow,.breadcrumb{font-size:16px}

/* Component titles: unify font family + weight (sizes stay page-scoped) */
.info-card h3,.sidebar-title,.blog-title,.project-title,.service-card h3,
.service-body h3,.benefit h3,.project-info h3,.recent-post-info h4,
.testimonial-card strong,.form-container h2,.cta-content h2,.cta h2,
.intro-row h2,.section h2,.testimonials h2,.section-heading h2,
.page-hero h1,.hero h1{font-family:Involve,Switzer,Arial,sans-serif;font-weight:600}

/* Standardized UI weights (beats style.css duplicates on the project page) */
.badge,.page-dot,.btn-search,.btn-cta,.btn-card,.btn-submit,.btn-quote,
.pill-btn,.quote-btn,.cta-button,.loop-btn,.scroll-track span{font-weight:600}
.filter-select{font-family:Switzer,Arial,sans-serif;font-size:16px;font-weight:400}
.form-control,.search-input{font-family:Switzer,Arial,sans-serif;font-size:16px;font-weight:400}

/* Skip link (contact/news previously had none) */
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:20px;top:20px;background:#fff;padding:10px;z-index:1000}

/* ==========================================================================
   2. Shared header (services-style site-header)
   ========================================================================== */
.site-header{position:absolute;z-index:20;top:25px;left:0;right:0}
.header-wrap{width:calc(100% - 48px);max-width:1390px;height:62px;margin:auto;background:rgba(255,255,255,.97);border-radius:34px;padding:0 18px 0 22px;display:flex;align-items:center;box-shadow:0 8px 28px rgba(0,0,0,.08)}
.brand img{width:120px;height:auto}
.desktop-nav{display:flex;align-items:center;gap:29px;margin-left:43px}
.desktop-nav a{
    font-family: "Switzer", Sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    position: relative;
}
.desktop-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-11px;margin:auto;width:28px;height:2px;background:var(--ip-lime)}
.header-contact{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:16px}
.header-contact span{font-weight:600}
.header-contact>a:not(.quote-btn){color:#76796f;margin-right:8px}
.quote-btn{background:var(--ip-lime);padding:12px 20px;border-radius:25px;font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:8px}
.menu-btn{display:none;border:0;background:transparent;font-size:25px;width:40px;height:40px;border-radius:50%;color:var(--ip-ink)}
.mobile-nav{display:none}

/* ==========================================================================
   3. Shared footer (services-style site-footer)
   ========================================================================== */
.site-footer{position:relative;margin-top:-45px;padding:0 24px 28px;z-index:5}
.footer-card{max-width:1390px;margin:auto;background:#fff;border-radius:25px;padding:48px 100px 25px;box-shadow:0 10px 40px rgba(0,0,0,.08)}
.footer-top{display:grid;grid-template-columns:1.1fr 1.1fr 1fr;gap:50px;padding-bottom:34px}
.footer-brand img{width:120px;margin-bottom:65px}
.footer-brand p{max-width:245px;color:#8a8d85;font-size:16px;margin:0}
.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-left:1px solid #ddd;border-right:1px solid #ddd;padding:0 35px}
.footer-links div{display:flex;flex-direction:column;gap:11px}
.footer-links a{font-size:14px;font-weight:600}
.footer-contact{display:flex;flex-direction:column;gap:10px}
.footer-contact>a{font-family:Involve,Switzer,Arial,sans-serif;font-size:21px;border-bottom:2px solid var(--ip-lime);width:max-content}
.socials{display:flex;gap:7px;color:#858880;font-size:9px;margin-top:30px}
.footer-bottom{border-top:1px solid #deded8;padding:23px 5px 0;display:flex;justify-content:space-between;color:#72766e;font-size:16px}
.footer-legal{display:flex;gap:8px;padding:12px 5px 0;font-size:11px;color:#72766e}

/* ==========================================================================
   4. Responsive (header/footer + heading scale)
   ========================================================================== */
@media(max-width:1000px){
  .desktop-nav{gap:18px;margin-left:25px}
  .header-contact span,.header-contact>a:not(.quote-btn){display:none}
  .footer-card{padding:42px 45px 25px}
}
@media(max-width:760px){
  h1{font-size:53px}
  h2{font-size:42px}
  .site-header{top:12px}
  .header-wrap{width:calc(100% - 24px);height:58px;padding:0 14px 0 18px}
  .brand img{width:104px}
  .desktop-nav,.header-contact>a:not(.quote-btn),.header-contact span{display:none}
  .quote-btn{padding:10px 14px;font-size:10px}
  .menu-btn{display:grid;place-items:center}
  .mobile-nav{position:absolute;top:67px;left:12px;right:12px;background:#fff;border-radius:20px;padding:13px;box-shadow:0 12px 30px rgba(0,0,0,.12)}
  .mobile-nav.open{display:flex;flex-direction:column}
  .mobile-nav a{padding:12px 14px;font-size:13px;font-weight:600;border-radius:10px;color:var(--ip-ink)}
  .mobile-nav a:hover,.mobile-nav a.active{background:#f4f5e9}
  .mobile-quote{background:var(--ip-lime);margin-top:6px;text-align:center}
  .site-footer{padding:0 12px 15px;margin-top:-25px}
  .footer-card{padding:35px 25px 20px;border-radius:22px}
  .footer-top{grid-template-columns:1fr;gap:35px}
  .footer-brand img{margin-bottom:25px}
  .footer-links{border:0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:25px 0}
  .footer-contact>a{font-size:19px}
  .footer-bottom{flex-direction:column;gap:8px}
}

/* ==========================================================================
   5. About dropdown (Our Leadership / Why Choose Us) — additive only
   ========================================================================== */
.nav-dd{position:relative}
.nav-dd>a{display:inline-flex;align-items:center;gap:5px}
.nav-dd-caret{font-size:10px;opacity:.65;transition:transform .2s}
.nav-dd:hover .nav-dd-caret,.nav-dd:focus-within .nav-dd-caret{transform:rotate(180deg)}
.nav-dd-menu{position:absolute;top:calc(100% + 7px);left:-14px;min-width:210px;background:#fff;border-radius:16px;padding:8px;box-shadow:0 14px 36px rgba(0,0,0,.12);display:none;z-index:30}
.nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{display:block}
.nav-dd-menu a{display:block;padding:10px 14px;border-radius:10px;font-size:14px;font-weight:600}
.nav-dd-menu a:hover,.nav-dd-menu a.active{background:#f4f5e9}
.nav-dd-menu a.active:after{display:none}
.mobile-sub{padding-left:28px!important;position:relative}
.mobile-sub:before{content:"";position:absolute;left:14px;top:50%;width:6px;height:1px;background:#9a9d94}
