/* ============================================================
   PRATICANDO ENGENHARIA — Landing Page · PRJ · ELE 01
   ============================================================ */
/* cyrillic-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/jetbrains-mono-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/jetbrains-mono-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/jetbrains-mono-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/jetbrains-mono-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/jetbrains-mono-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/jetbrains-mono-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/jetbrains-mono-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/jetbrains-mono-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/jetbrains-mono-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/jetbrains-mono-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/jetbrains-mono-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/jetbrains-mono-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/jetbrains-mono-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/jetbrains-mono-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/jetbrains-mono-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/jetbrains-mono-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/jetbrains-mono-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/jetbrains-mono-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/jetbrains-mono-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/jetbrains-mono-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/jetbrains-mono-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/jetbrains-mono-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/jetbrains-mono-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/jetbrains-mono-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/manrope-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/manrope-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/manrope-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/manrope-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/manrope-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/manrope-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/manrope-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/manrope-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/manrope-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/manrope-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/manrope-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/manrope-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/manrope-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/manrope-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/manrope-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/manrope-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/manrope-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/manrope-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/manrope-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/manrope-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/manrope-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/manrope-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/manrope-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/manrope-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("fonts/manrope-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("fonts/manrope-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("fonts/manrope-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("fonts/manrope-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("fonts/manrope-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("fonts/manrope-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


:root{
  --navy:#0A2447; --navy-900:#061629; --navy-700:#0A2447; --navy-500:#1C3A63; --navy-300:#5A6F8C; --navy-100:#C9D2DF;
  --gold:#F5A623; --gold-700:#C77F12; --gold-300:#F8C36A; --gold-100:#FBE6C1;
  --paper:#F7F2E9; --paper-200:#EFE8D9; --paper-300:#E6DCC8;
  --white:#fff; --line:#E0D8C6; --line-navy:#1C3A63;
  --d-ele:#F5A623;
  --green:#1F8A4D;
  --ink:#0A2447; --muted:#5A6F8C;
  --maxw:1180px;
  --shadow:0 18px 50px rgba(10,36,71,.12);
  --shadow-lg:0 30px 70px rgba(10,36,71,.20);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:88px;}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:'Manrope',system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  line-height:1.5;
}
h1,h2,h3,h4,p{margin:0;}
a{color:inherit;text-decoration:none;}
.link-gold{color:var(--gold-700);font-weight:700;border-bottom:1px solid rgba(199,127,18,.35);transition:color .15s,border-color .15s;}
.link-gold:hover{color:var(--navy);border-color:var(--navy);}
.link-gold .arr{display:inline-block;transition:transform .15s;}
.link-gold:hover .arr{transform:translateX(3px);}
img,svg{display:block;}

/* layout */
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.section{padding:96px 0;}
.section--tight{padding:72px 0;}
.center{text-align:center;}

/* blueprint texture */
.blueprint-bg{
  background-color:var(--paper);
  background-image:radial-gradient(rgba(10,36,71,.07) 1.1px,transparent 1.1px);
  background-size:30px 30px;
}
.navy-bg{background:var(--navy);color:#fff;}
.navy-bg .lead,.navy-bg .body{color:var(--navy-100);}
.navy-bg .grid-bp{
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:46px 46px;
}

/* eyebrow / labels */
.eyebrow{
  font-family:'JetBrains Mono',monospace;font-size:13px;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;color:var(--gold-700);
  display:inline-flex;align-items:center;gap:11px;
}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--gold);}
.eyebrow--center{justify-content:center;}
.eyebrow--navy{color:var(--gold-300);}
.navy-bg .eyebrow{color:var(--gold-300);}

