/*
Theme Name: AirFluxDrones v10.9.5
Theme URI: https://airfluxdrones.com
Author: AirFluxDrones + ChatGPT
Description: Custom theme with sunrise hero, detailed services, Portfolio visual placeholders, CF7 contact template, and footer updates.
Version: 10.9.5
Text Domain: airfluxdrones
*/

:root{ --afd-blue:#167DFF; --afd-dark:#0f1b2d; --afd-light:#f5f7fb; }

*{box-sizing:border-box;} html,body{margin:0;padding:0;}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.6;color:#1c2130;background:#fff;}
.wrapper{max-width:1200px;margin:0 auto;padding:0 24px;}
a{color:var(--afd-blue);text-decoration:none;} a:hover{text-decoration:underline;}

/* Header */
.site-header{background:rgba(255,255,255,.9);backdrop-filter:saturate(160%) blur(8px);position:sticky;top:0;z-index:9999;border-bottom:1px solid #e9eef7;}
.site-header .wrapper{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;}
.brand{display:flex;align-items:center;gap:12px;}
.custom-logo,.brand img{max-height:180px;width:auto;height:auto;display:inline-block;transition:max-height .25s ease;}
.site-header.solid .custom-logo,.site-header.solid .brand img{max-height:150px;}
@media(min-width:1024px){
  .custom-logo,.brand img{max-height:240px;}
  .site-header.solid .custom-logo,.site-header.solid .brand img{max-height:200px;}
}

/* Nav */
nav.primary ul{list-style:none;display:flex;gap:18px;margin:0;padding:0;}
nav.primary a{color:#0f1b2d;font-weight:600;text-decoration:none;}
.menu-toggle{position:relative;width:36px;height:28px;display:none;background:transparent;border:none;padding:0;cursor:pointer;}
.menu-toggle .bar{position:absolute;left:0;right:0;height:3px;background:#0f1b2d;border-radius:2px;transform-origin:center;transition:transform .25s, opacity .2s, top .25s;}
.menu-toggle .bar:nth-child(1){top:5px;} .menu-toggle .bar:nth-child(2){top:12.5px;} .menu-toggle .bar:nth-child(3){top:20px;}
.menu-toggle.open .bar:nth-child(1){transform:rotate(45deg); top:12.5px;}
.menu-toggle.open .bar:nth-child(2){opacity:0;}
.menu-toggle.open .bar:nth-child(3){transform:rotate(-45deg); top:12.5px;}
@media(max-width:880px){
  .menu-toggle{display:inline-block;}
  nav.primary{position:fixed;left:0;right:0;top:156px;background:#fff;border-top:1px solid #e9eef7;display:none;z-index:9990;box-shadow:0 8px 18px rgba(0,0,0,.06);}
  nav.primary.open{display:block;}
  nav.primary ul{flex-direction:column;}
  nav.primary a{display:block;padding:12px 20px;color:#0f1b2d;}
}

.main-spacer{height:10px;}

/* Hero */
.hero{
  position:relative;color:#fff;min-height:58vh;display:flex;align-items:center;padding:28px 0;
  background:
    linear-gradient(rgba(0,76,153,0.45), rgba(0,76,153,0.45)),
    url('assets/hero.jpg') center center/cover no-repeat;
  overflow:hidden;
}
.hero h1{font-size:clamp(32px,6vw,56px);margin:.1em 0 .2em;line-height:1.05;text-shadow:0 2px 6px rgba(0,0,0,.35);}
.hero p{max-width:760px;font-size:18px;opacity:.98;text-shadow:0 1px 4px rgba(0,0,0,.30);}
.hero .cta{display:flex;gap:14px;margin-top:22px;flex-wrap:wrap;}
.hero .cta a{display:inline-block;padding:12px 18px;border-radius:10px;font-weight:700;}
.hero .cta .primary{background:var(--afd-blue);color:#fff;}
.hero .cta .secondary{border:2px solid rgba(255,255,255,.25);color:#e8f1ff;}

/* Sections */
.section{padding:40px 0;} .section.alt{background:var(--afd-light);}
.section h2{font-size:clamp(26px,4vw,34px);margin:0 0 16px;}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;}
.card{background:#fff;border:1px solid #e5e9f2;border-radius:12px;padding:12px;box-shadow:0 2px 6px rgba(0,0,0,.04);}

/* Form */
.afd-form{background:#fff;border:1px solid #e5e9f2;border-radius:12px;padding:10px;}
.afd-form label{display:block;font-weight:600;margin:6px 0 2px;}
.afd-form input,.afd-form select,.afd-form textarea{width:100%;padding:6px 8px;border:1px solid #dfe6f1;border-radius:8px;font-size:15px;}
.afd-form textarea{min-height:64px;resize:vertical;}
.afd-form .consent-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px;}
.afd-form .consent-group label{font-size:12px;opacity:.9;margin:0;font-weight:500;}
.afd-form button{margin-top:6px;display:inline-block;background:var(--afd-blue);color:#fff;padding:12px 16px;border-radius:10px;font-weight:700;border:none;cursor:pointer;}
.afd-form .afd-alert{margin-top:10px;font-size:14px;display:none;}
.afd-form .afd-alert.ok{color:#116329;} .afd-form .afd-alert.err{color:#b00202;}

/* Footer */
.site-footer{background:#fafbff;border-top:1px solid #e9eef7;padding:28px 0;margin-top:20px;}
.contact-list{list-style:none;padding:0;margin:0;}
.contact-list li{margin:4px 0;}
.ico-ig{display:inline-block;width:16px;height:16px;background:url('assets/instagram.svg') no-repeat center/contain;vertical-align:-2px;margin-right:6px;opacity:.9}

/* Portfolio tiles */
.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:12px;}
.portfolio-card{position:relative;border-radius:12px;overflow:hidden;border:1px solid #e5e9f2;box-shadow:0 2px 6px rgba(0,0,0,.04);background:#fff;}
.portfolio-card img{display:block;width:100%;height:200px;object-fit:cover;filter:saturate(0.9) contrast(1.02);}
.portfolio-card .title{position:absolute;left:12px;bottom:12px;background:rgba(0,0,0,.45);color:#fff;padding:6px 10px;border-radius:8px;font-weight:700;font-size:14px;}
.portfolio-card:hover img{transform:scale(1.02);transition:transform .25s ease;}
.portfolio-cta{margin-top:22px;text-align:center;}
.portfolio-cta a{display:inline-block;background:var(--afd-blue);color:#fff;padding:12px 18px;border-radius:10px;font-weight:700;text-decoration:none;}
