:root {
    --sva-ink: #17233b;
    --sva-muted: #68738a;
    --sva-orange: #f36b2b;
    --sva-orange-2: #ff915d;
    --sva-saffron: #ffb33a;
    --sva-green: #17866f;
    --sva-soft: #fff5ed;
    --sva-line: #e6eaf0;
    --sva-card: #fff;
    --sva-shadow: 0 20px 55px rgba(30, 43, 68, .09)
}

.sva-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
    padding: 16px 20px;
    border-radius: 18px;
    background: linear-gradient(125deg, #192640, #263b63);
    color: #fff;
    box-shadow: 0 12px 32px rgba(20, 34, 58, .16)
}

.sva-topbar>div {
    display: grid
}

.sva-topbar strong {
    font-size: 15px
}

.sva-kicker {
    color: #ffc394;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase
}

.sva-online {
    display: flex;
    gap: 7px;
    align-items: center;
    color: #dfe7f3;
    font-size: 10px;
    font-weight: 700
}

.sva-online i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #54d8aa;
    box-shadow: 0 0 0 4px rgba(84, 216, 170, .14)
}

.sva-tabs {
    display: flex;
    gap: 6px;
    margin: 0 0 18px;
    padding: 6px;
    overflow-x: auto;
    border: 1px solid var(--sva-line);
    border-radius: 16px;
    background: #fff;
    scrollbar-width: none;
    box-shadow: 0 7px 25px rgba(25, 38, 64, .05)
}

.sva-tabs::-webkit-scrollbar {
    display: none
}

.sva-tabs a {
    display: flex;
    min-width: max-content;
    min-height: 42px;
    gap: 7px;
    align-items: center;
    padding: 9px 13px;
    border-radius: 11px;
    color: #637087;
    font-size: 10px;
    font-weight: 800;
    text-decoration: none
}

.sva-tabs a:hover,
.sva-tabs a.active {
    background: var(--sva-soft);
    color: #cf4e13
}

.sva-tab-icon {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #b6bfcc
}

.sva-tabs a.active .sva-tab-icon {
    background: var(--sva-orange)
}

.sva-hero {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 35px;
    align-items: center;
    min-height: 320px;
    padding: 46px;
    border-radius: 28px;
    background: radial-gradient(circle at 88% 10%, rgba(255, 179, 58, .3), transparent 26%), linear-gradient(130deg, #fff4e9, #fff 55%);
    border: 1px solid #f4ddca;
    box-shadow: var(--sva-shadow);
    overflow: hidden
}

.sva-eyebrow {
    display: block;
    margin-bottom: 8px;
    color: #d75b20;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase
}

.sva-hero h1,
.sva-page-head h1,
.sva-course-hero h1,
.sva-exam-intro h1,
.sva-reader h1 {
    margin: 0;
    color: var(--sva-ink);
    font-size: clamp(27px, 4vw, 44px);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: -.045em
}

.sva-hero p,
.sva-page-head p,
.sva-course-hero p {
    max-width: 630px;
    margin: 15px 0;
    color: var(--sva-muted);
    font-size: 13px;
    line-height: 1.75
}

.sva-hero-actions {
    display: flex;
    gap: 9px;
    margin-top: 25px
}

.sva-btn {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 11px 18px;
    border: 1px solid transparent;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 850;
    text-decoration: none;
    cursor: pointer
}

.sva-btn-primary {
    border-color: var(--sva-orange);
    background: linear-gradient(135deg, var(--sva-orange), #dd5217);
    color: #fff !important;
    box-shadow: 0 8px 20px rgba(235, 94, 34, .24)
}

.sva-btn-ghost {
    border-color: #d9dee6;
    background: #fff;
    color: var(--sva-ink) !important
}

.sva-orbit,
.sva-big-progress {
    --angle: calc(var(--value)*3.6deg);
    display: grid;
    width: 145px;
    height: 145px;
    place-content: center;
    border-radius: 50%;
    background: radial-gradient(circle, #fff 56%, transparent 57%), conic-gradient(var(--sva-orange) var(--angle), #e7ebf0 0);
    text-align: center
}

.sva-orbit strong,
.sva-big-progress strong {
    color: var(--sva-ink);
    font-size: 30px;
    font-weight: 900
}

.sva-orbit span,
.sva-big-progress span {
    color: var(--sva-muted);
    font-size: 9px;
    font-weight: 750;
    text-transform: uppercase
}

.sva-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin: 16px 0
}

.sva-stat-grid article {
    display: flex;
    min-height: 92px;
    gap: 13px;
    align-items: center;
    padding: 17px;
    border: 1px solid var(--sva-line);
    border-radius: 17px;
    background: var(--sva-card);
    box-shadow: 0 8px 25px rgba(25, 38, 64, .045)
}

.sva-stat-grid article>div {
    display: grid
}

.sva-stat-grid strong {
    color: var(--sva-ink);
    font-size: 17px;
    font-weight: 900
}

.sva-stat-grid small {
    color: var(--sva-muted);
    font-size: 9px;
    font-weight: 700
}

.sva-stat-icon {
    display: grid;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    place-items: center;
    border-radius: 12px;
    background: var(--sva-soft)
}

.sva-stat-icon:before {
    content: '✦';
    color: var(--sva-orange);
    font-size: 17px
}

.sva-section {
    margin-top: 26px
}

.sva-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    margin-bottom: 12px
}

.sva-section-head span {
    color: #d75b20;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase
}

.sva-section-head h2 {
    margin: 2px 0;
    color: var(--sva-ink);
    font-size: 20px;
    font-weight: 900
}

.sva-section-head>a {
    color: #d75b20;
    font-size: 10px;
    font-weight: 800
}

.sva-current-card {
    display: grid;
    grid-template-columns: 150px 1fr auto;
    gap: 22px;
    align-items: center;
    padding: 18px;
    border: 1px solid var(--sva-line);
    border-radius: 22px;
    background: #fff;
    box-shadow: var(--sva-shadow)
}

.sva-current-card>img {
    width: 150px;
    height: 112px;
    object-fit: cover;
    border-radius: 15px
}

.sva-current-card h3 {
    margin: 8px 0 5px;
    font-size: 18px;
    font-weight: 900
}

.sva-current-card p {
    margin: 0 0 10px;
    color: var(--sva-muted);
    font-size: 11px
}

.sva-pill {
    display: inline-flex;
    width: max-content;
    padding: 5px 9px;
    border-radius: 20px;
    background: var(--sva-soft);
    color: #cf4e13;
    font-size: 8px;
    font-weight: 850;
    text-transform: uppercase
}

.sva-progress {
    height: 7px;
    overflow: hidden;
    border-radius: 20px;
    background: #edf0f4
}

.sva-progress i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--sva-orange), var(--sva-saffron))
}

.sva-current-card small {
    color: var(--sva-muted);
    font-size: 9px
}

.sva-circle-go {
    display: grid;
    width: 45px;
    height: 45px;
    place-items: center;
    border-radius: 50%;
    background: var(--sva-ink);
    color: #fff !important;
    font-size: 20px;
    text-decoration: none
}

.sva-certificate-teaser {
    display: flex;
    gap: 15px;
    align-items: center;
    padding: 20px;
    border: 1px dashed #e3a47e;
    border-radius: 19px;
    background: #fffaf6
}