/* type scale */
.display{font-weight:800;font-size:clamp(38px,6vw,68px);line-height:1.02;letter-spacing:-.025em;color:var(--navy);}
.navy-bg .display{color:#fff;}
.h2{font-weight:800;font-size:clamp(28px,4vw,44px);line-height:1.05;letter-spacing:-.02em;color:var(--navy);}
.navy-bg .h2{color:#fff;}
.h3{font-weight:700;font-size:21px;line-height:1.2;letter-spacing:-.01em;color:var(--navy);}
.navy-bg .h3{color:#fff;}
.lead{font-weight:400;font-size:clamp(17px,2vw,20px);line-height:1.55;color:var(--navy-500);}
.body{font-weight:400;font-size:17.5px;line-height:1.65;color:var(--navy-500);}
.small{font-size:14.5px;line-height:1.5;color:var(--muted);}
strong,b{color:var(--navy);font-weight:700;}
.navy-bg strong,.navy-bg b{color:#fff;}
/* white cards inside navy sections keep navy bold text */
.navy-bg .pain strong,.navy-bg .price-box strong,.navy-bg .offer-body strong,.navy-bg .test strong{color:var(--navy);}
.gold{color:var(--gold-700);}
.navy-bg .gold{color:var(--gold);}

.section-head{display:flex;flex-direction:column;gap:18px;max-width:760px;}
.section-head.center{margin:0 auto;align-items:center;}

/* ---------- buttons ---------- */
.btn{
  font-family:'Manrope';font-weight:700;font-size:16px;border:0;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:11px;
  padding:17px 30px;border-radius:7px;letter-spacing:.005em;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  text-align:center;
}
.btn .arr{font-family:'JetBrains Mono',monospace;font-weight:700;transition:transform .15s ease;}
.btn:hover .arr{transform:translateX(4px);}
.btn--primary{background:var(--gold);color:var(--navy);box-shadow:0 10px 26px rgba(245,166,35,.34);}
.btn--primary:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(245,166,35,.44);}
.btn--navy{background:var(--navy);color:#fff;}
.btn--navy:hover{transform:translateY(-2px);background:var(--navy-500);}
.btn--ghost{background:transparent;color:var(--navy);border:1.5px solid var(--navy);}
.btn--ghost:hover{background:var(--navy);color:#fff;}
.navy-bg .btn--ghost{color:#fff;border-color:rgba(255,255,255,.5);}
.navy-bg .btn--ghost:hover{background:#fff;color:var(--navy);}
.btn--lg{font-size:17px;padding:19px 36px;}
.btn--block{width:100%;}

.cta-micro{font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.04em;color:var(--muted);display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.cta-micro .dot{width:5px;height:5px;border-radius:50%;background:var(--gold);}
.navy-bg .cta-micro{color:var(--navy-100);}

/* chips */
.chip{
  display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;
  font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  padding:8px 14px;border-radius:40px;border:1.5px solid var(--navy);color:var(--navy);background:rgba(255,255,255,.4);
}
.chip--gold{border-color:var(--gold);color:var(--gold-700);background:var(--gold-100);}
.chip .led{width:7px;height:7px;border-radius:50%;background:currentColor;animation:pulse 2s infinite;}
.navy-bg .chip{border-color:rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.06);}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.35;}}

/* ============================================================ HEADER */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(247,242,233,.85);backdrop-filter:blur(10px);
  border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s,background .2s;
}
.site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 6px 24px rgba(10,36,71,.06);}
.nav{display:flex;align-items:center;gap:24px;height:72px;}
.brand{display:flex;align-items:center;gap:13px;}
.brand .wm{display:flex;flex-direction:column;gap:2px;line-height:1;}
.brand .wm b{font-weight:800;font-size:15px;letter-spacing:-.01em;color:var(--navy);line-height:1.04;}
.brand .wm span{font-family:'JetBrains Mono',monospace;font-size:8.5px;font-weight:600;letter-spacing:.28em;color:var(--gold-700);}
.nav-links{display:flex;gap:26px;margin-left:auto;}
.nav-links a{font-size:14.5px;font-weight:600;color:var(--navy-500);transition:color .15s;}
.nav-links a:hover{color:var(--navy);}
.nav .btn{padding:11px 20px;font-size:14px;}
.nav-cta{margin-left:8px;}
.nav-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:38px;height:38px;border:1.5px solid var(--navy);border-radius:7px;background:transparent;cursor:pointer;flex:none;padding:0;}
.nav-toggle span{display:block;width:18px;height:2px;background:var(--navy);border-radius:2px;transition:transform .2s ease, opacity .2s ease;}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ============================================================ HERO */
.hero{position:relative;overflow:hidden;padding:74px 0 86px;}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:54px;align-items:center;}
.hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px;}
.hero h1{margin:0 0 22px;}
.hero .lead{max-width:38ch;margin-bottom:30px;}
.hero-cta{display:flex;flex-direction:column;gap:16px;align-items:flex-start;}
.hero-cta .btn-row{display:flex;gap:14px;flex-wrap:wrap;}
.hero-trust{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px;padding-top:26px;border-top:1px solid var(--line);}
.hero-trust .ti{display:flex;flex-direction:column;gap:3px;}
.hero-trust .ti b{font-weight:800;font-size:22px;color:var(--navy);font-family:'Manrope';}
.hero-trust .ti span{font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;}

/* hero visual: seal on blueprint card */
.hero-visual{position:relative;display:flex;align-items:center;justify-content:center;}
.hero-card{
  position:relative;width:100%;max-width:420px;aspect-ratio:1/1.04;
  background:var(--navy);border-radius:14px;box-shadow:var(--shadow-lg);
  display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.hero-card .grid-tex{position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:38px 38px;}
.hero-card .seal-wrap{position:relative;width:64%;filter:drop-shadow(0 12px 30px rgba(0,0,0,.4));}
.hero-card .seal-wrap [data-seal] svg{width:100%;height:auto;}
.hero-card .seal-disc{background:var(--white);border-radius:50%;padding:11%;}
.hero-card .corner{position:absolute;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.18em;color:var(--navy-100);}
.hero-card .c-tl{top:18px;left:20px;}
.hero-card .c-br{bottom:18px;right:20px;color:var(--gold);}
.hero-float{
  position:absolute;background:var(--white);border:1px solid var(--line);border-radius:10px;
  box-shadow:var(--shadow);padding:13px 16px;display:flex;align-items:center;gap:11px;
}
.hero-float .mono{font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.06em;color:var(--muted);}
.hero-float b{display:block;font-size:16px;color:var(--navy);}
.hero-float.f1{top:6%;right:-4%;}
.hero-float.f2{top:38%;left:-28%;bottom:auto;}
.hero-float .ic{width:34px;height:34px;border-radius:8px;background:var(--gold-100);display:flex;align-items:center;justify-content:center;flex:none;}

/* hero com foto: imagem no fundo, textura por cima, veu navy na base, selo virando carimbo */
.hero-photo-spacer{}
.hero-card--photo .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 26%;}
.hero-card--photo .grid-tex{opacity:.42;}
.hero-card--photo .hero-veil{position:absolute;inset:0;
  background:linear-gradient(to top,rgba(10,36,71,.90) 0%,rgba(10,36,71,.62) 16%,rgba(10,36,71,.10) 42%,rgba(10,36,71,.06) 70%,rgba(10,36,71,.42) 100%);}
