/* ============================================================
   Fast Valdosta Locksmith - DESKTOP-ONLY design layer (CYT-28)
   Loaded AFTER the inline mobile styles on every page.
   Every rule lives inside @media (min-width:1024px), so below
   1024px this file is completely inert - the approved mobile
   design is untouched by construction.
   ============================================================ */
@media (min-width:1024px){

/* ===== CANVAS ===== */
body{max-width:none;margin:0;box-shadow:none;padding-bottom:0}
.wrap{max-width:1140px;padding:0 44px}

/* ===== HEADER + INLINE NAV (hamburger becomes a real nav bar) ===== */
.menu-btn{display:none}
.menu-drop{
  position:static;inset:auto;left:auto;width:auto;max-width:none;transform:none;
  opacity:1;visibility:visible;background:transparent;flex-direction:row;
}
.menu-top,.menu-bottom{display:none}
.menu-drop nav{
  flex-direction:row;align-items:center;flex-wrap:wrap;justify-content:flex-end;
  padding:0;gap:4px;overflow:visible;
}
.menu-drop nav a{
  border-bottom:0;padding:8px 9px;font-size:.8rem;font-weight:700;
  color:rgba(255,255,255,.82);border-radius:8px;white-space:nowrap;
}
.menu-drop nav a:hover{color:#fff;background:rgba(255,255,255,.07)}
.hdr-in{padding:26px 0 10px}
.logo-img{width:190px}

/* ===== FLOATING CALL: full-width bar becomes a bottom-right pill ===== */
.float-call{
  left:auto;right:28px;bottom:28px;transform:none;width:auto;max-width:none;
  border-radius:999px;padding:15px 24px;gap:11px;
  box-shadow:0 12px 32px rgba(216,31,38,.45),0 4px 14px rgba(0,0,0,.4);
}
.float-call-text{align-items:flex-start}

/* ===== HOME HERO (FULL-WIDE: photo is a full-bleed background band,
       copy sits over it on the left, trust row along the bottom) ===== */
.hero-flex{
  display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);
  column-gap:56px;align-items:start;padding-bottom:0;min-height:660px;
}
.hero-flex > .hdr-in{grid-row:1;grid-column:1;z-index:2}
.hero-flex > .menu-drop{grid-row:1;grid-column:1 / -1;justify-self:end;align-self:center;margin-left:230px;z-index:2}
.hero-flex > .hero-copy{grid-row:2;grid-column:1;padding-top:22px;z-index:2}
.hero-flex > .btn-row{grid-row:3;grid-column:1;display:flex;flex-direction:column;max-width:540px;z-index:2}
.hero-flex > .btn-row .btn{flex:none}
.hero-flex > .hero-photo{
  grid-row:1 / 5;grid-column:1 / -1;justify-self:center;
  width:100vw;height:100%;min-height:0;margin:0;border-radius:0;
  z-index:0;overflow:hidden;
}
.hero-flex > .hero-photo::after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(180deg, rgba(11,12,16,.6) 0%, transparent 20%, transparent 68%, rgba(11,12,16,.72) 100%),
    linear-gradient(90deg, rgba(11,12,16,.97) 0%, rgba(11,12,16,.86) 34%, rgba(11,12,16,.48) 60%, rgba(11,12,16,.16) 82%, rgba(11,12,16,.35) 100%);
}
.hero-flex > .hero-photo img{object-position:center}
.hero-flex > .hero-trust{
  grid-row:4;grid-column:1 / -1;z-index:2;
  margin-top:30px;padding:22px 0 28px;border-top:1px solid rgba(255,255,255,.18);
  justify-content:space-between;
}
.hero-photo img,.hero-video{-webkit-mask-image:none;mask-image:none}
/* desktop hero uses the STATIC photo - the 480px-mastered video upscales badly */
.hero-video{display:none}
.hero-display{font-size:3.4rem}
.hero-sub{font-size:1.05rem;max-width:56ch}
.hero-question{font-size:1.85rem;margin-top:20px}
.hero-list li{font-size:1rem}
.trust-item svg{width:26px;height:26px}
.trust-item span{font-size:.78rem}

/* ===== SUB-PAGE HERO (all other pages: copy left, square photo right) ===== */
.hero .wrap:not(.hero-flex){
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  column-gap:60px;align-items:start;padding-bottom:38px;
}
.hero .wrap:not(.hero-flex) > *{grid-column:1}
.hero .wrap:not(.hero-flex) > .hdr-in{grid-row:1}
.hero .wrap:not(.hero-flex) > .menu-drop{grid-column:1 / -1;grid-row:1;justify-self:end;align-self:center;margin-left:230px}
.hero .wrap:not(.hero-flex) > .hero-photo{
  grid-column:2;grid-row:2 / span 10;
  width:100%;max-width:500px;margin:20px 0 0;justify-self:end;
  border-radius:22px;overflow:hidden;
}
/* hub heroes with no CTA buttons: smaller photo so the copy column isn't dwarfed */
.hero .wrap:not(.hero-flex):not(:has(.btn-row)) > .hero-photo{max-width:420px}
.page-display{font-size:2.6rem}
.page-sub,.page-sub-service{font-size:1.16rem;margin-top:12px}
.hero-intro{font-size:1rem;max-width:58ch;margin-top:16px}
.crumbs{font-size:.8rem;padding-top:14px}
.hero .btn-row{margin:22px 0 6px}

