:root {
  --bg: #0d1117;
  --card-bg: #161b22;
  --accent: #24d366;
  --accent-dark: #1aa851;
  --wrong: #ff5252;
  --text: #e6edf3;
  --muted: #8b949e;
  --ivory:#FAF8F3;
  --ink:#1B1B18;
  --ink-soft:#57544c;
  --teal:#1F4E4A;
  --teal-light:#E4EDEB;
  --line:#E2DED3;
  --text-primary:#f2f3f5;
  --text-muted:#5b8cff;
  --text-secondary:#666c78;
  --radius: 8px;
  --border:white;
}

main{
    flex: 1;
 }
body{
    
    font-family: "Plus Jakarta Sans", sans-serif;
    background-color:  #f4f6f8;
    justify-content: center;
    align-items: center;
    height: 100vh;
    text-align: center;}

.category-card{
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    background-color:white;
    padding: 20px;
    max-width: 600px;
    margin: auto;
    text-align: center;
    align-items: center;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 40px 8px rgba(0, 0, 0, 0.1);
    
    position: relative;
    text-decoration: none;
    color: black;
    transition: transform 0.2s;
    font-size:medium}
    
.container{
    width: 90%;
    max-width:600px;
    margin: 0 auto;
    background: white;
    padding: 0 16px;
    border-radius: 8px;
    box-shadow: 0px 2px rgb(0, 0, 0, 0.1);

}
.container1{
    width: 80%;
    max-width: 700px;
    box-sizing: border-box;
    margin: 30px auto;
    background: white;
    padding: 27px;
    border-radius: 8px;
    box-shadow: 0px 2px 8px rgb(0, 0, 0.1);
    align-items: center;
    text-align: center;


}

form div {
    margin-bottom: 18px;
}

label{
    display: block;
    margin: 6px;
    font-weight: bold;
}

input,select{
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}

button{
    width: 50%;
    padding: 2px;
    background-color: blue;
    color: white;
    border: none;
}

table{
    border-collapse: collapse;
}
th,td{
    padding: 12px;
    border: 1px solid #ddd;
    text-align: left;
}

th{
    background: #0d6efd;
    color:white
}
tr:nth-child(even){
    background: #f8f9fa;
}

.phone {
  width: 100%;
  max-width: 480px;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  padding: 16px 20px 40px;
}

.topbar {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 28px;
}

.close {
  color: var(--muted);
  text-decoration: none;
  font-size: 20px;
}

.progress-track {
  flex: 1;
  height: 8px;
  background: #2a3038;
  border-radius: 4px;
  overflow: hidden;
}

.progress-fill {
  height: 100%;
  background: var(--accent);
  transition: width .3s ease;
}

.score {
  font-size: 14px;
  color: var(--muted);
  white-space: nowrap;
}

.card {
  flex: 1;
  display: flex;
  flex-direction: column;
}

h1 {
  font-size: 26px;
  line-height: 1.3;
  margin: 4px 0 20px;
}

h2 {
  font-size: 22px;
  line-height: 1.35;
  margin: 4px 0 24px;
}

.body {
  font-size: 17px;
  line-height: 1.6;
  color: #1a1a1a;
}

.body code {
  background: #21262d;
  padding: 2px 6px;
  border-radius: 4px;
  color: var(--accent);
  font-size: 16px;
}

.quiz-label {
  color: var(--accent);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: .06em;
  margin-bottom: 8px;
}

.option {
  display: block;
  width: 100%;
  text-align: left;
  background: var(--card-bg);
  border: 2px solid #2a3038;
  color: var(--text);
  padding: 14px 16px;
  border-radius: 10px;
  font-size: 16px;
  margin-bottom: 12px;
  cursor: pointer;
}

.option:hover:not(:disabled) {
  border-color: var(--accent);
}

.option:disabled {
  cursor: default;
  opacity: .85;
}

.option-correct {
  border-color: var(--accent);
  background: rgba(36, 211, 102, 0.12);
  color: #0f5c2e;
}

.option-wrong {
  border-color: var(--wrong);
  background: rgba(255, 82, 82, 0.12);
  color: #8c1c1c;
}

.feedback {
  margin-top: 8px;
  padding: 14px 16px;
  border-radius: 10px;
  font-size: 15px;
}