.hero-card--photo .seal-wrap{position:absolute;left:10%;bottom:9%;width:29%;filter:drop-shadow(0 8px 20px rgba(0,0,0,.45));}
.hero-card--photo .c-tl{color:#fff;text-shadow:0 1px 6px rgba(6,22,41,.7);}
.hero-card--photo .c-br{text-shadow:0 1px 6px rgba(6,22,41,.7);}

/* ============================================================ MARQUEE / strip */
.strip{background:var(--navy);color:#fff;padding:18px 0;overflow:hidden;}
.strip-track{display:flex;gap:50px;align-items:center;white-space:nowrap;animation:scroll 28s linear infinite;width:max-content;}
.strip-track span{font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--navy-100);display:inline-flex;align-items:center;gap:50px;}
.strip-track span::after{content:"◆";color:var(--gold);font-size:9px;}
@keyframes scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ============================================================ VALUE / opening */
.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center;}
.value-text p+p{margin-top:16px;}
.value-note{margin-top:24px;}

/* generic note box */
.notebox{background:var(--gold-100);border:1px dashed var(--gold);border-radius:10px;padding:18px 20px;display:flex;gap:14px;}
.notebox .nb-tag{font-family:'JetBrains Mono',monospace;font-size:13px;font-weight:700;letter-spacing:.14em;color:var(--gold-700);text-transform:uppercase;flex:none;padding-top:2px;}
.notebox p{color:var(--navy);font-size:17px;font-weight:600;line-height:1.5;}

/* ============================================================ VITRINE (home)
   Cards de produto: um curso ou um painel. O card do que está aberto ganha a
   borda dourada; o que está em construção fica sóbrio, sem call to action. */
.vitrine{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch;}
.vitrine--dupla{grid-template-columns:repeat(2,1fr);max-width:840px;margin-inline:auto;}
.prod{
  display:flex;flex-direction:column;gap:14px;background:var(--white);border:1px solid var(--line);
  border-radius:14px;padding:28px 26px 26px;transition:transform .18s,box-shadow .18s,border-color .18s;
}
/* selo do produto: é ele que identifica a disciplina, então tem presença.
   Grande o bastante para o texto do carimbo ser legível. */
