/* Shared public theme. Preserve the original black, blue and green palette. */
:root {
    --ink:#171a1c;
    --muted:#7c817d;
    --line:#e3e6e1;
    --paper:#f7f8f6;
    --blue:#239de1;
    --green:#13b866
}

* {
    box-sizing:border-box
}

html {
    scroll-behavior:smooth
}

body {
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
    font-size:14px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased
}

button,input {
    font:inherit
}

button,a,input,summary {
    -webkit-tap-highlight-color:transparent;
    outline-offset:5px
}

button {
    cursor:pointer;
    border:0;
    background:none;
    color:inherit
}

button:disabled {
    opacity:.5;
    cursor:wait
}

a {
    color:inherit;
    text-decoration:none
}

button:focus-visible,a:focus-visible,summary:focus-visible {
    outline:2px solid var(--blue)
}

input:focus {
    outline:none;
    border-color:var(--blue)!important;
    box-shadow:0 0 0 3px #239de114
}

img {
    max-width:100%;
    display:block
}

h1,h2,h3,p {
    margin:0
}

h1,h2,h3 {
    font-weight:650;
    line-height:1.3
}

[v-cloak] {
    display:none!important
}

.skip-link {
    position:fixed;
    top:-80px;
    left:16px;
    z-index:99;
    padding:12px;
    background:white
}

.skip-link:focus {
    top:12px
}

.mobile-only {
    display:none
}

.site-header {
    height:80px;
    background:#111315;
    color:#fff
}

.header-inner {
    max-width:1200px;
    height:100%;
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    padding:0 36px
}

.brand {
    display:flex;
    gap:12px;
    align-items:center;
    font-size:22px;
    font-weight:750;
    letter-spacing:1px;
    flex-shrink:0
}

.brand small {
    display:block;
    font-size:10px;
    color:#9da1a4;
    font-weight:400;
    letter-spacing:1px;
    margin-top:1px
}

.brand-mark {
    height:38px;
    width:38px;
    border:1px solid #626567;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    position:relative
}

.brand-mark span {
    position:absolute;
    right:1px;
    bottom:-2px;
    color:#53c590;
    font-size:30px
}

.main-nav {
    display:flex;
    align-items:center;
    gap:32px;
    height:100%
}

.main-nav a {
    height:100%;
    display:flex;
    gap:6px;
    align-items:center;
    position:relative;
    color:#adb1b4;
    font-size:13px;
    white-space:nowrap
}

.main-nav a:hover,.main-nav a[aria-current] {
    color:#fff
}

.main-nav a[aria-current]:after {
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    height:3px;
    background:#fff
}

.nav-plus {
    color:#6dcc9d;
    font-size:18px
}

.header-login {
    background:#fff;
    color:#181a1d!important;
    min-height:37px!important;
    font-size:12px!important;
    padding:0 17px!important;
    gap:18px!important
}

.account-button {
    display:flex;
    align-items:center;
    gap:9px;
    font-size:12px
}

.avatar-dot {
    width:27px;
    height:27px;
    border-radius:50%;
    background:#313537;
    display:grid;
    place-items:center;
    color:#aee9ce
}

.page-shell {
    max-width:1128px;
    margin:auto;
    padding:0 28px
}

.hero {
    display:grid;
    grid-template-columns:1.2fr 1fr;
    align-items:center;
    min-height:340px;
    gap:40px;
    padding:46px 0 38px
}

.eyebrow {
    display:flex;
    align-items:center;
    gap:8px;
    font-size:10px;
    font-weight:600;
    letter-spacing:1.8px;
    color:var(--muted)
}

.status-dot {
    width:6px;
    height:6px;
    background:var(--green);
    border-radius:50%
}

.hero h1 {
    font-size:48px;
    letter-spacing:-1.7px;
    line-height:1.25;
    margin:17px 0 16px
}

.hero p {
    font-size:13px;
    color:#777e7d;
    line-height:1.9
}

.hero-art {
    position:relative;
    height:265px;
    max-width:400px;
    width:100%;
    justify-self:end
}

