
/* SAS Site Builder — minimal CSS, mobile-first, CLS-safe */
:root{
  --sas-blue:#0f2a4a;
  --sas-blue2:#12345d;
  --sas-border:#dbe3ea;
  --sas-bg:#f7fafc;
  --sas-text:#0f172a;
  --sas-muted:#4a5568;
}

html{scroll-behavior:smooth}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--sas-text);
}

/* Hide most theme headers/footers when enabled */
body.sas-hf-enabled header:not(#sas-site-header),
body.sas-hf-enabled footer:not(#sas-site-footer){
  display:none!important;
}
body.sas-hf-enabled .wp-site-blocks > header,
body.sas-hf-enabled .wp-site-blocks > footer{
  display:none!important;
}

/* Ensure content doesn't sit behind fixed header (we use sticky) */
#sas-site-header{position:sticky;top:0;z-index:9999}

/* Header */
.sas-site-header{background:var(--sas-blue);color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}
.sas-hdr-inner{
  max-width:1100px;margin:0 auto;padding:10px 16px;
  display:flex;align-items:center;gap:12px;
}
.sas-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;flex:0 0 auto}
.sas-logo-box{
  background:#fff;border-radius:10px;padding:6px 10px;
  display:flex;align-items:center;justify-content:center;
}
.sas-logo-box img{display:block;height:auto;max-width:160px}