.sva-certificate-teaser.earned {
    border-color: #77c7b4;
    background: #f0fbf7
}

.sva-medallion {
    display: grid;
    width: 47px;
    height: 47px;
    place-items: center;
    border-radius: 50%;
    background: var(--sva-orange);
    color: #fff;
    font-size: 20px
}

.sva-certificate-teaser div {
    flex: 1
}

.sva-certificate-teaser strong {
    font-size: 14px
}

.sva-certificate-teaser p {
    margin: 4px 0;
    color: var(--sva-muted);
    font-size: 10px
}

.sva-certificate-teaser>a {
    color: #cf4e13;
    font-size: 10px;
    font-weight: 850
}

.sva-empty {
    padding: 28px;
    border: 1px dashed #ccd3de;
    border-radius: 16px;
    color: var(--sva-muted);
    background: #fff;
    text-align: center;
    font-size: 11px
}

.sva-page-head,
.sva-course-hero {
    padding: 32px;
    border: 1px solid var(--sva-line);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 10px 32px rgba(25, 38, 64, .05)
}

.sva-page-head h1,
.sva-course-hero h1 {
    font-size: 31px
}

.sva-path {
    display: grid;
    margin-top: 20px
}

.sva-path-item {
    position: relative;
    display: grid;
    grid-template-columns: 55px 1fr;
    gap: 16px;
    padding-bottom: 20px
}

.sva-path-item:not(:last-child):before {
    position: absolute;
    top: 43px;
    bottom: -2px;
    left: 26px;
    width: 2px;
    background: #e4e8ee;
    content: ''
}

.sva-path-number {
    z-index: 1;
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border: 6px solid var(--member-bg);
    border-radius: 50%;
    background: var(--sva-orange);
    color: #fff;
    font-size: 12px;
    font-weight: 900
}

.sva-path-item.complete .sva-path-number {
    background: var(--sva-green)
}

.sva-path-item.locked .sva-path-number {
    background: #c7ced8
}

.sva-path-card {
    display: flex;
    gap: 20px;
    align-items: center;
    padding: 24px;
    border: 1px solid var(--sva-line);
    border-radius: 20px;
    background: #fff
}

.sva-path-card>div {
    flex: 1
}

.sva-path-card h2 {
    margin: 8px 0 5px;
    font-size: 18px;
    font-weight: 900
}

.sva-path-card p {
    margin: 0 0 13px;
    color: var(--sva-muted);
    font-size: 11px
}

.sva-path-card small {
    color: var(--sva-muted);
    font-size: 9px
}

.sva-lock {
    color: #8b95a5;
    font-size: 10px
}

.sva-course-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 18px
}

.sva-course-card {
    overflow: hidden;
    border: 1px solid var(--sva-line);
    border-radius: 21px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(25, 38, 64, .05)
}

.sva-course-card.locked {
    filter: grayscale(.8);
    opacity: .72
}

.sva-course-image {
    position: relative;
    height: 160px;
    background: linear-gradient(130deg, #25395d, #e86628);
    overflow: hidden
}

.sva-course-image img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.sva-course-image>span {
    display: grid;
    height: 100%;
    place-items: center;
    color: #fff;
    font-size: 50px
}

.sva-course-image>b {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 5px 9px;
    border-radius: 15px;
    background: rgba(255, 255, 255, .9);
    font-size: 8px
}

.sva-course-body {
    padding: 19px
}

.sva-course-body>small {
    color: var(--sva-muted);
    font-size: 9px
}

.sva-course-body h2 {
    margin: 6px 0;
    font-size: 17px;
    font-weight: 900
}

.sva-course-body p {
    min-height: 36px;
    color: var(--sva-muted);
    font-size: 10px
}

.sva-course-foot {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
    font-size: 9px
}

.sva-course-foot a {
    color: #d75b20;
    font-weight: 850
}

.sva-course-hero>a {
    display: block;
    margin-bottom: 18px;
    color: #d75b20;
    font-size: 10px;
    font-weight: 800
}

.sva-lesson-list {
    margin-top: 20px
}

.sva-lesson-list article {
    display: grid;
    grid-template-columns: 42px 1fr auto;
    gap: 14px;
    align-items: center;
    margin-bottom: 8px;
    padding: 15px;
    border: 1px solid var(--sva-line);
    border-radius: 15px;
    background: #fff
}

.sva-lesson-list article>span {
    display: grid;
    width: 37px;
    height: 37px;
    place-items: center;
    border-radius: 11px;
    background: var(--sva-soft);
    color: #d75b20;
    font-size: 10px;
    font-weight: 900
}

.sva-lesson-list article.complete>span {
    background: #e9f8f3;
    color: var(--sva-green)
}

.sva-lesson-list article.locked {
    opacity: .58
}

.sva-lesson-list strong,
.sva-lesson-list small {
    display: block
}

.sva-lesson-list strong {
    font-size: 12px
}

.sva-lesson-list small {
    color: var(--sva-muted);
    font-size: 9px
}

.sva-lesson-list a {
    color: #d75b20;
    font-size: 10px;
    font-weight: 850
}

.sva-lesson-list b {
    font-size: 9px
}

.sva-assessment-card {
    margin-top: 18px;
    padding: 27px;
    border-radius: 22px;
    background: linear-gradient(130deg, #1a2945, #314c7d);
    color: #fff
}

.sva-assessment-card.locked {
    background: #707b8b
}

.sva-assessment-card>span {
    color: #ffc08e;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase
}

.sva-assessment-card h2 {
    margin: 5px 0;
    color: #fff;
    font-size: 22px
}

.sva-assessment-card p {
    color: #dce4ef;
    font-size: 11px
}

.sva-reader {
    overflow: hidden;
    border: 1px solid var(--sva-line);
    border-radius: 24px;
    background: #fff;
    box-shadow: var(--sva-shadow)
}

.sva-reader>header {
    padding: 30px
}

.sva-reader>header>img {
    width: 100%;
    max-height: 340px;
    margin-bottom: 25px;
    object-fit: cover;
    border-radius: 17px
}

.sva-reader>header>a {
    display: block;
    margin-bottom: 18px;
    color: #d75b20;
    font-size: 10px;
    font-weight: 800
}

.sva-reader>header p {
    color: var(--sva-muted)
}

.sva-reading-body {
    padding: 5px 45px 35px;
    color: #334057;
    font-size: 14px;
    line-height: 1.9
}

.sva-reading-body img {
    max-width: 100%;
    height: auto;
    border-radius: 14px
}

.sva-reading-body h2,
.sva-reading-body h3 {
    color: var(--sva-ink);
    font-weight: 900
}

.sva-tips,
.sva-summary {

    padding: 22px;
    border-radius: 16px
}

.sva-tips {
    border-left: 4px solid var(--sva-saffron);
    background: #fff8e9;
}

.sva-summary {
    border-left: 4px solid var(--sva-green);
    background: #eefaf6;
    margin-top: 20px;
}

.sva-tips>strong,
.sva-summary>strong {
    display: block;
    margin-bottom: 8px;
    font-size: 13px;
}

.sva-reader>footer {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 20px 30px;
    border-top: 1px solid var(--sva-line);
    background: #fafbfc
}

.sva-assessment-list {
    display: grid;
    gap: 10px;
    margin-top: 18px;
}

.sva-assessment-list article {
    display: grid;
    grid-template-columns: 48px 1fr auto;
    gap: 15px;
    align-items: center;
    padding: 18px;
    border: 1px solid var(--sva-line);
    border-radius: 17px;
    background: #fff
}

.sva-assessment-list article.final {
    border-color: #efb58f;
    background: #fff9f4
}

.sva-assessment-mark {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 13px;
    background: var(--sva-soft);
    color: var(--sva-orange);
    font-size: 18px;
    font-weight: 900
}

.sva-assessment-list small,
.sva-assessment-list p {
    color: var(--sva-muted);
    font-size: 9px
}

.sva-assessment-list h2 {
    margin: 2px 0;
    font-size: 14px
}

.sva-exam-intro {
    padding: 38px;
    border: 1px solid var(--sva-line);
    border-radius: 24px;
    background: #fff
}

.sva-exam-facts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 25px 0
}

.sva-exam-facts span {
    display: grid;
    padding: 14px;
    border-radius: 14px;
    background: #f6f8fa;
    color: var(--sva-muted);
    font-size: 9px
}

.sva-exam-facts strong {
    color: var(--sva-ink);
    font-size: 19px
}

.sva-instructions {
    margin: 20px 0;
    color: var(--sva-muted);
    font-size: 12px
}

.sva-attempt-history {
    display: grid;
    gap: 7px
}

.sva-attempt-history a {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 15px;
    padding: 14px;
    border: 1px solid var(--sva-line);
    border-radius: 13px;
    background: #fff;
    color: var(--sva-ink);
    text-decoration: none
}

.sva-attempt-history b.pass {
    color: var(--sva-green)
}

.sva-attempt-history b.fail {
    color: #b84d42
}

.sva-exam>header {
    position: sticky;
    top: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 22px;
    border-radius: 17px;
    background: #1b2945;
    color: #fff
}

.sva-exam>header h1 {
    margin: 0;
    color: #fff;
    font-size: 20px
}

.sva-timer {
    padding: 10px 14px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .12);
    font-weight: 900
}

