:root {
    --blue: #3978c9;
    --deep: #18345c;
    --ice: #f4f8ff;
    --text: #24334a;
    --muted: #71809a;
    --white: #ffffff;
    --line: #dce8f7;
  }
  
  
  /* =========================
     RESET
  ========================= */
  
  * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  
  
  html {
    scroll-behavior: smooth;
  }
  
  
  body {
    font-family: Inter, system-ui, -apple-system,
      BlinkMacSystemFont, "Segoe UI", sans-serif;
  
    color: var(--text);
  
    background: linear-gradient(
      180deg,
      #ffffff 0%,
      #f7fbff 100%
    );
  
    line-height: 1.6;
  }
  
  
  a {
    text-decoration: none;
    color: inherit;
  }
  
  
  /* =========================
     NAVBAR
  ========================= */
  
  .nav {
    position: sticky;
    top: 0;
  
    z-index: 10;
  
    background: rgba(255, 255, 255, 0.86);
  
    backdrop-filter: blur(14px);
  
    border-bottom: 1px solid var(--line);
  }
  
  
  .nav-inner {
    max-width: 1100px;
  
    margin: auto;
  
    padding: 16px 24px;
  
    display: flex;
  
    justify-content: space-between;
  
    align-items: center;
  }
  
  
  .logo {
    font-weight: 800;
  
    color: var(--deep);
  
    letter-spacing: 0.04em;
  }
  
  
  .links {
    display: flex;
  
    gap: 24px;
  
    font-size: 14px;
  
    color: var(--muted);
  }
  
  
  .links a {
    transition: 0.2s;
  }
  
  
  .links a:hover {
    color: var(--blue);
  }
  
  
  /* =========================
     HERO
  ========================= */
  
  .hero {
    max-width: 1100px;
  
    margin: auto;
  
    padding: 86px 24px 70px;
  
    display: grid;
  
    grid-template-columns: 1.1fr 0.9fr;
  
    gap: 60px;
  
    align-items: center;
  }
  
  
  .eyebrow {
    color: var(--blue);
  
    font-weight: 700;
  
    letter-spacing: 0.12em;
  
    text-transform: uppercase;
  
    font-size: 12px;
  }
  
  
  h1 {
    font-size: clamp(44px, 7vw, 76px);
  
    line-height: 1.02;
  
    color: var(--deep);
  
    margin: 12px 0 20px;
  }
  
  
  .hero p {
    font-size: 18px;
  
    color: var(--muted);
  
    max-width: 620px;
  }
  
  
  /* =========================
     CHIPS
  ========================= */
  
  .chips {
    display: flex;
  
    flex-wrap: wrap;
  
    gap: 9px;
  
    margin-top: 25px;
  }
  
  
  .chip {
    padding: 7px 12px;
  
    background: #eaf3ff;
  
    color: #356aa9;
  
    border-radius: 999px;
  
    font-size: 13px;
  }
  
  
  /* =========================
     FOTO
  ========================= */
  
  .photo {
    min-height: 180px;
  
    border: 2px dashed #9dbfe9;
  
    border-radius: 32px;
  
    background:
      radial-gradient(
        circle at 25% 20%,
        #e5f1ff 0 13%,
        transparent 14%
      ),
      linear-gradient(
        145deg,
        #f0f7ff,
        #ffffff
      );
  
    display: flex;
  
    align-items: center;
  
    justify-content: center;
  
    color: #6e8db4;
  
    text-align: center;
  
    padding: 30px;
  
    box-shadow:
      0 20px 60px rgba(
        52,
        103,
        166,
        0.10
      );
  }
  
  
  .photo span {
    font-size: 14px;
  }
  
  
  .photo b {
    display: block;
  
    font-size: 42px;
  
    color: #9bb9dc;
  
    margin-bottom: 8px;
  }
  
  
  /* =========================
     SEÇÕES
  ========================= */
  
  section {
    max-width: 1100px;
  
    margin: auto;
  
    padding: 70px 24px;
  }
  
  
  .section-head {
    display: flex;
  
    justify-content: space-between;
  
    align-items: end;
  
    gap: 20px;
  
    margin-bottom: 28px;
  }
  
  
  h2 {
    font-size: 34px;
  
    color: var(--deep);
  }
  
  
  .section-head p {
    color: var(--muted);
  
    max-width: 520px;
  }
  
  
  /* =========================
     SOBRE
  ========================= */
  
  .about {
    display: grid;
  
    grid-template-columns:
      repeat(3, 1fr);
  
    gap: 16px;
  }
  
  
  .info {
    background: #ffffff;
  
    border: 1px solid var(--line);
  
    border-radius: 20px;
  
    padding: 22px;
  
    box-shadow:
      0 12px 35px rgba(
        45,
        85,
        130,
        0.06
      );
  }
  
  
  .info small {
    color: var(--muted);
  
    display: block;
  
    margin-bottom: 5px;
  }
  
  
  .info strong {
    color: var(--deep);
  }
  
  
  /* =========================
     PROJETOS
  ========================= */
  
  .projects {
    display: grid;
  
    grid-template-columns:
      repeat(2, 1fr);
  
    gap: 20px;
  }
  
  
  .card {
    background: #ffffff;
  
    border: 1px solid var(--line);
  
    border-radius: 24px;
  
    overflow: hidden;
  
    transition: 0.25s;
  
    box-shadow:
      0 14px 40px rgba(
        45,
        85,
        130,
        0.06
      );
  }
  
  
  .card:hover {
    transform: translateY(-5px);
  
    box-shadow:
      0 20px 50px rgba(
        45,
        85,
        130,
        0.12
      );
  }
  
  
  /* =========================
     PREVIEW
  ========================= */
  
  .preview {
    height: 190px;
  
    background:
      linear-gradient(
        135deg,
        #dcecff,
        #f9fbff
      );
  
    display: flex;
  
    align-items: center;
  
    justify-content: center;
  
    color: #7d9bc0;
  
    font-weight: 700;
  }
  
  
  .preview.design {
    background:
      linear-gradient(
        135deg,
        #eaf5ff,
        #eef0ff
      );
  }
  
  
  /* =========================
     CARD
  ========================= */
  
  .card-body {
    padding: 22px;
  }
  
  
  .card h3 {
    color: var(--deep);
  
    font-size: 20px;
  }
  
  
  .card p {
    color: var(--muted);
  
    font-size: 14px;
  
    margin: 8px 0 16px;
  }
  
  
  /* =========================
     TAGS
  ========================= */
  
  .tag {
    font-size: 12px;
  
    color: #3978c9;
  
    background: #edf5ff;
  
    padding: 5px 9px;
  
    border-radius: 8px;
  
    margin-right: 5px;
  }
  
  
  /* =========================
     BOTÃO
  ========================= */
  
  .btn {
    display: inline-block;
  
    margin-top: 17px;
  
    background: var(--blue);
  
    color: white;
  
    padding: 9px 15px;
  
    border-radius: 10px;
  
    font-size: 13px;
  
    font-weight: 700;
  
    transition: 0.2s;
  }
  
  
  .btn:hover {
    transform: translateY(-2px);
  
    opacity: 0.9;
  }
  
  
  /* =========================
     CONTATO
  ========================= */
  
  .contact {
    background: var(--deep);
  
    color: #ffffff;
  
    border-radius: 30px;
  
    padding: 45px;
  }
  
  
  .contact h2 {
    color: #ffffff;
  }
  
  
  .contact p {
    color: #d4e1f2;
  
    margin: 8px 0 18px;
  }
  
  
  .contact a {
    color: #9ed0ff;
  }
  
  
  /* =========================
     FOOTER
  ========================= */
  
  footer {
    text-align: center;
  
    padding: 35px 20px;
  
    color: var(--muted);
  
    font-size: 13px;
  }
  
  
  /* =========================
     RESPONSIVIDADE
  ========================= */
  
  @media (max-width: 760px) {
  
    .links {
      display: none;
    }
  
  
    .hero {
      grid-template-columns: 1fr;
  
      padding-top: 55px;
    }
  
  
    .photo {
      min-height: 210px;
    }
  
  
    .about,
    .projects {
      grid-template-columns: 1fr;
    }
  
  
    .section-head {
      display: block;
    }
  
  
    .section-head p {
      margin-top: 8px;
    }
  
  }
  