.feedback.ok {
  background: rgba(36, 211, 102, 0.12);
  border: 1px solid var(--accent);
}

.feedback.no {
  background: rgba(255, 82, 82, 0.12);
  border: 1px solid var(--wrong);
}

.feedback p { margin: 6px 0 0; color: var(--muted); }

.btn {
  display: block;
  text-align: center;
  margin-top: auto;
  background: var(--accent);
  color: #06210f;
  font-weight: 700;
  letter-spacing: .03em;
  padding: 15px;
  border-radius: 10px;
  text-decoration: none;
  margin-top: 24px;
}

.btn:hover { background: var(--accent-dark); }

.done-icon {
  font-size: 56px;
  text-align: center;
  margin-top: 40px;
}

.final-score {
  text-align: center;
  color: var(--accent);
  font-size: 20px;
  font-weight: 700;
  margin-top: 8px;
}

.card.teach, .card.done { text-align: left; }

.container02 {
    background: white;
    padding: 2rem;
    border-radius: 12px;
    box-shadow: 0px 2px 8px rgb(0, 0, 0.1);
    text-align: center;  
}

.container03 {
    width: 100%;
    max-width: 800px;
    min-height: 150px;
    background: whitesmoke;
    margin: 0 auto;
    padding: 40px 20px;
    border-radius: 12px;
    box-shadow: 0px 2px 8px rgb(0, 0, 0);
    box-sizing: border-box;
    text-align: center;  
}

.navbar{
    display:flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 32px;
    border-bottom: 1px solid var(--line);
    background: var(--ivory);
    position: relative;
    z-index: 100;
}
.brand{
    font-family: serif, Georgia, 'Times New Roman', Times, serif;
    font-weight: 600;
    letter-spacing:-0.0em;
    color: var(--ink);
    text-decoration: none;
}