.art-grid {
    position:absolute;
    inset:0 0 0 5px;
    background-image:linear-gradient(#dde2dd80 1px,transparent 1px),linear-gradient(90deg,#dde2dd80 1px,transparent 1px);
    background-size:24px 24px;
    mask-image:radial-gradient(ellipse at center,#000 15%,transparent 69%)
}

.art-caption {
    position:absolute;
    left:35px;
    top:14px;
    font-size:8px;
    letter-spacing:2.4px;
    color:#999f9b
}

.art-window {
    position:absolute;
    width:244px;
    height:165px;
    left:55px;
    top:38px;
    border:1px solid #d0d6d1;
    background:#fefefd;
    border-radius:12px;
    transform:rotate(-7deg);
    box-shadow:0 12px 20px #26362708;
    overflow:hidden
}

.art-window-bar {
    height:28px;
    display:flex;
    gap:4px;
    align-items:center;
    padding:0 11px;
    border-bottom:1px solid #e8ebe6
}

.art-window-bar i {
    height:4px;
    width:4px;
    border-radius:50%;
    background:#d5dbd3
}

.art-window-bar span {
    margin-left:auto;
    font-size:6px;
    color:#8e978e;
    letter-spacing:1px
}

.art-play {
    width:60px;
    height:60px;
    border:1px solid #d9e2d7;
    border-radius:50%;
    display:grid;
    place-items:center;
    margin:22px auto 12px;
    color:#54654f;
    background:#ecf1e9
}

.art-play svg {
    width:30px;
    height:30px
}

.art-timeline {
    height:3px;
    background:#e3e8e0;
    margin:0 17px
}

.art-timeline span {
    display:block;
    width:60%;
    height:100%;
    background:#89a17e
}

.art-time {
    font-size:7px;
    color:#a0a89a;
    margin:6px 17px;
    display:block
}

.art-download {
    position:absolute;
    left:131px;
    bottom:16px;
    display:flex;
    align-items:center;
    gap:12px;
    background:white;
    border:1px solid #e0e5de;
    border-radius:12px;
    box-shadow:0 10px 28px #2c402512;
    padding:15px 17px;
    transform:rotate(3deg);
    width:250px
}

.art-download svg {
    width:35px;
    height:35px;
    padding:7px;
    background:#eaf7ef;
    border-radius:9px;
    color:#37a968
}

.art-download span {
    font-size:12px;
    font-weight:600
}

.art-download small {
    display:block;
    font-size:8px;
    font-weight:400;
    color:#969e93;
    margin-top:3px
}

.art-download b {
    margin-left:auto;
    font-weight:400;
    color:#32b373
}

.art-star {
    position:absolute;
    right:30px;
    top:35px;
    font-size:53px;
    color:#8da782;
    transform:rotate(12deg)
}

.workspace {
    background:#fff;
    border:1px solid #e0e3df;
    border-radius:16px;
    overflow:hidden
}

.workspace-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 28px;
    border-bottom:1px solid #edf0eb;
    height:60px
}

.tool-tabs {
    display:flex;
    gap:30px;
    height:100%;
    align-items:center
}

.tool-tabs a {
    height:100%;
    display:flex;
    align-items:center;
    gap:8px;
    color:#8a908d;
    font-size:13px;
    position:relative
}

.tool-tabs a.active {
    font-weight:650;
    color:#191d1b
}

.tool-tabs a.active:after {
    content:"";
    height:2px;
    background:var(--ink);
    position:absolute;
    bottom:-1px;
    left:0;
    right:0
}

.tool-tabs span {
    font-size:8px;
    letter-spacing:.8px;
    line-height:18px;
    padding:0 5px;
    border-radius:4px;
    background:#eff2f0;
    color:#8e9791
}

.private-note {
    color:#959c96;
    font-size:11px;
    display:flex;
    gap:6px
}

.parse-form {
    padding:24px 28px 21px
}

.batch-label {
    color:#7c8879;
    font-size:11px;
    margin-right:3px
}

.batch-input-help {
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:13px;
    color:#9aa397;
    font-size:10px
}

.batch-form-tools {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-top:9px;
    color:#9aa397;
    font-size:10px
}

.batch-form-tools strong {
    color:#218955;
    font-size:12px
}

.link-field.is-multiline {
    align-items:flex-start
}

.link-field textarea {
    flex:1;
    min-width:0;
    min-height:92px;
    resize:vertical;
    border:0;
    background:none;
    color:#232923;
    font:13px/1.7 inherit;
    outline:0
}

.link-field textarea::placeholder {
    color:#a0a89e
}

.batch-input-help span:last-child {
    color:#a0a99c;
    font-size:10px;
    margin-left:4px
}

.parse-form>label {
    display:block;
    font-size:12px;
    font-weight:600;
    margin-bottom:11px
}

.link-field {
    display:flex;
    gap:12px;
    align-items:center;
    border:1px solid #dce1db;
    background:#fafbf9;
    border-radius:10px;
    padding:7px 7px 7px 17px
}

.link-field:focus-within {
    border-color:#68b6df;
    box-shadow:0 0 0 3px #239de10b
}

.link-icon {
    width:22px;
    height:22px;
    flex-shrink:0;
    color:#929c92
}

.link-field input {
    flex:1;
    min-width:0;
    height:40px;
    border:0;
    background:none;
    font-size:13px;
    color:#232923;
    box-shadow:none!important
}

.link-field input::placeholder {
    color:#a0a89e
}

.clear-link {
    font-size:23px;
    color:#899485;
    padding:0 8px
}

.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:16px;
    min-height:42px;
    padding:10px 20px;
    border-radius:7px;
    font-size:12px;
    font-weight:550;
    line-height:1.3;
    transition:background .15s,transform .15s
}

.button:hover:not(:disabled) {
    transform:translateY(-1px)
}

.button-dark {
    background:#181b19;
    color:#fff;
    border:1px solid #181b19
}

.button-dark:hover {
    background:#303833
}

.button-green {
    background:#0e8d53;
    color:#fff;
    border:1px solid #0e8d53
}

.button-green:hover {
    background:#079d56
}

.button-outline {
    background:transparent;
    color:var(--ink);
    border:1px solid #dce1da
}

.button-outline:hover {
    background:#f2f5f0;
    border-color:#a2aea1
}

.parse-button {
    height:45px;
    min-width:145px
}

.parse-foot {
    margin-top:14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-size:11px;
    color:#939b91;
    gap:15px
}

.parse-foot>span {
    display:flex;
    align-items:center;
    gap:7px
}

.green-dot {
    width:5px;
    height:5px;
    background:#64b58a;
    border-radius:50%
}

.parse-foot a,.parse-foot .text-button {
    color:#3695c1;
    font-size:11px
}

.text-button {
    font-size:12px;
    padding:0;
    display:inline-flex;
    align-items:center;
    gap:8px;
    line-height:1.7
}

.text-button:hover {
    color:var(--blue)
}

.inline-alert {
    margin:0 28px 22px;
    padding:12px 16px;
    background:#fff4ee;
    color:#a3562d;
    border:1px solid #f0ded1;
    border-radius:8px;
    font-size:12px
}

.loading-state {
    display:flex;
    gap:10px;
    align-items:center;
    margin:0 28px 22px;
    color:#658269;
    font-size:12px
}

.spinner {
    width:14px;
    height:14px;
    border:2px solid currentColor;
    border-right-color:transparent;
    border-radius:50%;
    display:inline-block;
    animation:spin .8s linear infinite
}

@keyframes spin {
    to {
        transform:rotate(360deg)
    }
}

.platform-strip {
    padding:30px 0 34px;
    border-bottom:1px solid var(--line);
    display:flex;
    gap:30px;
    align-items:center;
    position:relative
}

.platform-strip>span {
    font-size:10px;
    color:#8b9489;
    border-right:1px solid #dfe4dc;
    padding-right:25px;
    line-height:1.7;
    flex-shrink:0
}

.platform-strip strong {
    font-weight:500;
    color:#6b7769
}

.platform-strip>div {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:25px;
    flex:1;
    color:#778072
}