.sva-timer.urgent {
    background: #b83f36;
    animation: svaPulse 1s infinite
}

.sva-question-nav {
    display: flex;
    gap: 5px;
    margin: 12px 0;
    overflow: auto
}

.sva-question-nav a {
    display: grid;
    min-width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 9px;
    background: #fff;
    color: var(--sva-muted);
    font-size: 10px;
    text-decoration: none
}

.sva-question-nav a.answered {
    background: #e7f7f1;
    color: var(--sva-green)
}

.sva-question {
    margin-bottom: 14px;
    padding: 25px;
    border: 1px solid var(--sva-line);
    border-radius: 20px;
    background: #fff
}

.sva-question>span {
    color: var(--sva-muted);
    font-size: 9px
}

.sva-question-text {
    margin: 10px 0 18px;
    color: var(--sva-ink);
    font-size: 16px;
    font-weight: 800
}

.sva-options {
    display: grid;
    gap: 8px
}

.sva-options label {
    display: flex;
    min-height: 50px;
    gap: 12px;
    align-items: center;
    padding: 12px;
    border: 1px solid var(--sva-line);
    border-radius: 13px;
    cursor: pointer
}

.sva-options label:has(input:checked) {
    border-color: var(--sva-orange);
    background: var(--sva-soft)
}

.sva-options input {
    position: absolute;
    opacity: 0
}

.sva-options i {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    border: 2px solid #bbc3cf;
    border-radius: 50%
}

.sva-options input:checked+i {
    border: 5px solid var(--sva-orange)
}

.sva-options b {
    font-size: 11px
}

.sva-exam>footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 18px;
    border-radius: 16px;
    background: #fff
}

.sva-exam>footer span {
    color: var(--sva-muted);
    font-size: 9px
}

.sva-result {
    padding: 45px;
    border: 1px solid var(--sva-line);
    border-radius: 25px;
    background: #fff;
    text-align: center
}

.sva-result-ring {
    display: grid;
    width: 130px;
    height: 130px;
    margin: 0 auto 20px;
    place-items: center;
    border: 10px solid #e5e9ef;
    border-radius: 50%
}

.sva-result.passed .sva-result-ring {
    border-color: #4fb69d
}

.sva-result.failed .sva-result-ring {
    border-color: #df837b
}

.sva-result-ring strong {
    font-size: 27px
}

.sva-result h1 {
    margin: 5px 0;
    font-size: 27px
}

.sva-result p {
    color: var(--sva-muted)
}

.sva-review-list {
    display: grid;
    gap: 8px
}

.sva-review-list article {
    display: flex;
    gap: 13px;
    padding: 16px;
    border: 1px solid var(--sva-line);
    border-radius: 14px;
    background: #fff
}

.sva-review-list article>span {
    font-size: 20px
}

.sva-review-list .correct>span {
    color: var(--sva-green)
}

.sva-review-list .incorrect>span {
    color: #c55349
}

.sva-review-list strong {
    font-size: 11px
}

.sva-review-list p {
    margin: 5px 0;
    color: var(--sva-muted);
    font-size: 10px
}

.sva-progress-dashboard {
    display: grid;
    grid-template-columns: 190px 1fr;
    gap: 20px;
    align-items: center;
    margin-top: 18px;
    padding: 25px;
    border-radius: 22px;
    background: #fff
}

.sva-big-progress {
    width: 170px;
    height: 170px
}

.sva-progress-dashboard .sva-stat-grid {
    grid-template-columns: repeat(3, 1fr);
    margin: 0
}

.sva-progress-courses {
    display: grid;
    gap: 8px;
    margin-top: 18px
}

.sva-progress-courses article {
    display: grid;
    grid-template-columns: 220px 1fr 45px;
    gap: 15px;
    align-items: center;
    padding: 15px;
    border: 1px solid var(--sva-line);
    border-radius: 14px;
    background: #fff
}

.sva-progress-courses strong,
.sva-progress-courses small {
    display: block
}

.sva-progress-courses small {
    color: var(--sva-muted);
    font-size: 9px
}

.sva-certificate-page {
    padding: 20px
}

.sva-certificate {
    position: relative;
    max-width: 820px;
    margin: auto;
    padding: 55px;
    border: 10px double #d7a352;
    background: radial-gradient(circle at center, #fff 30%, #fffaf0);
    text-align: center;
    box-shadow: var(--sva-shadow)
}

.sva-certificate-mark {
    display: grid;
    width: 65px;
    height: 65px;
    margin: auto;
    place-items: center;
    border-radius: 50%;
    background: #9b271b;
    color: #fff;
    font-size: 28px
}

.sva-certificate>small {
    display: block;
    margin: 12px;
    color: #9b271b;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase
}

.sva-certificate h1 {
    font-family: Georgia, serif;
    font-size: 38px
}

.sva-certificate h2 {
    color: #9b271b;
    font-family: Georgia, serif;
    font-size: 32px
}

.sva-certificate-meta {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 30px 0
}

.sva-certificate-meta span {
    display: grid;
    font-size: 8px;
    text-transform: uppercase
}

.sva-certificate-meta b {
    font-size: 13px
}

.sva-certificate-verify {
    display: flex;
    gap: 15px;
    align-items: center;
    justify-content: center;
    text-align: left
}

.sva-certificate-verify img {
    width: 90px;
    height: 90px
}

.sva-certificate-verify div {
    display: grid
}

.sva-certificate-verify code {
    max-width: 330px;
    overflow: hidden;
    font-size: 7px
}

.sva-certificate-actions {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 18px
}

.sva-locked-certificate {
    padding: 55px;
    border: 1px dashed #e0a079;
    border-radius: 25px;
    background: #fff9f4;
    text-align: center
}

.sva-locked-certificate>span {
    font-size: 45px;
    color: var(--sva-orange)
}

.sva-resource-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 13px;
    margin-top: 18px
}

