/* Sage FX blog — shared styles */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:#F6F1E7;font-family:'Barlow',sans-serif;color:#1E1F22;}
img{max-width:100%;}

@keyframes heroIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes revealUp{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}

/* scroll reveal (JS toggles .in) */
.reveal{opacity:0;transform:translateY(32px);}
.reveal.in{animation:revealUp .75s cubic-bezier(.2,.7,.2,1) both;}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important}
  html{scroll-behavior:auto;}
  .reveal{opacity:1;transform:none;}
}

/* nav */
.nav-menu{display:flex;align-items:center;gap:30px;}
.nav-links{display:flex;align-items:center;gap:21px;font-weight:600;font-size:15px;text-transform:uppercase;letter-spacing:0.3px;font-family:'Oswald',sans-serif;}
.nav-link{text-decoration:none;color:#2A2B2D;padding:5px 0;border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s,border-color .15s;}
.nav-link:hover{color:#1C1D1F;}
.nav-link.active{color:#1C1D1F;border-bottom:2px solid #F5B301;}
.nav-cta{transition:background .15s;}
.nav-cta:hover{background:#E0A200!important;}
.nav-toggle{display:none;background:none;border:none;font-size:26px;line-height:1;color:#1C1D1F;cursor:pointer;padding:4px 8px;}

/* footer link hovers */
.f-link{color:#B9AE97;text-decoration:none;transition:color .15s;}
.f-link:hover{color:#fff;}
.f-phone{color:#EDE6D6;text-decoration:none;font-weight:700;font-size:17px;transition:color .15s;}
.f-phone:hover{color:#F5B301;}
.f-social{color:#B9AE97;text-decoration:none;font-weight:600;transition:color .15s;}
.f-social:hover{color:#F5B301;}
.f-legal{color:#7E766A;text-decoration:none;transition:color .15s;}
.f-legal:hover{color:#B9AE97;}

/* blog cards */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.post-card{text-decoration:none;color:inherit;display:flex;flex-direction:column;background:#FFFFFF;border:1px solid #E7DFC9;border-radius:16px;overflow:hidden;transition:transform .16s,box-shadow .16s,border-color .16s;}
.post-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(28,29,31,0.1);border-color:#F5B301;}

/* related-service chips */
.rel-chip{text-decoration:none;background:#FFFFFF;border:1px solid #E7DFC9;border-radius:10px;padding:13px 20px;font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:0.4px;font-size:14px;color:#1C1D1F;transition:border-color .15s,background .15s;}
.rel-chip:hover{border-color:#F5B301;background:#FEF3D3;}

/* footer grid */
.footer-cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:40px;max-width:1220px;margin:0 auto;padding:52px 24px 30px;}

/* image placeholder (drop-a-photo slot) */
.image-slot{display:flex;align-items:center;justify-content:center;text-align:center;background:repeating-linear-gradient(135deg,#F0E8D4,#F0E8D4 12px,#EDE4CD 12px,#EDE4CD 24px);border:2px dashed #D8C79A;color:#9C8A5E;}
.image-slot span{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:0.6px;font-size:13px;font-weight:600;padding:0 20px;max-width:80%;}

/* buttons */
.btn-gold{transition:transform .18s,box-shadow .18s;}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(245,179,1,0.42);}
.btn-ghost{transition:border-color .18s,transform .18s;}
.btn-ghost:hover{border-color:#F5B301;transform:translateY(-2px);}

/* FAQ accordion */
.faq-a{display:none;}
.faq-item.open .faq-a{display:block;animation:revealUp .28s ease both;}

/* ---------- responsive ---------- */
/* universal: any fixed inline grid collapses to one column on small screens */
@media (max-width:760px){
  [style*="grid-template-columns"]{grid-template-columns:1fr!important;}
  [style*="position:sticky"]{position:static!important;}
}
.svc-hero,.svc-intro,.svc-steps{}
@media (max-width:900px){.svc-steps{grid-template-columns:repeat(2,1fr)!important;}}

@media (max-width:980px){
  .blog-grid{grid-template-columns:repeat(2,1fr);}
  .footer-cols{grid-template-columns:1fr 1fr;gap:32px;}
}
@media (max-width:860px){
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center;}
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #E7DFC9;flex-direction:column;align-items:stretch;gap:0;padding:6px 24px 20px;box-shadow:0 14px 26px rgba(28,29,31,0.12);}
  .nav-menu.open{display:flex;}
  .nav-links{flex-direction:column;align-items:stretch;gap:0;}
  .nav-link{padding:13px 0;border-bottom:1px solid #EFE8D6;}
  .nav-link.active{border-bottom:2px solid #F5B301;}
  .nav-cta{margin-top:14px;text-align:center;}
}
@media (max-width:620px){
  .blog-grid{grid-template-columns:1fr;}
  .footer-cols{grid-template-columns:1fr;}
  .hero-h1{font-size:34px!important;}
  .post-h1{font-size:30px!important;}
}