.prod-seal{width:148px;align-self:flex-start;}
@media (max-width:1080px){ .prod-seal{width:124px;} }
/* estado e código do produto dividem a mesma linha, logo abaixo do selo */
.prod-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.prod:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold-300);}
.prod--aberto{border-color:var(--gold);box-shadow:0 10px 34px rgba(245,166,35,.16);}
.prod--breve{background:transparent;border-style:dashed;}
.prod--breve:hover{transform:none;box-shadow:none;border-color:var(--line);}
.prod-topo{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.prod-seal{flex:none;}
.prod-seal svg{width:100%;height:auto;display:block;}

/* selo grande e solto, sem cartão atrás — carimbo sobre o papel */
.hero-selo{display:flex;align-items:center;justify-content:center;padding:8px 0;}
.hero-selo [data-seal]{width:min(100%,430px);}
.hero-selo [data-seal] svg{width:100%;height:auto;display:block;filter:drop-shadow(0 20px 44px rgba(10,36,71,.20));}
/* o balão fica no canto de baixo, onde o círculo do selo não passa */
.hero-selo .hero-float.f2{top:auto;bottom:-1%;left:-24%;}

/* hero da home: só texto, ocupando a largura inteira */
.hero-grid--solo{grid-template-columns:1fr;}
.hero-grid--solo .hero-text{max-width:none;}
.hero-grid--solo h1{max-width:20ch;font-size:clamp(46px,6.4vw,84px);}
.hero-grid--solo .lead{max-width:62ch;font-size:clamp(18px,1.6vw,22px);}
.hero-grid--solo .hero-trust{max-width:none;}
.hero-grid--solo .hero-trust .ti{flex:1 1 200px;}
.prod-status{
  font-family:'JetBrains Mono',monospace;font-size:10.5px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;padding:6px 11px;border-radius:40px;white-space:nowrap;
  border:1.5px solid var(--navy-300);color:var(--navy-300);
}
.prod-status--aberto{border-color:var(--gold);color:var(--gold-700);background:var(--gold-100);}
.prod-status--obra{border-color:var(--navy-300);color:var(--navy-300);}
.prod-cod{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;}
.prod h3{font-size:22px;font-weight:800;letter-spacing:-.01em;color:var(--navy);line-height:1.15;}
.prod p{font-size:15.5px;line-height:1.55;color:var(--muted);}
.prod-pe{margin-top:auto;padding-top:6px;}
@media (max-width:980px){
  .vitrine{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:680px){
  .vitrine,.vitrine--dupla{grid-template-columns:1fr;}
}

/* terminal block */
.term{background:var(--navy-900);border-radius:12px;padding:24px 26px;font-family:'JetBrains Mono',monospace;box-shadow:var(--shadow);}
.term .dots{display:flex;gap:7px;margin-bottom:16px;}
.term .dots i{width:11px;height:11px;border-radius:50%;display:block;}
.term .ln{color:#fff;font-size:14.5px;line-height:1.9;}
.term .ln .mut{color:var(--navy-300);}
.term .ln .gd{color:var(--gold);}
.term .ln .gr{color:#5BD08A;}

/* ============================================================ PAIN */
.pain-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:8px;}
.pain{display:flex;gap:15px;background:var(--white);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:8px;padding:20px 22px;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.pain:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--gold-300);}
.pain:hover .pi,.pain:active .pi{background:var(--gold-100);}
.pain:hover .pi svg,.pain:active .pi svg{filter:drop-shadow(0 0 4px rgba(245,166,35,.55));}
.pain .pi{flex:none;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--gold-700);color:var(--gold-700);display:flex;align-items:center;justify-content:center;transition:background .18s ease;}
.pain .pi svg{width:13px;height:13px;transition:filter .18s ease;}
.pain p{font-size:15.5px;line-height:1.5;color:var(--navy-500);}

/* ============================================================ SOLUTION */
.sol-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:54px;align-items:center;}
.flow{display:flex;flex-direction:column;gap:0;}
.flow-step{display:flex;gap:18px;position:relative;padding-bottom:26px;}
.flow-step:not(:last-child)::before{content:"";position:absolute;left:19px;top:42px;bottom:0;width:2px;background:linear-gradient(var(--gold),rgba(245,166,35,.15));}
.flow-step .fn{flex:none;width:40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-weight:700;font-size:14px;z-index:1;}
.flow-step.is-gold .fn{background:var(--gold);color:var(--navy);}
.flow-step .ft b{display:block;font-size:17px;color:var(--navy);font-weight:700;margin-bottom:3px;}
.flow-step .ft span{font-size:14.5px;color:var(--navy-500);line-height:1.45;}
.mechanism{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.mechanism .m{font-family:'JetBrains Mono',monospace;font-size:12.5px;font-weight:600;letter-spacing:.04em;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#fff;padding:9px 14px;border-radius:7px;}
.mechanism .m b{color:var(--gold);}

/* ============================================================ BENEFITS */
.ben-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.ben{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:26px;transition:transform .18s, box-shadow .18s, border-color .18s;}
.ben:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold-300);}
.ben .bi{width:46px;height:46px;border-radius:11px;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.ben .bi svg{width:24px;height:24px;}
.ben h4{font-size:17px;font-weight:700;color:var(--navy);margin-bottom:8px;line-height:1.25;}
.ben p{font-size:14.5px;color:var(--navy-500);line-height:1.55;}

/* ============================================================ SOCIAL PROOF */
.proof-stats{display:flex;justify-content:center;gap:0;flex-wrap:wrap;margin-bottom:48px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--white);}
.proof-stats .ps{flex:1;min-width:200px;padding:30px 28px;text-align:center;border-right:1px solid var(--line);}
.proof-stats .ps:last-child{border-right:0;}
.proof-stats .ps b{display:block;font-weight:800;font-size:40px;color:var(--navy);letter-spacing:-.02em;}
.proof-stats .ps b .pend{color:var(--gold);}
.proof-stats .ps span{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.test{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:26px;display:flex;flex-direction:column;gap:18px;}
.test .quote-mark{font-family:Georgia,serif;font-size:46px;line-height:.6;color:var(--gold);height:24px;}
.test p{font-size:15.5px;line-height:1.6;color:var(--navy);flex:1;}
.test .who{display:flex;align-items:center;gap:13px;padding-top:6px;border-top:1px solid var(--line);}
.test .av{width:44px;height:44px;border-radius:50%;background:var(--paper-300);border:1px dashed var(--navy-300);display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--navy-300);flex:none;}
.test .who b{font-size:14.5px;color:var(--navy);}
.test .who span{display:block;font-size:12.5px;color:var(--muted);}
.test .stars{color:var(--gold);font-size:14px;letter-spacing:2px;}