.platform-strip b {
    font-size:16px;
    letter-spacing:1px;
    font-weight:700;
    white-space:nowrap
}

.platform-strip div>span {
    font-size:11px;
    white-space:nowrap
}

.platform-strip small {
    position:absolute;
    bottom:10px;
    right:0;
    font-size:9px;
    color:#a5aaa2
}

.lower-grid {
    display:grid;
    grid-template-columns:1.8fr 1fr;
    gap:24px;
    margin:35px 0 0
}

.steps-panel {
    padding:26px 0
}

.section-heading {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:26px
}

.section-heading h2 {
    font-size:21px;
    letter-spacing:-.6px
}

.section-heading .eyebrow+h2 {
    margin-top:9px
}

.steps-panel .section-heading>.eyebrow {
    font-size:8px;
    letter-spacing:1.2px
}

.steps {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px
}

.steps article>span {
    font-size:12px;
    color:#91a08c;
    font-family:monospace;
    display:block;
    margin-bottom:18px
}

.steps h3 {
    font-size:13px;
    margin-bottom:8px
}

.steps p {
    font-size:11px;
    color:#8c9588;
    line-height:1.9
}

.member-teaser {
    padding:26px 27px;
    background:#eaf0e6;
    border:1px solid #e1e8dc;
    border-radius:16px;
    display:flex;
    flex-direction:column;
    transition:background .2s
}

.member-teaser:hover {
    background:#e3ecde
}

.member-teaser>div {
    display:flex;
    justify-content:space-between;
    align-items:center
}

.member-teaser .eyebrow {
    color:#7b8e71;
    font-size:9px
}

.teaser-icon {
    font-size:25px;
    line-height:1;
    color:#708b63
}

.member-teaser h2 {
    font-size:19px;
    margin:16px 0 11px;
    letter-spacing:-.5px
}

.member-teaser p {
    font-size:11px;
    color:#7f8c75;
    line-height:1.8
}

.teaser-link {
    margin-top:21px;
    font-size:12px;
    display:flex;
    justify-content:space-between
}

.teaser-link>span {
    font-size:19px;
    line-height:1
}

.faq-section {
    margin:56px 0 58px;
    padding-top:33px;
    border-top:1px solid var(--line);
    display:grid;
    grid-template-columns:1fr 1.7fr;
    gap:40px
}

.faq-section h2 {
    font-size:22px;
    margin-top:12px
}

.faq-list details {
    border-bottom:1px solid var(--line)
}

.faq-list details:first-child {
    margin-top:-10px
}

.faq-list summary {
    padding:16px 0;
    font-size:12px;
    list-style:none;
    cursor:pointer;
    display:flex;
    justify-content:space-between;
    gap:20px
}

.faq-list summary::-webkit-details-marker {
    display:none
}

.faq-list summary span {
    font-size:18px;
    color:#909a8b;
    line-height:1
}

.faq-list details[open] summary span {
    transform:rotate(45deg)
}

.faq-list p {
    font-size:12px;
    color:#7b8476;
    line-height:1.9;
    padding:0 20px 18px 0
}

.site-footer {
    border-top:1px solid var(--line);
    max-width:1072px;
    margin:auto;
    padding:25px 0 30px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px
}

.footer-brand {
    font-size:17px;
    font-weight:700
}

.footer-brand span {
    font-size:10px;
    font-weight:400;
    color:#828c7c;
    margin-left:18px
}

.site-footer p {
    font-size:9px;
    color:#a0a798;
    margin-top:9px
}

.site-footer>div:last-child {
    display:flex;
    gap:25px;
    align-items:center;
    font-size:11px
}

.site-footer .text-button {
    font-size:11px
}

.results-panel {
    margin-top:25px;
    padding:25px 28px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#fff
}

.results-panel .eyebrow {
    color:#37a86b
}

.result-count {
    font-size:12px;
    font-weight:400;
    color:#828f7b;
    margin-left:15px
}

.single-result {
    display:flex;
    gap:24px;
    align-items:center
}

.result-cover {
    width:140px;
    height:155px;
    object-fit:cover;
    border-radius:8px;
    background:#edf0eb
}

.result-body {
    min-width:0;
    flex:1
}

.result-body h3 {
    font-size:17px;
    overflow-wrap:anywhere
}

.result-body p {
    color:var(--muted);
    font-size:12px;
    margin:10px 0 18px
}

.result-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap
}

.gallery,.video-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
    margin-top:22px
}

.gallery img {
    width:100%;
    height:200px;
    object-fit:cover;
    border-radius:8px
}

.gallery a>span {
    display:flex;
    justify-content:space-between;
    font-size:11px;
    margin-top:7px
}

.gallery a>span>span {
    color:#29a466
}

.batch-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:21px;
    color:#637160;
    font-size:11px
}

.batch-toolbar strong {
    color:#218955;
    font-size:15px
}

.batch-toolbar span {
    color:#9aa397;
    margin-left:4px
}

.batch-toolbar .text-button + .text-button {
    margin-left:16px
}

.batch-actions {
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:14px;
    flex-wrap:wrap
}

.batch-actions small {
    color:#9aa397;
    font-size:10px
}

.video-card {
    position:relative
}

.video-card.is-selected .video-cover {
    box-shadow:0 0 0 2px #43a76e
}

.video-card.is-failed {
    opacity:.62
}

.video-card.is-failed .video-cover {
    filter:grayscale(.5)
}

.video-select {
    position:absolute;
    z-index:2;
    top:9px;
    right:9px;
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:5px 8px;
    border-radius:999px;
    background:#fff;
    box-shadow:0 3px 12px #15221818;
    color:#596657;
    cursor:pointer;
    font-size:10px
}

.video-select input {
    accent-color:#39a36b;
    margin:0
}

.video-cover {
    height:180px;
    position:relative;
    border-radius:8px;
    overflow:hidden;
    background:#edf1ea
}

.video-cover img {
    width:100%;
    height:100%;
    object-fit:cover
}

.video-cover>span {
    position:absolute;
    left:10px;
    top:10px;
    background:#fff;
    padding:1px 6px;
    border-radius:4px;
    font-size:10px
}