.sva-resource-grid>a {
    display: flex;
    min-height: 210px;
    flex-direction: column;
    padding: 22px;
    border: 1px solid var(--sva-line);
    border-radius: 19px;
    background: #fff;
    color: var(--sva-ink);
    text-decoration: none
}

.sva-resource-grid>a>span {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    background: var(--sva-soft);
    color: var(--sva-orange);
    font-size: 19px
}

.sva-resource-grid small {
    margin-top: 18px;
    color: #d75b20;
    font-size: 8px;
    text-transform: uppercase
}

.sva-resource-grid h2 {
    margin: 5px 0;
    font-size: 15px
}

.sva-resource-grid p {
    color: var(--sva-muted);
    font-size: 10px
}

.sva-resource-grid b {
    margin-top: auto;
    color: #d75b20;
    font-size: 9px
}

.sva-news-list {
    display: grid;
    gap: 12px;
    margin-top: 18px
}

.sva-news-list article {
    padding: 25px;
    border: 1px solid var(--sva-line);
    border-radius: 18px;
    background: #fff
}

.sva-news-list article.urgent {
    border-left: 4px solid #c94f43
}

.sva-news-list article.important {
    border-left: 4px solid var(--sva-saffron)
}

.sva-news-list article>div:first-child {
    display: flex;
    justify-content: space-between
}

.sva-news-list time {
    color: var(--sva-muted);
    font-size: 9px
}

.sva-news-list h2 {
    font-size: 18px
}

.sva-news-list article>div {
    color: #4d596d;
    font-size: 11px
}

.sva-pin {
    color: #d75b20;
    font-size: 8px;
    text-transform: uppercase
}

.sva-help-grid {
    display: grid;
    gap: 8px;
    margin-top: 18px
}

.sva-help-grid details {
    border: 1px solid var(--sva-line);
    border-radius: 15px;
    background: #fff
}

.sva-help-grid summary {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    padding: 15px 18px;
    color: var(--sva-ink);
    font-size: 11px;
    font-weight: 850;
    cursor: pointer
}

.sva-help-grid p {
    padding: 0 18px 18px;
    color: var(--sva-muted);
    font-size: 11px
}

.sva-support {
    margin-top: 18px;
    padding: 28px;
    border-radius: 22px;
    background: #1c2b48;
    color: #fff
}

.sva-support h2 {
    color: #fff
}

.sva-support p {
    color: #d6deea;
    font-size: 11px
}

.sva-public-verify {
    min-height: 75vh;
    padding: 70px 15px;
    background: radial-gradient(circle at 50% 0, #ffe8d6, transparent 40%), #f6f8fb
}

.sva-verify-card {
    max-width: 640px;
    margin: auto;
    padding: 38px;
    border: 1px solid var(--sva-line);
    border-radius: 25px;
    background: #fff;
    box-shadow: var(--sva-shadow)
}

.sva-verify-brand {
    display: flex;
    gap: 12px;
    align-items: center
}

.sva-verify-brand>span {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 50%;
    background: #9b271b;
    color: #fff;
    font-size: 22px
}

.sva-verify-brand div {
    display: grid
}

.sva-verify-brand small {
    color: var(--sva-muted)
}

.sva-verify-card h1 {
    margin-top: 30px
}

.sva-verify-card>p {
    color: var(--sva-muted)
}

.sva-verify-card label {
    display: grid;
    gap: 7px;
    font-size: 10px;
    font-weight: 800
}

.sva-verify-card input {
    min-height: 48px;
    padding: 10px;
    border: 1px solid var(--sva-line);
    border-radius: 12px
}

.sva-verify-card button {
    width: 100%;
    min-height: 48px;
    margin-top: 10px;
    border: 0;
    border-radius: 12px;
    background: var(--sva-orange);
    color: #fff;
    font-weight: 800
}

.sva-verify-status {
    display: flex;
    gap: 13px;
    align-items: center;
    margin: 30px 0;
    padding: 18px;
    border-radius: 15px
}

.sva-verify-status>span {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    font-size: 20px
}

.sva-verify-status div {
    display: grid
}

.sva-verify-status.valid {
    background: #eaf8f3
}

.sva-verify-status.valid>span {
    background: var(--sva-green)
}

.sva-verify-status.revoked,
.sva-verify-status.invalid {
    background: #fff0ee
}

.sva-verify-status.revoked>span,
.sva-verify-status.invalid>span {
    background: #b84840
}

.sva-verify-card dl {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 10px;
    padding: 20px;
    border-radius: 15px;
    background: #f7f8fa
}

.sva-verify-card dt {
    color: var(--sva-muted);
    font-size: 10px
}

.sva-verify-card dd {
    font-size: 11px;
    font-weight: 800
}

.sva-verify-warning {
    padding: 12px;
    background: #fff0ee !important;
    color: #a33f37 !important
}

@keyframes svaPulse {
    50% {
        transform: scale(1.04)
    }
}

@media(max-width:767.98px) {
    .member-area>.container-xl {
        padding: 0 8px
    }

    .sva-topbar {
        position: relative;
        margin-bottom: 8px;
        padding: 13px 15px;
        border-radius: 14px
    }

    .sva-tabs {
        position: sticky;
        top: 0;
        z-index: 20;
        margin-right: -8px;
        margin-left: -8px;
        border-radius: 0;
        padding: 5px 8px
    }

    .sva-tabs a {
        min-height: 44px;
        padding: 8px 11px
    }

    .sva-hero {
        display: block;
        min-height: auto;
        padding: 26px 22px;
        border-radius: 20px
    }

    .sva-hero h1 {
        font-size: 29px
    }

    .sva-hero-actions {
        display: grid
    }

    .sva-orbit {
        width: 105px;
        height: 105px;
        margin: 22px auto 0
    }

    .sva-orbit strong {
        font-size: 23px
    }

    .sva-stat-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px
    }

    .sva-stat-grid article {
        min-height: 84px;
        padding: 13px
    }

    .sva-stat-grid strong {
        font-size: 15px
    }

    .sva-current-card {
        grid-template-columns: 1fr;
        padding: 14px
    }

    .sva-current-card>img {
        width: 100%;
        height: 150px
    }

    .sva-circle-go {
        position: absolute;
        right: 25px
    }

    .sva-certificate-teaser {
        align-items: flex-start;
        flex-wrap: wrap
    }

    .sva-certificate-teaser div {
        min-width: calc(100% - 65px)
    }

    .sva-page-head,
    .sva-course-hero {
        padding: 23px 20px;
        border-radius: 18px
    }

    .sva-page-head h1,
    .sva-course-hero h1 {
        font-size: 26px
    }

    .sva-path-item {
        grid-template-columns: 38px 1fr;
        gap: 8px
    }

    .sva-path-number {
        width: 38px;
        height: 38px;
        border-width: 4px
    }

    .sva-path-item:not(:last-child):before {
        top: 33px;
        left: 18px
    }

    .sva-path-card {
        display: block;
        padding: 17px
    }

    .sva-path-card .sva-btn {
        width: 100%;
        margin-top: 14px
    }

    .sva-course-grid,
    .sva-resource-grid {
        grid-template-columns: 1fr
    }

    .sva-course-image {
        height: 180px
    }

    .sva-lesson-list article {
        grid-template-columns: 36px 1fr auto;
        padding: 12px
    }

    .sva-reader {
        border-radius: 17px
    }

    .sva-reader>header {
        padding: 20px
    }

    .sva-reading-body {
        padding: 0 20px 25px;
        font-size: 14px
    }

    .sva-tips,
    .sva-summary {
        margin-top: 20px;
    }

    .sva-reader>footer {
        position: sticky;
        bottom: 0;
        z-index: 5;
        padding: 10px;
        box-shadow: 0 -8px 20px rgba(20, 30, 50, .08)
    }

    .sva-reader>footer .sva-btn {
        padding: 10px 12px
    }

    .sva-assessment-list article {
        grid-template-columns: 42px 1fr;
        gap: 10px
    }

    .sva-assessment-list article>.sva-btn,
    .sva-assessment-list article>b {
        grid-column: 1/-1;
        width: 100%
    }

    .sva-exam-intro {
        padding: 24px 20px
    }

    .sva-exam-facts {
        gap: 6px
    }

    .sva-exam-facts span {
        padding: 10px
    }

    .sva-exam>header {
        border-radius: 13px
    }

    .sva-question {
        padding: 18px 15px
    }

    .sva-options label {
        min-height: 54px
    }

    .sva-exam>footer {
        position: sticky;
        bottom: 0;
        z-index: 6
    }

    .sva-exam>footer span {
        display: none
    }

    .sva-exam>footer .sva-btn {
        width: 100%
    }

    .sva-result {
        padding: 30px 18px
    }

    .sva-progress-dashboard {
        display: block;
        padding: 18px
    }

    .sva-big-progress {
        width: 150px;
        height: 150px;
        margin: 0 auto 20px
    }

    .sva-progress-dashboard .sva-stat-grid {
        grid-template-columns: 1fr 1fr
    }

    .sva-progress-courses article {
        grid-template-columns: 1fr 40px
    }

    .sva-progress-courses .sva-progress {
        grid-column: 1/-1;
        grid-row: 2
    }

    .sva-certificate-page {
        padding: 0
    }

    .sva-certificate {
        padding: 30px 15px;
        border-width: 6px
    }

    .sva-certificate h1 {
        font-size: 27px
    }

    .sva-certificate h2 {
        font-size: 24px
    }

    .sva-certificate-meta {
        grid-template-columns: 1fr
    }

    .sva-certificate-verify {
        display: block;
        text-align: center
    }

    .sva-certificate-verify img {
        margin-bottom: 10px
    }

    .sva-certificate-verify code {
        display: none
    }

    .sva-certificate-actions {
        display: grid
    }

    .sva-verify-card {
        padding: 24px 18px
    }

    .sva-verify-card dl {
        grid-template-columns: 1fr
    }

    .sva-online {
        display: none
    }
}