.sas-nav{
  display:flex;align-items:center;gap:12px;
  flex:1 1 auto;
  min-width:0;
  justify-content:center;
}
.sas-nav a{
  color:#fff;text-decoration:none;font-weight:700;font-size:13px;
  padding:8px 8px;border-radius:10px;
  white-space:nowrap; /* prevents wrap */
}
.sas-nav a:hover{background:rgba(255,255,255,.10)}
.sas-hdr-actions{
  display:flex;align-items:center;gap:10px;flex:0 0 auto;
}
.sas-hdr-phone{color:#fff;text-decoration:none;font-weight:800;font-size:13px;white-space:nowrap}
.sas-hdr-cta{
  background:#fff;color:var(--sas-blue);text-decoration:none;font-weight:900;
  padding:10px 12px;border-radius:12px;white-space:nowrap;
}
.sas-hdr-cta:hover{background:#eef2ff}

/* Trust bar */
.sas-trustbar{background:var(--sas-blue2);border-top:1px solid rgba(255,255,255,.10)}
.sas-trustbar-inner{
  max-width:1100px;margin:0 auto;padding:6px 16px;
  display:flex;gap:8px;flex-wrap:wrap;align-items:center;
}
.sas-tchip{
  font-size:12px;font-weight:800;color:#fff;
  border:1px solid rgba(255,255,255,.18);
  padding:5px 8px;border-radius:999px;white-space:nowrap;
}

/* Mobile menu button */
.sas-menu-btn{
  display:none;background:transparent;border:1px solid rgba(255,255,255,.22);
  color:#fff;border-radius:12px;padding:8px 10px;
  font-weight:800;cursor:pointer;flex:0 0 auto;
}
.sas-menu-icon{
  display:inline-block;width:16px;height:10px;margin-right:8px;vertical-align:middle;position:relative
}
.sas-menu-icon:before,.sas-menu-icon:after{
  content:"";position:absolute;left:0;right:0;height:2px;background:#fff;border-radius:2px
}
.sas-menu-icon:before{top:0}
.sas-menu-icon:after{bottom:0}
.sas-menu-text{font-size:12px}

/* Page styling */
.sas-hero,.sas-section,.sas-lp-hero{max-width:1100px;margin:0 auto;padding:22px 16px}
.sas-lp-hero{padding-top:26px}
.sas-kicker{
  display:inline-block;background:#eef2ff;border:1px solid var(--sas-border);color:var(--sas-blue);
  padding:6px 10px;border-radius:999px;font-size:12px;font-weight:900;margin-bottom:10px
}
.sas-h1{font-size:38px;line-height:1.1;margin:0 0 10px}
.sas-h2{font-size:26px;line-height:1.2;margin:18px 0 10px}
.sas-sub{font-size:16px;line-height:1.6;color:var(--sas-muted);margin:0 0 14px}
.sas-p{font-size:15px;line-height:1.7;color:var(--sas-muted);margin:0 0 10px}
.sas-mini{font-size:13px;color:#5b6776;line-height:1.6}
.sas-list{color:var(--sas-muted);font-size:15px;line-height:1.7;padding-left:18px;margin:10px 0 0}
.sas-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.sas-btn{
  display:inline-block;background:var(--sas-blue);color:#fff;text-decoration:none;font-weight:900;
  padding:12px 14px;border-radius:14px;border:1px solid rgba(0,0,0,0);
}
.sas-btn:hover{opacity:.92}
.sas-btn-ghost{
  background:transparent;color:var(--sas-blue);border:1px solid var(--sas-border)
}

/* Cards */
.sas-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:10px}
.sas-card{
  display:block;border:1px solid var(--sas-border);border-radius:14px;padding:14px;background:#fff;
  text-decoration:none;color:inherit;
}
.sas-card strong{display:block;font-size:15px;margin-bottom:4px}
.sas-card span{display:block;font-size:13px;color:var(--sas-muted);line-height:1.5}

/* Trust chips (inside page content) */
.sas-trust-chips{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 6px}
.sas-chip{
  border:1px solid var(--sas-border);background:#fff;border-radius:999px;padding:6px 10px;
  font-size:12px;font-weight:900;color:var(--sas-blue);white-space:nowrap
}

/* CTA row */
.sas-cta-row{
  margin:18px 0;padding:14px;border-radius:14px;
  background:var(--sas-bg);border:1px solid var(--sas-border);
  display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:space-between;
}
.sas-cta-actions{display:flex;gap:10px;flex-wrap:wrap}
.sas-cta-copy{min-width:240px;max-width:660px}
.sas-cta-row .sas-h2{margin:0 0 6px;font-size:20px}
.sas-cta-row .sas-p{margin:0}

/* Media placeholder */
.sas-media-placeholder{
  max-width:1100px;margin:0 auto 14px;padding:0 16px;
}
.sas-media-placeholder .sas-media-inner{
  border:2px dashed var(--sas-border);
  border-radius:16px;
  background:#fff;
  display:flex;gap:12px;align-items:center;
  padding:14px;
}
.sas-media-icon{font-size:22px}
.sas-ar-16x9{
  /* reserve space with CSS aspect ratio wrapper */
}
.sas-ar-16x9 > .sas-media-inner{
  min-height:240px; /* reserves space to reduce CLS even before images are added */
}
body.sas-hide-placeholders .sas-media-placeholder,
body.sas-hide-placeholders-page .sas-media-placeholder{
  display:none!important;
}

/* FAQ */
.sas-faq details{border:1px solid var(--sas-border);border-radius:12px;padding:12px 14px;background:#fff}
.sas-faq details + details{margin-top:10px}
.sas-faq summary{cursor:pointer;font-weight:900;color:var(--sas-blue)}
.sas-faq summary::-webkit-details-marker{display:none}
.sas-faq-answer p{margin:10px 0 0;color:var(--sas-muted);line-height:1.7}

/* Form */
.sas-form-wrap{max-width:760px}
.sas-form-success{background:#ecfdf3;border:1px solid #bbf7d0;border-radius:12px;padding:12px 14px;margin-bottom:12px}
.sas-form{border:1px solid var(--sas-border);border-radius:16px;padding:14px;background:#fff}
.sas-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sas-grid label{display:flex;flex-direction:column;gap:6px;font-weight:800;color:var(--sas-blue);font-size:13px}
.sas-grid input,.sas-grid textarea,.sas-grid select{
  border:1px solid var(--sas-border);border-radius:12px;padding:10px 12px;font-size:14px;
}
.sas-span2{grid-column:span 2}
.sas-form .sas-btn{margin-top:10px}

/* Geo links */
.sas-geo-links{margin-top:10px;color:var(--sas-muted);line-height:1.8}
.sas-geo-links a{color:var(--sas-blue);font-weight:800;text-decoration:none}
.sas-geo-links a:hover{text-decoration:underline}

/* Footer */
.sas-site-footer{background:var(--sas-blue);color:#fff;margin-top:30px}
.sas-ft-inner{
  max-width:1100px;margin:0 auto;padding:18px 16px;
  display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:14px;
}
.sas-ft-links strong{display:block;margin-bottom:8px}
.sas-ft-links a{display:block;color:#fff;text-decoration:none;font-weight:800;font-size:13px;padding:6px 0}
.sas-ft-links a:hover{opacity:.9}
.sas-ft-mini{margin:10px 0 0;color:rgba(255,255,255,.92);font-size:13px;line-height:1.6}
.sas-ft-mini a{color:#fff;text-decoration:underline}
.sas-ft-bottom{
  border-top:1px solid rgba(255,255,255,.12);
  max-width:1100px;margin:0 auto;padding:10px 16px;
  display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;
  color:rgba(255,255,255,.92);font-size:12px;font-weight:700;
}

/* Responsive */
@media (max-width: 980px){
  .sas-h1{font-size:32px}
  .sas-cards{grid-template-columns:1fr}
  .sas-ft-inner{grid-template-columns:1fr}
  .sas-grid{grid-template-columns:1fr}
  .sas-span2{grid-column:span 1}
  .sas-nav{display:none;position:absolute;left:0;right:0;top:64px;background:var(--sas-blue);padding:12px 16px;flex-direction:column;align-items:flex-start;gap:4px;border-bottom:1px solid rgba(255,255,255,.12)}
  .sas-nav a{width:100%;padding:10px 10px}
  .sas-menu-btn{display:inline-flex;align-items:center}
  .sas-hdr-inner{position:relative}
  .sas-hdr-actions{margin-left:auto}
}
@media (max-width: 540px){
  .sas-hdr-phone{display:none}
}