.video-card h3 {
    font-size:12px;
    line-height:1.6;
    margin:10px 0;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    height:38px
}

.video-card>div:last-child {
    display:flex;
    justify-content:space-between;
    font-size:11px;
    color:#239866
}

.load-more {
    display:flex;
    margin:28px auto 0
}

.end-note {
    text-align:center;
    color:#929b8d;
    font-size:11px;
    margin-top:26px
}

.membership-hero {
    padding:55px 0 35px
}

.membership-hero h1 {
    font-size:40px;
    letter-spacing:-1.5px;
    margin:19px 0 14px
}

.membership-hero>p {
    font-size:13px;
    color:#838c7d
}

.account-panel {
    display:flex;
    align-items:center;
    gap:20px;
    background:white;
    border:1px solid var(--line);
    border-radius:12px;
    padding:24px 27px
}

.account-avatar {
    display:grid;
    place-items:center;
    width:49px;
    height:49px;
    border-radius:13px;
    background:#edf2e8;
    font-size:23px;
    font-family:Georgia,serif;
    color:#6f8562;
    flex-shrink:0
}

.account-copy {
    flex:1
}

.account-copy h2 {
    font-size:17px;
    display:flex;
    gap:14px;
    align-items:center;
    flex-wrap:wrap
}

.membership-badge {
    font-size:9px;
    background:#f0f2ed;
    color:#8a9384;
    padding:3px 8px;
    border-radius:4px;
    font-weight:500
}

.membership-badge.is-vip {
    background:#e4f6eb;
    color:#23945b
}

.account-copy p {
    font-size:11px;
    color:#89917f;
    margin-top:6px
}

.account-copy .usage-note {
    font-size:10px;
    color:#9da491
}

.account-actions {
    display:flex;
    gap:17px;
    align-items:center
}

.muted {
    color:#9a9f91
}

.plans-section {
    margin-top:45px
}

.plan-toggle {
    display:flex;
    gap:3px;
    background:#e9ede5;
    border-radius:8px;
    padding:4px
}

.plan-toggle button {
    padding:8px 19px;
    border-radius:5px;
    color:#88917f;
    font-size:11px
}

.plan-toggle .active {
    background:#fff;
    color:#222b1e;
    box-shadow:0 1px 3px #27332010
}

.plan-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px
}

.plan-card {
    position:relative;
    padding:30px 26px 25px;
    border:1px solid #e0e5db;
    border-radius:13px;
    background:white;
    overflow:hidden
}

.plan-card.featured {
    border-color:#b6c8aa;
    background:#f0f5eb
}

.plan-recommend {
    position:absolute;
    top:0;
    right:0;
    padding:5px 12px;
    background:#728666;
    color:white;
    font-size:9px;
    border-radius:0 0 0 8px
}

.plan-kicker {
    font-size:8px;
    letter-spacing:1.7px;
    color:#959d8c;
    margin-bottom:14px
}

.plan-card h3 {
    font-size:22px;
    letter-spacing:-.5px
}

.plan-description {
    margin:9px 0 22px;
    color:#969d8e;
    font-size:11px
}

.plan-price {
    font-size:42px;
    font-weight:650;
    letter-spacing:-2px;
    line-height:1.2
}

.plan-price>span {
    font-size:19px;
    vertical-align:top;
    margin-right:4px;
    position:relative;
    top:7px;
    letter-spacing:0
}

.plan-price>small {
    font-size:11px;
    font-weight:400;
    letter-spacing:0;
    color:#9aa18f;
    margin-left:9px
}

.plan-features {
    border-top:1px solid #e4e9df;
    list-style:none;
    margin:24px 0;
    padding:20px 0 0;
    color:#78846d;
    font-size:11px
}

.plan-features li {
    margin-bottom:10px
}

.plan-features li:before {
    content:'✓';
    display:inline-block;
    color:#6da265;
    margin-right:10px
}

.plan-card>.button {
    width:100%;
    justify-content:space-between
}

.plan-note {
    text-align:center;
    font-size:10px;
    color:#a2a993;
    margin-top:18px
}

.empty-state {
    padding:30px;
    text-align:center;
    color:var(--muted)
}

.membership-help {
    display:grid;
    grid-template-columns:1fr 1fr;
    border:1px solid var(--line);
    border-radius:12px;
    margin-top:31px;
    background:#fdfefa
}

.membership-help>div {
    display:flex;
    gap:14px;
    align-items:center;
    padding:24px
}

.membership-help>div+div {
    border-left:1px solid var(--line)
}

.small-icon {
    height:30px;
    width:30px;
    flex-shrink:0;
    background:#eaf0e3;
    border-radius:8px;
    display:grid;
    place-items:center;
    color:#6e8160;
    font-size:15px
}

.membership-help h3 {
    font-size:12px;
    margin-bottom:5px
}

.membership-help p {
    font-size:10px;
    color:#989f8c
}

.membership-help .text-button {
    font-size:11px;
    margin-left:auto;
    white-space:nowrap
}

.site-dialog {
    padding:0;
    border:1px solid #e6e9e1;
    border-radius:18px;
    width:460px;
    max-width:calc(100vw - 32px);
    max-height:90vh;
    overflow-y:auto;
    color:var(--ink);
    box-shadow:0 24px 90px #10171030
}

.site-dialog::backdrop {
    background:#11191465;
    backdrop-filter:blur(4px)
}

.dialog-content {
    padding:36px
}

.dialog-close {
    position:absolute;
    right:15px;
    top:11px;
    font-size:27px;
    line-height:30px;
    color:#939b89;
    width:30px;
    height:30px
}

.dialog-content h2 {
    font-size:24px;
    letter-spacing:-.8px;
    margin:16px 0 12px
}

.dialog-intro {
    font-size:12px;
    color:#89947d;
    line-height:1.9;
    margin-bottom:22px
}

.dialog-content label {
    display:block;
    font-size:11px;
    font-weight:600;
    margin:15px 0 7px
}

