/* Usavir Premium Website — Version 22
   Academy-home visual system is the source of truth across the public site. */

:root{
  --v22-footer-height:48px;
  --v22-panel:rgba(255,255,255,.76);
  --v22-panel-strong:rgba(255,255,255,.9);
  --v22-border:rgba(67,78,113,.12);
  --v22-shadow:0 22px 70px rgba(35,43,70,.1);
}

/* Global navigation order/layout */
.nav-links{grid-template-columns:repeat(4,minmax(0,1fr));min-width:min(470px,calc(100vw - 150px))}
.nav-link{white-space:nowrap}

/* One-line global footer */
.v21-footer,.global-footer{
  width:min(100%,var(--content-width));
  margin:0 auto;
  padding:16px var(--page-padding) 22px;
  border-top:1px solid rgba(54,64,91,.09);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  color:var(--text-muted);
  font-size:.69rem;
  line-height:1;
  white-space:nowrap;
  overflow-x:auto;
  scrollbar-width:none;
}
.v21-footer::-webkit-scrollbar,.global-footer::-webkit-scrollbar{display:none}
.v21-footer nav,.global-footer nav{display:flex;align-items:center;gap:11px;flex:0 0 auto}
.v21-footer a,.global-footer a{text-decoration:none;font-weight:750;color:var(--text-soft)}
.v21-footer a:hover,.global-footer a:hover{color:var(--accent-deep)}
.v21-footer__copyright{flex:0 0 auto}
.v21-footer__copyright::before{content:""}

/* About and Tools keep their fitted composition while gaining the same footer strip. */
body[data-page="about"] .global-footer,
body[data-page="tools"] .global-footer{position:fixed;left:50%;bottom:0;transform:translateX(-50%);z-index:20;background:linear-gradient(180deg,rgba(248,249,253,.68),rgba(248,249,253,.92));backdrop-filter:blur(15px)}
body[data-page="about"] .home-shell{padding-bottom:calc(var(--v22-footer-height) + 18px)}
body[data-page="tools"] .tools-shell{padding-bottom:calc(var(--v22-footer-height) + 12px)!important}

/* Academy home: preserve the desktop composition and use tabs instead of stacked cards. */
.v21-hero{min-height:min(620px,70vh)}
.academy-tabs-shell{display:grid;gap:16px}
.academy-tablist{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding:6px;
  border:1px solid rgba(255,255,255,.88);
  border-radius:22px;
  background:rgba(255,255,255,.58);
  box-shadow:var(--shadow-soft);
  backdrop-filter:blur(20px) saturate(145%);
}
.academy-tab{
  min-height:58px;
  border:0;
  border-radius:17px;
  padding:10px 16px;
  background:transparent;
  color:var(--text-soft);
  cursor:pointer;
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.02em;
  transition:background .22s var(--ease),color .22s var(--ease),box-shadow .22s var(--ease),transform .22s var(--ease);
}
.academy-tab[aria-selected="true"]{background:linear-gradient(135deg,rgba(78,70,204,.97),rgba(117,109,245,.94));color:#fff;box-shadow:0 12px 28px rgba(79,70,206,.22)}
.academy-tab:hover{transform:translateY(-1px)}
.academy-tabpanel{
  min-height:330px;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);
  gap:24px;
  padding:clamp(25px,3vw,38px);
  border:1px solid rgba(255,255,255,.88);
  border-radius:30px;
  background:radial-gradient(circle at 90% 10%,rgba(122,116,242,.13),transparent 30%),rgba(255,255,255,.72);
  box-shadow:var(--v22-shadow),inset 0 1px 0 rgba(255,255,255,.92);
  backdrop-filter:blur(24px) saturate(145%);
}
.academy-tabpanel[hidden]{display:none!important}
.tab-course-copy{display:flex;flex-direction:column;justify-content:center}
.tab-course-copy h3{margin:6px 0 13px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.2rem,4vw,4.25rem);line-height:.92;letter-spacing:-.055em;font-weight:500}
.tab-course-copy p{margin:0;max-width:68ch;color:var(--text-soft);line-height:1.67}
.tab-course-side{display:flex;flex-direction:column;justify-content:center;gap:14px;padding:20px;border:1px solid rgba(77,87,121,.1);border-radius:23px;background:rgba(255,255,255,.66)}
.tab-price{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.7rem,4.4vw,4.7rem);line-height:.9;letter-spacing:-.05em;color:var(--accent-deep)}
.tab-price small{font-family:inherit;font-size:.31em;color:var(--text-soft);letter-spacing:0}
.tab-course-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.tab-course-side .v21-button{width:100%}

