
body.cse-elementor .elementor .cse-layout {display:block;width:auto;max-width:none;min-height:0;padding:0;margin:0;gap:0;flex:none;flex-direction:row;align-items:stretch;justify-content:normal;align-self:auto;--container-widget-width:100%;--container-widget-flex-grow:0;--widgets-spacing:0px;}
body.cse-elementor .elementor .cse-native-leaf{margin:0;max-width:100%;min-width:0;}
body.cse-elementor .elementor :where(.elementor-widget-heading) .elementor-heading-title{color:inherit;font-family:inherit;font-weight:800;line-height:1.12;letter-spacing:-.035em;}
body.cse-elementor .elementor :where(.elementor-widget-text-editor){font-family:inherit;color:inherit;font-size:inherit;line-height:inherit;}
@media (prefers-color-scheme: dark) {
}

body.cse-elementor .elementor * { box-sizing: border-box; }
body.cse-elementor .elementor button, body.cse-elementor .elementor a { font: inherit; transition: color .18s ease, background .18s ease, border .18s ease, transform .18s ease; }
body.cse-elementor .elementor button { cursor: pointer; }
body.cse-elementor .elementor a { color: inherit; }
body.cse-elementor .elementor button:focus-visible, body.cse-elementor .elementor a:focus-visible { outline: 3px solid var(--orange); outline-offset: 3px; }
body.cse-elementor .elementor .skip-link { position: fixed; top: -100px; left: 16px; z-index: 100; padding: 10px 16px; color: var(--navy-950); background: var(--cyan); border-radius: 6px; font-weight: 700; }
body.cse-elementor .elementor .skip-link:focus { top: 12px; }