.dialog-content input {
    height:43px;
    border:1px solid #dfe5d8;
    border-radius:7px;
    width:100%;
    padding:10px 13px;
    background:#fafcf7;
    font-size:12px;
    color:#3e4b33
}

.dialog-content input::placeholder {
    color:#a5ac9a
}

.captcha-field {
    display:flex;
    gap:10px
}

.captcha-field input {
    min-width:0;
    flex:1
}

.captcha-field button {
    padding:0 6px;
    background:#f2f5ed;
    border:1px solid #e2e8db;
    border-radius:7px
}

.captcha-field img {
    object-fit:contain
}

.full-width {
    width:100%;
    justify-content:space-between;
    margin-top:23px
}

.login-switch {
    display:block;
    text-align:center;
    margin:18px auto 0;
    color:#7c8c6c;
    font-size:11px
}

.form-error {
    font-size:12px;
    color:#b15b38;
    margin-top:14px;
    line-height:1.8
}

.dialog-bottom {
    font-size:10px;
    color:#9aa58b;
    text-align:center;
    margin-top:20px
}

.dialog-bottom a {
    color:#478d5b
}

.order-summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:24px 0 19px;
    background:#eef4e8;
    border:1px solid #e0e9d6;
    border-radius:9px;
    padding:17px 19px
}

.order-summary strong {
    display:block;
    font-size:15px
}

.order-summary span {
    font-size:10px;
    color:#8a967d;
    display:block;
    margin-top:5px
}

.order-summary>b {
    font-size:29px;
    font-weight:600;
    letter-spacing:-1px
}

.support-qr {
    display:flex;
    align-items:center;
    gap:22px;
    margin-top:20px
}

.support-qr>img {
    width:148px;
    height:148px;
    object-fit:contain;
    border:1px solid var(--line);
    padding:7px;
    border-radius:8px;
    background:white
}

.support-qr strong {
    display:block;
    font-size:20px;
    letter-spacing:.5px;
    margin:10px 0
}

.support-qr .text-button {
    font-size:10px;
    color:#50906b
}

.toast {
    position:fixed;
    bottom:30px;
    left:50%;
    transform:translateX(-50%);
    z-index:100;
    background:#212b1e;
    color:#fff;
    padding:12px 22px;
    border-radius:9px;
    box-shadow:0 5px 20px #23321b25;
    font-size:12px;
    max-width:calc(100vw - 32px);
    text-align:center
}

@media(min-width:1400px) {
    .hero {
        min-height:360px
    }
    .hero h1 {
        font-size:52px
    }
}

@media(max-width:1000px) {
    .header-inner {
        padding:0 28px
    }
    .main-nav {
        gap:22px
    }
    .hero h1 {
        font-size:43px
    }
    .hero-art {
        transform:scale(.9);
        transform-origin:right center
    }
    .platform-strip {
        gap:20px
    }
    .platform-strip>div {
        gap:18px
    }
    .platform-strip b {
        font-size:14px
    }
    .lower-grid {
        grid-template-columns:1.6fr 1fr
    }
    .steps {
        gap:14px
    }
    .steps-panel .section-heading>.eyebrow {
        display:none
    }
    .member-teaser {
        padding:24px 21px
    }
    .member-teaser h2 {
        font-size:17px
    }
    .site-footer {
        margin:0 28px
    }
    .account-actions {
        gap:10px
    }
    .membership-help>div {
        padding:20px 16px;
        gap:10px
    }
    .membership-help p {
        max-width:160px
    }
    .plan-card {
        padding:28px 20px 22px
    }
}