/* ============================================================ OFFER */
.offer-card{
  background:var(--white);border-radius:18px;box-shadow:var(--shadow-lg);
  overflow:hidden;max-width:760px;margin:0 auto;border:1px solid var(--line);
}
.offer-head{background:var(--navy);color:#fff;padding:32px 38px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.offer-head .oh-t b{display:block;font-size:23px;font-weight:800;letter-spacing:-.01em;}
.offer-head .oh-t span{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.16em;color:var(--gold-300);}
.offer-body{padding:34px 38px;}
.stack{display:flex;flex-direction:column;}
.stack-row{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);}
.stack-row:first-child{padding-top:0;}
.stack-row .ck{flex:none;width:24px;height:24px;border-radius:50%;background:var(--gold-100);color:var(--gold-700);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;margin-top:2px;}
.stack-row .sr-t{flex:1;}
.stack-row .sr-t b{display:block;font-size:16px;color:var(--navy);font-weight:700;}
.stack-row .sr-t span{font-size:13.5px;color:var(--muted);line-height:1.4;}
.stack-row .val{font-family:'JetBrains Mono',monospace;font-size:14px;color:var(--navy-300);font-weight:600;white-space:nowrap;}
.stack-total{display:flex;justify-content:space-between;align-items:center;padding:18px 0 4px;}
.stack-total span{font-size:15px;color:var(--navy-500);font-weight:600;}
.stack-total b{font-family:'JetBrains Mono',monospace;font-size:18px;color:var(--navy-300);text-decoration:line-through;text-decoration-color:var(--gold-700);}
.price-box{margin-top:24px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:28px;text-align:center;}
.price-box .pb-label{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-700);}
.price-box .pb-price{display:flex;align-items:flex-start;justify-content:center;gap:4px;margin:10px 0 4px;}
.price-box .pb-price .cur{font-size:26px;font-weight:700;color:var(--navy);margin-top:10px;}
.price-box .pb-price .num{font-size:74px;font-weight:800;line-height:.9;color:var(--navy);letter-spacing:-.03em;}
.price-box .pb-sub{font-size:14.5px;color:var(--navy-500);}
.price-box .pb-founder{margin-top:14px;display:inline-flex;align-items:center;gap:9px;background:var(--navy);color:#fff;border-radius:40px;padding:9px 18px;font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.06em;}
.price-box .pb-founder b{color:var(--gold);}
.price-box .btn{margin-top:22px;}
.pay-row{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:16px;flex-wrap:wrap;}
.pay-row span{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.06em;color:var(--muted);}

/* ============================================================ OBJECTIONS */
.obj-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.obj{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:24px 26px;}
.obj .oq{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px;}
.obj .oq .qm{flex:none;color:var(--gold-700);margin-top:1px;display:flex;}
.obj .oq b{font-size:16.5px;color:var(--navy);font-weight:700;line-height:1.3;}
.obj p{font-size:14.5px;color:var(--navy-500);line-height:1.6;padding-left:27px;}

/* ============================================================ GUARANTEE */
.guarantee{display:flex;align-items:center;gap:40px;background:var(--white);border:1px solid var(--line);border-radius:18px;padding:42px;box-shadow:var(--shadow);}
.guarantee .g-seal{flex:none;width:150px;height:150px;position:relative;display:flex;align-items:center;justify-content:center;}
.guarantee .g-seal .ring{position:absolute;inset:0;border:2px solid var(--navy);border-radius:50%;}
.guarantee .g-seal .ring.r2{inset:9px;border:1px solid var(--gold-700);border-style:dashed;}
.guarantee .g-seal .g-in{text-align:center;}
.guarantee .g-seal .g-in b{display:block;font-weight:800;font-size:42px;color:var(--navy);line-height:.9;}
.guarantee .g-seal .g-in span{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.18em;color:var(--gold-700);text-transform:uppercase;}
.guarantee .g-txt{flex:1;}

/* ============================================================ URGENCY */
.urg-wrap{max-width:820px;margin:0 auto;text-align:center;}
.ladder{display:flex;justify-content:center;gap:0;margin:36px 0 30px;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.16);}
.ladder .step{flex:1;padding:24px 18px;border-right:1px solid rgba(255,255,255,.16);position:relative;}
.ladder .step:last-child{border-right:0;}
.ladder .step.active{background:rgba(245,166,35,.14);}
.ladder .step .st-tag{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--navy-100);}
.ladder .step.active .st-tag{color:var(--gold);}
.ladder .step .st-price{font-weight:800;font-size:30px;color:#fff;margin-top:6px;letter-spacing:-.02em;}
.ladder .step .st-note{font-size:12px;color:var(--navy-100);margin-top:2px;}
.ladder .step.active .st-price{color:var(--gold);}
/* ============================================================ FAQ */
.faq-wrap{max-width:820px;margin:0 auto;}
.faq{border-bottom:1px solid var(--line);}
.faq summary{
  list-style:none;cursor:pointer;padding:22px 4px;display:flex;align-items:center;gap:16px;
  font-weight:700;font-size:17px;color:var(--navy);transition:color .15s;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary .q-ic{flex:none;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--navy-300);color:var(--navy);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;transition:transform .2s, background .2s, color .2s, border-color .2s;margin-left:auto;}
.faq[open] summary .q-ic{background:var(--gold) !important;border-color:var(--gold) !important;color:var(--navy) !important;}
.faq summary:hover{color:var(--gold-700);}
.faq .faq-a{padding:0 4px 24px 0;font-size:15.5px;line-height:1.65;color:var(--navy-500);max-width:64ch;}

/* ============================================================ FINAL CTA */
.final{position:relative;overflow:hidden;}
.final .choice{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:820px;margin:38px auto 36px;}
.final .choice .ch{border-radius:14px;padding:28px;border:1px solid rgba(255,255,255,.18);}
.final .choice .ch.stay{background:rgba(255,255,255,.04);}
.final .choice .ch.go{background:rgba(245,166,35,.12);border-color:var(--gold);}
.final .choice .ch .ch-tag{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px;}
.final .choice .ch.stay .ch-tag{color:var(--navy-100);}
.final .choice .ch.go .ch-tag{color:var(--gold);}
.final .choice .ch p{font-size:15.5px;line-height:1.55;color:#fff;}
.final .choice .ch.stay p{color:var(--navy-100);}

/* ============================================================ PS / FOOTER */
.ps-block{max-width:760px;margin:0 auto;background:var(--white);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:10px;padding:28px 32px;}
.ps-block .ps-tag{font-family:'JetBrains Mono',monospace;font-weight:700;font-size:12px;letter-spacing:.14em;color:var(--gold-700);text-transform:uppercase;}
.ps-block p{font-size:15.5px;line-height:1.65;color:var(--navy-500);margin-top:10px;}
.ps-block .btn{margin-top:18px;}

.site-footer{background:var(--navy-900);color:var(--navy-100);padding:56px 0 30px;}
.footer-top{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.1);}
.footer-brand{display:flex;align-items:center;gap:14px;}
.footer-brand .wm{display:flex;flex-direction:column;gap:4px;}
.footer-brand .wm b{display:block;font-weight:800;font-size:16px;color:#fff;line-height:1.05;letter-spacing:-.01em;}
.footer-brand .wm span{font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:600;letter-spacing:.28em;color:var(--gold);}
.footer-cols{display:flex;gap:54px;flex-wrap:wrap;}
.footer-col h5{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-300);margin-bottom:14px;font-weight:600;}
.footer-col a{display:block;font-size:14px;color:var(--navy-100);margin-bottom:9px;transition:color .15s;}
.footer-col a:hover{color:#fff;}
.footer-bottom{padding-top:24px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;}
.footer-bottom .small{color:var(--navy-300);font-size:12.5px;}
.assina-nucleo{margin-top:18px;font-size:13px;color:var(--navy-300);}
.assina-nucleo::before{content:"";display:inline-block;width:18px;height:1px;background:var(--gold);vertical-align:middle;margin-right:9px;}
.assina-nucleo a{color:var(--gold-300);font-weight:600;text-underline-offset:3px;}
.assina-nucleo a:hover{color:#fff;text-decoration:underline;}
.lgpd-note{font-size:12px;color:var(--navy-300);line-height:1.5;max-width:560px;margin-top:6px;}
.lgpd-note a{color:var(--gold-300);text-decoration:underline;text-underline-offset:2px;}
.lgpd-note a:hover{color:#fff;}

/* ============================================================ REVEAL
   End-state is VISIBLE by default. We only hide pre-reveal when <html>
   has .do-reveal (added by JS) AND motion is allowed. The failsafe in JS
   removes .do-reveal, which makes everything visible instantly without
   depending on a transition completing. */
@media (prefers-reduced-motion:no-preference){
  .do-reveal .reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease, transform .6s ease;}
  .do-reveal .reveal.in{opacity:1;transform:none;}
}
@media (prefers-reduced-motion:reduce){
  .strip-track{animation:none;}
  html{scroll-behavior:auto;}
}

/* barra de progresso da rolagem */
.progress-spacer{}
.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;pointer-events:none;}
.scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold-700),var(--gold));}