@media(max-width:420px) {
    .sva-stat-grid {
        grid-template-columns: 1fr
    }

    .sva-hero h1 {
        font-size: 26px
    }

    .sva-exam-facts {
        grid-template-columns: 1fr
    }

    .sva-progress-dashboard .sva-stat-grid {
        grid-template-columns: 1fr 1fr
    }
}

@media print {
    body>*:not(.member-area) {
        display: none !important
    }

    .member-sidebar,
    .member-mobile-head,
    .sva-topbar,
    .sva-tabs,
    .sva-certificate-actions {
        display: none !important
    }

    .member-shell {
        display: block !important
    }

    .sva-certificate-page {
        padding: 0
    }

    .sva-certificate {
        box-shadow: none;
        page-break-inside: avoid
    }
}

.sva-reading-notice {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin: 0 45px 24px;
    padding: 16px 18px;
    border: 1px solid #f5d6bd;
    border-radius: 14px;
    background: #fff8f1;
    color: #586174;
    font-size: 12px;
    line-height: 1.6
}

.sva-reading-notice strong {
    flex: 0 0 auto;
    color: #d75b20
}

@media(max-width:767.98px) {
    .sva-reading-notice {
        display: block;
        margin: 0 20px 14px;
        padding: 13px
    }

    .sva-reading-notice strong {
        display: block;
        margin-bottom: 4px
    }

    .sva-complete-form .sva-btn {
        min-width: 190px
    }
}