/* Price comparison / AEO-friendly crawlable table */
.market-section{padding:clamp(48px,7vh,82px) 0}
.market-card{padding:clamp(24px,3vw,38px);border:1px solid rgba(255,255,255,.9);border-radius:30px;background:rgba(255,255,255,.72);box-shadow:var(--v22-shadow)}
.market-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:30px;align-items:end;margin-bottom:26px}
.market-intro h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,5vw,5rem);line-height:.92;letter-spacing:-.055em;font-weight:500}
.market-intro p{margin:0;color:var(--text-soft);line-height:1.65}
.price-table-wrap{overflow-x:auto;border:1px solid rgba(66,76,107,.09);border-radius:20px;background:rgba(255,255,255,.64)}
.price-table{width:100%;border-collapse:collapse;min-width:720px;font-size:.83rem}
.price-table th,.price-table td{padding:15px 17px;text-align:left;border-bottom:1px solid rgba(66,76,107,.08)}
.price-table th{font-size:.63rem;text-transform:uppercase;letter-spacing:.13em;color:var(--text-muted);background:rgba(245,246,251,.75)}
.price-table tr:last-child td{border-bottom:0}.price-table tr.is-usavir td{background:rgba(103,97,238,.075);font-weight:800;color:#343069}
.price-table a{color:var(--accent-deep);font-weight:800;text-decoration:none}.price-table a:hover{text-decoration:underline}
.price-note{margin:14px 2px 0;color:var(--text-muted);font-size:.7rem;line-height:1.55}

/* Enrolment route / sales section */
.enrol-route{padding:clamp(24px,3vw,34px);border:1px solid rgba(255,255,255,.9);border-radius:30px;background:radial-gradient(circle at 88% 14%,rgba(103,97,238,.14),transparent 29%),rgba(255,255,255,.72);box-shadow:var(--v22-shadow)}
.enrol-route__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);gap:28px;align-items:end}
.enrol-route__head h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,4.7vw,4.7rem);line-height:.92;letter-spacing:-.055em;font-weight:500}.enrol-route__head p{margin:0;color:var(--text-soft);line-height:1.65}
.enrol-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:26px}.enrol-step{min-height:150px;padding:18px;border:1px solid rgba(73,83,117,.09);border-radius:20px;background:rgba(255,255,255,.66)}.enrol-step span{display:block;color:var(--accent-deep);font-size:.65rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.enrol-step strong{display:block;margin-top:15px;font-size:1rem;line-height:1.35}.enrol-step p{margin:8px 0 0;color:var(--text-soft);font-size:.78rem;line-height:1.52}.enrol-route .v21-actions{margin-top:22px}

/* FAQ / answer-engine content */
.academy-faq{padding:clamp(48px,7vh,82px) 0}.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.faq-item{padding:22px;border:1px solid rgba(255,255,255,.88);border-radius:22px;background:rgba(255,255,255,.68);box-shadow:var(--shadow-soft)}.faq-item h3{margin:0;font-size:1rem}.faq-item p{margin:10px 0 0;color:var(--text-soft);font-size:.84rem;line-height:1.6}

/* Phone input component styling to match Usavir. */
.enrol-intro{margin:0 0 18px;color:var(--text-soft);font-size:.82rem;line-height:1.6}
.enrol-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.phone-field small{color:var(--text-muted);font-size:.64rem;line-height:1.4}
.iti{width:100%}
.iti input{width:100%!important;min-height:46px!important}
.iti__selected-country-primary{background:rgba(246,247,252,.86)!important;border-radius:13px 0 0 13px!important}
.iti__country-selector{z-index:100000!important}
.iti__search-input{border:1px solid rgba(54,65,95,.13)!important;border-radius:11px!important;padding:10px!important;margin:8px!important;width:calc(100% - 16px)!important}
.iti__country-list{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;color:var(--text)!important;background:#fff!important;border:1px solid rgba(54,65,95,.12)!important;border-radius:16px!important;box-shadow:0 24px 70px rgba(36,42,68,.18)!important}
.iti__country{padding-block:9px!important}
.enrol-submit-row--single{grid-template-columns:1fr}.enrol-submit-row--single .v21-button{min-height:52px}
.enrol-submit-row--single .v21-button:disabled{opacity:.65;cursor:wait;transform:none}

/* Contact: enrolment first, then one direct-contact card with email above phone. */
.contact-shell{padding-bottom:clamp(40px,6vh,70px)}
.contact-hero{max-width:920px;padding-top:clamp(30px,4vh,56px)}
.contact-hero .v21-title{font-size:clamp(3.8rem,7vw,7rem)}
.contact-layout{display:grid;gap:16px;margin-top:38px}
.contact-enrol-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);gap:26px;align-items:center;padding:clamp(25px,3vw,38px);border:1px solid rgba(255,255,255,.9);border-radius:30px;background:radial-gradient(circle at 88% 16%,rgba(103,97,238,.16),transparent 31%),rgba(255,255,255,.75);box-shadow:var(--v22-shadow)}
.contact-enrol-card h2{margin:8px 0 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.1rem,4vw,4rem);font-weight:500;line-height:.95;letter-spacing:-.05em}.contact-enrol-card p{margin:13px 0 0;max-width:68ch;color:var(--text-soft);line-height:1.62}.contact-enrol-card .v21-button{width:100%}
.direct-contact-card{padding:clamp(25px,3vw,38px);border:1px solid rgba(255,255,255,.9);border-radius:30px;background:rgba(255,255,255,.74);box-shadow:var(--v22-shadow)}
.direct-contact-card__head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:22px}.direct-contact-card__head h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3.7vw,3.7rem);font-weight:500;letter-spacing:-.05em}.direct-contact-card__head p{margin:0;max-width:52ch;color:var(--text-soft);font-size:.82rem;line-height:1.55}
.contact-detail{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:22px 0}.contact-detail+.contact-detail{border-top:1px solid rgba(54,64,91,.09)}.contact-detail__label{margin:0 0 8px;color:var(--accent-deep);font-size:.64rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.contact-detail__value{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.65rem,3vw,3rem);line-height:1.02;letter-spacing:-.04em;overflow-wrap:anywhere}.contact-detail__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.direct-contact-card .copy-feedback{text-align:right;margin:2px 0 0}