.nav-links{
    display: flex;
    align-items: center;
    gap: 36px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-links a{
    font-size: 15px;
    font-weight: 500;
    color: var(--ink-soft);
    text-decoration: none;
    transition: color 0.5s ease;
}
.nav-links a:hover,
.nav-links a:focus{
    color: var(--teal);
}
.nav-links a:focus-visible{
    outline: 2px solid var(--teal);
    outline-offset: 4px;
    border-radius: 2px;
}

.nav-cta{
    padding: 9px 18px;
    background: var(--teal);
    color: var(--ivory) !important;
    border-radius: 4px;
    font-weight: 600 !important;
}

.menu-toggle{
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    width: 40px;
    height: 40px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
}

.menu-toggle:focus-visible{
    outline: 2px solid var(--teal);
    outline-offset: 2px;
    border-radius: 4px;
}

.menu-toggle span{
    display: block;
    width: 22px;
    height: 2px;
    background: var(--ink);
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.menu-toggle.open span:nth-child(1){
    transform: translateY(7px) rotate(45deg);
}

.menu-toggle.open span:nth-child(2){
    opacity: 0;
}

.menu-toggle.open span:nth-child(3){
    transform: translateY(-7px) rotate(-45deg);
}

.page-body{
    max-width: 720px;
    margin: 0 auto;
    padding: 64px 24px;
}
.page-body h1{
    font-family:'fraunces', serif;
    font-weight:500;
    font-size: 32px;
    line-height: 1.25;
}
.page-body p{
    color:var(--ink-soft);
    line-height: 1.7;
    font-size: 16px;
}
@media (prefers-reduced-motion: reduce){
    .menu-toggle span,
    .nav-links a{
        transition: none !important;
    }
    
}

@media(max-width: 768px){
    .navbar{
        padding: 16px 20px;
    }

    .menu-toggle{
        display: flex;
    }

    .nav-links{
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: var(--ivory);
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        background: var(--ivory);
        border-bottom: 1px solid var(--line);
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
    }

    .nav-links.open{
        max-height: 400px;
    }

    .nav-links a{
        display: block;
        padding: 16px 20px;
    }

    .nav-cta{
        margin: 16px 20px;
        text-align: center;
        border-radius: 4px;
    }
}


.socials{
    display: flex;
    justify-content: center;
    gap: 18px;
    margin-top: 24px;
    font-size: 13px;
    
}

.socials a {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgb(255,255,255,0.05);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: var(--text-secondary);
    border: 1px solid var(--border);
}

socials svg{
    width: 18px;
    height: 18px;
}

.foooter-col ul {
    list-style: none;
    display: flex;
    /*flex-direction: column;*/
    gap: 3px;
    font-size: 12px;
    /*margin-right: 10px;*/
}

.site-footer{
    background: #102a43;
    color: #ffffff;
    padding: 45px 8% 20px;
    font-family: arial,sans-serif;
}
.footer-container{
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap:40px;
    max-width: 1200px;
    margin: auto;
}

site-footer h3 {
    font-size: 17px;
    margin-bottom: 18px;
}

.site-footer h3 {
    font-size: 15px;
    margin-bottom: 18px;
}

.site-footer li {
    margin-bottom: 12px;
}
ul,li{
        list-style: none;}

.site-footer a {
    color: #cbd5e1;
    text-decoration: none;
    transition: color 0.3s ease;
}

.site-footer a:hover {
    color: #38bdf8;
}

@media (max-width: 700px) {
    .footer-container {
        grid-template-columns: 1fr;
        gap: 25px;
        font-size: 13px;
       
    }

    .site-footer {
        padding: 35px 6% 20px;
        font-size: 13px;
        
    }

    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }

    ul,li{
        list-style: none;
    }

}

.nav-logo{ height: 5rem; width: 9rem; border-radius: 0.4rem; object-fit: cover; display: block; }


.hero {
      background: linear-gradient(135deg, #0b4f9c, #087fbe);
      color: white;
      text-align: center;
      padding: 80px 20px;
    }

.hero h1 {
      font-size: 42px;
      margin-bottom: 15px;
    }

.hero p {
      max-width: 700px;
      margin: auto;
      font-size: 18px;
      opacity: 0.95;
    }

.btn {
      display: inline-block;
      margin-top: 25px;
      padding: 14px 28px;
      background: #ffd43b;
      color: #172033;
      text-decoration: none;
      font-weight: bold;
      border-radius: 8px;
      transition: 0.3s;
    }

    .btn:hover {
      background: #fff;
      transform: translateY(-2px);
    }

    /* Sections */
    section {
      padding: 60px 7%;
    }

.section-title {
      text-align: center;
      margin-bottom: 40px;
    }

.section-title h2 {
      font-size: 30px;
      color: #0b4f9c;
      margin-bottom: 10px;
    }

.section-title p {
      color: #667085;
    }

    /* Cards */
.cards {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
      gap: 22px;
    }

.card {
      background: white;
      padding: 30px 22px;
      border-radius: 12px;
      text-align: center;
      box-shadow: 0 5px 20px rgba(0,0,0,0.07);
    }

.card .icon {
      font-size: 40px;
      margin-bottom: 15px;
    }

.card h3 {
      color: #0b4f9c;
      margin-bottom: 10px;
    }

    /* Schedule */
    .schedule {
      background: white;
    }

.schedule-box {
      max-width: 650px;
      margin: auto;
      background: #f5f8fc;
      border-left: 5px solid #0b4f9c;
      padding: 25px;
      border-radius: 8px;
    }

.schedule-box p {
      margin: 8px 0;
      font-size: 17px;
    }

    /* Payment */
.payment {
      background: #0b4f9c;
      color: white;
      text-align: center;
    }

.payment h2 {
      font-size: 32px;
      margin-bottom: 15px;
    }

.price {
      font-size: 42px;
      font-weight: bold;
      color: #ffd43b;
      margin: 15px 0;
    }

    /* Steps */
.steps {
      counter-reset: step;
    }

.step {
      background: white;
      padding: 22px;
      margin-bottom: 15px;
      border-radius: 10px;
      box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    }

.step strong {
      color: #0b4f9c;
    }

    /* WhatsApp */
.whatsapp {
      background: #eafaf0;
      text-align: center;
    }

.whatsapp h2 {
      color: #128c4b;
    }

.whatsapp-btn {
      background: #25D366;
      color: white;
    }

.whatsapp-btn:hover {
      background: #128C4A;
      color: white;
    }