.sva-btn.sva-btn-primary {
    border-color: #c84612;
    background: linear-gradient(135deg, #d94f17, #b93a0c);
    color: #fff !important;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease
}

.sva-btn.sva-btn-primary:hover,
.sva-btn.sva-btn-primary:focus,
.sva-btn.sva-btn-primary:active {
    border-color: #8f2b08;
    background: #9f330c;
    color: #fff !important;
    box-shadow: 0 10px 24px rgba(117, 35, 7, .34);
    transform: translateY(-1px)
}

.sva-btn.sva-btn-ghost:hover,
.sva-btn.sva-btn-ghost:focus {
    border-color: #c84612;
    background: #fff4ec;
    color: #a8320c !important
}

.sva-btn:disabled,
.sva-btn[disabled] {
    border-color: #d7a58f;
    background: #c98f75;
    color: #fff !important;
    box-shadow: none;
    cursor: not-allowed;
    transform: none;
    opacity: 1
}

.sva-exam-intro>h1 {
    max-width: 850px;
    font-size: 30px;
    line-height: 1.18;
    letter-spacing: -.025em
}

.sva-exam-intro .sva-exam-facts {
    margin: 22px 0 26px
}

.sva-exam-intro .sva-exam-facts span {
    min-height: 78px;
    justify-content: center;
    padding: 14px 16px;
    font-size: 10px
}

.sva-exam-intro .sva-exam-facts strong {
    margin-bottom: 3px;
    font-size: 22px
}

.sva-exam-intro .sva-instructions {
    font-size: 13px;
    line-height: 1.65
}

.sva-exam-intro .sva-instructions h1,
.sva-exam-intro .sva-instructions h2 {
    margin: 22px 0 8px;
    font-size: 20px;
    line-height: 1.25;
    letter-spacing: -.015em
}

.sva-exam-intro .sva-instructions h3 {
    margin: 18px 0 7px;
    font-size: 17px
}

.sva-exam-intro .sva-instructions p {
    margin: 0 0 11px
}

.sva-exam-intro .sva-instructions ul,
.sva-exam-intro .sva-instructions ol {
    margin: 7px 0 14px;
    padding-left: 22px
}

.sva-start-exam-form .sva-btn {
    min-width: 190px;
    min-height: 50px;
    padding: 13px 24px;
    font-size: 13px
}

@media(max-width:767.98px) {
    .sva-exam-intro {
        padding: 22px 16px
    }

    .sva-exam-intro>h1 {
        font-size: 23px;
        line-height: 1.13
    }

    .sva-exam-intro .sva-exam-facts {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
        margin: 18px 0 20px
    }

    .sva-exam-intro .sva-exam-facts span {
        min-height: 68px;
        padding: 9px 7px;
        font-size: 8px;
        text-align: center
    }

    .sva-exam-intro .sva-exam-facts strong {
        font-size: 17px
    }

    .sva-exam-intro .sva-instructions {
        font-size: 12px;
        line-height: 1.6
    }

    .sva-exam-intro .sva-instructions h1,
    .sva-exam-intro .sva-instructions h2 {
        margin: 18px 0 7px;
        font-size: 17px
    }

    .sva-exam-intro .sva-instructions h3 {
        font-size: 15px
    }

    .sva-start-exam-form .sva-btn {
        width: 100%;
        min-height: 52px;
        font-size: 13px
    }
}

@media(max-width:767.98px) {
    .sva-exam {
        padding-bottom: 76px
    }

    .sva-exam>header {
        top: 60px;
        min-height: 64px;
        padding: 12px 15px;
        border-radius: 0 0 14px 14px
    }

    .sva-exam>header h1 {
        max-width: 72%;
        font-size: 16px;
        line-height: 1.25
    }

    .sva-exam .sva-timer {
        padding: 9px 11px;
        font-size: 13px
    }

    .sva-exam>footer {
        position: fixed;
        right: 8px;
        bottom: 62px;
        left: 8px;
        z-index: 30;
        margin: 0;
        padding: 10px;
        border: 1px solid var(--sva-line);
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 -6px 24px rgba(20, 30, 50, .16)
    }

    .sva-exam>footer .sva-btn {
        width: 100%;
        min-height: 52px;
        padding: 13px 18px;
        font-size: 13px;
        letter-spacing: 0
    }

    .sva-exam>footer span {
        display: none
    }
}

@media(min-width:768px) {
    .sva-exam>footer .sva-btn {
        min-width: 210px;
        min-height: 50px;
        padding: 13px 24px;
        font-size: 13px
    }
}

@media(max-width:767.98px) {
    .sva-exam {
        padding-bottom: 18px
    }

    .sva-exam>footer {
        position: static;
        right: auto;
        bottom: auto;
        left: auto;
        z-index: auto;
        margin: 14px 0 22px;
        padding: 10px;
        border-radius: 16px;
        box-shadow: 0 8px 22px rgba(20, 30, 50, .1)
    }

    .sva-question:last-of-type {
        margin-bottom: 0
    }
}

.sva-result-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 20px
}

.sva-result-actions .sva-btn {
    min-width: 220px;
    min-height: 52px;
    padding: 13px 24px;
    font-size: 13px
}

.sva-result-actions .sva-btn span {
    font-size: 17px;
    line-height: 1
}

@media(max-width:767.98px) {
    .sva-result-actions {
        display: grid;
        width: 100%;
        margin-top: 18px
    }

    .sva-result-actions .sva-btn {
        width: 100%;
        min-height: 52px;
        font-size: 13px
    }
}

