/* header */
.nav-toggle{position:absolute;opacity:0;pointer-events:none}
.site-header{background:rgba(255,255,255,0.97);backdrop-filter:blur(8px);border-bottom:1px solid #E7EAE3;position:sticky;top:0;z-index:50;transition:background .35s ease,border-color .35s ease}
.site-header.is-overlay{background:transparent;border-bottom-color:transparent;position:fixed;top:0;left:0;right:0}
.site-header.is-overlay:not(.is-scrolled){box-shadow:none}
.site-header.is-scrolled{background:rgba(255,255,255,0.97);backdrop-filter:blur(8px);border-bottom:1px solid #E7EAE3}
.header-inner{max-width:1200px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand img{height:52px;width:auto;display:block}
.site-header.is-overlay:not(.is-scrolled) .brand{background:#FFFFFF;padding:5px 10px;box-shadow:0 8px 24px rgba(4,14,17,0.28);display:inline-flex}
.site-nav{display:flex;gap:22px;align-items:center}
.nav-link{text-decoration:none;font-weight:600;font-size:15px;color:#5C6F73}
.site-header.is-overlay:not(.is-scrolled) .nav-link{color:rgba(255,255,255,0.88)}
.nav-link:hover{color:#16282C}
.site-header.is-overlay:not(.is-scrolled) .nav-link:hover{color:#FFFFFF}
.nav-link.is-active{color:#16282C;font-weight:700;border-bottom:2px solid #C6D330;padding-bottom:2px}
.site-header.is-overlay:not(.is-scrolled) .nav-link.is-active{color:#FFFFFF}
.has-dropdown{position:relative}
.svc-toggle{position:absolute;opacity:0;pointer-events:none}
.svc-mobile{display:none;cursor:pointer;user-select:none}
.dropdown{position:absolute;top:100%;left:-12px;padding-top:10px;min-width:250px;display:none;flex-direction:column;background:#FFFFFF;border:1px solid #E7EAE3;border-radius:14px;box-shadow:0 24px 50px rgba(12,30,35,0.16);padding:10px}
@media(min-width:981px){.has-dropdown:hover .dropdown,.has-dropdown:focus-within .dropdown{display:flex}}
.dropdown a{text-decoration:none;font-weight:700;font-size:14px;color:#3A4A4E;padding:9px 14px;border-radius:9px}
.dropdown a:first-child{font-weight:800;font-size:13.5px;letter-spacing:0.05em;text-transform:uppercase;color:#16282C}
.dropdown a:hover{background:#F0F2E4;color:#16282C}
.dropdown-group{margin:12px 14px 4px;font-weight:800;font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:#9AA8AA}
.dropdown-group:first-of-type{margin-top:10px}
.nav-phone{text-decoration:none;font-weight:800;font-size:15px;color:#16282C;display:flex;align-items:center}
.site-header.is-overlay:not(.is-scrolled) .nav-phone{color:#FFFFFF}
.nav-wa{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(37,211,102,0.45);color:#25D366;flex-shrink:0;transition:color .3s ease,border-color .3s ease}
.site-header.is-overlay:not(.is-scrolled) .nav-wa{color:#FFFFFF;border-color:rgba(255,255,255,0.5)}
.nav-cta{text-decoration:none;background:#C6D330;color:#0C1E23;font-weight:800;font-size:14px;padding:11px 22px;border-radius:999px;white-space:nowrap}
.nav-cta:hover{background:#D5E145}
.burger{display:none;flex-direction:column;gap:5px;padding:12px 10px;border:1.5px solid #D9DED4;border-radius:10px;cursor:pointer}
.site-header.is-overlay:not(.is-scrolled) .burger{border-color:rgba(255,255,255,0.55)}
.burger span{display:block;width:20px;height:2.5px;background:#16282C;border-radius:2px}
.site-header.is-overlay:not(.is-scrolled) .burger span{background:#FFFFFF}
@media(max-width:980px){
  .burger{display:flex}
  .site-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#FFFFFF;border-bottom:1px solid #E7EAE3;box-shadow:0 22px 40px rgba(12,30,35,0.14);padding:8px 0 14px}
  .nav-toggle:checked~.site-header .site-nav{display:flex}
  .nav-toggle:checked~.site-header{background:rgba(255,255,255,0.97)}
  .nav-toggle:checked~.site-header .nav-link,.nav-toggle:checked~.site-header .nav-phone{color:#5C6F73}
  .nav-toggle:checked~.site-header .nav-link.is-active{color:#16282C}
  .site-nav>*{padding:13px 24px}
  .svc-desktop{display:none}
  .svc-mobile{display:flex;align-items:center;gap:5px}
  .dropdown{position:static;display:none;box-shadow:none;border:none;padding:0 0 4px 16px;min-width:0}
  .svc-toggle:checked~.dropdown{display:flex}
  .nav-phone{display:none}
  .nav-wa{margin:8px 24px;padding:0}
  .nav-cta{margin:10px 24px;text-align:center}
}

/* footer */
.site-footer{background:#081518;color:#B9C6C4}
.footer-grid{max-width:1200px;margin:0 auto;padding:56px 24px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:36px}
.footer-logo{height:52px;width:auto;display:block;background:#FFFFFF;padding:6px 12px;margin-bottom:18px}
.footer-blurb{margin:0 0 18px;font-size:13.5px;line-height:1.65;max-width:32ch}
.footer-social{display:flex;gap:12px}
.social-btn{display:inline-flex;width:36px;height:36px;border:1px solid rgba(255,255,255,0.2);border-radius:50%;align-items:center;justify-content:center;color:#B9C6C4;text-decoration:none}
.social-btn:hover{border-color:#C6D330;color:#C6D330}
.footer-handle{margin:14px 0 0;font-size:13px;color:#7B8C8F}
.footer-nav{display:flex;flex-direction:column;gap:10px}
.footer-nav h3{margin:0 0 6px;font-family:'Sora',sans-serif;font-size:14px;font-weight:600;color:#FFFFFF}
.footer-nav a{color:#B9C6C4;text-decoration:none;font-size:14px}
.footer-nav a:hover{color:#C6D330}
.footer-addr{margin:0;font-size:14px;line-height:1.6}
.footer-phone{color:#C6D330;text-decoration:none;font-size:14px;font-weight:700;display:block;margin:2px 0}
.footer-wa{color:#C6D330;text-decoration:none;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:7px}
.footer-email{color:#B9C6C4;text-decoration:none;font-size:14px}
.footer-email:hover{color:#C6D330}
.footer-legal-links{margin-top:8px;display:flex;flex-direction:column;gap:8px}
.footer-legal-links a{color:#7B8C8F;text-decoration:none;font-size:13px}
.footer-legal-links a:hover{color:#C6D330}
.footer-cookie-btn{background:none;border:none;padding:0;color:#7B8C8F;font-size:13px;font-family:'Manrope',sans-serif;cursor:pointer;text-align:left}
.footer-cookie-btn:hover{color:#C6D330}
.footer-family{max-width:1200px;margin:0 auto;padding:40px 24px 8px;display:flex;justify-content:center}
.footer-family img{max-width:680px;width:100%;height:auto}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.08);margin-top:28px}
.footer-bottom p{max-width:1200px;margin:0 auto;padding:18px 24px;font-size:12.5px;color:#7B8C8F;line-height:1.6;text-align:center}
.wa-fab{position:fixed;right:18px;bottom:18px;z-index:80;width:56px;height:56px;border-radius:50%;background:#25D366;color:#FFFFFF;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px rgba(4,14,17,0.35);text-decoration:none;transition:transform .2s ease}
.wa-fab:hover{transform:scale(1.06)}

/* about page photo placeholders (no real photos supplied yet) */
.photo-pending{position:absolute;inset:0;width:100%;height:100%;min-height:320px;background:linear-gradient(155deg,#0C1E23,#12333B);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}
.photo-pending p{margin:0;font-size:12.5px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#7E8C9A}

/* portfolio gallery toggle */
.gallery-chev{display:inline-block;margin-left:8px;transition:transform .25s ease}
.dch-1:hover{background:#D5E145}
.dch-2:hover{border-color:#C6D330;color:#C6D330}
.dch-3:hover{background:#12333B}
.dch-4:hover{background:#F6F6F1}
.dch-5:hover{background:#F6F6F1}
.dch-6:hover{background:#F6F6F1}
.dch-7:hover{color:#7E8C12;padding-left:14px}
.dch-8:hover{color:#7E8C12;padding-left:14px}
.dch-9:hover{color:#7E8C12;padding-left:14px}
.dch-10:hover{color:#7E8C12;padding-left:14px}
.dch-11:hover{background:#12333B}
.dch-12:hover{background:#D5E145}
.dch-13:hover{background:#12333B}
.dch-14:hover{background:#F6F6F1}
.dch-15:hover{background:#F6F6F1}
.dch-16:hover{background:#F6F6F1}
.dch-17:hover{color:#7E8C12;padding-left:14px}
.dch-18:hover{color:#7E8C12;padding-left:14px}
.dch-19:hover{color:#7E8C12;padding-left:14px}
.dch-20:hover{color:#7E8C12;padding-left:14px}
.dch-21:hover{color:#7E8C12;padding-left:14px}
.dch-22:hover{background:#12333B}
.dch-23:hover{background:#F0F2E4}
.dch-24:hover{background:#F0F2E4}
.dch-25:hover{background:#F0F2E4}
.dch-26:hover{background:#12333B}
.dch-27:hover{background:#12333B}
.dch-28:hover{background:#12333B}
.dch-29:hover{background:#12333B}
.dch-30:hover{background:#D5E145}
.dch-31:hover{background:#D5E145}
.dch-32:hover{background:#D5E145}
.dch-33:hover{background:#D5E145}
.dch-34:hover{background:#D5E145}
.dch-35:hover{background:#D5E145}
.dch-36:hover{background:#D5E145}
.dch-37:hover{background:#D5E145}
.dch-38:hover{background:#12333B}
.dch-39:hover{background:#D5E145}
.dch-40:hover{border-color:#AEBF1E}
.dch-41:hover{border-color:#25D366}
.dch-42:hover{border-color:#AEBF1E}
.dch-43:hover{background:#D5E145}
.dch-44:hover{background:#D5E145}