@media(max-width:760px) {
    .site-header {
        height:118px
    }
    .header-inner {
        padding:0 20px;
        position:relative;
        height:65px
    }
    .brand {
        font-size:20px
    }
    .brand small {
        font-size:8px
    }
    .brand-mark {
        width:32px;
        height:32px;
        font-size:19px
    }
    .header-login {
        min-height:33px!important;
        padding:0 13px!important;
        font-size:11px!important
    }
    .main-nav {
        position:absolute;
        left:20px;
        right:20px;
        top:65px;
        height:53px;
        justify-content:space-between;
        gap:20px
    }
    .main-nav a {
        font-size:12px;
        justify-content:center;
        flex:1
    }
    .main-nav a[aria-current]:after {
        left:15%;
        right:15%
    }
    .account-button {
        font-size:10px
    }
    .page-shell {
        padding:0 20px
    }
    .hero {
        padding:35px 0 28px;
        min-height:0;
        grid-template-columns:1fr;
        gap:0
    }
    .hero h1 {
        font-size:39px;
        margin-top:16px
    }
    .hero p {
        font-size:12px
    }
    .hero-art {
        display:none
    }
    .eyebrow {
        font-size:8px;
        letter-spacing:1.2px
    }
    .workspace-top {
        padding:0 20px;
        height:55px
    }
    .tool-tabs {
        gap:23px
    }
    .tool-tabs a {
        font-size:12px
    }
    .private-note {
        font-size:9px
    }
    .private-note>span {
        display:none
    }
    .parse-form {
        padding:20px
    }
    .link-field {
        padding:10px 12px;
        gap:8px;
        flex-wrap:wrap
    }
    .link-field input {
        font-size:12px;
        height:32px;
        min-width:0;
        width:calc(100% - 65px)
    }
    .link-icon {
        width:18px;
        height:18px
    }
    .clear-link {
        padding:0 2px
    }
    .parse-button {
        width:100%;
        height:42px;
        margin-top:5px
    }
    .parse-foot {
        font-size:9px;
        gap:7px;
        align-items:flex-start
    }
    .parse-foot a,.parse-foot .text-button {
        font-size:10px;
        white-space:nowrap
    }
    .parse-foot>span {
        gap:4px
    }
    .inline-alert {
        margin:0 20px 20px
    }
    .platform-strip {
        padding:25px 0 35px;
        gap:13px;
        align-items:flex-start
    }
    .platform-strip>span {
        font-size:8px;
        padding-right:13px;
        margin-top:1px
    }
    .platform-strip>div {
        gap:13px 17px;
        flex-wrap:wrap;
        justify-content:flex-start
    }
    .platform-strip b {
        font-size:12px
    }
    .platform-strip div>span {
        font-size:10px
    }
    .platform-strip small {
        font-size:8px;
        bottom:9px
    }
    .lower-grid {
        grid-template-columns:1fr;
        gap:12px;
        margin-top:21px
    }
    .steps-panel {
        padding:15px 0 22px
    }
    .section-heading {
        margin-bottom:23px
    }
    .section-heading h2 {
        font-size:19px
    }
    .steps {
        gap:12px
    }
    .steps h3 {
        font-size:12px
    }
    .steps p {
        font-size:10px
    }
    .steps article>span {
        margin-bottom:15px
    }
    .member-teaser {
        padding:22px
    }
    .member-teaser h2 {
        font-size:21px;
        margin-top:12px
    }
    .member-teaser p br {
        display:none
    }
    .teaser-link {
        margin-top:15px
    }
    .faq-section {
        margin:35px 0;
        grid-template-columns:1fr;
        gap:25px;
        padding-top:27px
    }
    .faq-section h2 {
        font-size:21px
    }
    .faq-list summary {
        font-size:12px;
        padding:16px 0
    }
    .site-footer {
        margin:0 20px;
        padding:24px 0;
        display:block
    }
    .site-footer>div:last-child {
        margin-top:20px
    }
    .site-footer p {
        line-height:1.8;
        font-size:8px;
        max-width:300px
    }
    .footer-brand span {
        font-size:9px;
        margin-left:12px
    }
    .results-panel {
        padding:20px
    }
    .single-result {
        align-items:flex-start;
        gap:14px
    }
    .result-cover {
        width:80px;
        height:108px
    }
    .result-body h3 {
        font-size:14px
    }
    .result-body p {
        font-size:10px
    }
    .result-actions .button {
        font-size:10px;
        padding:9px 11px;
        min-height:34px;
        gap:5px
    }
    .gallery,.video-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px
    }
    .gallery img {
        height:180px
    }
    .video-cover {
        height:170px
    }
    .membership-hero {
        padding:35px 0 25px
    }
    .membership-hero h1 {
        font-size:34px
    }
    .membership-hero>p {
        font-size:12px
    }
    .mobile-only {
        display:block
    }
    .account-panel {
        padding:20px;
        flex-wrap:wrap;
        gap:13px
    }
    .account-avatar {
        width:41px;
        height:41px
    }
    .account-copy h2 {
        font-size:14px;
        gap:8px
    }
    .account-copy p {
        font-size:10px
    }
    .account-actions {
        width:100%;
        justify-content:flex-end;
        padding-top:3px
    }
    .account-actions .button {
        min-height:35px;
        padding:8px 12px;
        font-size:11px
    }
    .plans-section {
        margin-top:30px
    }
    .plans-section>.section-heading {
        align-items:flex-start;
        flex-direction:column;
        gap:20px
    }
    .plan-toggle {
        width:100%;
        justify-content:center
    }
    .plan-toggle button {
        flex:1
    }
    .plan-grid {
        grid-template-columns:1fr;
        gap:14px
    }
    .plan-card {
        padding:24px
    }
    .plan-card h3 {
        font-size:23px
    }
    .plan-price {
        font-size:40px
    }
    .plan-description {
        margin-bottom:18px
    }
    .plan-features {
        margin-top:20px;
        padding-top:16px;
        margin-bottom:20px
    }
    .plan-features li {
        margin-bottom:8px
    }
    .plan-note {
        font-size:9px;
        text-align:left;
        line-height:1.9
    }
    .membership-help {
        grid-template-columns:1fr;
        margin-top:25px
    }
    .membership-help>div+div {
        border-left:0;
        border-top:1px solid var(--line)
    }
    .membership-help>div {
        padding:20px 17px
    }
    .membership-help p {
        max-width:none;
        font-size:9px
    }
    .dialog-content {
        padding:30px 25px
    }
    .dialog-content h2 {
        font-size:22px
    }
    .dialog-content>.eyebrow {
        font-size:8px
    }
    .support-qr {
        gap:17px
    }
    .support-qr>img {
        width:128px;
        height:128px
    }
    .support-qr strong {
        font-size:18px
    }
    .support-qr .text-button {
        font-size:9px
    }
}

