body{margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:"Inter",system-ui,sans-serif;
    font-size:16px;
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;}
.bg-fx{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.blob-2{width:460px;height:460px;background:radial-gradient(circle, rgba(79,201,255,.35), transparent 70%);top:620px;left:-160px;}
.hero h1{font-size:clamp(30px,7.4vw,52px);
    font-weight:800;
    margin:16px 0 14px;
    letter-spacing:-0.01em;}
.hero-sub{font-size:16.5px;color:var(--text-muted);max-width:560px;margin:0 auto;}
.hero-photo-wrap{position:relative;max-width:360px;margin:0 auto;}
.hero-photo{position:relative;z-index:1;
    border-radius:22px;
    overflow:hidden;
    border:1px solid var(--border-strong);
    box-shadow:0 30px 70px -20px rgba(0,0,0,.7), 0 0 0 1px rgba(255,255,255,.02) inset;}
.hero-photo img{width:100%;display:block;
    filter:grayscale(.28) contrast(1.12) brightness(.94) saturate(1.05);}
.hero-photo::after{content:"";position:absolute;inset:0;
    background:linear-gradient(160deg, rgba(47,107,255,.38), transparent 45%),
               linear-gradient(0deg, rgba(5,7,13,.75), transparent 38%);
    mix-blend-mode:color-dodge;opacity:.5;pointer-events:none;}
.hero-photo::before{content:"";position:absolute;inset:0;
    background:linear-gradient(0deg, rgba(5,7,13,.92) 0%, transparent 30%);
    z-index:2;pointer-events:none;}
section{padding:64px 0;}
.section-head{text-align:center;max-width:600px;margin:0 auto 36px;}
.section-head h2{font-size:clamp(24px,5.6vw,34px);font-weight:800;letter-spacing:-0.01em;}
.cert-row{display:flex;gap:14px;margin-top:22px;flex-wrap:wrap;}
.cert-card{display:block;width:112px;border-radius:12px;overflow:hidden;
    border:1px solid var(--border-strong);
    box-shadow:0 14px 30px -14px rgba(0,0,0,.6);
    transition:transform .2s ease, border-color .2s ease;
  ;cursor:zoom-in;background:none;padding:0;font:inherit;}
.sobre-copy h2{font-size:clamp(23px,5.4vw,30px);font-weight:800;margin-bottom:16px;letter-spacing:-0.01em;}
.sobre-copy p{color:var(--text-muted);font-size:15.5px;margin-bottom:14px;}
.faq-item.open .faq-a{max-height:240px;}
.footer-grid{display:flex;flex-direction:column;gap:16px;align-items:center;text-align:center;}
@media (max-width:759px){
  header .brand{font-size:14px;}
}
@media (min-width:760px){
  .hero-grid{grid-template-columns:1.05fr .95fr;text-align:left;}
  .hero-photo-wrap{max-width:380px;margin:0;}
}