/* Course content */
.course-service-note{margin:18px 0 0;padding:14px 16px;border:1px solid rgba(103,97,238,.11);border-radius:15px;background:rgba(103,97,238,.055);color:#55507e;font-size:.79rem;line-height:1.55}
.topic-list--wide{grid-template-columns:repeat(3,minmax(0,1fr))}
.ai-foundation-callout{margin-top:22px;padding:18px;border:1px solid rgba(103,97,238,.13);border-radius:18px;background:rgba(103,97,238,.06);color:#49446d;line-height:1.6}
.curriculum-intro{max-width:760px}.grade-accordion{display:grid;gap:10px;margin-top:26px}.grade-block{border:1px solid rgba(71,82,115,.11);border-radius:20px;background:rgba(255,255,255,.68);overflow:hidden}.grade-block summary{list-style:none;cursor:pointer;padding:17px 19px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-weight:850}.grade-block summary::-webkit-details-marker{display:none}.grade-block summary::after{content:"+";width:29px;height:29px;border-radius:10px;background:rgba(103,97,238,.08);display:grid;place-items:center;color:var(--accent-deep);font-size:1.1rem}.grade-block[open] summary::after{content:"−"}.grade-topics{padding:0 19px 19px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.grade-topics span{padding:10px 12px;border:1px solid rgba(71,82,115,.09);border-radius:12px;background:rgba(255,255,255,.72);color:#485064;font-size:.76rem;line-height:1.35}
.course-enrol-cta{margin-top:16px;padding:clamp(24px,3vw,34px);border:1px solid rgba(255,255,255,.9);border-radius:28px;background:radial-gradient(circle at 88% 15%,rgba(103,97,238,.13),transparent 29%),rgba(255,255,255,.72);box-shadow:var(--shadow-soft)}.course-enrol-cta h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.1rem,4vw,3.8rem);line-height:.95;letter-spacing:-.05em;font-weight:500}.course-enrol-cta p{max-width:75ch;color:var(--text-soft);line-height:1.65}

/* I Love PDF legal/footer shell adopts the public Usavir look, not the other way around. */
body.ilovepdf-v22 .site-footer,
.site-footer.usavir-footer{
  width:min(100%,1480px)!important;
  margin:0 auto!important;
  padding:16px clamp(18px,3vw,48px) 22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:11px!important;
  border-top:1px solid rgba(54,64,91,.09)!important;
  background:linear-gradient(145deg,#fcfdff,#f6f7fb)!important;
  color:#7b8291!important;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:.69rem!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow-x:auto!important;
  text-align:left!important;
}
body.ilovepdf-v22 .site-footer nav,.site-footer.usavir-footer nav{display:flex!important;align-items:center!important;gap:11px!important;flex:0 0 auto!important;margin:0!important}
body.ilovepdf-v22 .site-footer a,.site-footer.usavir-footer a{padding:0!important;color:#555c6d!important;font-weight:750!important;text-decoration:none!important}
body.ilovepdf-v22 .site-footer a:hover,.site-footer.usavir-footer a:hover{color:#4a45c9!important;text-decoration:none!important}

@media(max-width:1000px){
  .market-intro,.enrol-route__head{grid-template-columns:1fr}
  .enrol-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-enrol-card{grid-template-columns:1fr}
  .direct-contact-card__head{align-items:start;flex-direction:column}
  .topic-list--wide,.grade-topics{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:760px){
  /* Use the same compact centered two-by-two nav language already used by fitted Usavir pages. */
  .site-header{height:72px}
  .brand-toggle{top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));width:48px;height:48px;border-radius:16px}
  .nav-links,.top-nav.is-collapsed .nav-links{top:max(12px,env(safe-area-inset-top));left:50%;width:min(226px,calc(100vw - 86px));min-width:0;height:48px;padding:5px;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;transform:translateX(-50%);transform-origin:center top;border-radius:18px}
  .top-nav.is-collapsed .nav-links{transform:translateX(-50%) translateY(-10px) scale(.94)}
  .top-nav:not(.is-collapsed) .nav-links{transform:translateX(-50%)}
  .nav-link{width:auto;height:38px;min-width:0;padding:0 8px;place-items:center;justify-content:center;font-size:.64rem}

  .v21-shell{padding-top:calc(90px + env(safe-area-inset-top))}
  .v21-hero{gap:24px}.v21-title{font-size:clamp(3rem,13.8vw,4.35rem);line-height:.9}.v21-lead{font-size:.93rem;line-height:1.6}.v21-actions{gap:8px;margin-top:22px}.v21-actions>.v21-button{flex:1 1 calc(50% - 8px);padding-inline:12px;min-height:45px}.v21-actions>.v21-button:first-child{flex-basis:100%}
  .academy-proof{grid-template-columns:1fr 1fr!important;gap:9px}.proof-card{min-height:104px;padding:15px;border-radius:18px}.proof-card--price{grid-column:1/-1!important;min-height:126px}.proof-card--price strong{font-size:clamp(2.7rem,14vw,4rem)}

  .v21-section{padding:40px 0}.section-heading h2{font-size:clamp(2.3rem,11.5vw,3.5rem)}
  .academy-tablist{grid-template-columns:1.1fr .9fr .8fr;padding:4px;border-radius:17px;gap:2px}.academy-tab{min-height:49px;border-radius:13px;padding:7px 6px;font-size:clamp(.55rem,2.7vw,.68rem);line-height:1.18}.academy-tabpanel{min-height:0;grid-template-columns:1fr;gap:15px;padding:20px;border-radius:23px}.tab-course-copy h3{font-size:clamp(2rem,10.4vw,3rem)}.tab-course-copy p{font-size:.86rem}.tab-course-actions .v21-button{flex:1 1 calc(50% - 6px);padding-inline:9px}.tab-course-side{padding:16px;border-radius:18px}.tab-course-side .v21-button{min-height:44px}

  .market-section{padding:40px 0}.market-card{padding:20px;border-radius:23px}.market-intro{gap:15px}.market-intro h2{font-size:clamp(2.2rem,11vw,3.3rem)}.market-intro p{font-size:.84rem}.price-table{font-size:.75rem;min-width:620px}.price-table th,.price-table td{padding:12px 13px}.price-note{font-size:.64rem}

  .enrol-route{padding:20px;border-radius:23px}.enrol-route__head{gap:13px}.enrol-route__head h2{font-size:clamp(2.2rem,11vw,3.3rem)}.enrol-route__head p{font-size:.84rem}.enrol-steps{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.enrol-step{min-height:130px;padding:14px;border-radius:17px}.enrol-step strong{font-size:.88rem;margin-top:11px}.enrol-step p{font-size:.7rem}
  .faq-grid{grid-template-columns:1fr}.faq-item{padding:18px}

  .enrol-dialog{width:calc(100% - 12px);max-height:97dvh}.enrol-card{max-height:97dvh}.enrol-body{padding:18px}.enrol-intro{font-size:.76rem}.iti__country-selector{--iti-spacer-horizontal:12px}

  .contact-hero{padding-top:5px}.contact-hero .v21-title{font-size:clamp(3.1rem,14vw,4.5rem)}.contact-layout{margin-top:26px;gap:12px}.contact-enrol-card,.direct-contact-card{padding:20px;border-radius:23px}.contact-enrol-card{gap:18px}.contact-enrol-card h2{font-size:clamp(2rem,10vw,3rem)}.direct-contact-card__head{gap:10px;margin-bottom:8px}.direct-contact-card__head h2{font-size:clamp(2rem,10vw,3rem)}.direct-contact-card__head p{font-size:.78rem}.contact-detail{grid-template-columns:1fr;gap:14px;padding:19px 0}.contact-detail__value{font-size:clamp(1.55rem,7.8vw,2.2rem)}.contact-detail__actions{justify-content:flex-start}.contact-detail__actions .v21-button{flex:1 1 auto;padding-inline:10px}.direct-contact-card .copy-feedback{text-align:left}

  .topic-list--wide,.grade-topics{grid-template-columns:1fr 1fr}.grade-block summary{padding:15px 16px}.grade-topics{padding:0 16px 16px}.grade-topics span{font-size:.7rem;padding:9px}
  .course-enrol-cta{padding:20px;border-radius:23px}

  .v21-footer,.global-footer{padding:13px max(12px,env(safe-area-inset-left),env(safe-area-inset-right)) calc(15px + env(safe-area-inset-bottom));gap:7px;font-size:clamp(.49rem,1.75vw,.61rem);justify-content:flex-start;flex-direction:row!important;align-items:center!important}
  .v21-footer nav,.global-footer nav{gap:7px}
  body[data-page="about"] .home-shell{padding-bottom:calc(var(--v22-footer-height) + 10px)}
  body[data-page="tools"] .tools-shell{padding-bottom:calc(var(--v22-footer-height) + 6px)!important}
  body.ilovepdf-v22 .site-footer,.site-footer.usavir-footer{padding:13px 12px calc(15px + env(safe-area-inset-bottom))!important;gap:7px!important;font-size:clamp(.49rem,1.75vw,.61rem)!important;justify-content:flex-start!important}
  body.ilovepdf-v22 .site-footer nav,.site-footer.usavir-footer nav{gap:7px!important}
}

@media(max-width:420px){
  .academy-proof{grid-template-columns:1fr 1fr!important}.proof-card--price{grid-column:1/-1!important}
  .academy-tab{font-size:.56rem}.tab-course-actions{display:grid;grid-template-columns:1fr 1fr}.tab-course-actions .v21-button{width:100%}
  .enrol-steps{grid-template-columns:1fr 1fr}.enrol-step{min-height:124px;padding:12px}.enrol-step p{font-size:.67rem}
  .topic-list--wide,.grade-topics{grid-template-columns:1fr}
}