/* hover consistente nos cards que ainda nao tinham */
.tf-card,.qchip{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.tf-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);}
.qchip:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--gold-300);}

/* contem o deslocamento horizontal das entradas direcionais */
.clip-x{overflow-x:clip;}

@media (prefers-reduced-motion:no-preference){
  /* entradas direcionais: texto da esquerda, visual da direita */
  .do-reveal .reveal--left{transform:translateX(-28px);}
  .do-reveal .reveal--right{transform:translateX(28px);}
  .do-reveal .reveal--left.in,.do-reveal .reveal--right.in{transform:none;}

  /* cascata: o container nao anima, os filhos entram em sequencia */
  .do-reveal .reveal.stagger{opacity:1;transform:none;}
  .do-reveal .reveal.stagger > *{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease;}
  .do-reveal .reveal.stagger.in > *{opacity:1;transform:none;}
  .do-reveal .reveal.stagger.in > *:nth-child(1){transition-delay:0.00s}
  .do-reveal .reveal.stagger.in > *:nth-child(2){transition-delay:0.07s}
  .do-reveal .reveal.stagger.in > *:nth-child(3){transition-delay:0.14s}
  .do-reveal .reveal.stagger.in > *:nth-child(4){transition-delay:0.21s}
  .do-reveal .reveal.stagger.in > *:nth-child(5){transition-delay:0.28s}
  .do-reveal .reveal.stagger.in > *:nth-child(6){transition-delay:0.35s}
  .do-reveal .reveal.stagger.in > *:nth-child(7){transition-delay:0.42s}
  .do-reveal .reveal.stagger.in > *:nth-child(8){transition-delay:0.49s}

  /* retrato e bio entram um de cada lado */
  .do-reveal .bio-grid.stagger > *:nth-child(1){transform:translateX(-24px);}
  .do-reveal .bio-grid.stagger > *:nth-child(2){transform:translateX(24px);}
  .do-reveal .bio-grid.stagger.in > *{transform:none;}

  /* linha da timeline se desenhando, depois os pontos em sequencia */
  .do-reveal .tl-wrap::before{transform:scaleY(0);transform-origin:top;transition:transform .7s ease;}
  .do-reveal .tl-wrap.in::before{transform:scaleY(1);}
  .do-reveal .tl-wrap .tl-dot{scale:0;transition:scale .35s cubic-bezier(.34,1.56,.64,1),transform .2s ease,background .2s ease,box-shadow .2s ease;}
  .do-reveal .tl-wrap.in .tl-dot{scale:1;}
  .do-reveal .tl-wrap.in .tl-item:nth-of-type(1) .tl-dot{transition-delay:0.28s}
  .do-reveal .tl-wrap.in .tl-item:nth-of-type(2) .tl-dot{transition-delay:0.34s}
  .do-reveal .tl-wrap.in .tl-item:nth-of-type(3) .tl-dot{transition-delay:0.40s}
  .do-reveal .tl-wrap.in .tl-item:nth-of-type(4) .tl-dot{transition-delay:0.46s}
  .do-reveal .tl-wrap.in .tl-item:nth-of-type(5) .tl-dot{transition-delay:0.52s}
  .do-reveal .tl-wrap.in .tl-item:nth-of-type(6) .tl-dot{transition-delay:0.58s}
  .do-reveal .tl-wrap.in .tl-item:nth-of-type(7) .tl-dot{transition-delay:0.64s}
  @media (min-width:721px){
    .do-reveal .tl-wrap.js::before{transform:scaleX(0);transform-origin:left;}
    .do-reveal .tl-wrap.js.in::before{transform:scaleX(1);}
  }
}
}