.sva-certificate-success {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    align-items: center;
    margin-bottom: 18px;
    padding: 28px;
    border: 1px solid #f0ceb9;
    border-radius: 24px;
    background: linear-gradient(135deg, #fff8f1, #fff);
    box-shadow: var(--sva-shadow)
}

.sva-certificate-success>span {
    display: grid;
    width: 62px;
    height: 62px;
    place-items: center;
    border-radius: 18px;
    background: #fff0e5;
    font-size: 30px
}

.sva-certificate-success small {
    color: #c84612;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase
}

.sva-certificate-success h1 {
    margin: 3px 0;
    color: var(--sva-ink);
    font-size: 28px;
    font-weight: 900
}

.sva-certificate-success p {
    margin: 0;
    color: var(--sva-muted);
    font-size: 12px
}

.sva-certificate-success-actions {
    grid-column: 1/-1;
    display: flex;
    gap: 9px;
    flex-wrap: wrap
}

.sva-certificate-success-actions .sva-btn {
    min-height: 48px;
    font-size: 12px
}

.sva-share-card {
    position: relative;
    margin: 20px 20px 0;
    padding: 28px;
    border: 1px solid #e6d7cc;
    border-radius: 24px;
    background: radial-gradient(circle at 96% 0, rgba(239, 115, 48, .14), transparent 28%), #fff;
    box-shadow: var(--sva-shadow)
}

.sva-share-heading {
    display: flex;
    gap: 14px;
    align-items: center
}

.sva-share-heading>span {
    display: grid;
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    place-items: center;
    border-radius: 16px;
    background: #fff1e7;
    font-size: 25px
}

.sva-share-heading h2 {
    margin: 0;
    color: var(--sva-ink);
    font-size: 22px;
    font-weight: 900
}

.sva-share-heading p {
    margin: 4px 0 0;
    color: var(--sva-muted);
    font-size: 11px
}

.sva-share-meta {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 20px 0
}

.sva-share-meta span {
    display: grid;
    min-width: 0;
    padding: 12px;
    border-radius: 13px;
    background: #f7f8fa;
    color: var(--sva-muted);
    font-size: 8px;
    text-transform: uppercase
}

.sva-share-meta b {
    overflow: hidden;
    margin-bottom: 3px;
    color: var(--sva-ink);
    font-size: 11px;
    text-overflow: ellipsis;
    text-transform: none;
    white-space: nowrap
}

.sva-share-buttons {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px
}

.sva-share-btn {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0 !important;
    border-radius: 12px !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    box-shadow: 0 7px 16px rgba(20, 30, 50, .12);
    transition: transform .18s ease, filter .18s ease
}

.sva-share-btn:hover,
.sva-share-btn:focus {
    color: #fff !important;
    filter: brightness(.9);
    transform: translateY(-2px)
}

.sva-share-btn.linkedin {
    background: #0a66c2
}

.sva-share-btn.facebook {
    background: #1877f2
}

.sva-share-btn.twitter {
    background: #111
}

.sva-share-btn.whatsapp {
    background: #168d4c
}

.sva-share-btn.copy {
    background: linear-gradient(135deg, #df571d, #b8380c)
}

.sva-share-btn i {
    font-size: 15px
}

.sva-share-toast {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 1000;
    padding: 13px 18px;
    border-radius: 12px;
    background: #146b4e;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .2);
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .2s ease, transform .2s ease
}

.sva-share-toast.show {
    opacity: 1;
    transform: none
}

@media(max-width:767.98px) {
    .sva-certificate-success {
        display: block;
        padding: 22px 18px;
        text-align: center
    }

    .sva-certificate-success>span {
        margin: 0 auto 10px
    }

    .sva-certificate-success h1 {
        font-size: 24px
    }

    .sva-certificate-success-actions {
        display: grid;
        margin-top: 18px
    }

    .sva-certificate-success-actions .sva-btn {
        width: 100%
    }

    .sva-share-card {
        margin: 16px 0 0;
        padding: 20px 15px;
        border-radius: 18px
    }

    .sva-share-heading {
        align-items: flex-start
    }

    .sva-share-heading h2 {
        font-size: 19px
    }

    .sva-share-meta {
        grid-template-columns: 1fr 1fr
    }

    .sva-share-buttons {
        grid-template-columns: 1fr 1fr
    }

    .sva-share-btn {
        min-height: 50px
    }

    .sva-share-btn.copy {
        grid-column: 1/-1
    }

    .sva-share-toast {
        right: 12px;
        bottom: 72px;
        left: 12px;
        text-align: center
    }
}

@media print {

    .sva-certificate-success,
    .sva-share-card {
        display: none !important
    }
}

.sva-share-btn.download {
    background: linear-gradient(135deg, #6b3db4, #3c2478)
}

.sva-share-buttons {
    grid-template-columns: repeat(3, minmax(0, 1fr))
}

.sva-share-btn {
    gap: 9px;
    line-height: 1 !important
}

.sva-share-btn i,
.sva-share-btn svg {
    display: inline-flex !important;
    width: 22px !important;
    height: 22px !important;
    flex: 0 0 22px;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit;
    font-size: 18px !important;
    line-height: 22px !important;
    vertical-align: middle;
    fill: currentColor
}

.sva-share-btn i:before {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
    line-height: 22px !important;
    text-align: center
}

.sva-share-btn svg {
    overflow: visible
}

.sva-share-btn span {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    line-height: 22px !important
}

@media(max-width:767.98px) {
    .sva-share-buttons {
        grid-template-columns: 1fr 1fr
    }

    .sva-share-btn.copy {
        grid-column: auto
    }
}

.sva-certificate-template {
    position: relative;
    width: 100%;
    max-width: 100%;
    aspect-ratio: 2000/1414;
    padding: 0 !important;
    overflow: hidden;
    border: 0 !important;
    background-image: var(--sva-certificate-bg) !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100% !important;
    box-shadow: var(--sva-shadow);
    color: #17130f;
    text-align: center
}

.sva-cert-overlay {
    position: absolute;
    margin: 0
}

.sva-cert-academy {
    top: 14.2%;
    left: 20%;
    width: 60%;
    color: #9f1d14;
    font-family: Georgia, serif;
    font-size: clamp(11px, 1.6vw, 26px);
    font-weight: 700;
    text-transform: uppercase
}

.sva-cert-tagline {
    top: 19.2%;
    left: 20%;
    width: 60%;
    color: #9f1d14;
    font-family: Georgia, serif;
    font-size: clamp(11px, 1.6vw, 11px);
    font-weight: 700;
    text-transform: uppercase
}

.sva-cert-title {
    top: 23.5%;
    left: 17%;
    width: 66%;
    font-family: Georgia, serif;
    font-size: clamp(20px, 3vw, 42px);
    line-height: 1.05
}

.sva-cert-intro {
    top: 31.3%;
    left: 29%;
    display: flex;
    width: 42%;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: clamp(8px, 1.1vw, 16px)
}

.sva-cert-intro span {
    width: 28px;
    border-top: 1px solid #8b351b
}

.sva-cert-name {
    top: 36%;
    left: 22%;
    width: 56%;
    color: #a51612;
    font-family: Georgia, serif;
    font-size: clamp(20px, 2.8vw, 40px);
    font-style: italic;
    line-height: 1
}

.sva-cert-copy {
    top: 42.2%;
    left: 22%;
    width: 56%;
    font-size: clamp(7px, .95vw, 14px);
    line-height: 1.5
}

.sva-cert-copy b {
    font-weight: 400
}

.sva-cert-meta {
    top: 57.4%;
    left: 20%;
    display: grid;
    width: 60%;
    grid-template-columns: repeat(3, 1fr)
}

.sva-cert-meta span {
    display: grid;
    padding: 0 12px;
    border-right: 1px solid #9d5b34
}

.sva-cert-meta span:last-child {
    border: 0
}

.sva-cert-meta small {
    font-size: clamp(6px, .75vw, 11px);
    font-weight: 700;
    text-transform: uppercase
}

.sva-cert-meta b {
    margin-top: 4px;
    color: #991d16;
    font-family: Georgia, serif;
    font-size: clamp(8px, 1.1vw, 16px)
}

.sva-cert-qr {
    top: 66%;
    left: 38%;
    display: flex;
    width: 45%;
    align-items: center;
    gap: 12px;
    text-align: left
}

.sva-cert-qr-code {
    width: 12.5%;
    min-width: 80px;
    max-width: 80px;
}

.sva-cert-qr-code canvas,
.sva-cert-qr-code img,
.sva-cert-qr img {
    width: 100%;
    height: auto;
    display: block;
    min-width: 80px;
    max-width: 80px;
}

.sva-cert-qr div {
    display: grid;
    min-width: 0;
    font-size: clamp(6px, .72vw, 10px);
    line-height: 1.45
}

.sva-cert-qr strong {
    font-size: clamp(7px, .88vw, 12px)
}

.sva-cert-qr em {
    max-width: 220px;
    overflow: hidden;
    color: #9f1d14;
    font-size: clamp(5px, .48vw, 7px);
    font-style: normal;
    text-overflow: ellipsis;
    white-space: nowrap
}

@media(max-width:767.98px) {
    .sva-certificate-page {
        overflow-x: auto
    }

    .sva-certificate-template {
        min-width: 620px
    }

    .sva-cert-qr-code,
    .sva-cert-qr img {
        width: 80px;
        min-width: 80px;
        max-width: 80px;
    }
}

.sva-certificate-template {
    background-image: none !important
}

.sva-cert-bg {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: fill
}

.sva-cert-overlay {
    z-index: 1
}

.sva-cert-meta {
    top: 57%;
    left: 27%;
    width: 46%;
    grid-template-columns: repeat(2, 1fr)
}

.sva-cert-qr {
    top: 66%;
    left: 38%
}

.sva-verify-brand>span {
    overflow: hidden;
    background: #fff
}

.sva-verify-brand>span img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.sva-certificate-disclaimer {
    margin-top: 26px;
    padding: 18px 20px;
    border-left: 4px solid var(--sva-orange);
    border-radius: 0 12px 12px 0;
    background: #fff7f1;
    color: #29364a
}

.sva-certificate-disclaimer strong {
    display: block;
    margin-bottom: 7px;
    font-size: 14px
}

.sva-certificate-disclaimer p {
    margin: 0;
    color: var(--sva-muted);
    font-size: 11px;
    line-height: 1.65
}

@media(max-width:767.98px) {
    .sva-certificate-disclaimer {
        margin-top: 22px;
        padding: 15px
    }

    .sva-certificate-disclaimer p {
        font-size: 10px
    }
}

.sva-verify-form-error {
    margin: 9px 0 0 !important;
    color: #b13a32 !important;
    font-size: 11px;
    font-weight: 700
}

.sva-verify-card button:disabled {
    cursor: wait;
    opacity: .7
}

.sva-certificate-disclaimer p strong {
    display: inline;
    margin: 0;
    color: inherit;
    font-size: inherit
}

.sva-member-certificate-disclaimer {
    margin: 22px 0 8px;
    box-shadow: 0 10px 28px rgba(20, 30, 50, .06)
}

@media(max-width:767.98px) {
    .sva-certificate-success-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .sva-certificate-success-actions .sva-btn {
        width: 100%;
        min-width: 0;
        min-height: 46px;
        padding: 10px 7px;
        font-size: 10px;
        line-height: 1.25;
        white-space: normal
    }

    .sva-certificate-success-actions .sva-btn i {
        margin-right: 4px
    }

    .sva-share-buttons {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .sva-share-btn.copy {
        grid-column: auto
    }
}

.sva-cert-qr {
    top: 66%;
    left: 38%;
    width: 45%;
    align-items: flex-start
}

.sva-cert-qr-code {
    width: 12.5%;
    min-width: 80px;
    max-width: 80px;
}

.sva-cert-qr-code canvas,
.sva-cert-qr-code img {
    width: 100%;
    height: auto;
    display: block
}

.sva-cert-qr div {
    width: 100%;
    line-height: 1.25
}

.sva-cert-qr em {
    display: block;
    max-width: none;
    overflow: visible;
    font-size: clamp(4px, .4vw, 6px);
    line-height: 1.25;
    overflow-wrap: anywhere;
    text-overflow: clip;
    white-space: normal
}

.sva-cert-qr small {
    margin-top: 3px;
    font-size: clamp(4px, .48vw, 7px);
    font-weight: 700
}

.sva-cert-qr code {
    display: block;
    color: #681812;
    font-family: Arial, sans-serif;
    font-size: clamp(4px, .38vw, 6px);
    line-height: 1.2;
    overflow-wrap: anywhere;
    word-break: break-all
}

/* Keep the earned-certificate action prominent and easy to tap. */
.sva-certificate-teaser>a {
    display: inline-flex;
    min-height: 42px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border: 1px solid #c84612;
    border-radius: 11px;
    background: #c84612;
    color: #fff !important;
    font-size: 11px;
    font-weight: 850;
    line-height: 1.2;
    text-decoration: none;
    box-shadow: 0 7px 18px rgba(200, 70, 18, .2);
    transition: background .18s ease, box-shadow .18s ease, transform .18s ease
}

.sva-certificate-teaser>a:hover,
.sva-certificate-teaser>a:focus {
    background: #9f330c;
    color: #fff !important;
    box-shadow: 0 9px 22px rgba(117, 35, 7, .28);
    transform: translateY(-1px)
}

@media(max-width:767.98px) {
    .sva-certificate-teaser>a {
        width: 100%;
        margin-top: 2px
    }
}

/* Keep the remaining progress metrics balanced after optional counters were removed. */
.sva-progress-dashboard .sva-stat-grid,
.sva-overview-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr))
}

@media(max-width:767.98px) {

    .sva-progress-dashboard .sva-stat-grid,
    .sva-overview-stats {
        grid-template-columns: 1fr
    }
}

/*
|--------------------------------------------------------------------------
| PREMIUM ARTICLE READING UI
|--------------------------------------------------------------------------
*/

.article-reading-wrapper {

    background: white;
    border: 1px solid #ffffff;

    border-radius: 18px;

    padding: 20px;

    position: relative;

    overflow: hidden;

}


/*
|--------------------------------------------------------------------------
| TOP ACCENT LINE
|--------------------------------------------------------------------------
*/

.article-reading-wrapper::before {

    content: '';

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

}


/*
|--------------------------------------------------------------------------
| TYPOGRAPHY
|--------------------------------------------------------------------------
*/

.article-reading-wrapper p {

    font-size: 19px;

    line-height: 1.95;

    color: #2b2b2b;

    margin-bottom: 10px;

}


.article-reading-wrapper h2 {

    font-size: 42px;

    line-height: 1.3;

    margin-top: 40px;

    margin-bottom: 16px;

    color: #111827;

    font-weight: 800;

}


.article-reading-wrapper h3 {

    font-size: 30px;

    margin-top: 28px;

    margin-bottom: 14px;

    color: #1f2937;

    font-weight: 700;

}

/*
|--------------------------------------------------------------------------
| TABLES - DESKTOP DEFAULT
|--------------------------------------------------------------------------
*/

.article-reading-wrapper table {

    width: 100%;

    border-collapse: collapse;

    margin: 10px 0;

    border-radius: 12px;

    background: #fff;

    border: 1px solid #f1dcc2;

}


/* HEADINGS */
.article-reading-wrapper table th {

    background: #fff3df;

    color: #92400e;

    font-weight: 700;

    padding: 10px;

    border: 1px solid #f3dfc1;

}


/* CELLS */
.article-reading-wrapper table td {

    padding: 10px;

    border: 1px solid #f5e7d1;

}



/*
|--------------------------------------------------------------------------
| MOBILE TABLE SCROLL
|--------------------------------------------------------------------------
*/

@media(max-width:768px) {

    .article-reading-wrapper table {

        display: block;

        overflow-x: auto;

        -webkit-overflow-scrolling: touch;

        white-space: nowrap;

    }

    .article-reading-wrapper table th,
    .article-reading-wrapper table td {

        min-width: 160px;

    }

}


/*
|--------------------------------------------------------------------------
| MOBILE SCROLLBAR
|--------------------------------------------------------------------------
*/

@media(max-width:768px) {

    .article-reading-wrapper table::-webkit-scrollbar {

        height: 6px;

    }

    .article-reading-wrapper table::-webkit-scrollbar-track {

        background: #f8ead7;

        border-radius: 20px;

    }

    .article-reading-wrapper table::-webkit-scrollbar-thumb {

        background: #d6a15d;

        border-radius: 20px;

    }

}

/*
|--------------------------------------------------------------------------
| LISTS
|--------------------------------------------------------------------------
*/

.article-reading-wrapper ul li,
.article-reading-wrapper ol li {

    margin-bottom: 10px;

    line-height: 1.8;

}


/*
|--------------------------------------------------------------------------
| MOBILE
|--------------------------------------------------------------------------
*/

@media(max-width:768px) {

    .article-reading-wrapper {

        padding: 5px;

        border-radius: 14px;

    }

    .article-reading-wrapper h2 {

        font-size: 32px;

    }

    .article-reading-wrapper h3 {

        font-size: 24px;

    }

    .article-reading-wrapper p {

        font-size: 17px;

    }

}

.contextual-link {
    color: #c0392b;
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px dashed rgba(192, 57, 43, .45);
    transition: all .2s ease;

}

.contextual-link:hover {
    color: #8e1f13;
    border-bottom-color: #8e1f13;
    text-decoration: none;
}

/* Skip below-the-fold layout and paint work until the reader approaches it. */
.post-next-prev,
.reactions,
.about-author,
.section-related-posts,
.section-comments {
    content-visibility: auto;
    contain-intrinsic-size: auto 420px;
}

/* Very long editor content stays in the DOM for SEO/accessibility, while its
   expensive layout and paint work is postponed until it nears the viewport. */
.post-text {
    content-visibility: auto;
    contain-intrinsic-size: auto 8000px;
}