/* ===== CONTENT: rhythm + readable measure ===== */
.sec{padding:46px 0 14px}
.sec-head{margin-bottom:22px}
.sec-head h2{font-size:1.9rem}
.sec-head svg{width:34px;height:34px}
.start-here{font-size:.8rem}
.sec p.copy{font-size:1.02rem;max-width:820px}
.sub-h{font-size:1.45rem}
.dots{max-width:820px}
.dots li{font-size:1rem}
.faq-card,.qa-card{max-width:820px;padding:20px 24px}
.faq-q,.qa-q{font-size:1.06rem}
.faq-a p,.qa-a{font-size:.98rem}
.offercard{max-width:820px}
.steps{max-width:820px}
/* two mobile-era elements sit OUTSIDE .wrap in the markup (stray direct children):
   align them to the .wrap content column on desktop */
.sec > p.copy{max-width:1052px;margin-left:auto;margin-right:auto;padding-left:0 !important;padding-right:0 !important}
.jumplinks{max-width:1052px;margin-left:auto;margin-right:auto}
.map{max-width:820px}
.map iframe{height:400px}
.expect{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.chips .chip{font-size:.86rem}

/* ===== TILE / CHIP GRIDS ===== */
.tiles{grid-template-columns:repeat(3,1fr);gap:14px}
.tile{padding:18px 16px}
.tile b{font-size:.86rem}
.area-chips{grid-template-columns:repeat(4,1fr);gap:12px;max-width:900px}
.achip{font-size:.9rem;padding:14px 8px}
.brandgrid{grid-template-columns:repeat(3,1fr);gap:12px}
.bgitem span{font-size:.8rem}
.jumplinks a{font-size:.84rem}

/* ===== BIG CTAS: stack becomes a row ===== */
.btn-row{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:14px}
.btn{min-width:300px;flex:0 1 340px;padding:16px 20px}
.btn-line{font-size:1.2rem}

/* ===== DARK PANEL (home) ===== */
.darkpanel{padding:38px 44px;border-radius:26px;margin:44px 0 26px}
.dp-head h2{font-size:1.7rem}
.dp-head svg{width:32px;height:32px}
.dp-sub{font-size:1rem;max-width:70ch}
.brand-row-merged{grid-template-columns:repeat(3,1fr);gap:12px}
.brand-row-merged .bchip span{font-size:.74rem}
.lock-chips{grid-template-columns:repeat(3,1fr);gap:12px}
.lchip{padding:20px 10px 16px}
.lchip svg{width:38px;height:38px}
.lchip span{font-size:.76rem}
.lchip-wide{grid-column:1 / -1;width:100%;max-width:440px;justify-self:center}
.saver{padding:18px 20px}
.saver-title{font-size:1.25rem}
.saver-body{font-size:.95rem}

/* ===== LISTS / OFFERS / REVIEWS (home + contact) ===== */
.expect-list{gap:12px}
.expect-list li{font-size:1rem}
.expect-list-light{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:900px}
.problinks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:900px}
.problink{font-size:.95rem;padding:15px 18px}
.offers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:1000px}
.offer:last-child:nth-child(odd){grid-column:1 / -1}
.offer-title{font-size:1rem}
.reviews{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.review{padding:24px}
.review-quote{font-size:1.1rem}
.review-body{font-size:.95rem}
.rev-head{flex-direction:row;align-items:center;justify-content:space-between}
.rev-head h2{font-size:1.9rem}
.mini-cta a{font-size:1rem;padding:14px 28px}

/* ===== GALLERY + TRUST CARD (lockout pages) ===== */
.gallery{height:420px}
.g-cap{font-size:.78rem}
.g-main .g-cap{font-size:.84rem}
.trust-card{max-width:820px}
.trust-photo{width:260px}
.trust-text{font-size:.92rem}
.trust-title{font-size:1.15rem}

/* ===== CONTACT FORM (kept compact on purpose) ===== */
.cform{max-width:620px}

/* ===== CALL BAND + FOOTER ===== */
.callband{padding:36px 16px;margin-top:44px}
.callband-num{font-size:1.7rem}
.callband-num svg{width:28px;height:28px}
.callband-sub{font-size:1rem}
.ftr{padding:46px 20px 40px}
.ftr-name{font-size:1.2rem}
.ftr-links{flex-wrap:wrap;overflow:visible;gap:6px 24px;margin:0 0 14px}
.ftr-links a{font-size:.82rem}
.ftr-note,.ftr-auth{font-size:.8rem;max-width:720px;margin-left:auto;margin-right:auto}
.footer-declaration{max-width:640px}

}