/* ============================================================ QUEM ENSINA (autoridade do instrutor) */
.tl-spacer{}
.bio-grid{display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:center;max-width:920px;margin:0 auto 8px;}
.bio-portrait{margin:0;width:100%;aspect-ratio:760/956;border-radius:12px;overflow:hidden;background:var(--paper-300);border:1.5px solid var(--navy-100);box-shadow:0 8px 20px rgba(10,36,71,.12);}
.bio-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 24%;}
.bio-text .body{text-align:left;}
@media (max-width:860px){
  .bio-grid{grid-template-columns:1fr;gap:24px;justify-items:center;}
  .bio-portrait{max-width:260px;}
}
.tl-wrap{display:flex;flex-direction:column;align-items:stretch;position:relative;margin:8px 0 36px;padding:2px 0 2px 9px;}
.tl-wrap::before{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background:var(--line);}
.tl-item{position:relative;appearance:none;-webkit-appearance:none;background:none;border:0;margin:0;padding:13px 0;font:inherit;color:inherit;cursor:pointer;display:flex;flex-direction:row;align-items:flex-start;gap:16px;text-align:left;}
.tl-dot{width:18px;height:18px;border-radius:50%;background:var(--paper);border:3px solid var(--gold);z-index:1;flex:none;margin-left:-9px;margin-top:2px;transition:transform .2s ease,background .2s ease,box-shadow .2s ease;}
.tl-text{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;}
.tl-year{font-family:'JetBrains Mono',monospace;font-weight:800;font-size:19px;color:var(--navy);letter-spacing:-.01em;transition:color .2s ease;}
.tl-label{font-size:13px;line-height:1.4;color:var(--muted);}
.tl-item:hover .tl-dot{transform:scale(1.18);}
.tl-item:focus-visible{outline:2px solid var(--gold-700);outline-offset:3px;border-radius:8px;}
.tl-item[aria-expanded="true"] .tl-dot{background:var(--gold);box-shadow:0 0 0 4px var(--gold-100);}
.tl-item[aria-expanded="true"] .tl-year{color:var(--gold-700);}
.tl-panel-in{margin:0 0 6px 34px;background:var(--paper);border:1px solid var(--navy-100);border-left:3px solid var(--gold);border-radius:10px;padding:18px 20px;}
.tl-panel-year{display:block;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.16em;color:var(--gold-700);margin-bottom:8px;}
.tl-panel-in p{font-size:15.5px;line-height:1.65;color:var(--navy-500);max-width:72ch;}
.tl-wrap.js .tl-panel{display:none;}
.tl-wrap.js .tl-panel.open{display:block;}
@keyframes tlIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:no-preference){
  .tl-wrap.js .tl-panel.open .tl-panel-in{animation:tlIn .32s ease both;}
}
@media (min-width:721px){
  .tl-wrap.js{display:grid;grid-template-columns:repeat(7,1fr);padding:0 6px;}
  .tl-wrap.js::before{top:9px;bottom:auto;left:14px;right:14px;width:auto;height:2px;}
  .tl-wrap.js::after{content:"";position:absolute;top:7px;left:35.7%;width:14.3%;height:6px;border-radius:3px;background:var(--gold-300);}
  .tl-wrap.js .tl-item{grid-row:1;flex-direction:column;align-items:center;gap:10px;padding:0 6px;text-align:center;}
  .tl-wrap.js .tl-dot{margin-left:0;margin-top:0;}
  .tl-wrap.js .tl-text{align-items:center;text-align:center;}
  .tl-wrap.js .tl-label{max-width:140px;}
  .tl-wrap.js .tl-panel{grid-row:2;grid-column:1/-1;}
  .tl-wrap.js .tl-panel-in{margin:24px 0 0;padding:22px 26px;}
}
.authority-stat{display:flex;align-items:center;gap:22px;justify-content:center;flex-wrap:wrap;margin-bottom:34px;}
.authority-stat .as-num{display:flex;align-items:baseline;gap:6px;}
.authority-stat .as-num b{font-weight:800;font-size:56px;color:var(--navy);letter-spacing:-.02em;line-height:1;}
.authority-stat .as-num span{font-family:'JetBrains Mono',monospace;font-size:15px;color:var(--muted);}
.authority-stat .as-stars{color:var(--gold);font-size:20px;letter-spacing:3px;}
.authority-stat .as-div{width:1px;height:38px;background:var(--line);}
.authority-stat .as-note{font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.06em;color:var(--muted);line-height:1.4;}
.quote-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.qchip{background:var(--paper);border:1px solid var(--navy-100);border-radius:10px;padding:20px 20px 18px;position:relative;}
.qchip::before{content:"\201C";position:absolute;top:0px;left:14px;font-family:Georgia,serif;font-size:32px;color:var(--gold-300);line-height:1;}
.qchip p{padding-left:12px;font-size:14.5px;line-height:1.5;color:var(--navy-500);}