body.cse-elementor .elementor .site-header { height: 76px; padding: 0 clamp(20px,5vw,78px); display: flex; align-items: center; justify-content: space-between; color: white; background: var(--navy-900); border-bottom: 1px solid #ffffff1f; }
body.cse-elementor .elementor .brand { display: flex; align-items: center; gap: 11px; text-decoration: none; font-weight: 700; letter-spacing: -.02em; }
body.cse-elementor .elementor .brand strong { color: var(--cyan); }
body.cse-elementor .elementor .brand-mark { width: 36px; height: 36px; display: inline-block; }
body.cse-elementor .elementor .brand-mark svg { width: 100%; height: 100%; fill: var(--cyan); }
body.cse-elementor .elementor .brand-mark .tick { fill: none; stroke: var(--navy-950); stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
body.cse-elementor .elementor :is(nav,.cse-navigation) { display: flex; gap: 30px; }
body.cse-elementor .elementor :is(nav,.cse-navigation) a { color: #dceaf3; text-decoration: none; font-size: .92rem; }
body.cse-elementor .elementor :is(nav,.cse-navigation) a:hover { color: var(--cyan); }

body.cse-elementor .elementor .assessment-shell { min-height: calc(100vh - 76px); padding: clamp(42px,7vw,92px) clamp(20px,6vw,96px); display: grid; grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr); gap: clamp(38px,7vw,110px); align-items: center; color: white; background-color: var(--navy-900); background-image: radial-gradient(circle at 15% 18%,#2de2c51f,transparent 26%),linear-gradient(135deg,transparent 49.5%,#8fd8ff0e 50%,transparent 50.5%); }
body.cse-elementor .elementor .intro-panel { max-width: 620px; }
body.cse-elementor .elementor .eyebrow { display: flex; align-items: center; gap: 10px; color: var(--cyan-soft); font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }
body.cse-elementor .elementor .eyebrow span { width: 22px; height: 2px; background: var(--cyan); }
body.cse-elementor .elementor .eyebrow.dark { color: var(--navy-700); }
body.cse-elementor .elementor h1,body.cse-elementor .elementor h2,body.cse-elementor .elementor h3 { font-weight: 800; line-height: 1.12; letter-spacing: -.035em; }
body.cse-elementor .elementor h1 { margin: 18px 0 20px; font-size: clamp(2.6rem,5vw,5.5rem); }
body.cse-elementor .elementor .lede { max-width: 610px; color: #c8d8e4; font-size: clamp(1.05rem,1.5vw,1.28rem); }
body.cse-elementor .elementor .trust-list { display: flex; flex-wrap: wrap; gap: 11px 22px; margin: 30px 0; padding: 0; color: #e9f7f5; list-style: none; font-size: .9rem; }
body.cse-elementor .elementor .trust-list li::before { content: "✓"; margin-right: 7px; color: var(--cyan); font-weight: 800; }
body.cse-elementor .elementor .mini-guide { display: flex; gap: 14px; max-width: 590px; padding: 18px; border-left: 3px solid var(--orange); background: #ffffff0f; }
body.cse-elementor .elementor .mini-guide p { margin: 0; color: #bfcfdb; font-size: .86rem; }
body.cse-elementor .elementor .mini-guide strong { color: white; }
body.cse-elementor .elementor .mini-icon { flex: 0 0 24px; height: 24px; display: grid; place-items: center; color: var(--navy-950); background: var(--orange); border-radius: 50%; font-weight: 800; }

body.cse-elementor .elementor .check-card { min-height: 570px; color: var(--ink); background: white; border-radius: 24px; box-shadow: 0 24px 80px #0012222e; overflow: hidden; }
body.cse-elementor .elementor .quiz-screen { min-height: 570px; padding: clamp(28px,5vw,54px); display: flex; flex-direction: column; }
body.cse-elementor .elementor .card-topline,body.cse-elementor .elementor .progress-row { display: flex; justify-content: space-between; align-items: center; color: var(--copy-muted); font-size: .84rem; }
body.cse-elementor .elementor .time-pill { padding: 7px 12px; color: #147966; background: #eafaf7; border-radius: 999px; font-weight: 700; }
body.cse-elementor .elementor .shield-orbit { width: 126px; height: 126px; margin: 32px auto 22px; display: grid; place-items: center; position: relative; background: radial-gradient(circle,#dffaf5 0 47%,transparent 48%),conic-gradient(from 25deg,var(--cyan),var(--sky),var(--cyan)); border-radius: 50%; }
body.cse-elementor .elementor .shield-orbit::after { content: ""; position: absolute; inset: 7px; border: 7px solid white; border-radius: 50%; }
body.cse-elementor .elementor .shield-orbit .brand-mark { position: relative; z-index: 1; width: 66px; height: 66px; }
body.cse-elementor .elementor .shield-orbit .brand-mark svg { fill: var(--navy-900); }
body.cse-elementor .elementor .shield-orbit .brand-mark .tick { stroke: var(--cyan); stroke-width: 5; }
body.cse-elementor .elementor .start-screen h2 { margin: 0 0 12px; text-align: center; font-size: clamp(1.7rem,3vw,2.35rem); }
body.cse-elementor .elementor .start-screen > p:not(.privacy-note) { max-width: 430px; margin: 0 auto 26px; text-align: center; color: var(--copy-muted); }
body.cse-elementor .elementor .primary-button,body.cse-elementor .elementor .secondary-button { padding: 14px 19px; border: 1px solid transparent; border-radius: 10px; font-weight: 800; }
body.cse-elementor .elementor .primary-button { text-decoration: none; text-align: center; }
body.cse-elementor .elementor .primary-button { color: var(--navy-950); background: var(--cyan); }
body.cse-elementor .elementor .primary-button:hover { background: #5beda9; transform: translateY(-1px); }
body.cse-elementor .elementor .start-button { width: 100%; max-width: 390px; margin: auto auto 12px; display: flex; justify-content: space-between; align-items: center; padding: 16px 20px; }
body.cse-elementor .elementor .privacy-note { margin: 0!important; color: #78909f!important; font-size: .78rem; text-align: center; }
body.cse-elementor .elementor .profile-screen { gap: 15px; background: linear-gradient(180deg,#ffffff 0%,#fbfdfe 100%); }
body.cse-elementor .elementor .profile-screen h2 { margin: 0; font-size: clamp(1.55rem,3vw,2.15rem); }
body.cse-elementor .elementor .text-button.compact { margin: 0; padding: 0; visibility: visible; }
body.cse-elementor .elementor .profile-choice { margin: 0; padding: 0; border: 0; }
body.cse-elementor .elementor .profile-choice legend,body.cse-elementor .elementor .profile-grid label { color: var(--ink); font-size: .82rem; font-weight: 800; }
body.cse-elementor .elementor .profile-choice label { margin: 8px 18px 0 0; display: inline-flex; align-items: center; gap: 7px; color: var(--copy-muted); font-size: .82rem; }
body.cse-elementor .elementor .profile-choice input { accent-color: var(--navy-900); }
body.cse-elementor .elementor .audience-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
body.cse-elementor .elementor .audience-cards legend { grid-column: 1/-1; }
body.cse-elementor .elementor .audience-cards label { margin: 0; padding: 13px; align-items: flex-start; background: white; border: 1px solid var(--line); border-radius: 11px; cursor: pointer; }
body.cse-elementor .elementor .audience-cards label:has(input:checked) { border-color: #20a990; box-shadow: 0 0 0 2px #2de2c52b; background: #f2fffc; }
body.cse-elementor .elementor .audience-cards span { display: grid; }
body.cse-elementor .elementor .audience-cards strong { color: var(--ink); }
body.cse-elementor .elementor .audience-cards small { font-weight: 500; line-height: 1.35; }
body.cse-elementor .elementor .identity-cards { padding: 12px 14px; background: #eef6fa; border-radius: 11px; }
body.cse-elementor .elementor .identity-cards label { cursor: pointer; }
body.cse-elementor .elementor .profile-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
body.cse-elementor .elementor .profile-grid label { display: grid; gap: 5px; }
body.cse-elementor .elementor .profile-grid .wide-field { grid-column: 1/-1; }
body.cse-elementor .elementor .profile-grid input,body.cse-elementor .elementor .profile-grid select { width: 100%; min-width: 0; padding: 10px 11px; color: var(--ink); background: white; border: 1px solid var(--line); border-radius: 8px; font: inherit; font-size: .82rem; }
body.cse-elementor .elementor .profile-warning { padding: 11px 13px; color: #76521c; background: #fff7e8; border-left: 3px solid var(--orange); font-size: .76rem; line-height: 1.45; }
body.cse-elementor .elementor .privacy-check { padding: 12px 13px; display: flex; align-items: flex-start; gap: 10px; color: var(--copy-muted); background: #f2faf8; border: 1px solid #ccebe4; border-radius: 11px; font-size: .76rem; line-height: 1.45; cursor: pointer; }
body.cse-elementor .elementor .privacy-check input { width: 17px; height: 17px; margin-top: 2px; flex: 0 0 auto; accent-color: #147966; }
body.cse-elementor .elementor .privacy-check a { color: #0e725f; font-weight: 800; }
body.cse-elementor .elementor .profile-screen .primary-button:disabled { color: #7c8b95; background: #dfe7eb; cursor: not-allowed; transform: none; }
body.cse-elementor .elementor .quiz-progress { height: 7px; margin: 10px 0 34px; background: #eaf0f4; }
body.cse-elementor .elementor .quiz-progress > div { background: linear-gradient(90deg,#1dbda3,var(--cyan)); }
body.cse-elementor .elementor .question-topic { margin: 0 0 8px; color: #168773; font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }
body.cse-elementor .elementor .question-screen h2 { margin: 0 0 10px; font-size: clamp(1.45rem,3vw,2.05rem); }
body.cse-elementor .elementor .question-help { margin: 0 0 24px; color: var(--copy-muted); font-size: .92rem; }
body.cse-elementor .elementor .answer-grid { display: grid; gap: 10px; }
body.cse-elementor .elementor .answer-button { width: 100%; padding: 14px 16px; display: flex; align-items: center; gap: 15px; color: var(--ink); background: white; border: 1px solid var(--line); border-radius: 12px; text-align: left; }
body.cse-elementor .elementor .answer-button:hover { border-color: #46cdb7; background: #f4fffd; transform: translateX(3px); }
body.cse-elementor .elementor .answer-button > span:last-child { display: flex; flex-direction: column; }
body.cse-elementor .elementor .answer-button small { color: var(--copy-muted); }
body.cse-elementor .elementor .answer-symbol { flex: 0 0 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; font-weight: 800; }
body.cse-elementor .elementor .answer-symbol.yes { color: #117b69; background: #dff8f2; }
body.cse-elementor .elementor .answer-symbol.unsure { color: #996100; background: #fff1d5; }
body.cse-elementor .elementor .answer-symbol.no { color: #a53c3a; background: #ffe3e2; }
body.cse-elementor .elementor .text-button { align-self: flex-start; margin-top: auto; padding: 15px 0 0; color: var(--copy-muted); background: transparent; border: 0; }
body.cse-elementor .elementor .text-button:disabled { visibility: hidden; }
body.cse-elementor .elementor .result-heading { display: grid; grid-template-columns: auto 1fr; gap: 20px; align-items: center; }
body.cse-elementor .elementor .result-heading h2 { margin: 2px 0 7px; font-size: 1.8rem; }
body.cse-elementor .elementor .result-heading p:last-child { margin: 0; color: var(--copy-muted); font-size: .9rem; }
body.cse-elementor .elementor .score-ring { width: 92px; height: 92px; padding-top: 23px; display: flex; align-items: baseline; justify-content: center; background: #effcf9; border: 8px solid var(--cyan); border-radius: 50%; }
body.cse-elementor .elementor .score-ring span { font-size: 1.85rem; font-weight: 800; line-height: 1; }
body.cse-elementor .elementor .score-ring small { color: var(--copy-muted); font-size: .7rem; }
body.cse-elementor .elementor .score-ring.green { background: #e7f8ef; border-color: #24a86f; }
body.cse-elementor .elementor .score-ring.yellow { background: #fff7dd; border-color: #e6a51e; }
body.cse-elementor .elementor .score-ring.red { background: #fff0ef; border-color: #d9534f; }
body.cse-elementor .elementor .priority-box { margin: 26px 0 20px; padding: 20px; background: #f8fbfd; border: 1px solid var(--line); border-radius: 14px; }
body.cse-elementor .elementor .priority-box h3 { margin: 0 0 12px; font-size: 1rem; }
body.cse-elementor .elementor .priority-box ol { margin: 0; padding-left: 23px; }
body.cse-elementor .elementor .priority-box li { margin: 8px 0; padding-left: 5px; font-size: .88rem; }
body.cse-elementor .elementor .result-actions { display: flex; gap: 10px; }
body.cse-elementor .elementor .download-form { display: contents; }
body.cse-elementor .elementor .export-message { margin: 10px 0 0; color: #147966; font-size: .82rem; font-weight: 700; }
body.cse-elementor .elementor .secondary-button { color: var(--navy-800); background: white; border-color: #afc2cf; }
body.cse-elementor .elementor .secondary-button:hover { background: #edf4f7; }
body.cse-elementor .elementor .review-box { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--line); }
body.cse-elementor .elementor .review-box form { display: grid; gap: 10px; }
body.cse-elementor .elementor .review-box fieldset { margin: 0; padding: 0; border: 0; }
body.cse-elementor .elementor .review-box legend,body.cse-elementor .elementor .review-label { color: var(--ink); font-size: .82rem; font-weight: 700; }
body.cse-elementor .elementor .star-picker { display: flex; gap: 3px; margin-top: 3px; }
body.cse-elementor .elementor .star-picker button { padding: 0 2px; color: #a8b8c3; background: transparent; border: 0; font-size: 1.65rem; line-height: 1; }
body.cse-elementor .elementor .star-picker button.selected { color: #e79220; }
body.cse-elementor .elementor .star-picker button:hover,body.cse-elementor .elementor .star-picker button:focus-visible { color: #e79220; transform: scale(1.08); }
body.cse-elementor .elementor .review-label { display: grid; gap: 5px; }
body.cse-elementor .elementor .review-label textarea,body.cse-elementor .elementor .review-label input { width: 100%; padding: 10px 11px; color: var(--ink); background: white; border: 1px solid var(--line); border-radius: 8px; font: inherit; font-size: .82rem; }
body.cse-elementor .elementor .review-label textarea { resize: vertical; }
body.cse-elementor .elementor .review-consent { margin: 0; color: var(--copy-muted); font-size: .76rem; line-height: 1.5; }
body.cse-elementor .elementor .review-submit-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
body.cse-elementor .elementor .review-submit-row button { padding: 8px 13px; font-size: .78rem; }
body.cse-elementor .elementor .review-submit-row small,body.cse-elementor .elementor .review-message { margin: 0; color: var(--copy-muted); font-size: .72rem; }
body.cse-elementor .elementor .review-message { color: #8a5a00; font-weight: 700; }
body.cse-elementor .elementor .review-thanks { margin: 0; color: var(--copy-muted); font-size: .82rem; }
body.cse-elementor .elementor .review-thanks strong { color: #147966; }

body.cse-elementor .elementor .sessions-section,body.cse-elementor .elementor .resource-section,body.cse-elementor .elementor .reviews-section,body.cse-elementor .elementor .privacy-section,body.cse-elementor .elementor .about-section { padding: clamp(70px,9vw,126px) clamp(20px,7vw,108px); }
body.cse-elementor .elementor .section-heading { max-width: 760px; }
body.cse-elementor .elementor .section-heading h2,body.cse-elementor .elementor .impact-section h2,body.cse-elementor .elementor .about-section h2 { margin: 15px 0; font-size: clamp(2rem,4vw,3.65rem); }
body.cse-elementor .elementor .section-heading > p:last-child { color: var(--copy-muted); font-size: 1.06rem; }
body.cse-elementor .elementor .sessions-section { background: #eaf4f8; }
body.cse-elementor .elementor .sessions-grid { margin-top: 38px; display: grid; gap: 28px; }
body.cse-elementor .elementor .session-card { display: grid; grid-template-columns: minmax(250px,.72fr) minmax(0,1.28fr); background: white; border: 1px solid var(--line); border-radius: 20px; box-shadow: 0 18px 46px #14364c14; overflow: hidden; }
body.cse-elementor .elementor .session-flyer { width: 100%; height: 100%; min-height: 380px; display: block; object-fit: cover; background: var(--navy-900); }
body.cse-elementor .elementor .session-flyer-missing { min-height: 380px; display: grid; place-items: center; background: var(--navy-900); }
body.cse-elementor .elementor .session-flyer-missing .brand-mark { width: 70px; height: 70px; }
body.cse-elementor .elementor .session-details { padding: clamp(28px,5vw,54px); }
body.cse-elementor .elementor .session-date { margin: 0 0 10px!important; color: #147966!important; font-size: .83rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
body.cse-elementor .elementor .session-details h3 { margin: 0 0 14px; font-size: clamp(1.65rem,3vw,2.45rem); }
body.cse-elementor .elementor .session-details > p:not(.session-date) { color: var(--copy-muted); }
body.cse-elementor .elementor .session-meta { margin: 24px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
body.cse-elementor .elementor .session-meta div { padding-top: 12px; border-top: 1px solid var(--line); }
body.cse-elementor .elementor .session-meta dt { color: var(--copy-muted); font-size: .76rem; text-transform: uppercase; letter-spacing: .08em; }
body.cse-elementor .elementor .session-meta dd { margin: 3px 0 0; font-weight: 700; }
body.cse-elementor .elementor .session-join { display: inline-flex; align-items: center; gap: 18px; text-decoration: none; }
body.cse-elementor .elementor .sessions-empty { max-width: 760px; margin-top: 38px; padding: clamp(24px,4vw,36px); display: flex; align-items: center; gap: 24px; background: white; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 14px 38px #14364c10; }
body.cse-elementor .elementor .sessions-empty .brand-mark { flex: 0 0 56px; width: 56px; height: 56px; }
body.cse-elementor .elementor .sessions-empty .brand-mark svg { fill: var(--navy-900); }
body.cse-elementor .elementor .sessions-empty h3 { margin: 0 0 5px; font-size: 1.25rem; }
body.cse-elementor .elementor .sessions-empty p { margin: 0; color: var(--copy-muted); }
body.cse-elementor .elementor .resource-grid { margin-top: 48px; display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
body.cse-elementor .elementor .resource-grid article { min-height: 270px; padding: 26px; background: white; border-top: 4px solid var(--navy-800); box-shadow: 0 12px 34px #14364c12; }
body.cse-elementor .elementor .resource-grid .number { color: #83a2b5; font-size: .78rem; font-weight: 800; }
body.cse-elementor .elementor .resource-grid h3 { margin: 56px 0 12px; font-size: 1.18rem; }
body.cse-elementor .elementor .resource-grid p { color: var(--copy-muted); font-size: .9rem; }
body.cse-elementor .elementor .impact-section { padding: clamp(48px,6vw,72px) clamp(20px,7vw,108px); color: white; background: var(--navy-800); }
body.cse-elementor .elementor .public-impact-heading { display: flex; align-items: end; justify-content: space-between; gap: 40px; }
body.cse-elementor .elementor .public-impact-heading h2 { max-width: 760px; margin-bottom: 0; }
body.cse-elementor .elementor .public-impact-heading > p { max-width: 540px; margin: 0 0 6px; color: #c7d7e2; line-height: 1.65; }
body.cse-elementor .elementor .impact-card { padding: clamp(24px,4vw,40px); background: #04111e59; border: 1px solid #ffffff29; border-radius: 18px; }
body.cse-elementor .elementor .public-impact-card { margin-top: 30px; padding: 20px 24px 24px; }
body.cse-elementor .elementor .impact-status { margin: 0 0 22px; color: var(--cyan-soft); font-size: .8rem; font-weight: 700; }
body.cse-elementor .elementor .impact-status span { width: 8px; height: 8px; margin-right: 8px; display: inline-block; background: var(--cyan); border-radius: 50%; }
body.cse-elementor .elementor .impact-card dl { margin: 0; }
body.cse-elementor .elementor .public-impact-card dl { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
body.cse-elementor .elementor .public-impact-card dl div { min-height: 112px; padding: 18px; flex-direction: column; justify-content: space-between; border: 1px solid #ffffff1f; border-radius: 12px; background: #ffffff08; }
body.cse-elementor .elementor .public-impact-card dt { font-size: .82rem; }
body.cse-elementor .elementor .public-impact-card dd { font-size: 2rem; text-align: left; }
body.cse-elementor .elementor .impact-card dl div { padding: 15px 0; display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid #ffffff1f; }
body.cse-elementor .elementor .impact-card dt { color: #d7e4eb; }
body.cse-elementor .elementor .impact-card dd { margin: 0; color: white; font-size: 1.1rem; font-weight: 800; text-align: right; }
body.cse-elementor .elementor .small-print { color: #9db2c1; font-size: .76rem; }
body.cse-elementor .elementor .impact-breakdown { margin-top: 22px; padding-top: 20px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; border-top: 1px solid #ffffff1f; }
body.cse-elementor .elementor .impact-breakdown h3 { margin: 0 0 10px; color: var(--cyan-soft); font-size: .82rem; letter-spacing: .03em; }
body.cse-elementor .elementor .impact-breakdown ul { margin: 0; padding: 0; list-style: none; }
body.cse-elementor .elementor .impact-breakdown li { padding: 5px 0; display: flex; justify-content: space-between; gap: 12px; color: #d7e4eb; font-size: .78rem; }
body.cse-elementor .elementor .impact-breakdown li strong { color: white; }
body.cse-elementor .elementor .impact-breakdown p { margin: 0; color: #9db2c1; font-size: .76rem; }
body.cse-elementor .elementor .reviews-section { background: #eaf4f8; }
body.cse-elementor .elementor .privacy-section { padding-top: 32px; padding-bottom: 20px; background: white; text-align: center; }
body.cse-elementor .elementor .privacy-section .eyebrow { justify-content: center; }
body.cse-elementor .elementor .privacy-section h2 { margin: 14px 0 12px; color: var(--ink); font-size: clamp(2rem,4vw,3.25rem); line-height: 1.04; }
body.cse-elementor .elementor .privacy-section > p:last-child { max-width: 720px; margin: 0 auto; color: var(--copy-muted); line-height: 1.7; }
body.cse-elementor .elementor .privacy-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
body.cse-elementor .elementor .privacy-grid article { padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: var(--paper); }
body.cse-elementor .elementor .privacy-grid article:last-child { border-color: #efc7c7; background: #fff8f8; }
body.cse-elementor .elementor .privacy-grid h3 { margin: 0 0 14px; color: var(--ink); font-size: 1.05rem; }
body.cse-elementor .elementor .privacy-grid ul { margin: 0; padding-left: 20px; color: var(--copy-muted); line-height: 1.75; }
body.cse-elementor .elementor .review-summary-card { margin-top: 40px; display: grid; grid-template-columns: 1fr; background: white; border: 1px solid var(--line); border-radius: 20px; box-shadow: 0 18px 46px #14364c14; overflow: hidden; }
body.cse-elementor .elementor .review-average { padding: 16px 20px; display: flex; align-items: center; justify-content: center; gap: 14px; color: white; background: var(--navy-900); text-align: center; }
body.cse-elementor .elementor .review-score { display: flex; align-items: baseline; gap: 6px; }
body.cse-elementor .elementor .review-average strong { font-size: 2rem; line-height: 1; }
body.cse-elementor .elementor .review-average span { color: var(--orange); letter-spacing: .08em; }
body.cse-elementor .elementor .review-average small { color: #c7d7e2; }
body.cse-elementor .elementor .review-score small { font-size: .82rem; white-space: nowrap; }
body.cse-elementor .elementor .review-list-wrap { min-width: 0; }
body.cse-elementor .elementor .review-list-heading,body.cse-elementor .elementor .sample-slider-heading { padding: 12px 18px 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--ink); font-size: .78rem; }
body.cse-elementor .elementor .review-list-heading { display: grid; justify-content: stretch; gap: 2px; }
body.cse-elementor .elementor .review-list-heading small { color: var(--copy-muted); font-size: .68rem; font-weight: 500; }
body.cse-elementor .elementor .slider-controls span,body.cse-elementor .elementor .sample-slider-heading > span { display: flex; gap: 6px; }
body.cse-elementor .elementor .slider-controls button,body.cse-elementor .elementor .sample-slider-heading button { width: 30px; height: 30px; display: grid; place-items: center; color: var(--navy-800); background: white; border: 1px solid var(--line); border-radius: 50%; font-weight: 800; }
body.cse-elementor .elementor .review-grid { min-width: 0; padding: 10px 14px 14px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: start; gap: 12px; }
body.cse-elementor .elementor .review-card { width: 100%; min-width: 0; min-height: 145px; padding: 9px 10px; display: flex; flex-direction: column; overflow: hidden; background: var(--paper); border: 1px solid var(--line); border-radius: 10px; }
body.cse-elementor .elementor .review-card-top { display: flex; align-items: center; gap: 10px; }
body.cse-elementor .elementor .review-card-top > div { min-width: 0; display: grid; gap: 1px; }
body.cse-elementor .elementor .review-card-top strong { overflow: hidden; color: var(--ink); font-size: .88rem; text-overflow: ellipsis; white-space: nowrap; }
body.cse-elementor .elementor .review-card-top small { color: var(--copy-muted); font-size: .7rem; }
body.cse-elementor .elementor .review-avatar { width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 auto; color: var(--navy-900); background: var(--cyan); border-radius: 50%; font-weight: 800; }
body.cse-elementor .elementor .review-card .review-avatar { width: 28px; height: 28px; font-size: .65rem; }
body.cse-elementor .elementor .verified-review { align-self: flex-start; margin-top: auto; padding: 4px 7px; color: #146251; background: #dff5ed; border-radius: 999px; font-size: .64rem; font-weight: 800; }
body.cse-elementor .elementor .review-stars { margin-top: 6px; color: #e79220; font-size: .86rem; letter-spacing: .035em; }
body.cse-elementor .elementor .review-stars span { color: #c9d3da; }
body.cse-elementor .elementor .review-card p { min-height: 2.05rem; margin: 4px 0 7px; display: -webkit-box; flex-shrink: 0; overflow: hidden; color: var(--ink); font-size: .76rem; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
body.cse-elementor .elementor .reviews-empty { grid-column: 1/-1; padding: 24px; text-align: center; }
body.cse-elementor .elementor .reviews-empty h3 { margin: 0 0 5px; }
body.cse-elementor .elementor .reviews-empty p { margin: 0; color: var(--copy-muted); }
body.cse-elementor .elementor .review-more { margin-top: 18px; display: flex; align-items: center; justify-content: center; gap: 14px; }
body.cse-elementor .elementor .review-more button { padding: 10px 16px; }
body.cse-elementor .elementor .review-more small { color: var(--copy-muted); }
body.cse-elementor .elementor .sample-slider-section { margin-top: 18px; padding: 0; background: white; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
body.cse-elementor .elementor .sample-slider-heading { padding: 12px 18px; background: #fff8e9; border-bottom: 1px solid #f0d29f; }
body.cse-elementor .elementor .sample-slider-heading > div { display: grid; gap: 2px; }
body.cse-elementor .elementor .sample-slider-heading small { color: #76521c; font-weight: 500; }
body.cse-elementor .elementor .sample-slider { padding-top: 14px; }
body.cse-elementor .elementor .sample-review { border-style: dashed; }
body.cse-elementor .elementor .sample-badge { align-self: flex-start; margin-top: auto; padding: 3px 7px; color: #76521c; background: #fff0d2; border-radius: 999px; font-size: .62rem; font-weight: 800; }
body.cse-elementor .elementor .about-section { padding-top: 24px; padding-bottom: 40px; display: grid; grid-template-columns: 180px minmax(0,780px); justify-content: center; gap: clamp(34px,7vw,90px); align-items: center; background: white; }
body.cse-elementor .elementor .about-badge { width: 160px; height: 180px; display: grid; place-items: center; color: var(--cyan); background: var(--navy-900); clip-path: polygon(50% 0,94% 16%,88% 73%,50% 100%,12% 73%,6% 16%); font-size: 2.2rem; font-weight: 800; line-height: .75; text-align: center; }
body.cse-elementor .elementor .about-badge span { color: white; font-size: 1rem; letter-spacing: .2em; }
body.cse-elementor .elementor .about-section p:nth-last-child(-n+2) { color: var(--copy-muted); }
body.cse-elementor .elementor footer { padding: 30px clamp(20px,7vw,108px); display: flex; align-items: center; justify-content: space-between; gap: 25px; color: #afc2cf; background: var(--navy-950); font-size: .82rem; }
body.cse-elementor .elementor .footer-brand { color: white; }
body.cse-elementor .elementor .consent-banner { position: fixed; z-index: 50; left: 18px; right: 18px; bottom: 18px; max-width: 880px; margin: auto; padding: 18px 20px; display: flex; align-items: center; justify-content: space-between; gap: 20px; color: white; background: #102a40; border: 1px solid #3a5870; border-radius: 14px; box-shadow: 0 18px 55px #0000004d; }
body.cse-elementor .elementor .consent-banner p { max-width: 580px; margin: 0; font-size: .84rem; }
body.cse-elementor .elementor .consent-banner .secondary-button { margin-right: 7px; color: white; background: transparent; border-color: #7892a4; }
body.cse-elementor .elementor .consent-banner button { padding: 9px 13px; font-size: .8rem; }

body.cse-elementor .elementor .admin-page { min-height: 100vh; color: var(--ink); background: #edf4f7; }
body.cse-elementor .elementor .admin-header { min-height: 80px; padding: 18px clamp(20px,5vw,70px); display: flex; align-items: center; justify-content: space-between; gap: 24px; color: white; background: var(--navy-900); }
body.cse-elementor .elementor .admin-header p,body.cse-elementor .elementor .admin-header span { margin: 3px 0 0; color: #bfcfdb; font-size: .82rem; }
body.cse-elementor .elementor .admin-header > div:last-child { display: flex; align-items: center; gap: 18px; }
body.cse-elementor .elementor .admin-header a { color: var(--cyan); }
body.cse-elementor .elementor .admin-layout { max-width: 1320px; margin: auto; padding: clamp(30px,5vw,64px) clamp(18px,4vw,48px); display: grid; grid-template-columns: minmax(0,1.15fr) minmax(340px,.85fr); gap: 28px; align-items: start; }
body.cse-elementor .elementor .admin-form-card,body.cse-elementor .elementor .admin-list-card,body.cse-elementor .elementor .admin-reviews-card,body.cse-elementor .elementor .admin-analytics-card { padding: clamp(24px,4vw,42px); background: white; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 14px 38px #14364c0d; }
body.cse-elementor .elementor .admin-analytics-card { grid-column: 1/-1; }
body.cse-elementor .elementor .admin-analytics-card h1 { margin: 10px 0 5px; font-size: clamp(2rem,4vw,3rem); }
body.cse-elementor .elementor .admin-analytics-card > div:first-child > p:last-child { margin-top: 0; color: var(--copy-muted); }
body.cse-elementor .elementor .admin-metric-grid { margin-top: 24px; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
body.cse-elementor .elementor .admin-metric { padding: 18px; display: grid; gap: 8px; background: #eef7f8; border: 1px solid #d5e7ea; border-radius: 12px; }
body.cse-elementor .elementor .admin-metric span { color: var(--copy-muted); font-size: .76rem; }
body.cse-elementor .elementor .admin-metric strong { color: var(--navy-900); font-size: 1.55rem; }
body.cse-elementor .elementor .admin-form-card h1 { margin: 10px 0 28px; font-size: clamp(2rem,4vw,3rem); }
body.cse-elementor .elementor .admin-form-card form { display: grid; gap: 18px; }
body.cse-elementor .elementor .admin-form-card label { display: grid; gap: 7px; font-size: .88rem; font-weight: 700; }
body.cse-elementor .elementor .admin-form-card label > small { color: var(--copy-muted); font-weight: 400; }
body.cse-elementor .elementor .admin-form-card input:not([type="checkbox"]),body.cse-elementor .elementor .admin-form-card textarea { width: 100%; padding: 12px 13px; color: var(--ink); background: white; border: 1px solid #afc2cf; border-radius: 9px; font: inherit; }
body.cse-elementor .elementor .admin-form-card textarea { resize: vertical; }
body.cse-elementor .elementor .admin-form-card input:focus,body.cse-elementor .elementor .admin-form-card textarea:focus { outline: 3px solid #2de2c54d; border-color: #147966; }
body.cse-elementor .elementor .admin-field-row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; }
body.cse-elementor .elementor .admin-field-row.two { grid-template-columns: 1fr 1.6fr; }
body.cse-elementor .elementor .publish-toggle { padding: 15px; display: flex!important; grid-template-columns: auto 1fr; align-items: flex-start; gap: 12px!important; background: #effaf8; border-radius: 10px; }
body.cse-elementor .elementor .publish-toggle input { width: 20px; height: 20px; margin-top: 2px; accent-color: #147966; }
body.cse-elementor .elementor .publish-toggle span { display: grid; }
body.cse-elementor .elementor .publish-toggle small { color: var(--copy-muted); font-weight: 400; }
body.cse-elementor .elementor .admin-actions { display: flex; gap: 10px; }
body.cse-elementor .elementor .admin-message { padding: 12px 14px; color: #0e6859; background: #e6f8f4; border-radius: 9px; font-weight: 700; }
body.cse-elementor .elementor .admin-list-card h2 { margin-top: 0; }
body.cse-elementor .elementor .admin-session { padding: 18px 0; display: flex; justify-content: space-between; gap: 14px; border-top: 1px solid var(--line); }
body.cse-elementor .elementor .admin-session h3 { margin: 8px 0 3px; font-size: 1.05rem; }
body.cse-elementor .elementor .admin-session p,body.cse-elementor .elementor .admin-session small { margin: 0; color: var(--copy-muted); }
body.cse-elementor .elementor .admin-session > div:last-child { display: flex; align-items: flex-start; gap: 8px; }
body.cse-elementor .elementor .admin-session button { padding: 8px 10px; font-size: .8rem; }
body.cse-elementor .elementor .status-live,body.cse-elementor .elementor .status-draft { padding: 4px 8px; border-radius: 999px; font-size: .7rem; font-weight: 800; text-transform: uppercase; }
body.cse-elementor .elementor .status-live { color: #0e6859; background: #dff8f2; }
body.cse-elementor .elementor .status-draft { color: #7d5900; background: #fff1d5; }
body.cse-elementor .elementor .danger-button { color: #a53c3a; background: white; border: 1px solid #e6b6b4; border-radius: 9px; font-weight: 700; }
body.cse-elementor .elementor .admin-empty { color: var(--copy-muted); }
body.cse-elementor .elementor .admin-reviews-card { grid-column: 1/-1; }
body.cse-elementor .elementor .admin-reviews-card h2 { margin: 10px 0 6px; font-size: 1.8rem; }
body.cse-elementor .elementor .admin-reviews-card > div:first-child > p:last-child { margin-top: 0; color: var(--copy-muted); }
body.cse-elementor .elementor .admin-review { padding: 18px 0; display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid var(--line); }
body.cse-elementor .elementor .admin-review p { margin: 5px 0; }
body.cse-elementor .elementor .admin-review small { color: var(--copy-muted); }
body.cse-elementor .elementor .admin-stars { color: #e79220; letter-spacing: .05em; }
body.cse-elementor .elementor .admin-stars span { color: #c9d3da; }
body.cse-elementor .elementor .admin-review button { padding: 8px 13px; font-size: .8rem; }
body.cse-elementor .elementor .admin-gate { min-height: 100vh; padding: 24px; display: grid; place-items: center; background: var(--navy-900); }
body.cse-elementor .elementor .admin-gate-card { width: 100%; max-width: 560px; padding: clamp(30px,6vw,58px); display: grid; gap: 18px; background: white; border-radius: 20px; box-shadow: 0 28px 90px #0006; }
body.cse-elementor .elementor .admin-gate-card h1 { margin: 0; font-size: clamp(2rem,5vw,3.25rem); }
body.cse-elementor .elementor .admin-gate-card p { color: var(--copy-muted); }
body.cse-elementor .elementor .admin-signin { justify-self: start; text-decoration: none; }
body.cse-elementor .elementor .admin-home-link { color: var(--copy-muted); font-size: .88rem; }
body.cse-elementor .elementor .analytics-dashboard { display: grid; gap: 22px; }
body.cse-elementor .elementor .analytics-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
body.cse-elementor .elementor .analytics-panels { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
body.cse-elementor .elementor .analytics-panels > .admin-analytics-card { grid-column: auto; min-width: 0; }
body.cse-elementor .elementor .analytics-dashboard h1 { font-size: 2rem; margin: 0; }
body.cse-elementor .elementor .analytics-dashboard h2 { font-size: 1.25rem; margin: 0 0 10px; }
body.cse-elementor .elementor .analytics-dashboard p { color: var(--copy-muted); font-size: 1rem; }
body.cse-elementor .elementor .analytics-dashboard .analytics-note { font-size: .875rem; line-height: 1.6; }
body.cse-elementor .elementor .analytics-progress { margin: 16px 0; }
body.cse-elementor .elementor .analytics-progress > div { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 6px; font-size: .875rem; }
body.cse-elementor .elementor .analytics-progress progress { width: 100%; height: 12px; accent-color: #157d6a; }
body.cse-elementor .elementor .analytics-chart { height: 180px; display: flex; align-items: stretch; gap: 3px; border-bottom: 1px solid var(--line); }
body.cse-elementor .elementor .analytics-day { flex: 1; display: flex; align-items: flex-end; gap: 1px; min-width: 0; }
body.cse-elementor .elementor .analytics-day span { flex: 1; background: #157d6a; }
body.cse-elementor .elementor .analytics-day span + span { background: #d98118; }
body.cse-elementor .elementor .analytics-axis { display: flex; justify-content: space-between; font-size: .8rem; padding: 8px 0 16px; }
body.cse-elementor .elementor .analytics-table { overflow: auto; max-height: 320px; }
body.cse-elementor .elementor .analytics-table table { width: 100%; border-collapse: collapse; font-size: .875rem; }
body.cse-elementor .elementor .analytics-table th,body.cse-elementor .elementor .analytics-table td { text-align: left; padding: 10px; border-bottom: 1px solid var(--line); }
body.cse-elementor .elementor .analytics-review-scroll { max-height: 450px; overflow: auto; }
@media (max-width: 980px) { body.cse-elementor .elementor .analytics-panels { grid-template-columns: 1fr; } }

@media (max-width:980px) {
  body.cse-elementor .elementor .assessment-shell { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .privacy-section { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .check-card { width: 100%; max-width: 720px; margin: 0 auto; }
  body.cse-elementor .elementor .resource-grid { grid-template-columns: repeat(2,1fr); }
  body.cse-elementor .elementor .impact-section { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .public-impact-heading { align-items: flex-start; flex-direction: column; gap: 14px; }
  body.cse-elementor .elementor .public-impact-card dl { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.cse-elementor .elementor .admin-layout { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .review-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.cse-elementor .elementor .admin-metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
  body.cse-elementor .elementor .site-header { height: 68px; padding: 0 18px; }
  body.cse-elementor .elementor :is(nav,.cse-navigation) { display: none; }
  body.cse-elementor .elementor .assessment-shell { min-height: auto; padding: 44px 16px 60px; }
  body.cse-elementor .elementor h1 { font-size: 2.65rem; }
  body.cse-elementor .elementor .trust-list { flex-direction: column; gap: 7px; }
  body.cse-elementor .elementor .check-card,body.cse-elementor .elementor .quiz-screen { min-height: 590px; }
  body.cse-elementor .elementor .quiz-screen { padding: 25px 20px; }
  body.cse-elementor .elementor .result-heading { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .score-ring { width: 78px; height: 78px; padding-top: 18px; }
  body.cse-elementor .elementor .result-actions { flex-direction: column; }
  body.cse-elementor .elementor .download-form { display: block; }
  body.cse-elementor .elementor .download-form button { width: 100%; }
  body.cse-elementor .elementor .sessions-empty { align-items: flex-start; }
  body.cse-elementor .elementor .session-card { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .session-flyer { min-height: 300px; max-height: 520px; object-fit: contain; }
  body.cse-elementor .elementor .session-flyer-missing { min-height: 260px; }
  body.cse-elementor .elementor .resource-grid { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .review-average { padding: 14px 16px; }
  body.cse-elementor .elementor .review-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.cse-elementor .elementor .review-list-heading,body.cse-elementor .elementor .sample-slider-heading { align-items: flex-start; }
  body.cse-elementor .elementor .privacy-grid { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .impact-breakdown { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .public-impact-card { padding: 16px; }
  body.cse-elementor .elementor .public-impact-card dl { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .public-impact-card dl div { min-height: 92px; }
  body.cse-elementor .elementor .profile-grid { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .profile-grid .wide-field { grid-column: auto; }
  body.cse-elementor .elementor .audience-cards { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .admin-metric-grid { grid-template-columns: 1fr 1fr; }
  body.cse-elementor .elementor .resource-grid article { min-height: 225px; }
  body.cse-elementor .elementor .resource-grid h3 { margin-top: 30px; }
  body.cse-elementor .elementor .about-section { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .about-badge { width: 110px; height: 125px; }
  body.cse-elementor .elementor footer,body.cse-elementor .elementor .consent-banner { flex-direction: column; align-items: flex-start; }
  body.cse-elementor .elementor .admin-header,body.cse-elementor .elementor .admin-header > div:last-child { align-items: flex-start; flex-direction: column; }
  body.cse-elementor .elementor .admin-field-row,body.cse-elementor .elementor .admin-field-row.two { grid-template-columns: 1fr; }
  body.cse-elementor .elementor .admin-session { flex-direction: column; }
}
@media (max-width:430px) {
  body.cse-elementor .elementor .review-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion:reduce) { body.cse-elementor .elementor *,body.cse-elementor .elementor *::before,body.cse-elementor .elementor *::after { transition: none!important; } }

@media print {
  @page { margin: 18mm; }
  body.cse-elementor .elementor body * { visibility: hidden!important; }
  body.cse-elementor .elementor .result-screen,body.cse-elementor .elementor .result-screen * { visibility: visible!important; }
  body.cse-elementor .elementor .result-screen { position: absolute; inset: 0; width: 100%; min-height: auto; padding: 0; color: #102235; background: white; }
  body.cse-elementor .elementor .result-actions,body.cse-elementor .elementor .feedback-box,body.cse-elementor .elementor .export-message { display: none!important; }
  body.cse-elementor .elementor .priority-box { break-inside: avoid; }
}

body.cse-elementor .elementor .mobile-menu { display: none; }
body.cse-elementor .elementor .analytics-preference { grid-column: 1 / -1; font-size: 1rem; }
body.cse-elementor .elementor .analytics-preference label { display: flex; align-items: center; gap: 10px; }
body.cse-elementor .elementor .analytics-preference input { width: 20px; height: 20px; accent-color: #157d6a; }
body.cse-elementor .elementor .result-actions { flex-wrap: wrap; }
@media (max-width:680px) {
  body.cse-elementor .elementor .site-header { position: relative; }
  body.cse-elementor .elementor .mobile-menu { display: block; padding: 8px 12px; color: white; border-color: #ffffff70; background: transparent; }
  body.cse-elementor .elementor :is(nav,.cse-navigation).menu-open { display: flex; position: absolute; top: 68px; left: 0; right: 0; z-index: 20; flex-direction: column; gap: 0; padding: 10px 18px; background: var(--navy-900); }
  body.cse-elementor .elementor :is(nav,.cse-navigation).menu-open a { padding: 12px; }
  body.cse-elementor .elementor .assessment-shell { padding-top: 26px; gap: 24px; }
  body.cse-elementor .elementor .intro-panel h1 { font-size: 2.2rem; }
  body.cse-elementor .elementor .check-card,body.cse-elementor .elementor .quiz-screen { min-height: 0; }
}

/* Compact, touch-friendly review carousel. */
body.cse-elementor .elementor .reviews-section { padding-top: 36px; padding-bottom: 36px; }
body.cse-elementor .elementor .review-summary-card { margin-top: 20px; }
body.cse-elementor .elementor .review-list-heading { position: relative; padding: 14px 110px 12px 16px; font-size: 1rem; }
body.cse-elementor .elementor .review-list-heading small { font-size: .875rem; }
body.cse-elementor .elementor .review-slider-controls { position: absolute; right: 16px; top: 15px; display: flex; gap: 8px; }
body.cse-elementor .elementor .review-slider-controls button { width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 50%; background: white; color: var(--ink); cursor: pointer; }
body.cse-elementor .elementor .review-slider-controls button:disabled { opacity: .35; cursor: default; }
body.cse-elementor .elementor .review-viewport { overflow: hidden; margin: 0 14px 14px; }
body.cse-elementor .elementor .review-grid { display: flex; padding: 0; gap: 12px; align-items: stretch; touch-action: pan-y pinch-zoom; }
body.cse-elementor .elementor .review-card { flex: 0 0 calc((100% - 36px) / 4); min-width: 0; padding: 12px; min-height: 200px; }
body.cse-elementor .elementor .review-card-top { gap: 8px; }
body.cse-elementor .elementor .review-card-top strong { font-size: .9375rem; white-space: normal; overflow-wrap: anywhere; }
body.cse-elementor .elementor .review-card-top small { font-size: .8125rem; }
body.cse-elementor .elementor .review-card .review-avatar { width: 32px; height: 32px; font-size: .8125rem; }
body.cse-elementor .elementor .review-stars { font-size: 1rem; margin-top: 10px; }
body.cse-elementor .elementor .review-card p { font-size: .9375rem; line-height: 1.45; -webkit-line-clamp: unset; margin: 8px 0 12px; }
body.cse-elementor .elementor .verified-review { font-size: .75rem; }
body.cse-elementor .elementor .reviews-empty { flex: 0 0 100%; }
body.cse-elementor .elementor .score-share { margin: 24px 0; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: #f2f8fa; }
body.cse-elementor .elementor .score-share h3 { margin: 0 0 6px; }
body.cse-elementor .elementor .score-share p { font-size: .9375rem; }
body.cse-elementor .elementor .score-share img { display: block; width: 100%; height: auto; border-radius: 12px; margin: 14px 0; }
body.cse-elementor .elementor .score-share-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
body.cse-elementor .elementor .score-share-actions a { text-decoration: none; text-align: center; }
body.cse-elementor .elementor .progress-row { gap: 12px; flex-wrap: wrap; font-size: .9375rem; font-weight: 700; }
body.cse-elementor .elementor .remaining-note { margin: 8px 0 18px; font-size: .875rem; color: var(--copy-muted); }
@media(max-width: 980px) { body.cse-elementor .elementor .review-card { flex-basis: calc((100% - 12px) / 2); } }
@media(max-width: 560px) { body.cse-elementor .elementor .review-card { flex-basis: 90%; } body.cse-elementor .elementor .score-share { padding: 12px; } body.cse-elementor .elementor .score-share-actions > * { width: 100%; } }

body.cse-elementor .elementor .privacy-section > p:not(.eyebrow) { max-width: 900px; margin: 0 auto 16px; }
body.cse-elementor .elementor .analytics-preference { max-width: 900px; margin: 0 auto; }
body.cse-elementor .elementor .analytics-preference p { margin: 8px 0 0; }

/* Smaller cards and closer section spacing. */
body.cse-elementor .elementor .resource-section { padding-top: 36px; padding-bottom: 36px; }
body.cse-elementor .elementor .resource-grid { margin-top: 24px; gap: 16px; }
body.cse-elementor .elementor .resource-grid article { min-height: 0; padding: 20px; }
body.cse-elementor .elementor .resource-grid h3 { margin: 20px 0 10px; }
body.cse-elementor .elementor .resource-grid p { margin-bottom: 0; }
body.cse-elementor .elementor .review-grid { align-items: flex-start; }
body.cse-elementor .elementor .review-card { padding: 10px 12px; min-height: 0; }
body.cse-elementor .elementor .review-card-top small { display: inline; font-size: .75rem; }
body.cse-elementor .elementor .review-stars { margin-top: 6px; }
body.cse-elementor .elementor .review-card p { margin: 6px 0 0; font-size: .875rem; line-height: 1.4; -webkit-line-clamp: 3; }
body.cse-elementor .elementor .review-card p.review-expanded { -webkit-line-clamp: unset; }
body.cse-elementor .elementor .review-read-more { align-self: flex-start; padding: 4px 0 0; background: none; border: 0; color: #146251; font-size: .875rem; font-weight: 700; cursor: pointer; }
body.cse-elementor .elementor .review-visible { animation: review-fade-in .65s ease-out both; }
@keyframes review-fade-in { from { opacity: .15; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media(prefers-reduced-motion: reduce) { body.cse-elementor .elementor .review-visible { animation: none; } }
@media(max-width:680px) { body.cse-elementor .elementor .resource-section { padding-top: 28px; padding-bottom: 28px; } body.cse-elementor .elementor .resource-grid article { min-height: 0; } body.cse-elementor .elementor .resource-grid h3 { margin-top: 16px; } }

/* Compact result panels and uniform review cards. */
body.cse-elementor .elementor .result-screen { padding: 26px; min-height: 0; }
body.cse-elementor .elementor .result-heading { gap: 16px; }
body.cse-elementor .elementor .result-heading h2 { font-size: clamp(1.3rem,2vw,1.65rem); margin-bottom: 6px; }
body.cse-elementor .elementor .result-heading p { margin: 4px 0; font-size: .9375rem; }
body.cse-elementor .elementor .result-tabs { margin-top: 20px; }
body.cse-elementor .elementor .result-tabs [role="tablist"] { display: flex; width: 100%; height: auto; min-height: 44px; padding: 4px; background: #eaf2f5; gap: 4px; }
body.cse-elementor .elementor .result-tabs [role="tab"] { padding: 10px 6px; height: auto; font-size: .875rem; color: #20384b; white-space: normal; }
body.cse-elementor .elementor .result-tabs [role="tab"][data-state="active"] { background: #fff; color: #105949; font-weight: 700; }
body.cse-elementor .elementor .result-tabs [role="tabpanel"] { min-width: 0; }
body.cse-elementor .elementor .result-tabs .priority-box { margin: 12px 0; padding: 16px; }
body.cse-elementor .elementor .result-tabs .priority-box li { margin-bottom: 8px; font-size: .9375rem; }
body.cse-elementor .elementor .result-tabs .result-actions { margin-top: 12px; }
body.cse-elementor .elementor .result-tabs .score-share { margin: 12px 0 0; padding: 14px; }
body.cse-elementor .elementor .result-tabs .score-share img { width: auto; max-width: 100%; height: auto; max-height: 230px; margin: 12px auto; }
body.cse-elementor .elementor .result-tabs .score-share-actions { justify-content: center; gap: 8px; }
body.cse-elementor .elementor .result-tabs .score-share-actions .primary-button,body.cse-elementor .elementor .result-tabs .score-share-actions .secondary-button { padding: 10px 14px; font-size: .875rem; }
body.cse-elementor .elementor .result-tabs .share-privacy { font-size: .8125rem; margin: 10px 0 0; }
body.cse-elementor .elementor .result-tabs .review-box { margin-top: 12px; padding-top: 0; border: 0; }
body.cse-elementor .elementor .result-tabs .review-label { margin-top: 10px; }
body.cse-elementor .elementor .result-tabs .review-consent { font-size: .75rem; margin: 8px 0; }
body.cse-elementor .elementor .review-grid { align-items: stretch; }
body.cse-elementor .elementor .review-card { height: 220px; min-height: 220px; }
body.cse-elementor .elementor .review-card-top { min-height: 62px; flex-shrink: 0; }
body.cse-elementor .elementor .review-card-top strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
body.cse-elementor .elementor .review-card p { min-height: 0; max-height: 84px; flex-shrink: 1; }
body.cse-elementor .elementor .review-card p.review-expanded { overflow-y: auto; display: block; }
body.cse-elementor .elementor .review-read-more { margin-top: auto; flex-shrink: 0; }
@media(max-width:560px) { body.cse-elementor .elementor .result-screen { padding: 20px 16px; } body.cse-elementor .elementor .result-tabs [role="tab"] { font-size: .8125rem; } body.cse-elementor .elementor .result-tabs .score-share img { max-height: 180px; } body.cse-elementor .elementor .result-tabs .score-share-actions > * { width: auto; } }

/* Compact opening, full reviews, and distinct tab states. */
body.cse-elementor .elementor .assessment-shell { min-height: 0; padding-top: 36px; padding-bottom: 36px; gap: clamp(24px,4vw,60px); }
body.cse-elementor .elementor .intro-panel h1 { font-size: clamp(2.2rem,3.7vw,3.7rem); margin: 14px 0 16px; }
body.cse-elementor .elementor .lede { font-size: 1.0625rem; line-height: 1.65; }
body.cse-elementor .elementor .trust-list { margin: 20px 0 0; gap: 8px 16px; }
body.cse-elementor .elementor .check-card { min-height: 0; }
body.cse-elementor .elementor .quiz-screen { min-height: 0; padding: 28px; }
body.cse-elementor .elementor .shield-orbit { width: 86px; height: 86px; margin: 18px auto 16px; }
body.cse-elementor .elementor .shield-orbit .brand-mark { width: 46px; height: 46px; }
body.cse-elementor .elementor .shield-orbit::after { inset: 5px; border-width: 5px; }
body.cse-elementor .elementor .start-screen h2 { font-size: clamp(1.5rem,2.3vw,1.9rem); }
body.cse-elementor .elementor .start-screen > p:not(.privacy-note) { margin-bottom: 18px; }
body.cse-elementor .elementor .start-button { margin: 0 auto 12px; padding: 12px 18px; }
body.cse-elementor .elementor .review-grid { align-items: stretch; }
body.cse-elementor .elementor .review-card { height: auto; min-height: 180px; align-self: stretch; }
body.cse-elementor .elementor .review-card p { display: block; height: auto; min-height: 0; max-height: none; overflow: visible; -webkit-line-clamp: unset; flex-shrink: 0; overflow-wrap: anywhere; margin-bottom: 4px; }
body.cse-elementor .elementor .result-tabs [role="tablist"] { background: #e3edf1; border: 1px solid #c5d5de; gap: 6px; padding: 5px; }
body.cse-elementor .elementor .result-tabs [role="tab"] { border: 1px solid #b5cbd5; background: #fff; color: #17374a; font-weight: 650; transition: background-color .15s,color .15s; }
body.cse-elementor .elementor .result-tabs [role="tab"]:hover { background: #c2f1e5; color: #083f35; border-color: #58a792; }
body.cse-elementor .elementor .result-tabs [role="tab"][data-state="active"] { background: #126653; color: #fff; border-color: #126653; box-shadow: none; }
body.cse-elementor .elementor .result-tabs [role="tab"][data-state="active"]:hover { background: #0d5142; }
body.cse-elementor .elementor .result-tabs [role="tab"]:focus-visible { outline: 3px solid #dfaa35; outline-offset: 2px; }
@media(max-width:680px) { body.cse-elementor .elementor .assessment-shell { padding-top: 24px; padding-bottom: 28px; } body.cse-elementor .elementor .quiz-screen { padding: 22px 18px; } body.cse-elementor .elementor .intro-panel h1 { font-size: 2.1rem; } }

/* Approved light hero: white with mint and sky-blue accents. */
body.cse-elementor .elementor .site-header { color: #102b50; background: #fff; border-bottom: 1px solid #e1edf2; }
body.cse-elementor .elementor .site-header .brand strong { color: #087c70; }
body.cse-elementor .elementor .site-header :is(nav,.cse-navigation) a { color: #102b50; }
body.cse-elementor .elementor .site-header :is(nav,.cse-navigation) a:hover { color: #087c70; }
body.cse-elementor .elementor .assessment-shell { color: #102b50; background-color: #fff; background-image: radial-gradient(ellipse at 0% 100%, #d4faf0 0%, transparent 38%), radial-gradient(ellipse at 100% 5%, #d9f3ff 0%, transparent 40%); }
body.cse-elementor .elementor .intro-panel .eyebrow { color: #087c70; }
body.cse-elementor .elementor .intro-panel .eyebrow span { background: #087c70; }
body.cse-elementor .elementor .intro-panel .lede { color: #334b66; }
body.cse-elementor .elementor .intro-panel .trust-list { color: #102b50; }
body.cse-elementor .elementor .intro-panel .trust-list li::before { color: #078674; }
body.cse-elementor .elementor .check-card { border: 1px solid #dfedf0; box-shadow: 0 12px 40px #15334f0d; }
body.cse-elementor .elementor .start-screen { background: #fff; }
body.cse-elementor .elementor .safety-illustration { display: block; width: min(100%, 360px); height: 150px; object-fit: contain; margin: 8px auto 16px; }
body.cse-elementor .elementor .start-screen h2 { color: #102b50; }
body.cse-elementor .elementor .start-screen .start-button { width: 200px; max-width: 100%; min-height: 48px; padding: 10px 18px; gap: 24px; font-size: 1rem; margin: 0 auto 16px; background: #7cdeca; color: #092641; }
body.cse-elementor .elementor .start-screen .start-button:hover { background: #56ceb7; }
body.cse-elementor .elementor .start-screen .privacy-note { color: #667c91!important; }
@media(max-width:680px) {
  body.cse-elementor .elementor .site-header .mobile-menu { color: #102b50; border-color: #c7dce3; background: #fff; }
  body.cse-elementor .elementor .site-header :is(nav,.cse-navigation).menu-open { background: #fff; border-bottom: 1px solid #d9e5ec; box-shadow: 0 8px 16px #15334f0d; }
  body.cse-elementor .elementor .safety-illustration { width: min(100%, 300px); height: 125px; }
}

/* Founder page and refined navigation. */
body.cse-elementor .elementor .site-header { height: 80px; gap: 20px; box-shadow: 0 2px 14px #15334f04; }
body.cse-elementor .elementor .site-header .brand { font-size: 1.1rem; }
body.cse-elementor .elementor .site-header :is(nav,.cse-navigation) { align-items: center; gap: 10px; }
body.cse-elementor .elementor .site-header :is(nav,.cse-navigation) a { padding: 8px 13px; border-radius: 8px; font-weight: 600; }
body.cse-elementor .elementor .site-header :is(nav,.cse-navigation) a:hover,body.cse-elementor .elementor .site-header :is(nav,.cse-navigation) a[aria-current="page"] { color: #08695d; background: #e7f8f3; }
body.cse-elementor .elementor .about-brand-shield { display: grid; place-items: center; width: 36px; height: 42px; background: #7cdeca; color: #092641; clip-path: polygon(50% 0,95% 18%,88% 65%,50% 100%,12% 65%,5% 18%); font-size: 25px; }
body.cse-elementor .elementor .founder-page { background: #fff; color: #102b50; }
body.cse-elementor .elementor .founder-hero { padding: 64px clamp(24px,7vw,108px); display: grid; grid-template-columns: 1.15fr 1fr; gap: 64px; align-items: center; background: radial-gradient(ellipse at 100% 15%,#e0f5ff,transparent 50%),radial-gradient(ellipse at 0% 100%,#e1faf2,transparent 45%); }
body.cse-elementor .elementor .founder-copy h1 { font-size: clamp(2.6rem,4.6vw,4.4rem); line-height: 1.08; margin: 20px 0; }
body.cse-elementor .elementor .founder-copy h1 span { color: #087c70; }
body.cse-elementor .elementor .founder-copy > p:not(.eyebrow) { max-width: 580px; color: #425c72; font-size: 1.05rem; }
body.cse-elementor .elementor .founder-role { font-weight: 700; }
body.cse-elementor .elementor .linkedin-button { display: inline-flex; align-items: center; gap: 12px; background: #0c5f83; color: #fff; margin-top: 16px; padding: 12px 18px; font-size: .9375rem; }
body.cse-elementor .elementor .linkedin-button:hover { color: #fff; background: #084961; }
body.cse-elementor .elementor .linkedin-mark { font-weight: 800; border: 1px solid #ffffff80; border-radius: 3px; padding: 0 4px; line-height: 1.2; }
body.cse-elementor .elementor .founder-portrait { position: relative; padding: 25px 20px 0 0; max-width: 420px; width: 100%; justify-self: center; }
body.cse-elementor .elementor .founder-portrait::before { content: ''; position: absolute; top: 0; right: 0; width: 88%; aspect-ratio: 1; border-radius: 50%; background: linear-gradient(135deg,#7cdeca,#91d4f6); }
body.cse-elementor .elementor .founder-monogram { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; aspect-ratio: 1; border-radius: 50%; background: #102b50; color: #a5eddf; font-size: clamp(5rem,10vw,9rem); font-weight: 800; border: 8px solid white; line-height: 1.1; }
body.cse-elementor .elementor .founder-monogram span { font-size: 1rem; color: white; letter-spacing: .05em; margin-top: 16px; }
body.cse-elementor .elementor .founder-caption { position: relative; text-align: center; font-size: .875rem; color: #425c72; margin-top: 18px; }
body.cse-elementor .elementor .founder-story { padding: 48px clamp(24px,7vw,108px); display: grid; grid-template-columns: 1fr 1.3fr; gap: 64px; border-top: 1px solid #e3eef1; }
body.cse-elementor .elementor .founder-story h2 { font-size: clamp(1.8rem,3vw,2.5rem); margin-top: 16px; }
body.cse-elementor .elementor .founder-story p { color: #425c72; }
body.cse-elementor .elementor .founder-text-link { display: inline-block; color: #087c70; font-weight: 700; margin-top: 10px; text-underline-offset: 4px; }
@media(max-width:800px) { body.cse-elementor .elementor .founder-hero { grid-template-columns: 1fr; gap: 32px; padding-top: 36px; padding-bottom: 36px; } body.cse-elementor .elementor .founder-portrait { max-width: 300px; } body.cse-elementor .elementor .founder-story { grid-template-columns: 1fr; gap: 12px; } }
@media(max-width:680px) { body.cse-elementor .elementor .site-header { height: 68px; } body.cse-elementor .elementor .site-header .brand { font-size: .95rem; } body.cse-elementor .elementor .about-header { height: auto; padding: 16px 18px; flex-wrap: wrap; gap: 12px; } body.cse-elementor .elementor .about-header :is(nav,.cse-navigation) { display: flex; flex-wrap: wrap; gap: 2px; width: 100%; } body.cse-elementor .elementor .about-header :is(nav,.cse-navigation) a { font-size: .8125rem; padding: 7px 9px; } }

body.cse-elementor .elementor .founder-photo { position: relative; display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; object-position: 50% 28%; border-radius: 50%; border: 8px solid white; background: #e9f5f4; }

/* Compact setup and optional improvement plan. */
body.cse-elementor .elementor .profile-screen { gap: 10px; padding: 22px 24px; }
body.cse-elementor .elementor .profile-screen .question-topic { margin: 0; }
body.cse-elementor .elementor .profile-screen h2 { font-size: clamp(1.4rem,2vw,1.75rem); }
body.cse-elementor .elementor .profile-screen .question-help { margin: 0 0 4px; font-size: .9375rem; line-height: 1.5; }
body.cse-elementor .elementor .profile-screen .profile-grid { gap: 9px 12px; }
body.cse-elementor .elementor .profile-screen .profile-grid input,body.cse-elementor .elementor .profile-screen .profile-grid select { padding: 8px 10px; min-height: 42px; }
body.cse-elementor .elementor .profile-screen .profile-warning,body.cse-elementor .elementor .profile-screen .privacy-check { padding: 9px 11px; }
body.cse-elementor .elementor .profile-screen > .primary-button { align-self: center; padding: 10px 18px; font-size: .9375rem; }
body.cse-elementor .elementor .improvement-box { margin-top: 20px; padding-top: 18px; border-top: 1px solid #d9e5ec; }
body.cse-elementor .elementor .improvement-box h3 { font-size: 1.125rem; margin: 0 0 8px; }
body.cse-elementor .elementor .improvement-box p { font-size: .9375rem; }
body.cse-elementor .elementor .plan-options { padding: 0; border: 0; margin: 12px 0; }
body.cse-elementor .elementor .plan-options legend { font-weight: 700; font-size: .875rem; margin-bottom: 8px; }
body.cse-elementor .elementor .plan-options label,body.cse-elementor .elementor .plan-storage,body.cse-elementor .elementor .progress-actions label { display: flex; align-items: flex-start; gap: 12px; margin: 8px 0; padding: 12px; border: 1px solid #d9e5ec; border-radius: 10px; font-size: .9375rem; cursor: pointer; background: #fff; }
body.cse-elementor .elementor .plan-options [data-slot="checkbox"],body.cse-elementor .elementor .plan-storage [data-slot="checkbox"],body.cse-elementor .elementor .progress-actions [data-slot="checkbox"] { margin-top: 4px; width: 20px; height: 20px; background: white; border-color: #63838a; }
body.cse-elementor .elementor .plan-options [data-state="checked"],body.cse-elementor .elementor .plan-storage [data-state="checked"],body.cse-elementor .elementor .progress-actions [data-state="checked"] { background: #126653; color: white; }
body.cse-elementor .elementor .plan-storage { font-size: .8125rem; background: #f1faf7; }
body.cse-elementor .elementor .improvement-box .primary-button:disabled { opacity: .5; cursor: not-allowed; transform: none; }
body.cse-elementor .elementor .plan-small,body.cse-elementor .elementor .improvement-box .plan-small { font-size: .8125rem; color: #586e80; line-height: 1.55; margin-top: 12px; }
body.cse-elementor .elementor .plan-return { font-size: .875rem; color: #08695d; background: #eaf8f4; padding: 8px 12px; border-radius: 8px; margin-top: 12px; text-align: center; }
body.cse-elementor .elementor .plan-comparison { padding: 12px; background: #eaf8f4; border-radius: 10px; }
body.cse-elementor .elementor .plan-comparison strong { font-size: 1.4rem; }
body.cse-elementor .elementor .progress-page { max-width: 880px; padding: 36px 24px 60px; margin: 0 auto; }
body.cse-elementor .elementor .progress-page h1 { font-size: clamp(2rem,4vw,3rem); margin: 12px 0; }
body.cse-elementor .elementor .progress-page h2 { font-size: 1.35rem; }
body.cse-elementor .elementor .progress-dates { color: #586e80; }
body.cse-elementor .elementor .progress-summary { display: flex; flex-wrap: wrap; gap: 16px; margin: 24px 0; }
body.cse-elementor .elementor .progress-summary > div { flex: 1 1 150px; padding: 18px; background: #e3f6f0; border-radius: 12px; }
body.cse-elementor .elementor .progress-summary strong,body.cse-elementor .elementor .progress-summary span { display: block; }
body.cse-elementor .elementor .progress-summary strong { font-size: 1.8rem; }
body.cse-elementor .elementor .progress-summary span { font-size: .875rem; }
body.cse-elementor .elementor .progress-actions,body.cse-elementor .elementor .progress-review { margin: 24px 0; }
body.cse-elementor .elementor .progress-actions .action-done { border-color: #399680; background: #eaf8f4; }
body.cse-elementor .elementor .progress-review .primary-button,body.cse-elementor .elementor .progress-empty .primary-button { display: inline-block; }
body.cse-elementor .elementor .progress-page .text-button { margin: 12px 0; }
@media(max-width:680px) { body.cse-elementor .elementor .profile-screen { padding: 18px; } body.cse-elementor .elementor .site-header :is(nav,.cse-navigation).menu-open { align-items: stretch; } }

body.cse-elementor .elementor .learning-resources { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; padding: 24px clamp(20px,7vw,108px) 36px; background: #f6fafc; }
body.cse-elementor .elementor .learning-resources article { padding: 22px; border: 1px solid #d9e5ec; border-radius: 14px; background: #fff; }
body.cse-elementor .elementor .learning-resources h2 { font-size: 1.35rem; margin: 10px 0; }
body.cse-elementor .elementor .learning-resources p { font-size: .9375rem; }
body.cse-elementor .elementor .learning-resources .secondary-button { display: inline-block; text-decoration: none; font-size: .875rem; padding: 10px 14px; }
@media(max-width:680px) { body.cse-elementor .elementor .learning-resources { grid-template-columns: 1fr; gap: 12px; } }

body.cse-elementor .elementor .home-safety-plan { margin: 20px clamp(20px,7vw,108px); padding: 20px 24px; border: 1px solid #cbe4df; border-radius: 14px; background: #f0faf7; scroll-margin-top: 20px; }
body.cse-elementor .elementor .home-plan-heading,body.cse-elementor .elementor .facilitator-strip { display: flex; justify-content: space-between; align-items: center; gap: 24px; }
body.cse-elementor .elementor .home-plan-heading h2,body.cse-elementor .elementor .facilitator-strip h2 { font-size: 1.4rem; margin: 6px 0; }
body.cse-elementor .elementor .home-plan-heading p,body.cse-elementor .elementor .facilitator-strip p { margin: 4px 0; font-size: .9375rem; }
body.cse-elementor .elementor .home-plan-heading .eyebrow,body.cse-elementor .elementor .facilitator-strip .eyebrow { font-size: .75rem; }
body.cse-elementor .elementor .home-plan-heading > button,body.cse-elementor .elementor .facilitator-strip > a { flex-shrink: 0; font-size: .875rem; padding: 10px 14px; text-decoration: none; }
body.cse-elementor .elementor .home-plan-content { margin-top: 20px; padding-top: 18px; border-top: 1px solid #cbe4df; max-width: 820px; }
body.cse-elementor .elementor .home-plan-content h3 { font-size: 1.35rem; margin: 8px 0; }
body.cse-elementor .elementor .home-plan-content h2 { font-size: 1.15rem; }
body.cse-elementor .elementor .home-plan-content .progress-summary { margin: 16px 0; }
body.cse-elementor .elementor .home-plan-content .progress-summary > div { padding: 12px 16px; }
body.cse-elementor .elementor .home-plan-content .progress-actions,body.cse-elementor .elementor .home-plan-content .progress-review { margin: 18px 0; }
body.cse-elementor .elementor .facilitator-strip { padding: 20px 24px; margin: 16px clamp(20px,7vw,108px) 30px; border: 1px solid #d9e5ec; border-radius: 14px; background: white; }
body.cse-elementor .elementor .about-book { grid-template-columns: 1fr; }
@media(max-width:680px) { body.cse-elementor .elementor .home-plan-heading,body.cse-elementor .elementor .facilitator-strip { align-items: flex-start; flex-direction: column; gap: 12px; } body.cse-elementor .elementor .home-safety-plan,body.cse-elementor .elementor .facilitator-strip { padding: 18px; } }

/* Compact learning and group resources */
body.cse-elementor .elementor .facilitator-actions { display:flex; flex-direction:column; align-items:flex-start; gap:10px; flex:0 1 360px; }
body.cse-elementor .elementor .facilitator-actions .secondary-button { font-size:.875rem; padding:12px 16px; text-decoration:none; }
body.cse-elementor .elementor .facilitator-contact { color:#256b63; font-size:.9375rem; font-weight:700; text-underline-offset:4px; }
body.cse-elementor .elementor .facilitator-contact:hover { color:#123f3a; }
body.cse-elementor .elementor .facilitator-actions small { color:var(--copy-muted); font-size:.8125rem; line-height:1.5; }
body.cse-elementor .elementor .faq-section { padding:32px clamp(20px,7vw,108px); display:grid; grid-template-columns:minmax(200px,1fr) minmax(0,2fr); gap:36px; background:#f5fafc; }
body.cse-elementor .elementor .faq-section h2 { font-size:clamp(1.6rem,3vw,2.25rem); margin:8px 0 12px; }
body.cse-elementor .elementor .faq-section > div > p:last-child { color:var(--copy-muted); line-height:1.6; }
body.cse-elementor .elementor .faq-items details { border-bottom:1px solid #d7e5e9; padding:0; }
body.cse-elementor .elementor .faq-items summary { padding:17px 8px; cursor:pointer; color:var(--ink); font-size:1rem; font-weight:700; }
body.cse-elementor .elementor .faq-items summary:hover,body.cse-elementor .elementor .faq-items details[open] summary { color:#206e64; background:#e8f6f2; }
body.cse-elementor .elementor .faq-items summary:focus-visible,body.cse-elementor .elementor .facilitator-contact:focus-visible { outline:3px solid #267b73; outline-offset:3px; }
body.cse-elementor .elementor .faq-items p { margin:0; padding:8px 8px 18px; line-height:1.7; font-size:1rem; color:var(--copy-muted); }
body.cse-elementor .elementor footer :is(nav,.cse-navigation) { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 20px; }
body.cse-elementor .elementor footer :is(nav,.cse-navigation) a { font-size:.875rem; text-underline-offset:4px; }
@media(max-width:760px) { body.cse-elementor .elementor .faq-section { grid-template-columns:1fr; gap:10px; } body.cse-elementor .elementor .facilitator-strip { flex-direction:column; align-items:flex-start; } body.cse-elementor .elementor .facilitator-actions { flex:auto; } }

/* Shared, compact two-row footer */
body.cse-elementor .elementor footer.site-footer { display:block; padding:28px clamp(20px,7vw,108px) 20px; font-size:.875rem; }
body.cse-elementor .elementor .site-footer .footer-top,body.cse-elementor .elementor .site-footer .footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; }
body.cse-elementor .elementor .site-footer .footer-top { padding-bottom:22px; }
body.cse-elementor .elementor .site-footer .footer-brand { color:#fff; font-size:1.125rem; text-decoration:none; white-space:nowrap; }
body.cse-elementor .elementor .site-footer .footer-brand strong { color:#7fdfca; }
body.cse-elementor .elementor .site-footer :is(nav,.cse-navigation) { justify-content:flex-end; gap:12px 28px; }
body.cse-elementor .elementor .site-footer :is(nav,.cse-navigation) a { color:#d5e3ec; font-size:.9375rem; text-decoration:none; padding:8px 0; }
body.cse-elementor .elementor .site-footer .footer-bottom { border-top:1px solid #ffffff24; padding-top:16px; }
body.cse-elementor .elementor .site-footer .footer-bottom p { margin:0; font-size:.8125rem; line-height:1.6; }
body.cse-elementor .elementor .site-footer .footer-bottom a { color:inherit; text-decoration:none; }
body.cse-elementor .elementor .site-footer a:hover { color:#7fdfca; text-decoration:underline; text-underline-offset:4px; }
body.cse-elementor .elementor .site-footer a:focus-visible { outline:2px solid #7fdfca; outline-offset:5px; border-radius:3px; }
@media(max-width:640px) {
  body.cse-elementor .elementor .site-footer .footer-top,body.cse-elementor .elementor .site-footer .footer-bottom { flex-direction:column; align-items:flex-start; gap:10px; }
  body.cse-elementor .elementor .site-footer :is(nav,.cse-navigation) { justify-content:flex-start; gap:8px 22px; }
  body.cse-elementor .elementor .site-footer .footer-top { padding-bottom:16px; }
  body.cse-elementor .elementor .site-footer .footer-bottom { gap:4px; padding-top:14px; }
}

/* Book feature on the founder page */
body.cse-elementor .elementor .about-book { display:block; padding:20px clamp(20px,7vw,108px) 36px; background:#f6fafc; }
body.cse-elementor .elementor .book-card { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:32px; max-width:1120px; margin:0 auto; padding:clamp(24px,4vw,40px); border:1px solid #294451; border-radius:20px; background:linear-gradient(115deg,#101d30,#183d47); box-shadow:0 10px 26px #102b5010; color:#fff; }
body.cse-elementor .elementor .book-copy { min-width:0; padding-left:20px; border-left:3px solid #7fdfca; }
body.cse-elementor .elementor .book-eyebrow { margin:0 0 12px; color:#94e5d4; font-size:.8125rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; line-height:1.6; }
body.cse-elementor .elementor .book-card h2 { margin:0 0 12px; max-width:28ch; color:#fff; font-size:clamp(1.4rem,2.5vw,2rem); line-height:1.2; letter-spacing:-.02em; overflow-wrap:break-word; }
body.cse-elementor .elementor .book-copy > p:last-child { margin:0; color:#d3e1e8; font-size:1rem; line-height:1.65; }
body.cse-elementor .elementor .book-action { display:flex; flex-direction:column; gap:12px; align-items:center; }
body.cse-elementor .elementor .book-amazon-link { display:inline-flex; justify-content:space-between; align-items:center; gap:20px; min-height:48px; padding:14px 20px; border:1px solid transparent; border-radius:10px; background:#7fdfca; color:#102334; text-decoration:none; font-weight:750; font-size:.9375rem; line-height:1.45; transition:background .18s ease,box-shadow .18s ease; }
body.cse-elementor .elementor .book-amazon-link:hover { background:#a5ecdc; box-shadow:0 4px 14px #0002; }
body.cse-elementor .elementor .book-amazon-link:focus-visible { outline:3px solid white; outline-offset:4px; }
body.cse-elementor .elementor .book-link-note { color:#bfced9; font-size:.8125rem; line-height:1.5; text-align:center; }
@media(max-width:760px) { body.cse-elementor .elementor .book-card { grid-template-columns:minmax(0,1fr); gap:24px; border-radius:16px; } body.cse-elementor .elementor .book-action { align-items:flex-start; padding-left:23px; } }
@media(max-width:420px) { body.cse-elementor .elementor .book-card { padding:24px 20px; } body.cse-elementor .elementor .book-copy { padding-left:14px; } body.cse-elementor .elementor .book-action { padding-left:0; align-items:stretch; } body.cse-elementor .elementor .book-amazon-link { width:100%; font-size:.875rem; padding:13px 15px; gap:12px; } }

/* Responsive layout and touch controls across desktop, tablet and phones. */
body.cse-elementor .elementor img,body.cse-elementor .elementor canvas,body.cse-elementor .elementor svg { max-width:100%; }
body.cse-elementor .elementor .assessment-shell > *, body.cse-elementor .elementor .founder-hero > *, body.cse-elementor .elementor .founder-story > *, body.cse-elementor .elementor .result-heading > *, body.cse-elementor .elementor .profile-grid > *, body.cse-elementor .elementor .faq-section > * { min-width:0; }
body.cse-elementor .elementor .site-header .brand-mark,body.cse-elementor .elementor .site-header .about-brand-shield { flex-shrink:0; }
body.cse-elementor .elementor input,body.cse-elementor .elementor select,body.cse-elementor .elementor textarea { max-width:100%; }
body.cse-elementor .elementor .profile-screen .profile-grid input,body.cse-elementor .elementor .profile-screen .profile-grid select,body.cse-elementor .elementor .review-label input,body.cse-elementor .elementor .review-label textarea { font-size:1rem; min-height:44px; }
body.cse-elementor .elementor button,body.cse-elementor .elementor a,body.cse-elementor .elementor input,body.cse-elementor .elementor select,body.cse-elementor .elementor textarea,body.cse-elementor .elementor summary { touch-action:manipulation; }
body.cse-elementor .elementor .primary-button,body.cse-elementor .elementor .secondary-button,body.cse-elementor .elementor .answer-button,body.cse-elementor .elementor .mobile-menu,body.cse-elementor .elementor .star-picker button { min-height:44px; }
body.cse-elementor .elementor .star-picker button { min-width:44px; }
body.cse-elementor .elementor .text-button { min-height:44px; }
body.cse-elementor .elementor .site-header :is(nav,.cse-navigation) a { min-height:44px; display:inline-flex; align-items:center; }
body.cse-elementor .elementor .card-topline { gap:12px; flex-wrap:wrap; }
body.cse-elementor .elementor .result-heading h2,body.cse-elementor .elementor .result-heading p,body.cse-elementor .elementor .founder-copy h1,body.cse-elementor .elementor .priority-box li { overflow-wrap:anywhere; }
body.cse-elementor .elementor .result-tabs [role="tablist"] { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
body.cse-elementor .elementor .result-tabs [role="tab"] { min-width:0; min-height:48px; line-height:1.35; overflow-wrap:break-word; }
body.cse-elementor .elementor .score-share-actions button { max-width:100%; }
body.cse-elementor .elementor .review-card-top > div { min-width:0; }
body.cse-elementor .elementor .review-viewport { touch-action:pan-y pinch-zoom; }
body.cse-elementor .elementor .site-footer :is(nav,.cse-navigation) a { min-height:44px; display:inline-flex; align-items:center; }
@media(min-width:1600px) {
  body.cse-elementor .elementor .assessment-shell { padding-left:max(6vw,calc((100vw - 1480px)/2)); padding-right:max(6vw,calc((100vw - 1480px)/2)); }
  body.cse-elementor .elementor .founder-hero,body.cse-elementor .elementor .founder-story { padding-left:max(7vw,calc((100vw - 1440px)/2)); padding-right:max(7vw,calc((100vw - 1440px)/2)); }
}
@media(max-width:1100px) {
  body.cse-elementor .elementor .assessment-shell { grid-template-columns:minmax(0,1fr); gap:24px; }
  body.cse-elementor .elementor .intro-panel { max-width:720px; width:100%; margin:0 auto; }
  body.cse-elementor .elementor .check-card { width:100%; max-width:720px; margin:0 auto; }
  body.cse-elementor .elementor .founder-hero { gap:32px; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
}
@media(max-width:800px) {
  body.cse-elementor .elementor .site-header { position:relative; height:auto; min-height:68px; padding:12px 20px; }
  body.cse-elementor .elementor .site-header:not(.about-header) :is(nav,.cse-navigation) { display:none; }
  body.cse-elementor .elementor .site-header .mobile-menu { display:block; padding:8px 12px; color:#102b50; border-color:#c7dce3; background:white; }
  body.cse-elementor .elementor .site-header:not(.about-header) :is(nav,.cse-navigation).menu-open { display:flex; position:absolute; top:100%; left:0; right:0; z-index:30; flex-direction:column; align-items:stretch; gap:0; padding:8px 20px; background:white; border-bottom:1px solid #d9e5ec; box-shadow:0 8px 16px #15334f14; }
  body.cse-elementor .elementor .site-header :is(nav,.cse-navigation).menu-open a { padding:12px; }
  body.cse-elementor .elementor .about-header { flex-wrap:wrap; gap:8px; }
  body.cse-elementor .elementor .about-header :is(nav,.cse-navigation) { display:flex; flex-wrap:wrap; width:100%; gap:2px; }
  body.cse-elementor .elementor .about-header :is(nav,.cse-navigation) a { padding:8px 10px; font-size:.875rem; }
  body.cse-elementor .elementor .founder-hero,body.cse-elementor .elementor .founder-story { grid-template-columns:minmax(0,1fr); }
  body.cse-elementor .elementor .founder-portrait { max-width:300px; }
}
@media(max-width:600px) {
  body.cse-elementor .elementor .assessment-shell { padding:24px 16px; }
  body.cse-elementor .elementor .intro-panel h1 { font-size:clamp(1.8rem,7vw,2.35rem); }
  body.cse-elementor .elementor .quiz-screen,body.cse-elementor .elementor .profile-screen,body.cse-elementor .elementor .result-screen { padding:20px 16px; }
  body.cse-elementor .elementor .check-card { border-radius:18px; }
  body.cse-elementor .elementor .profile-grid { grid-template-columns:minmax(0,1fr); }
  body.cse-elementor .elementor .profile-grid .wide-field { grid-column:auto; }
  body.cse-elementor .elementor .profile-screen .primary-button { width:100%; padding:12px; }
  body.cse-elementor .elementor .question-screen h2 { font-size:1.4rem; }
  body.cse-elementor .elementor .answer-button { gap:10px; padding:12px; }
  body.cse-elementor .elementor .answer-button:hover { transform:none; }
  body.cse-elementor .elementor .answer-button > span:last-child { min-width:0; }
  body.cse-elementor .elementor .question-help { font-size:1rem; }
  body.cse-elementor .elementor .progress-row { font-size:.875rem; gap:4px; }
  body.cse-elementor .elementor .quiz-progress { margin-bottom:20px; }
  body.cse-elementor .elementor .result-actions > *, body.cse-elementor .elementor .result-actions button { width:100%; }
  body.cse-elementor .elementor .result-tabs [role="tab"] { font-size:.8125rem; padding:10px 4px; }
  body.cse-elementor .elementor .result-tabs [role="tablist"] { gap:3px; padding:4px; }
  body.cse-elementor .elementor .result-tabs .priority-box { padding:12px; }
  body.cse-elementor .elementor .result-tabs .score-share { padding:12px; }
  body.cse-elementor .elementor .result-tabs .score-share-actions > * { width:100%; }
  body.cse-elementor .elementor .review-list-heading { padding-right:0; }
  body.cse-elementor .elementor .review-slider-controls { position:static; margin-top:8px; }
  body.cse-elementor .elementor .review-card { flex-basis:90%; }
  body.cse-elementor .elementor .review-more { flex-wrap:wrap; }
  body.cse-elementor .elementor .founder-copy h1 { font-size:clamp(2rem,8vw,2.8rem); }
  body.cse-elementor .elementor .founder-hero,body.cse-elementor .elementor .founder-story { padding-left:20px; padding-right:20px; }
  body.cse-elementor .elementor .linkedin-button { max-width:100%; gap:8px; font-size:.875rem; }
  body.cse-elementor .elementor .facilitator-actions,body.cse-elementor .elementor .facilitator-actions .secondary-button { max-width:100%; }
  body.cse-elementor .elementor .facilitator-actions .secondary-button { white-space:normal; }
  body.cse-elementor .elementor .faq-items summary { line-height:1.5; }
  body.cse-elementor .elementor .privacy-section h2 { font-size:1.8rem; }
  body.cse-elementor .elementor .admin-review { flex-wrap:wrap; }
}
@media(max-width:360px) {
  body.cse-elementor .elementor .site-header { gap:8px; padding:10px 12px; }
  body.cse-elementor .elementor .site-header .brand { font-size:.85rem; gap:7px; }
  body.cse-elementor .elementor .site-header .brand-mark { width:28px; height:28px; }
  body.cse-elementor .elementor .site-header .mobile-menu { padding:8px; font-size:.875rem; }
}
@media(prefers-reduced-motion:reduce) { body.cse-elementor .elementor *,body.cse-elementor .elementor *::before,body.cse-elementor .elementor *::after { animation:none!important; scroll-behavior:auto!important; } }

/* Original mobile menu with a translucent surface and clear interaction states. */
@media(max-width:800px) {
  body.cse-elementor .elementor .site-header:not(.about-header) :is(nav,.cse-navigation).menu-open {
    display:flex; flex-direction:column; align-items:stretch;
    top:100%; left:0; right:0; width:auto;
    padding:8px 20px; gap:0; border:0;
    border-bottom:1px solid #b8d9d880; border-radius:0;
    background:rgba(255,255,255,.55);
    -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
    box-shadow:0 8px 18px #102b5012;
  }
  body.cse-elementor .elementor .site-header:not(.about-header) :is(nav,.cse-navigation).menu-open a {
    display:flex; align-items:center; justify-content:flex-end;
    min-height:44px; padding:12px; font-size:.92rem;
    line-height:1.4; text-align:right; background:transparent;
    color:#102b50; border-radius:8px;
    transition:background-color .15s ease,color .15s ease;
  }
  body.cse-elementor .elementor .site-header:not(.about-header) :is(nav,.cse-navigation).menu-open a:hover,
  body.cse-elementor .elementor .site-header:not(.about-header) :is(nav,.cse-navigation).menu-open a:focus-visible,
  body.cse-elementor .elementor .site-header:not(.about-header) :is(nav,.cse-navigation).menu-open a:active {
    background:#c5f1e5; color:#063f36;
  }
  body.cse-elementor .elementor .site-header .mobile-menu { min-width:64px; }
}

body.cse-elementor .elementor .cse-consent {position:fixed;bottom:12px;left:12px;right:12px;z-index:9999;background:#fff;color:#102235;padding:16px;border:1px solid #123b5d;border-radius:12px;box-shadow:0 8px 30px #0003;max-width:700px;margin:auto}body.cse-elementor .elementor .cse-consent p{margin:0 0 10px}body.cse-elementor .elementor .cse-consent button{padding:8px 12px;border:1px solid #123b5d;border-radius:6px;margin-right:10px;cursor:pointer}body.cse-elementor .elementor .cse-consent-settings{display:block;margin:12px auto;padding:8px;color:#123b5d;background:#fff;border:1px solid #123b5d;border-radius:6px}body.cse-elementor .elementor .cse-website{margin:0!important;padding:0!important}body.cse-elementor .elementor .cse-website #cse-root{width:100%;max-width:none}body.cse-elementor .elementor .toplevel_page_cybersafe-everyday .wrap>h1{font-size:28px}

/* Elementor hosts complete original sections; avoid applying the kit's typography. */
body.cse-elementor .elementor body.cse-elementor .elementor-widget-cse_section {margin:0;width:100%;font:inherit;color:inherit}
body.cse-elementor .elementor body.cse-elementor .elementor-widget-cse_section>.elementor-widget-container {margin:0;padding:0}
body.cse-elementor .elementor .cse-elementor .cse-assessment-slot {min-width:0;width:100%}
body.cse-elementor .elementor .cse-elementor .cse-assessment-slot .check-card{width:100%}

/* Colour and portrait improvements, shared by Elementor and the fallback pages. */
body.cse-elementor .elementor .facilitator-strip { background:linear-gradient(120deg,#0b2944,#126d70); border-color:#195665; box-shadow:0 14px 35px #123b5d16; }
body.cse-elementor .elementor .facilitator-strip h2,body.cse-elementor .elementor .facilitator-strip p { color:#fff; }
body.cse-elementor .elementor .facilitator-strip .eyebrow { color:#9ef0df; }
body.cse-elementor .elementor .facilitator-actions .secondary-button { color:#082e39;background:#9ae8d7;border-color:#9ae8d7; }
body.cse-elementor .elementor .facilitator-actions .facilitator-contact { color:#d5fff4; }
body.cse-elementor .elementor .facilitator-actions small { color:#dceef4; }
body.cse-elementor .elementor .founder-photo { border-radius:24px;aspect-ratio:auto;object-fit:contain; }
body.cse-elementor .elementor .founder-portrait::before { border-radius:28px; }

body.cse-elementor .elementor .site-header > .elementor-widget,body.cse-elementor .elementor .site-header > .cse-navigation{width:auto;flex:none;}
body.cse-elementor .elementor .site-header .elementor-widget-text-editor p,body.cse-elementor .elementor .site-footer .brand p{margin:0;}
body.cse-elementor .elementor .brand-mark{background:#7cdeca;color:#061e2d;border-radius:0;clip-path:polygon(50% 0,100% 18%,100% 55%,85% 80%,50% 100%,15% 80%,0 55%,0 18%);display:grid;place-items:center;}
body.cse-elementor .elementor .founder-copy .elementor-widget-text-editor p:not(.eyebrow){max-width:580px;color:#425c72;font-size:1.05rem;}
body.cse-elementor .elementor :where(.cse-image-founder-photo) img{position:relative;display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:24px;border:8px solid white;background:#e9f5f4;}
body.cse-elementor .elementor .founder-portrait::before{inset:auto;top:0;right:0;width:88%;height:calc(100% - 42px);aspect-ratio:auto;border-radius:28px;}
body.cse-elementor .elementor .facilitator-strip{width:auto;color:white;--background:linear-gradient(120deg,#0b2944,#126d70);background-color:#0b2944;background-image:linear-gradient(120deg,#0b2944,#126d70);}
body.cse-elementor .elementor .faq-items .cse-faq-answer{padding:8px 8px 18px;color:#5c6e7d;line-height:1.7;}
body.cse-elementor .elementor .faq-items .cse-faq-answer p{padding:0;}
body.cse-elementor .elementor .cse-layout.cse-navigation{display:flex;flex-direction:row;gap:30px;}
@media(max-width:680px){body.cse-elementor .elementor .site-header:not(.about-header) .cse-navigation{display:none;}body.cse-elementor .elementor .site-header .cse-navigation.menu-open{display:flex;flex-direction:column;width:100%;}body.cse-elementor .elementor .about-header .cse-navigation{flex-wrap:wrap;gap:16px;}}
