/* ==========================================================
   Silver State Renovations — Main CSS
   Header + Footer styles (page content added per template)
========================================================== */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Montserrat',sans-serif;color:#1a1a2e;background:#fff;overflow-x:hidden;font-size:16px;}
img{display:block;max-width:100%;height:auto;}
a{text-decoration:none;color:inherit;}
button{cursor:pointer;font-family:'Montserrat',sans-serif;}

/* CSS Custom Properties (colours overridden by Customizer via inline <style>) */
:root{
  --navy:#001D66;
  --teal:#5EB1BF;
  --teal-lt:#C5E2E8;
  --amber:#F29E4C;
  --off:#f7f9fc;
  --muted:#666;
  --border:#e4e9f0;
  --g:64px;
}


h1, h2 {
    font-family: 'Campaign W00 Bold', 'Montserrat', sans-serif;
}

h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
}



/* Utility */
.cb{font-family:"Campaign W00 Bold","Montserrat",sans-serif;letter-spacing:.5px;}
.w{width:100%;padding-left:var(--g);padding-right:var(--g);}
.btn{display:inline-flex;align-items:center;gap:8px;border:none;border-radius:4px;font-weight:700;font-size:15px;padding:14px 28px;transition:all .2s;cursor:pointer;font-family:'Montserrat',sans-serif;letter-spacing:.3px;}
.btn-amber{background:var(--amber);color:var(--navy);}.btn-amber:hover{background:#d9822e;}
.btn-navy{background:var(--navy);color:#fff;}.btn-navy:hover{background:#002a99;}
.btn-wht{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4);}.btn-wht:hover{border-color:#fff;}
.btn-navy-ol{background:transparent;color:var(--navy);border:2px solid var(--navy);font-size:14px;padding:12px 24px;}.btn-navy-ol:hover{background:var(--navy);color:#fff;}

/* ============================================================
   MOBILE MENU
============================================================ */
.mob-menu{display:none!important;position:fixed!important;inset:0!important;background:var(--navy)!important;z-index:500!important;flex-direction:column!important;}
.mob-menu.open{display:flex!important;}
.mob-head{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0 22px!important;height:64px!important;border-bottom:1px solid rgba(255,255,255,.1)!important;flex-shrink:0!important;}
.mob-head a{display:flex!important;align-items:center!important;}
.mob-head img{height:34px!important;width:auto!important;object-fit:contain!important;}
.mob-close{background:none!important;border:none!important;color:#fff!important;font-size:22px!important;cursor:pointer!important;width:32px!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.mob-body{flex:1!important;overflow-y:auto!important;padding:0 22px 40px!important;}

/* Mobile top-level rows */
.mob-row{display:flex!important;align-items:center!important;border-bottom:1px solid rgba(255,255,255,.1)!important;}
.mob-row>a{flex:1!important;color:#fff!important;font-size:17px!important;font-weight:700!important;padding:17px 0!important;text-decoration:none!important;}
.mob-chev{background:none!important;border:none!important;padding:17px 0 17px 8px!important;cursor:pointer!important;color:rgba(255,255,255,.6)!important;display:flex!important;align-items:center!important;}
.mob-chev svg{width:18px!important;height:18px!important;stroke:currentColor!important;fill:none!important;stroke-width:2.5!important;transition:transform .25s!important;}
.mob-chev.open svg{transform:rotate(180deg)!important;}

/* Mobile services panel */
.mob-svc-panel{display:none!important;border-bottom:1px solid rgba(255,255,255,.1)!important;}
.mob-svc-panel.open{display:block!important;}
.mob-svc-row{display:flex!important;align-items:center!important;border-bottom:1px solid rgba(255,255,255,.07)!important;}
.mob-svc-row>a{flex:1!important;color:rgba(255,255,255,.82)!important;font-size:15px!important;font-weight:600!important;padding:14px 0 14px 16px!important;text-decoration:none!important;}
.mob-svc-row>a:hover{color:#fff!important;}
.mob-svc-chev{background:none!important;border:none!important;padding:14px 4px!important;cursor:pointer!important;color:rgba(255,255,255,.4)!important;display:flex!important;align-items:center!important;}
.mob-svc-chev svg{width:16px!important;height:16px!important;stroke:currentColor!important;fill:none!important;stroke-width:2.5!important;transition:transform .2s!important;}
.mob-svc-chev.open svg{transform:rotate(180deg)!important;}

/* Mobile flyout children */
.mob-res-children{display:none!important;background:rgba(0,0,0,.2)!important;}
.mob-res-children.open{display:block!important;}
.mob-res-children a{display:block!important;color:rgba(255,255,255,.65)!important;font-size:13px!important;font-weight:500!important;padding:11px 0 11px 32px!important;border-bottom:1px solid rgba(255,255,255,.05)!important;text-decoration:none!important;}
.mob-res-children a:hover{color:#fff!important;}

/* Mobile CTA */
.mob-cta-m{display:block!important;margin-top:22px!important;background:var(--amber)!important;color:var(--navy)!important;text-align:center!important;border-radius:4px!important;padding:15px!important;font-weight:700!important;font-size:16px!important;text-decoration:none!important;}

/* ============================================================
   DESKTOP NAV
============================================================ */
.nav{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:400!important;transition:background .3s,box-shadow .3s!important;background:transparent;}
.nav.on{background:var(--navy)!important;box-shadow:0 2px 24px rgba(0,0,0,.3)!important;}
.nav-in{display:flex!important;align-items:center!important;justify-content:space-between!important;height:72px!important;}

/* Logo */
.logo{display:flex!important;align-items:center!important;}
.logo img{width:auto!important;height:56px!important;object-fit:contain!important;display:block!important;}

/* Nav links wrapper */
.nav-links{display:flex!important;align-items:center!important;gap:4px!important;}
.nav-links>a{color:rgba(255,255,255,.82)!important;font-size:14px;font-weight:600;padding:8px 14px;border-radius:4px;transition:color .2s!important;text-decoration:none!important;}
.nav-links>a:hover{color:#fff!important;}

/* Dropdown parent */
.nav-dd{position:relative!important;display:flex!important;align-items:center!important;}
.nav-dd>a{color:rgba(255,255,255,.82)!important;font-size:14px!important;font-weight:600!important;padding:8px 14px!important;border-radius:4px!important;transition:color .2s!important;display:flex!important;align-items:center!important;gap:6px!important;text-decoration:none!important;}
.nav-dd>a:hover{color:#fff!important;}
.nav-dd>a::after{content:''!important;width:0!important;height:0!important;border-left:4px solid transparent!important;border-right:4px solid transparent!important;border-top:5px solid rgba(255,255,255,.5)!important;transition:transform .2s!important;}
.nav-dd:hover>a::after{transform:rotate(180deg)!important;}

/* Dropdown panel */
.nav-drop{visibility:hidden!important;opacity:0!important;pointer-events:none!important;position:absolute!important;top:100%!important;left:0!important;padding-top:8px!important;z-index:300!important;min-width:220px!important;transition:opacity .15s!important;}
.nav-dd:hover .nav-drop{visibility:visible!important;opacity:1!important;pointer-events:all!important;}
.nav-drop-inner{background:#fff!important;box-shadow:0 6px 28px rgba(0,0,0,.16)!important;padding:6px 0!important;overflow:visible!important;position:static!important;}
.nav-drop-inner>a{display:block!important;color:var(--navy)!important;font-size:13px!important;font-weight:600!important;padding:11px 18px!important;text-decoration:none!important;white-space:nowrap!important;transition:background .12s,color .12s!important;}
.nav-drop-inner>a:hover{background:var(--off)!important;color:var(--teal)!important;}

/* Residential flyout row */
.nav-res-row{display:flex!important;align-items:stretch!important;position:relative!important;z-index:1!important;}
.nav-res-row>a{flex:1!important;color:var(--navy)!important;font-size:13px!important;font-weight:600!important;padding:11px 18px!important;text-decoration:none!important;white-space:nowrap!important;transition:background .12s,color .12s!important;}
.nav-res-row:hover>a{background:var(--off)!important;color:var(--teal)!important;}
.nav-res-arrow{display:flex!important;align-items:center!important;padding:0 12px!important;border-left:1px solid var(--border)!important;color:var(--teal)!important;font-size:16px!important;font-weight:700!important;}
.nav-res-children{visibility:hidden!important;opacity:0!important;position:absolute!important;top:0!important;left:100%!important;min-width:190px!important;padding-left:4px!important;z-index:302!important;transition:opacity .15s!important;}
.nav-res-row:hover .nav-res-children{visibility:visible!important;opacity:1!important;}
.nav-res-children-inner{background:#fff!important;box-shadow:0 6px 28px rgba(0,0,0,.14)!important;padding:6px 0!important;}
.nav-res-children-inner a{display:block!important;padding:10px 18px!important;font-size:13px!important;font-weight:500!important;color:var(--navy)!important;text-decoration:none!important;white-space:nowrap!important;transition:background .12s,color .12s!important;}
.nav-res-children-inner a:hover{background:var(--off)!important;color:var(--teal)!important;}

/* Nav CTA button */
.nav-cta-btn{background:var(--amber)!important;color:var(--navy)!important;font-size:14px!important;font-weight:700!important;border:none!important;padding:11px 22px!important;border-radius:4px!important;margin-left:8px!important;font-family:'Montserrat',sans-serif!important;cursor:pointer!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;transition:background .2s!important;}
.nav-cta-btn:hover{background:#d9822e!important;color:var(--navy)!important;}

/* Hamburger */
.hamburger{display:none!important;flex-direction:column!important;gap:5px!important;background:none!important;border:none!important;padding:4px!important;cursor:pointer!important;position:relative!important;z-index:401!important;}
.hamburger span{display:block!important;width:24px!important;height:2px!important;background:#fff!important;border-radius:2px!important;transition:transform .25s,opacity .25s!important;}

/* ============================================================
   FOOTER
============================================================ */
.footer{background:#050d1e!important;padding:60px 0 28px!important;}
.ft-top{display:grid!important;grid-template-columns:1.8fr 1.2fr 1fr 1.2fr!important;gap:40px!important;margin-bottom:48px!important;}

/* Brand column */
.ft-brand{}
.ft-logo{margin-bottom:16px!important;}
.ft-logo img{width:auto!important;height:40px!important;object-fit:contain!important;}
.ft-desc{color:rgba(255,255,255,.85)!important;font-size:15px!important;line-height:1.75!important;margin-bottom:22px!important;}

/* Accreditation badges */
.ft-acc-row{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:14px!important;}
.ft-acc{height:90px!important;border-radius:8px!important;overflow:hidden!important;background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.15)!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.ft-acc a{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;}
.ft-acc img{width:100%!important;height:100%!important;object-fit:contain!important;padding:8px!important;}

/* Footer columns */
.ft-col h5{color:#fff!important;font-size:12px!important;font-weight:700!important;letter-spacing:1.5px!important;text-transform:uppercase!important;margin-bottom:20px!important;}
.ft-col a{display:block;color:rgba(255,255,255,.85)!important;font-size:15px!important;text-decoration:none!important;margin-bottom:11px!important;transition:color .2s!important;}
.ft-col a:hover{color:#fff!important;}

/* Contact items */
.ft-ci{display:flex!important;gap:8px!important;color:rgba(255,255,255,.9)!important;font-size:15px!important;margin-bottom:11px!important;align-items:flex-start!important;}
.ft-ci svg{width:14px!important;height:14px!important;min-width:14px!important;stroke:var(--teal)!important;fill:none!important;stroke-width:2!important;margin-top:2px!important;}
.ft-ci a{color:rgba(255,255,255,.9)!important;text-decoration:none!important;transition:color .2s!important;}
.ft-ci a:hover{color:#fff!important;}

/* Social icons */
.ft-soc{display:flex!important;gap:10px!important;margin-top:18px!important;}
.ft-soc-btn{width:42px!important;height:42px!important;background:rgba(255,255,255,.12)!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:background .2s!important;text-decoration:none!important;}
.ft-soc-btn:hover{background:rgba(94,177,191,.3)!important;}
.ft-soc-btn svg{width:20px!important;height:20px!important;stroke:#fff!important;fill:none!important;stroke-width:2!important;}

/* Divider */
.ft-div{border:none!important;border-top:1px solid rgba(255,255,255,.07)!important;margin-bottom:22px!important;}

/* Bottom bar */
.ft-bot{display:flex!important;justify-content:space-between!important;align-items:center!important;flex-wrap:wrap!important;gap:10px!important;}
.ft-bot p, .ft-bot a{color:rgba(255,255,255,.6)!important;font-size:13px!important;}
.ft-bot-links{display:flex!important;gap:24px!important;}
.ft-bot-links a{color:rgba(255,255,255,.6)!important;font-size:13px!important;text-decoration:none!important;transition:color .2s!important;}
.ft-bot-links a:hover{color:#fff!important;}
/* Footer nav — bare li items (no ul wrapper) */
.ft-col li{list-style:none !important;margin:0 !important;padding:0 !important;}
.ft-col li::before{display:none !important;}
.ft-col li::marker{display:none !important;}

/* ============================================================
   RESPONSIVE
============================================================ */
@media(max-width:1024px){
  :root{--g:40px;}
  .ft-top{grid-template-columns:1fr 1fr!important;}
}

@media(max-width:1000px){
	.nav-links{display:none!important;}
	  .nav-cta-btn{display:none!important;}
  .hamburger{display:flex!important;}
}

@media(max-width:660px){
  :root{--g:22px;}
  

  .ft-top{grid-template-columns:1fr 1fr!important;}
  .ft-brand{grid-column:1/-1!important;}
  .ft-top .ft-col:last-child{grid-column:1/-1!important;}
  .ft-acc-row{grid-template-columns:repeat(2,1fr)!important;}
  .ft-bot {

 
    flex-wrap: wrap-reverse!important;
    text-align: center;
justify-content: center !important;
}

.ft-bot-links {

    justify-content: center;
}
}