/* Parsed-link list opened from the browser extension. */
.member-tabs{display:flex;gap:8px;margin:28px 0 0;border-bottom:1px solid var(--line)}
.history-result-link{font-size:13px;color:#248452;margin-bottom:18px}
.member-tabs button{padding:14px 20px;border-bottom:3px solid transparent;font-size:15px;color:#657365}
.member-tabs button.active{border-color:#198e59;color:#172a1e;font-weight:650}
.member-tabs span{font-size:11px;letter-spacing:1px;margin-left:7px;color:#647665}
#app[data-member-view="history"] .plans-section,#app[data-member-view="history"] .membership-help{display:none}
.member-history{padding:30px 0 10px}
.history-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;flex-wrap:wrap}
.history-heading h2{font-size:25px;margin:10px 0}
.history-heading p,.history-note{font-size:13px;color:#5e705f;line-height:1.9}
.history-filter{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}
.history-filter input{font:inherit;padding:8px 10px;border:1px solid #becfbe;border-radius:7px;background:white;min-width:150px}
.history-note{margin:22px 0;background:#edf3e9;border:1px solid #dfe8d8;border-radius:9px;padding:13px 16px}
.history-error,.history-status{font-size:14px;padding:12px 16px;border-radius:8px;margin:18px 0;background:#fff1e9;color:#9a4525}
.history-status{background:#e6f6ec;color:#286844}
.history-empty{padding:45px 20px;text-align:center;border:1px dashed #c3d3c2;border-radius:14px;background:#fbfdf9}
.history-empty>span{font-size:35px;color:#389160}
.history-empty h3{font-size:21px;margin-bottom:10px}
.history-empty p{font-size:14px;color:#64715e;margin:12px 0 23px}
.history-day{margin:32px 0}
.history-day-heading{display:flex;gap:15px;align-items:center;margin-bottom:17px}
.history-day-heading:after{content:"";height:1px;background:var(--line);flex:1}
.history-day-heading h3{font-size:19px;font-variant-numeric:tabular-nums}
.history-day-heading span{color:#677461;font-size:13px}
.history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.history-card{border:1px solid #dce5d8;border-radius:13px;overflow:hidden;background:white;display:flex;flex-direction:column}
.history-cover{height:180px;background:#e9f0e6;position:relative;display:grid;place-items:center;overflow:hidden}
.history-cover img{width:100%;height:100%;object-fit:cover}
.history-cover time{position:absolute;bottom:10px;left:12px;background:#122216cc;color:white;border-radius:5px;padding:3px 9px;font-size:12px}
.history-placeholder{font-size:35px;color:#7b9d78}
.history-card-body{padding:17px;display:flex;flex-direction:column;flex:1;min-width:0}
.history-card h4{font-size:15px;margin:0 0 10px;line-height:1.6;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.history-type{font-size:12px;color:#5d7459;margin-bottom:14px}
.history-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.history-actions .button{font-size:13px;padding:9px 12px}
.history-actions .text-button{font-size:13px}
.history-card-foot{padding-top:15px;margin-top:auto;display:flex;gap:12px;justify-content:space-between;align-items:center;font-size:12px;color:#5b7258}
.history-pictures{font-size:13px;margin:14px 0 0}
.history-pictures summary{cursor:pointer}
.history-pictures a{display:inline-block;padding:6px 12px 0 0;color:#258951}
.history-pagination{text-align:center;font-size:13px;color:#677461;margin:30px 0}
@media(max-width:1000px){.history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.history-grid{grid-template-columns:1fr}.history-cover{height:200px}.history-heading h2{font-size:22px}.history-filter{gap:10px}.history-filter input{min-width:0}.member-tabs button{padding:14px 12px}.history-note{font-size:13px}}

.download-list-hero {
    min-height:285px;
    padding:48px 0 34px;
    display:grid;
    grid-template-columns:1.15fr .85fr;
    align-items:center;
    gap:40px;
}
.download-list-hero h1 {
    font-size:42px;
    letter-spacing:-1.5px;
    line-height:1.25;
    margin:16px 0 14px;
}
.download-list-hero p {
    color:#687361;
    font-size:15px;
    line-height:1.9;
}
.download-list-art {
    min-height:170px;
    position:relative;
    border:1px solid #d8e1d7;
    border-radius:16px;
    background:
        linear-gradient(135deg, transparent 0 48%, #239de11f 48.2% 48.6%, transparent 48.8%),
        repeating-linear-gradient(0deg, transparent 0 25px, #dce7dc 26px, transparent 27px),
        repeating-linear-gradient(90deg, transparent 0 25px, #dce7dc 26px, transparent 27px),
        #f8fbf7;
    overflow:hidden;
}
.download-list-art:before,
.download-list-art:after {
    content:"";
    position:absolute;
    left:16%;
    right:16%;
    height:1px;
    background:linear-gradient(90deg, transparent, #13b86680, transparent);
}
.download-list-art:before { top:34%; }
.download-list-art:after { bottom:28%; }
.download-list-art span {
    position:absolute;
    color:#6c8d70;
    font:600 11px/1 monospace;
    letter-spacing:1px;
}
.download-list-art span:nth-child(1) { left:18%; top:27%; }
.download-list-art span:nth-child(2) { left:47%; top:51%; color:#239de1; }
.download-list-art span:nth-child(3) { right:18%; bottom:20%; }
.download-list-art b {
    position:absolute;
    right:16%;
    top:21%;
    color:#1b8a5a;
    font-size:44px;
    font-weight:400;
}
.download-list-panel {
    position:relative;
    overflow:hidden;
    border:1px solid #e0e3df;
    border-radius:16px;
    background:#fff;
}
.download-list-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:24px 28px 20px;
}
.download-list-toolbar>div:first-child {
    display:flex;
    align-items:baseline;
    gap:13px;
}
.download-list-toolbar strong { color:#218955; font-size:18px; }
.download-list-actions { display:flex; gap:9px; flex-wrap:wrap; }
.download-list-message,
.download-list-empty {
    margin:0 28px 24px;
    padding:14px 16px;
    border-radius:8px;
    background:#f2f7f1;
    color:#58705a;
    font-size:13px;
}
.download-list-message.is-error { background:#fff3ed; color:#a3562d; }
.download-list-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    padding:0 28px 28px;
}
.download-list-card {
    min-width:0;
    display:flex;
    gap:14px;
    padding:12px;
    border:1px solid #e2e8e1;
    border-radius:11px;
    background:#fbfdfb;
}
.download-list-cover {
    width:92px;
    height:116px;
    flex:0 0 auto;
    display:grid;
    place-items:center;
    overflow:hidden;
    border-radius:7px;
    background:#eaf1ea;
    color:#6d9173;
    font:600 15px/1 monospace;
}
.download-list-cover img { width:100%; height:100%; object-fit:cover; }
.download-list-card-body { min-width:0; flex:1; display:flex; flex-direction:column; }
.download-list-card h3 { font-size:14px; line-height:1.5; margin:2px 0 8px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.download-list-card p { margin:0; color:#8a9688; font-size:11px; line-height:1.6; overflow-wrap:anywhere; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.download-list-card-actions { display:flex; gap:7px; margin-top:auto; padding-top:11px; flex-wrap:wrap; }
.download-list-card-actions .button { min-height:32px; padding:7px 10px; font-size:11px; }
.download-list-panel [hidden] { display:none!important; }

@media(max-width:760px) {
    .download-list-hero { min-height:0; padding:35px 0 25px; grid-template-columns:1fr; gap:22px; }
    .download-list-hero h1 { font-size:35px; }
    .download-list-hero p { font-size:14px; }
    .download-list-art { min-height:130px; }
    .download-list-toolbar { align-items:flex-start; flex-direction:column; padding:20px; }
    .download-list-toolbar>div:first-child { width:100%; justify-content:space-between; }
    .download-list-actions { width:100%; }
    .download-list-actions .button { flex:1; }
    .download-list-grid { grid-template-columns:1fr; padding:0 20px 20px; }
    .download-list-message,
    .download-list-empty { margin:0 20px 20px; }
}

@media(max-width:760px) {
    .batch-input-help {
        align-items:flex-start;
        flex-direction:column;
        gap:3px;
        margin-bottom:12px
    }
    .batch-input-help span:last-child {
        margin-left:0
    }
    .batch-toolbar {
        align-items:flex-start;
        flex-direction:column
    }
    .batch-actions .button {
        flex:1 1 auto;
        min-height:36px;
        padding:9px 12px
    }
}

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


/* Keep secondary copy legible on the light surfaces. */
.hero p, .steps p, .member-teaser p, .dialog-intro, .plan-description, .account-copy p, .membership-help p, .faq-list p {
    color: #687361;
}
.plan-note, .dialog-bottom, .parse-foot, .end-note {
    color: #737c6a;
}

/* Give the light canvas a quiet production-tool texture without competing
   with the content. */
body {
    background-color:var(--paper);
    background-image:
        linear-gradient(90deg, transparent 0, transparent calc(50% - 564px), #dfe7df55 calc(50% - 563px), transparent calc(50% - 562px), transparent 100%),
        linear-gradient(90deg, transparent 0, transparent calc(50% + 562px), #dfe7df55 calc(50% + 563px), transparent calc(50% + 564px), transparent 100%),
        repeating-linear-gradient(0deg, transparent 0, transparent 47px, #dce4dc2e 48px, transparent 49px);
}

body::before {
    content:"";
    position:fixed;
    inset:80px 0 0;
    pointer-events:none;
    z-index:0;
    opacity:.58;
    background:
        radial-gradient(circle at 9% 22%, #239de11c 0 1px, transparent 2px),
        radial-gradient(circle at 88% 68%, #13b8661a 0 1px, transparent 2px),
        linear-gradient(118deg, transparent 0 17%, #cbd9d044 17.1%, transparent 17.2% 72%, #cbd9d044 72.1%, transparent 72.2%);
    background-size:230px 230px, 290px 290px, 100% 100%;
}

.site-header,
.page-shell,
.site-footer {
    position:relative;
    z-index:1;
}

.workspace,
.results-panel,
.account-panel,
.plan-card,
.membership-help {
    position:relative;
}

.workspace::before,
.results-panel::before {
    content:"";
    position:absolute;
    top:0;
    left:10%;
    right:10%;
    height:1px;
    background:linear-gradient(90deg, transparent, #239de15c 22%, #13b86670 50%, #239de15c 78%, transparent);
    pointer-events:none;
}

/* The link box is the primary action, so it gets a visible scan-line and
   focus halo while keeping the existing blue/green palette. */
.link-field {
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background-color:#fafbf9;
    background-image:
        linear-gradient(#dfe9e21c 1px, transparent 1px),
        linear-gradient(90deg, #dfe9e21c 1px, transparent 1px);
    background-size:20px 20px;
    transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.link-field::before {
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    border:1px solid transparent;
    background:linear-gradient(105deg, #239de100 8%, #239de16b 48%, #13b86666 58%, #13b86600 92%) border-box;
    -webkit-mask:linear-gradient(#000 0 0) padding-box, linear-gradient(#000 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    opacity:.28;
    pointer-events:none;
    z-index:0;
}

.link-field::after {
    content:"";
    position:absolute;
    top:-20%;
    bottom:-20%;
    left:0;
    width:22%;
    background:linear-gradient(90deg, transparent, #239de11f, #13b86624, transparent);
    transform:translateX(-180%) skewX(-16deg);
    opacity:0;
    pointer-events:none;
    z-index:0;
}

.link-field > * {
    position:relative;
    z-index:1;
}

.link-field:focus-within {
    border-color:#54a9d2;
    background-color:#fcfefc;
    box-shadow:0 0 0 4px #239de11a, 0 10px 30px #239de112, inset 0 0 24px #13b8660b;
}

.link-field:focus-within::before {
    opacity:.9;
    animation:link-border-pulse 2.4s ease-in-out infinite;
}

.link-field:focus-within::after {
    opacity:1;
    animation:link-scan 2.8s ease-in-out infinite;
}

@keyframes link-scan {
    0% { transform:translateX(-180%) skewX(-16deg); }
    58%,100% { transform:translateX(620%) skewX(-16deg); }
}

@keyframes link-border-pulse {
    0%,100% { opacity:.45; }
    50% { opacity:1; }
}

/* Raise low-contrast helper copy to a comfortable reading size. */
.eyebrow { font-size:11px; }
.private-note,
.batch-input-help,
.batch-form-tools,
.parse-foot,
.platform-strip>span,
.platform-strip div>span,
.platform-strip small,
.steps p,
.member-teaser p,
.faq-list p,
.footer-brand span,
.site-footer p,
.dialog-intro,
.dialog-bottom,
.form-error,
.end-note,
.batch-actions small { font-size:12px; }
.batch-label { font-size:13px; }
.batch-input-help span:last-child { font-size:12px; }
.hero p { font-size:15px; }
.parse-form>label { font-size:13px; }
.link-field textarea { font-size:14px; }
.parse-foot a,
.parse-foot .text-button,
.text-button { font-size:12px; }
.inline-alert,
.loading-state { font-size:13px; }
.steps h3,
.membership-help h3 { font-size:14px; }
.video-card h3 { font-size:13px; }
.video-card>div:last-child { font-size:12px; }
.video-select { font-size:11px; }

@media(max-width:760px) {
    body::before { inset:118px 0 0; opacity:.4; }
    .hero p { font-size:14px; }
    .private-note { font-size:11px; }
    .batch-input-help,
    .batch-form-tools,
    .parse-foot,
    .steps p,
    .member-teaser p,
    .faq-list p,
    .dialog-intro,
    .dialog-bottom,
    .end-note { font-size:12px; }
    .batch-label,
    .parse-form>label { font-size:13px; }
    .link-field textarea { font-size:14px; }
    .site-footer p { font-size:11px; }
}
