/*
Theme Name: AIrConxt Blog
Theme URI: https://airconxt.com/blog
Description: AIrConxt-branded child theme (parent: GeneratePress). Full-width glass header and navy footer that mirror the airconxt.com React app (Navbar.tsx / Footer.tsx). Coral-gold + navy brand, Plus Jakarta Sans / Inter. Hand-built for speed, SEO, and upgradability — no page builder.
Author: Internet E-Business, LLC
Author URI: https://airconxt.com
Template: generatepress
Version: 1.2.0
License: GNU GPL v2 or later
Text Domain: airconxt-blog
*/

:root{
  --acx-navy:#001740;
  --acx-navy-2:#002a69;
  --acx-primary:#001c42;       /* app "primary": active nav text + Sign In bg (measured) */
  --acx-coral:#ec656f;
  --acx-gold:#ffbc57;          /* app gold: active underline + footer h4 (measured, NOT #f6ad55) */
  --acx-crimson:#b51e2a;
  --acx-bg:#f0f4ff;
  --acx-surface:#ffffff;
  --acx-ink:#12161f;
  --acx-muted:#777983;         /* app muted-foreground: inactive nav links (measured) */
  --acx-radius:1rem;
  --acx-radius-sm:.625rem;
  --acx-font-body:'Inter',-apple-system,'Segoe UI',Roboto,sans-serif;          /* body/paragraphs */
  --acx-font-head:'Plus Jakarta Sans',-apple-system,'Segoe UI',Roboto,sans-serif; /* headings + nav links */
  --acx-font-label:'Montserrat',-apple-system,'Segoe UI',Roboto,sans-serif;    /* footer h4 + Sign In */
  --acx-coral-gold:linear-gradient(135deg,#ec656f 0%,#ffbc57 100%);
  --acx-navy-grad:linear-gradient(135deg,#001740 0%,#002a69 100%);
  --acx-shadow:0 8px 30px rgba(0,23,64,.08);
}

/* ===== Hide GeneratePress default chrome — we render our own header/footer ===== */
.site-header{display:none !important;}
.site-footer{display:none !important;}

/* ===== Base ===== */
body{
  font-family:'Inter',-apple-system,'Segoe UI',Roboto,sans-serif;
  color:var(--acx-ink);
  background:var(--acx-bg);
  line-height:1.7;
  font-size:1.05rem;
  padding-top:64px;            /* clear the fixed header */
}
a{color:var(--acx-crimson);text-decoration:none;}
a:hover{color:var(--acx-coral);text-decoration:underline;}

h1,h2,h3,h4,h5,h6{
  font-family:'Plus Jakarta Sans',-apple-system,'Segoe UI',Roboto,sans-serif;
  color:var(--acx-navy);font-weight:800;line-height:1.2;letter-spacing:-.01em;
}
h1,.entry-title{font-size:2.25rem;margin-bottom:.5em;}
h2{font-size:1.6rem;margin-top:1.6em;}
h3{font-size:1.3rem;margin-top:1.4em;}
.entry-title a{color:var(--acx-navy);}
.entry-title a:hover{color:var(--acx-coral);text-decoration:none;}
.entry-meta{color:var(--acx-muted);font-size:.9rem;}
.entry-meta .byline{display:none;}       /* drop the "by admin" GeneratePress byline */

/* ===== Brand header — pixel-matched to the app's Navbar.tsx (64px tall, full-bleed,
       24px gutters so the logo sits at x=24 exactly; bg rgba(255,255,255,.85)) ===== */
.acx-nav{
  position:fixed;top:0;left:0;right:0;height:64px;z-index:100;
  background:rgba(255,255,255,.85);
  -webkit-backdrop-filter:saturate(180%) blur(12px);
  backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid rgba(0,23,64,.06);
}
body.admin-bar .acx-nav{top:32px;}
body.admin-bar{padding-top:96px;}                                  /* clear the WP admin bar + fixed header */
@media (max-width:782px){body.admin-bar .acx-nav{top:46px;}body.admin-bar{padding-top:110px;}}
.acx-nav-inner{
  display:flex;align-items:center;justify-content:space-between;height:100%;
  width:100%;padding:0 24px;                 /* full-bleed, matches app px-6 — no centered container */
}
.acx-nav-left{display:flex;align-items:center;gap:2rem;}            /* gap-8 */
.acx-logo{display:flex;align-items:center;}
.acx-logo img{height:20px;width:auto;display:block;}               /* app h-[20px] */
/* Hamburger — mobile only, sits left of the logo (mirrors Navbar.tsx md:hidden p-2 -ml-2) */
.acx-burger{
  display:none;align-items:center;justify-content:center;
  background:none;border:0;cursor:pointer;color:var(--acx-muted);
  padding:8px;margin-left:-8px;transition:color .15s ease;
}
.acx-burger:hover{color:var(--acx-primary);}
.acx-burger svg{width:20px;height:20px;display:block;flex:0 0 auto;}   /* app w-5 h-5 */
.acx-links{display:flex;align-items:center;gap:1.5rem;}            /* space-x-6 */
.acx-links a{
  font-family:var(--acx-font-head);font-weight:500;font-size:.875rem;line-height:1;   /* text-sm, muted */
  color:var(--acx-muted);padding:4px 0;border-bottom:2px solid transparent;transition:color .15s ease;
}
.acx-links a:hover{color:var(--acx-primary);text-decoration:none;}
.acx-links a.acx-active{color:var(--acx-primary);font-weight:700;border-bottom-color:var(--acx-gold);}
.acx-nav-right{display:flex;align-items:center;gap:1rem;}          /* gap-4 */
.acx-lang{position:relative;}
.acx-lang-btn{
  height:32px;width:32px;border-radius:999px;border:0;background:#eef1f8;color:var(--acx-muted);
  display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s ease;
}
.acx-lang-btn:hover{color:var(--acx-navy);background:#e4e9f5;}
.acx-lang-btn svg{width:18px;height:18px;display:block;flex:0 0 auto;}
.acx-lang-menu{
  position:absolute;right:0;top:44px;min-width:184px;max-height:320px;overflow-y:auto;
  background:#fff;border:1px solid #e3e7f0;border-radius:12px;box-shadow:var(--acx-shadow);
  padding:6px;display:none;z-index:200;
}
.acx-lang-menu.open{display:block;}
.acx-lang-menu button{
  display:block;width:100%;text-align:left;background:none;border:0;cursor:pointer;
  padding:8px 12px;border-radius:8px;font-size:.9rem;color:var(--acx-ink);font-family:'Inter',sans-serif;
}
.acx-lang-menu button:hover{background:#f0f4ff;color:var(--acx-coral);}
.acx-signin{
  background:var(--acx-primary);color:#fff !important;border-radius:999px;white-space:nowrap;
  font-family:var(--acx-font-label);font-weight:700;font-size:.75rem;line-height:1.3333; /* text-xs 12/16 -> 32px tall */
  letter-spacing:.05em;text-transform:uppercase;padding:8px 16px;transition:.15s ease;    /* py-2 px-4 */
}
.acx-signin:hover{background:var(--acx-navy-2);color:#fff !important;text-decoration:none;}

/* ===== Mobile slide-in menu (mirrors the app's left Sheet, w-72=288px) ===== */
.acx-mobile-menu{
  position:fixed;top:0;left:0;bottom:0;width:288px;max-width:82vw;z-index:300;
  background:#fff;box-shadow:0 12px 40px rgba(0,23,64,.18);
  transform:translateX(-100%);transition:transform .25s ease;
  padding:80px 24px 24px;display:flex;flex-direction:column;
  overflow-y:auto;-webkit-overflow-scrolling:touch;
}
.acx-mobile-menu.open{transform:translateX(0);}
.acx-mobile-menu a{
  font-family:var(--acx-font-head);font-weight:500;font-size:1rem;line-height:1.5;  /* text-base, py-3 */
  color:var(--acx-muted);padding:12px 0;border-bottom:1px solid #eef1f8;transition:color .15s ease;
}
.acx-mobile-menu a:hover{color:var(--acx-primary);text-decoration:none;}
.acx-mobile-menu a.acx-active{color:var(--acx-primary);font-weight:700;}
.acx-mobile-backdrop{
  position:fixed;inset:0;z-index:250;background:rgba(0,23,64,.4);
  opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease;
}
.acx-mobile-backdrop.open{opacity:1;visibility:visible;}

@media (max-width:768px){
  .acx-links{display:none;}
  .acx-burger{display:flex;}
}
@media (min-width:769px){
  .acx-mobile-menu,.acx-mobile-backdrop{display:none !important;}
}

/* ===== Content column ===== */
.grid-container{max-width:1200px;}
.site-content{max-width:880px;margin-left:auto;margin-right:auto;}
@media (max-width:920px){.site-content{max-width:100%;}}

.entry-content{font-size:1.08rem;}
.entry-content blockquote{
  border-left:4px solid var(--acx-coral);background:#fff;border-radius:var(--acx-radius-sm);
  padding:1rem 1.25rem;box-shadow:var(--acx-shadow);color:var(--acx-ink);
}
.entry-content img,.wp-block-image img,.post-image img{border-radius:var(--acx-radius);}
.entry-content :is(h2,h3){scroll-margin-top:90px;}
.inside-article,article.post,.page .inside-article{
  background:var(--acx-surface);border-radius:var(--acx-radius);
  box-shadow:var(--acx-shadow);padding:clamp(1.25rem,4vw,2.5rem);margin-bottom:2rem;
}

/* Buttons */
.wp-block-button__link,.button,input[type="submit"],.acx-btn{
  background:var(--acx-coral-gold);color:#fff;border:0;border-radius:999px;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;
  padding:.7em 1.6em;box-shadow:var(--acx-shadow);transition:filter .15s ease;
}
.wp-block-button__link:hover,.button:hover,.acx-btn:hover{filter:brightness(1.08);color:#fff;text-decoration:none;}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--acx-navy);border:2px solid var(--acx-navy);}

/* In-content CTA box (Group block + class .acx-cta-box) */
.acx-cta-box{
  background:var(--acx-navy-grad);color:#fff;border-radius:var(--acx-radius);
  padding:2rem;text-align:center;box-shadow:var(--acx-shadow);
}
.acx-cta-box :is(h2,h3,p){color:#fff;}

/* ===== Brand footer — pixel-matched to Footer.tsx (inner max-w-7xl 1280, px-6 py-16,
       12-col grid spans 4/3/5, gap-12=48px, logo h-[20px]) ===== */
.acx-footer{background:var(--acx-navy-grad);color:rgba(255,255,255,.82);}   /* no margin-top — matches app (spacing comes from content above) */
.acx-footer-inner{max-width:1280px;margin:0 auto;padding:64px 24px;}      /* max-w-7xl, px-6 py-16 */
.acx-foot-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:48px;margin-bottom:48px;}
.acx-foot-brand{grid-column:span 4;}
.acx-foot-col{grid-column:span 3;}
.acx-foot-about{grid-column:span 5;}
@media (max-width:860px){
  .acx-foot-grid{grid-template-columns:1fr;gap:2rem;}
  .acx-foot-brand,.acx-foot-col,.acx-foot-about{grid-column:auto;}
}
.acx-foot-brand img{height:20px;width:auto;margin-bottom:1rem;display:block;}
.acx-foot-brand p{color:rgba(255,255,255,.7);max-width:24rem;font-size:1rem;line-height:1.5;margin:0;}    /* text-base 16/24 */
.acx-foot-col h4{
  font-family:var(--acx-font-label);font-weight:700;font-size:.75rem;line-height:1.3333;text-transform:uppercase;
  letter-spacing:.1em;color:var(--acx-gold);margin:0 0 1rem;                                              /* Montserrat, text-xs 12/16 */
}
/* text-sm 14/20 on the LIST (not just the <a>) so each <li>'s line-box strut is 20px and
   not the body's leaked line-height:1.7 — that strut bloat was spreading the links apart. */
.acx-foot-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem;font-size:.875rem;line-height:1.4286;}
.acx-foot-col li{font-size:.875rem;line-height:1.4286;}
.acx-foot-col a{color:rgba(255,255,255,.7);font-size:.875rem;line-height:1.4286;}
.acx-foot-col a:hover{color:#fff;text-decoration:none;}
.acx-foot-about p{color:rgba(255,255,255,.7);font-size:.875rem;line-height:1.4286;margin:0 0 1rem;}       /* text-sm 14/20 */
.acx-foot-bottom{
  border-top:1px solid rgba(255,255,255,.1);padding-top:32px;text-align:center;
  color:rgba(255,255,255,.4);font-size:.875rem;line-height:1.4286;                                        /* text-sm 14/20 */
}
.acx-foot-bottom p{margin:0;}
.acx-foot-bottom p + p{margin-top:.25rem;}      /* space-y-1: 4px BETWEEN only (no extra top/bottom) */
.acx-foot-bottom a{color:rgba(255,255,255,.6);}
.acx-foot-bottom a:hover{color:#fff;}

/* ===== Google Translate widget suppression ===== */
.goog-te-banner-frame,.skiptranslate{display:none !important;}
body{top:0 !important;}
.goog-te-gadget-icon{display:none;}
#goog-gt-tt,.goog-te-balloon-frame{display:none !important;}
font.goog-text-highlight{background:none !important;box-shadow:none !important;}

/* ===== Responsive ===== */
@media (max-width:768px){
  h1,.entry-title{font-size:1.8rem;}
  body{font-size:1rem;}
}
