@import url('https://fonts.googleapis.com/css2?family=Inter:wght@500;600;700;800&family=Vazirmatn:wght@400;500;600;700;800&display=swap');

/* PersianRijbewijs design system — shared by every public page. */
:root{
  --pr-deep:#031a31;
  --pr-navy:#08243e;
  --pr-navy-2:#0d3552;
  --pr-teal:#0aa9a4;
  --pr-teal-dark:#07837f;
  --pr-sky:#37aaf4;
  --pr-gold:#d5a843;
  --pr-paper:#f4f8fa;
  --pr-soft:#eaf4f5;
  --pr-card:#fff;
  --pr-ink:#08243e;
  --pr-muted:#627789;
  --pr-line:#d7e5ea;
  --pr-success:#087443;
  --pr-danger:#b42318;
  --pr-radius-sm:13px;
  --pr-radius:20px;
  --pr-radius-lg:28px;
  --pr-shadow-sm:0 8px 24px rgba(6,41,71,.08);
  --pr-shadow:0 18px 48px rgba(6,41,71,.11);
  --pr-content:min(1120px,calc(100% - 40px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--pr-paper)}
body.pr-page{
  margin:0;
  min-height:100vh;
  overflow-x:hidden;
  font-family:Vazirmatn,Inter,"Segoe UI",Tahoma,Arial,sans-serif;
  color:var(--pr-ink);
  background:linear-gradient(180deg,#f9fcfd 0%,var(--pr-paper) 100%);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
body.pr-home,body.pr-plans,body.pr-exam,body.pr-exam-result{
  color:#eef8ff;
  background:var(--pr-deep);
}
body.pr-page button,body.pr-page input,body.pr-page select,body.pr-page textarea{font:inherit}
body.pr-page img{max-width:100%;height:auto}
body.pr-page a{transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
body.pr-page :focus-visible{outline:3px solid rgba(10,169,164,.42);outline-offset:3px}

/* Shared top navigation and brand treatment. */
body.pr-page>nav:not(.category-nav),
body.pr-page .learn-header,
body.pr-page .signs-header,
body.pr-page .member-header,
body.pr-page .package-header{
  min-height:72px;
  padding-inline:clamp(16px,4vw,46px);
  background:rgba(255,255,255,.95);
  border-bottom:1px solid var(--pr-line);
  box-shadow:var(--pr-shadow-sm);
  backdrop-filter:blur(14px);
}
body.pr-page>nav:not(.category-nav) a,
body.pr-page .learn-header a,
body.pr-page .signs-header a,
body.pr-page .member-header a,
body.pr-page .package-header a{font-weight:800;text-decoration:none}
body.pr-page .brand,body.pr-page .text-logo,body.pr-page .brand-script{
  color:var(--pr-navy)!important;
  letter-spacing:-.02em;
}

/* Common typography. */
body.pr-page h1,body.pr-page h2,body.pr-page h3{
  font-family:Vazirmatn,Inter,Tahoma,sans-serif;
  color:var(--pr-ink);
  letter-spacing:-.025em;
}
body.pr-page h1{line-height:1.35}
body.pr-page p,body.pr-page li{line-height:1.9}
body.pr-page .intro,body.pr-page small{color:var(--pr-muted)}
body.pr-home h1,body.pr-home h2,body.pr-home h3,
body.pr-plans h1,body.pr-exam h1,body.pr-exam>nav,
body.pr-exam-result h1{color:#fff}

/* Buttons and interactive controls. */
body.pr-page .button,
body.pr-page button[type=submit],
body.pr-page .package-buy,
body.pr-page .quiz-launch,
body.pr-page .plans-grid a,
body.pr-page .plans-grid button,
body.pr-page .lesson-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:11px 20px;
  border:0!important;
  border-radius:var(--pr-radius-sm)!important;
  background:linear-gradient(135deg,var(--pr-teal),var(--pr-teal-dark))!important;
  color:#fff!important;
  font-weight:850;
  text-decoration:none;
  box-shadow:0 11px 26px rgba(10,169,164,.23);
  cursor:pointer;
}
body.pr-page .button:hover,
body.pr-page button[type=submit]:hover,
body.pr-page .package-buy:hover,
body.pr-page .quiz-launch:hover{
  transform:translateY(-2px);
  box-shadow:0 15px 32px rgba(10,169,164,.3);
}
body.pr-page input,body.pr-page select,body.pr-page textarea{
  border:1px solid #c9dce4!important;
  border-radius:var(--pr-radius-sm)!important;
  background:#fff!important;
  color:var(--pr-ink)!important;
  outline:none;
}
body.pr-page input:focus,body.pr-page select:focus,body.pr-page textarea:focus{
  border-color:var(--pr-teal)!important;
  box-shadow:0 0 0 4px rgba(10,169,164,.13);
}

/* Shared surfaces. */
body.pr-page .course-card,
body.pr-page .exam-card,
body.pr-page .sign-card,
body.pr-page .steps article,
body.pr-page .about-note,
body.pr-page .account-card,
body.pr-page .account-info,
body.pr-page .package,
body.pr-page .plans-grid article,
body.pr-page .payment-trust,
body.pr-page .chapter-intro,
body.pr-page .lesson-section,
body.pr-page .reference-page,
body.pr-page .score-card,
body.pr-page .result-answer,
body.pr-page .guest-save-card,
body.pr-page .classes-hero,
body.pr-page .instructor-grid article,
body.pr-page .empty-state{
  border:1px solid var(--pr-line)!important;
  border-radius:var(--pr-radius)!important;
  background:var(--pr-card);
  box-shadow:var(--pr-shadow)!important;
}
body.pr-page .course-card,body.pr-page .exam-card,body.pr-page .sign-card{overflow:hidden}
body.pr-page .badge,body.pr-page .free-preview,body.pr-page .locked-preview{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:7px 12px;
  border-radius:999px;
  font-size:.82rem;
  font-weight:850;
}
body.pr-page .free-preview{background:#dcfce7;color:var(--pr-success)}
body.pr-page .locked-preview{background:#eef2f6;color:#526678}
body.pr-page .course-thumb,body.pr-page .chapter-cover img,body.pr-page .lesson-cover img{
  background:#dce9ef;
  object-fit:cover;
}

/* Learning shell: same sidebar, spacing and surfaces on exams and signs. */
body.pr-learning .learning-sidebar{
  background:linear-gradient(180deg,var(--pr-deep),var(--pr-navy));
  border-inline-end:1px solid rgba(255,255,255,.09);
}
body.pr-learning .learning-sidebar a{border-radius:12px}
body.pr-learning .learning-sidebar a.active{background:rgba(10,169,164,.2);color:#fff}
body.pr-exam .exam-page,body.pr-exam-result .result-page{color:var(--pr-ink)}
body.pr-exam .exam-question,body.pr-exam .exam-start,body.pr-exam .exam-progress,
body.pr-exam-result .result-shell{
  border-color:rgba(215,229,234,.9)!important;
  border-radius:var(--pr-radius)!important;
}
body.pr-signs main,body.pr-courses main,body.pr-lesson main,body.pr-about main,
body.pr-contact main,body.pr-legal main{width:var(--pr-content);margin-inline:auto}

/* Keep the cinematic landing page dark while sharing controls and fonts. */
body.pr-home .topbar,body.pr-home .side-nav{font-family:inherit}
body.pr-home .paper,body.pr-home .path,body.pr-home .smart,
body.pr-home .benefits,body.pr-home .exam{color:var(--pr-ink)}
body.pr-home .actions a{border-radius:var(--pr-radius-sm)}
body.pr-home footer{border-top:1px solid rgba(255,255,255,.12)}

/* Plans retain their dark presentation but use the same component geometry. */
body.pr-plans .package,body.pr-plans .payment-trust{color:var(--pr-ink)}
body.pr-plans .package-notice{border-radius:var(--pr-radius-sm)}
body.pr-plans .package-switch{border-radius:16px}

/* Prevent the floating language switch from covering mobile controls. */
.global-language-switcher{font-family:Inter,Vazirmatn,Tahoma,sans-serif}
@media(max-width:650px){
  .global-language-switcher{
    top:78px!important;
    bottom:auto!important;
    inset-inline-end:10px!important;
    transform:none!important;
    grid-template-columns:repeat(2,1fr)!important;
    padding:5px!important;
    border-radius:14px!important;
  }
  .global-language-switcher a{min-width:45px!important;height:34px!important}
}

/* Mobile rhythm shared across every section. */
@media(max-width:760px){
  :root{
    --pr-content:calc(100% - 28px);
    --pr-radius:17px;
    --pr-radius-lg:22px;
    --pr-shadow:0 12px 30px rgba(6,41,71,.09);
  }
  body.pr-page>nav:not(.category-nav),
  body.pr-page .learn-header,
  body.pr-page .signs-header,
  body.pr-page .member-header,
  body.pr-page .package-header{min-height:64px;padding-inline:14px}
  body.pr-page h1{font-size:clamp(1.85rem,8vw,2.55rem)}
  body.pr-page .courses-page,
  body.pr-page .about-page,
  body.pr-page .plans-page,
  body.pr-page .chapter-page,
  body.pr-page .lesson-page,
  body.pr-page .account-shell,
  body.pr-page .contact-page{padding-inline:0!important}
  body.pr-page .course-grid,body.pr-page .exam-grid,body.pr-page .plans-grid,
  body.pr-page .sign-grid,body.pr-page .steps{gap:14px!important}
  body.pr-page .button,body.pr-page button[type=submit],body.pr-page .package-buy{width:100%}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}


/* One official wordmark and header across public, information and exam pages. */
body.pr-page .pr-site-header{
  position:relative;
  z-index:25;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:76px;
  padding:12px clamp(18px,4vw,48px);
  background:rgba(255,255,255,.96);
  border-bottom:1px solid var(--pr-line);
  box-shadow:var(--pr-shadow-sm);
  backdrop-filter:blur(14px);
}
body.pr-learning .pr-site-header{
  background:rgba(3,20,35,.9);
  border-bottom-color:rgba(133,177,202,.22);
  box-shadow:none;
}
body.pr-page .pr-wordmark{
  direction:ltr;
  position:relative;
  display:inline-flex;
  align-items:baseline;
  flex-wrap:nowrap;
  color:var(--pr-navy);
  font-family:Inter,"Segoe UI",Arial,sans-serif;
  font-size:clamp(1.3rem,2.4vw,2rem);
  font-weight:800;
  letter-spacing:-.07em;
  line-height:1;
  padding-bottom:8px;
  text-decoration:none;
  white-space:nowrap;
}
body.pr-page .pr-wordmark span{font-weight:650}
body.pr-page .pr-wordmark b{color:var(--pr-teal);font-weight:850}
body.pr-page .pr-wordmark small{font-size:.5em;letter-spacing:-.02em;margin-inline-start:3px}
body.pr-page .pr-wordmark i{
  position:absolute;
  inset-inline:0;
  bottom:0;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--pr-teal) 0 68%,var(--pr-gold) 68% 84%,#d62438 84% 92%,#f7f7f7 92% 96%,#188a42 96%);
}
body.pr-learning .pr-wordmark{color:#fff}
body.pr-page .pr-header-actions{display:flex;align-items:center;gap:10px;margin:0;padding:0;background:none;border:0;box-shadow:none}
body.pr-page .pr-header-actions a,
body.pr-page .pr-header-actions .timer{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:8px 14px;
  border:1px solid var(--pr-line);
  border-radius:12px;
  color:var(--pr-navy);
  background:#fff;
  font-weight:800;
  text-decoration:none;
}
body.pr-page .pr-header-actions .pr-language-link{min-width:48px;color:#fff;background:var(--pr-teal);border-color:var(--pr-teal)}
body.pr-learning .pr-header-actions a,
body.pr-learning .pr-header-actions .timer{color:#e8f7fb;background:rgba(18,199,210,.1);border-color:rgba(18,199,210,.28)}
body.pr-contact .classes-hero>p{color:var(--pr-muted)!important}
body.pr-about .about-page,body.pr-contact .contact-page{padding-top:clamp(34px,6vw,76px)}
body.pr-exam .exam-library>.intro{color:#c3d5e1!important}

@media(max-width:650px){
  body.pr-page .pr-site-header{min-height:68px;padding:10px 14px;gap:10px}
  body.pr-page .pr-wordmark{font-size:clamp(1.05rem,5vw,1.45rem)}
  body.pr-page .pr-wordmark i{height:3px}
  body.pr-page .pr-header-actions{gap:6px}
  body.pr-page .pr-header-actions a,body.pr-page .pr-header-actions .timer{min-height:38px;padding:7px 10px;font-size:.82rem}
}