/* depoimentos em destaque — ex-estagiários */
.tf-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:36px;}
.tf-card{background:var(--paper);border:1.5px solid var(--navy);border-radius:14px;padding:28px;display:flex;gap:18px;}
.tf-card .tf-av{flex:none;margin:0;width:112px;height:140px;border-radius:12px;overflow:hidden;background:var(--paper-300);border:1.5px solid var(--navy-100);box-shadow:0 8px 20px rgba(10,36,71,.12);}
.tf-card .tf-av img{display:block;width:100%;height:100%;object-fit:cover;}
.tf-card .tf-av--daniel img{object-position:55% 32%;}
.tf-card .tf-av--lucas img{object-position:48% 20%;}
@media (max-width:720px){.tf-card{padding:22px;flex-direction:column;}.tf-card .tf-av{width:168px;height:210px;margin:0 auto;}}
.tf-card .tf-body p{font-size:15px;line-height:1.6;color:var(--navy-500);}
.tf-card .tf-who{margin-top:14px;display:flex;align-items:baseline;gap:8px;}
.tf-card .tf-who b{color:var(--gold-700);font-size:15px;font-weight:800;}
.tf-card .tf-who span{font-size:13px;color:var(--muted);}

/* pull-quote em bloco terminal */
.pullquote-term{background:var(--navy-900);border-radius:12px;padding:30px 34px;font-family:'JetBrains Mono',monospace;box-shadow:var(--shadow);max-width:760px;margin:0 auto;}
.pullquote-term .pq-line{color:#fff;font-size:16.5px;line-height:1.7;}
.pullquote-term .pq-line .gd{color:var(--gold);}
.pullquote-term .pq-who{margin-top:14px;color:var(--navy-300);font-size:13.5px;letter-spacing:.04em;}

/* badges de lote (oferta) */
.chip--gold-solid{background:var(--gold);color:var(--navy);border-color:var(--gold);font-weight:800;}
.lote-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:20px;}
.lote-note{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--navy-300);text-align:center;margin-top:12px;}
.price-box .chip{border-color:var(--navy);color:var(--navy);background:rgba(10,36,71,.05);}
.price-box .chip--gold-solid{background:var(--gold);color:var(--navy);border-color:var(--gold);}

.pb-open{margin:18px auto 2px;max-width:26ch;font-size:clamp(21px,3.6vw,27px);font-weight:800;color:var(--navy);letter-spacing:-.02em;line-height:1.22;}
.pb-open b{color:var(--gold-700);white-space:nowrap;}
.pb-hint{margin-top:16px;font-size:13px;line-height:1.5;color:var(--muted);max-width:44ch;margin-left:auto;margin-right:auto;}
.stack-row .val--lock{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-700);white-space:nowrap;}

/* ============================================================ RESPONSIVE */
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;gap:44px;}
  .hero-float{display:none;}
  .hero-visual{order:-1;width:100%;max-width:380px;margin:0 auto;}
  .value-grid,.sol-grid{grid-template-columns:1fr;gap:36px;}
  .ben-grid,.test-grid{grid-template-columns:1fr 1fr;}
  .quote-chips{grid-template-columns:1fr 1fr;}
  .nav-toggle{display:flex;}
  .nav-links{
    display:flex;position:fixed;top:72px;left:0;right:0;z-index:49;
    flex-direction:column;gap:0;margin-left:0;
    background:var(--paper);border-bottom:1px solid var(--line);
    box-shadow:0 18px 30px rgba(10,36,71,.10);
    padding:6px 20px 16px;
    transform:translateY(-8px);opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .18s ease, transform .18s ease, visibility .18s;
  }
  .nav-links.open{opacity:1;transform:translateY(0);visibility:visible;pointer-events:auto;}
  .nav-links a{padding:13px 2px;border-bottom:1px solid var(--line);font-size:15.5px;}
  .nav-links a:last-child{border-bottom:0;}
}
@media (max-width:720px){
  .section{padding:64px 0;}
  .wrap{padding:0 20px;}
  .notebox{flex-direction:column;gap:9px;}
  .notebox .nb-tag{padding-top:0;}
  .pain-grid,.obj-list,.ben-grid,.test-grid,.final .choice,.quote-chips,.tf-grid{grid-template-columns:1fr;}
  .ladder{flex-direction:column;}
  .ladder .step{border-right:0;border-bottom:1px solid rgba(255,255,255,.16);}
  .guarantee{flex-direction:column;text-align:center;gap:24px;padding:32px 24px;}
  .offer-body{padding:26px 22px;}
  .offer-head{padding:24px 22px;}
  .proof-stats .ps{border-right:0;border-bottom:1px solid var(--line);}
  .footer-top{flex-direction:column;gap:28px;}
  .tl-wrap{margin:8px 0 30px;}
}
/* celulares estreitos: o header (marca + hamburguer + CTA) nao cabia e o botao quebrava em 2 linhas */
@media (max-width:400px){
  .nav{gap:12px;}
  .nav .btn{padding:10px 13px;font-size:13px;white-space:nowrap;}
  .nav-cta{margin-left:auto;}
  .nav-cta .arr{display:none;}
}
@media (max-width:359px){
  .brand .wm{display:none;}
}
