/* Theme Name: ADRZ Energy
Theme URI: https://adrzenergy.com.br
Author: ADRZ
Description: Tema institucional ADRZ Energy
Version: 1.0
*/

:root{
  --deep-blue:#003366;
  --energy-green:#00CC99;
  --dark:#222;
}

/* ---------- Layout básicos ---------- */
*{box-sizing:border-box}
body{font-family:'Open Sans',sans-serif;color:#333;background:#f5f7fa;line-height:1.6}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.section-title{text-align:center;margin-bottom:28px}
.section-title h2{font-family:'Montserrat',sans-serif;font-size:2rem;color:var(--deep-blue)}
.btn{display:inline-block;background:var(--energy-green);color:#fff;padding:12px 20px;border-radius:50px;text-decoration:none;font-weight:700;border:2px solid var(--energy-green);transition:.2s}
.btn:hover{background:transparent;color:var(--energy-green)}

/* Header/Footer (mínimo para manter o padrão) */
.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(135deg,var(--deep-blue),var(--energy-green));padding:14px 0;color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.logo{font-family:'Montserrat',sans-serif;font-weight:700;color:#fff;text-decoration:none;font-size:24px}
.logo span{color:var(--energy-green);margin-left:4px}
.menu{list-style:none;display:flex;gap:24px}
.menu a{color:#fff;text-decoration:none;font-weight:600}
.menu a:hover{color:#d6fff2}

.site-footer{background:var(--deep-blue);color:#fff;padding:50px 0 30px}
.footer-content{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:30px}
.footer-logo{font-family:'Montserrat',sans-serif;font-size:20px;color:#fff;text-decoration:none}
.footer-links h3{font-family:'Montserrat',sans-serif;margin-bottom:12px}
.footer-links ul{list-style:none;padding:0;margin:0}
.footer-links a{color:#e7eef6;text-decoration:none}
.footer-links a:hover{color:var(--energy-green)}
.social-icons{display:flex;gap:10px;margin-top:10px}
.social-icons a{color:#fff;opacity:.9}
.social-icons a:hover{opacity:1}
.copyright{text-align:center;border-top:1px solid rgba(255,255,255,.15);padding-top:18px}

/* ---------- Contact (glass) ---------- */
.contact{position:relative;padding:90px 0;background:
  radial-gradient(1200px 600px at 10% 0%, rgba(0,204,153,.08), transparent 60%),
  radial-gradient(900px 500px at 100% 40%, rgba(0,51,102,.10), transparent 60%),
  linear-gradient(180deg,#ffffff 0%,#f5f7fa 100%);overflow:hidden}
.contact-sub{color:#5f7080;margin-top:10px}
.contact-grid{display:grid;grid-template-columns:1.2fr .9fr;gap:32px}
@media (max-width:980px){.contact-grid{grid-template-columns:1fr}}

.contact-card{position:relative;background:rgba(255,255,255,.78);backdrop-filter:blur(8px);
  border:1px solid rgba(0,0,0,.05);border-radius:16px;padding:28px;box-shadow:0 12px 32px rgba(0,0,0,.06)}
.card-title{display:flex;align-items:center;gap:10px;font-family:'Montserrat',sans-serif;font-weight:700;color:var(--deep-blue);margin:0 0 18px}
.card-title i{color:var(--energy-green)}

.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:720px){.form-row{grid-template-columns:1fr}}

.form-group{margin-bottom:16px}
.form-group label{display:block;font-weight:600;font-size:.95rem;color:#34495e;margin-bottom:8px}

.input-wrap{position:relative}
.input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#8aa2b2;font-size:14px;pointer-events:none}
.input-wrap input,.input-wrap select,.input-wrap textarea{
  width:100%;border:1.5px solid #e3e9ef;border-radius:12px;padding:12px 14px 12px 36px;background:#fff;color:#2f3a45;font-size:1rem;transition:box-shadow .2s,border-color .2s,transform .06s}
.input-wrap textarea{padding-top:12px;min-height:120px;resize:vertical}
.input-wrap input:focus,.input-wrap select:focus,.input-wrap textarea:focus{outline:0;border-color:var(--energy-green);box-shadow:0 0 0 4px rgba(0,204,153,.15)}
.input-wrap input:hover,.input-wrap select:hover,.input-wrap textarea:hover{border-color:#c9d6e2}

.btn-primary{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,var(--deep-blue),#056aa3);border:none;color:#fff;font-weight:700;letter-spacing:.2px;padding:14px 22px;border-radius:12px;cursor:pointer;box-shadow:0 10px 20px rgba(0,51,102,.18);transition:transform .08s,box-shadow .2s,filter .2s}
.btn-primary:hover{filter:brightness(1.03);box-shadow:0 14px 28px rgba(0,51,102,.22)}
.btn-primary:active{transform:translateY(1px)}

.contact-info .info-item{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.06)}
.contact-info .info-item:last-child{border-bottom:none}
.info-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(0,204,153,.10);color:var(--energy-green)}
.info-content h4{margin:0 0 6px;font-weight:700;color:var(--deep-blue)}
.info-content p a{color:#2f3a45;text-decoration:none}
.info-content p a:hover{color:var(--energy-green)}

.social-links{margin-top:20px}
.social-links h4{margin-bottom:10px;color:var(--deep-blue)}
.social-icons a{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e3e9ef;color:#7a8d9a;transition:transform .08s,box-shadow .2s,color .2s,border-color .2s}
.social-icons a:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.08);border-color:var(--energy-green);color:var(--energy-green)}
.social-icons a.wa:hover{color:#25D366;border-color:#25D366}
.social-icons a.ig:hover{color:#E1306C;border-color:#E1306C}
.social-icons a.li:hover{color:#0A66C2;border-color:#0A66C2}
.social-icons a.fb:hover{color:#1877F2;border-color:#1877F2}

/* ---------- Modal ---------- */
.modal.hidden{display:none}
.modal{position:fixed;inset:0;z-index:999}
.modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.modal__card{position:relative;max-width:520px;margin:10vh auto;background:#fff;border-radius:16px;padding:22px;box-shadow:0 18px 40px rgba(0,0,0,.2)}
.modal__title{font-family:'Montserrat',sans-serif;margin:0 0 10px;color:var(--deep-blue)}
.modal__actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}
.btn.btn-secondary{background:#e9eef3;border:none;color:#1f2a33;padding:12px 18px;border-radius:10px}


/* Hero Section */ .hero { background: linear-gradient(rgba(0, 51, 102, 0.8), rgba(0, 204, 153, 0.8)), url('https://images.unsplash.com/photo-1473341304170-971dccb5ac1e?ixlib=rb-4.0.3') no-repeat center center/cover; height: 100vh; display: flex; align-items: center; text-align: center; color: var(--white); padding-top: 80px; } .hero-content { max-width: 800px; margin: 0 auto; }
.hero h1 { font-family: 'Montserrat', sans-serif; font-size: 3.5rem; margin-bottom: 20px; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); }
.hero p { font-size: 1.5rem; margin-bottom: 30px; } .btn { display: inline-block; background: var(--energy-green); color: var(--white); padding: 15px 30px; border-radius: 50px; text-decoration: none; font-weight: 600; font-size: 1.1rem; transition: all 0.3s; border: 2px solid var(--energy-green); }
.btn:hover { background: transparent; color: var(--energy-green); }


/* Sections */ section { padding: 80px 0; } .section-title { text-align: center; margin-bottom: 60px; } .section-title h2 { font-family: 'Montserrat', sans-serif; font-size: 2.5rem; color: var(--deep-blue); margin-bottom: 20px; position: relative; display: inline-block; } .section-title h2::after { content: ''; position: absolute; bottom: -10px; left: 50%; transform: translateX(-50%); width: 80px; height: 4px; background: var(--energy-green); }


/* CTA — ajustes de cor e espaçamento */
.cta{
  text-align:center;
  color:#fff;               /* deixa a frase branca também */
}

/* Título branco e sem margem extra */
.cta .section-title{ margin-bottom:16px; }
.cta .section-title h2{
  color:#fff;               /* título branco */
  margin:0;                 /* zera para controlar pelo underline */
}

/* Underline do título (fica logo abaixo, centralizado) */
.cta .section-title h2::after{
  content:'';
  display:block;
  width:96px;               /* largura da barrinha */
  height:4px;
  background:var(--energy-green);          /* underline branco */
  margin:12px auto 0;       /* espaço entre título e underline */
  position:static;          /* cancela o absolute da regra global */
  transform:none;
}

/* Frase da CTA: respiro antes do botão */
.cta p{
  color:#fff;
  max-width:780px;
  margin:16px auto 24px;    /* espaço entre underline → frase → botão */
  font-size:1.125rem;
  line-height:1.6;
}

/* Botão com pequeno respiro extra */
.cta .btn{ margin-top:4px; }

:root { --deep-blue: #003366; --energy-green: #00CC99; --white: #FFFFFF; --light-gray: #F5F7FA; --dark-gray: #333333; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Open Sans', sans-serif; color: var(--dark-gray); background-color: var(--light-gray); line-height: 1.6; } .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; } /* Header */ header { background: linear-gradient(135deg, var(--deep-blue) 0%, var(--energy-green) 100%); padding: 20px 0; position: fixed; width: 100%; top: 0; z-index: 1000; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); } .header-content { display: flex; justify-content: space-between; align-items: center; } .logo { font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: 28px; color: var(--white); text-decoration: none; display: flex; align-items: center; } .logo span { color: var(--energy-green); margin-left: 4px; } nav ul { display: flex; list-style: none; } nav ul li { margin-left: 30px; } nav ul li a { color: var(--white); text-decoration: none; font-weight: 600; font-size: 16px; transition: color 0.3s; } nav ul li a:hover { color: var(--energy-green); }




/* About */ .about-content { display: flex; align-items: center; gap: 40px; } .about-text { flex: 1; } .about-text h3 { font-family: 'Montserrat', sans-serif; font-size: 2rem; color: var(--deep-blue); margin-bottom: 20px; } .about-image { flex: 1; border-radius: 10px; overflow: hidden; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); } .about-image img { width: 100%; height: auto; display: block; } /* Services */ .services { background-color: var(--white); } .services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; } .service-card { background: var(--light-gray); border-radius: 10px; padding: 30px; text-align: center; transition: transform 0.3s, box-shadow 0.3s; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); } .service-card:hover { transform: translateY(-10px); box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1); } .service-icon { font-size: 3rem; color: var(--energy-green); margin-bottom: 20px; } .service-card h3 { font-family: 'Montserrat', sans-serif; font-size: 1.5rem; margin-bottom: 15px; color: var(--deep-blue); } /* Stats */ .stats { background: linear-gradient(135deg, var(--deep-blue) 0%, var(--energy-green) 100%); color: var(--white); text-align: center; } .stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 30px; } .stat-item h3 { font-family: 'Montserrat', sans-serif; font-size: 3rem; margin-bottom: 10px; } /* Process */ .process-steps { display: flex; justify-content: space-between; max-width: 1000px; margin: 0 auto; position: relative; } .process-steps::before { content: ''; position: absolute; top: 40px; left: 0; right: 0; height: 3px; background: var(--energy-green); z-index: 1; } .step { text-align: center; position: relative; z-index: 2; width: 200px; } .step-number { width: 80px; height: 80px; border-radius: 50%; background: var(--deep-blue); color: var(--white); display: flex; align-items: center; justify-content: center; font-size: 1.8rem; font-weight: 700; margin: 0 auto 20px; } /* CTA */ .cta { background: linear-gradient(rgba(0, 51, 102, 0.9), rgba(0, 51, 102, 0.9)), url('https://images.unsplash.com/photo-1509391366360-2e959784a276?ixlib=rb-4.0.3') no-repeat center center/cover; color: var(--white); text-align: center; padding: 100px 0; }



/* Suave por padrão */
html { scroll-behavior: smooth; }

/* Vamos usar a altura real do header via variável */
:root { --header-h: 72px; }
[id] { scroll-margin-top: calc(var(--header-h) + 12px); }

/* Acessibilidade: se o usuário prefere menos movimento */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

