:root { /* Defines scoped NediQR legal page variables without disturbing the existing public website styles. */
    --nediqr-legal-navy: #20275a; /* Stores the primary deep navy color for legal headings and accents. */
    --nediqr-legal-navy-dark: #11183d; /* Stores the dark navy shade used in legal hero backgrounds. */
    --nediqr-legal-gold: #ee9d1b; /* Stores the gold accent color used across legal pages. */
    --nediqr-legal-soft-blue: #c3e0e9; /* Stores the soft tech blue color used for card borders and surfaces. */
    --nediqr-legal-cream: #f9f6f0; /* Stores the cream white brand color for warm highlights. */
    --nediqr-legal-white: #ffffff; /* Stores pure white for document cards. */
    --nediqr-legal-text: #182033; /* Stores the primary text color for legal content. */
    --nediqr-legal-muted: #5f6b82; /* Stores muted text color for supporting content. */
    --nediqr-legal-border: #dce6f2; /* Stores the soft border color for legal cards. */
    --nediqr-legal-page-bg: #f4f7fb; /* Stores the legal page background color. */
    --nediqr-legal-shadow-soft: 0 16px 36px rgba(17, 24, 61, 0.08); /* Stores the soft card shadow. */
    --nediqr-legal-shadow-card: 0 24px 60px rgba(17, 24, 61, 0.13); /* Stores the main document shadow. */
    --nediqr-legal-radius-sm: 12px; /* Stores the small radius value. */
    --nediqr-legal-radius-md: 18px; /* Stores the medium radius value. */
    --nediqr-legal-radius-lg: 28px; /* Stores the large radius value. */
    --nediqr-legal-header-offset: 92px; /* Stores sticky offset below the existing public header. */
    --nediqr-legal-wide-container: 1540px; /* Stores the wider legal container width. */
} /* Ends scoped NediQR legal page variables. */

html { /* Targets the root HTML element. */
    scroll-behavior: smooth; /* Enables smooth scrolling for legal anchor links. */
} /* Ends root HTML styling. */

.nediqr-legal-main { /* Styles the legal page main wrapper. */
    width: 100%; /* Makes the legal area use full available width. */
    overflow: visible; /* Keeps sticky TOC behavior working without parent clipping. */
    background: var(--nediqr-legal-page-bg); /* Applies the legal page background. */
} /* Ends legal page main wrapper styling. */

.nediqr-legal-hero__inner.nq-container, /* Targets the legal hero container while reusing the public layout container. */
.nediqr-legal-shell.nq-container { /* Targets the legal shell container while reusing the public layout container. */
    width: min(calc(100% - 64px), var(--nediqr-legal-wide-container)); /* Makes legal content wider and reduces side blank space. */
    max-width: var(--nediqr-legal-wide-container); /* Overrides the normal public container max width only for legal pages. */
    margin-left: auto; /* Centers the legal container horizontally. */
    margin-right: auto; /* Centers the legal container horizontally. */
} /* Ends legal container width override. */

.nediqr-legal-hero { /* Styles the legal hero section below the existing public header. */
    position: relative; /* Allows decorative pseudo-elements inside the hero. */
    width: 100%; /* Makes the hero full width. */
    padding: 82px 0 108px; /* Adds premium vertical hero spacing. */
    color: var(--nediqr-legal-white); /* Makes hero text white. */
    background: radial-gradient(circle at 14% 20%, rgba(238, 157, 27, 0.22), transparent 30%), linear-gradient(135deg, #11183d 0%, #20275a 54%, #171f49 100%); /* Creates the premium navy hero background. */
} /* Ends legal hero section styling. */

.nediqr-legal-hero::before { /* Adds the subtle hero grid overlay. */
    content: ""; /* Creates the decorative grid element. */
    position: absolute; /* Positions the grid inside the hero. */
    inset: 0; /* Stretches the grid across the hero. */
    opacity: 0.18; /* Keeps the grid subtle. */
    background-image: linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px); /* Builds the grid pattern. */
    background-size: 52px 52px; /* Sets the grid spacing. */
    pointer-events: none; /* Prevents the grid from blocking clicks. */
} /* Ends hero grid overlay styling. */

.nediqr-legal-hero::after { /* Adds the angled transition from hero to content. */
    content: ""; /* Creates the angled transition element. */
    position: absolute; /* Positions the transition inside the hero. */
    left: 0; /* Aligns the transition to the left edge. */
    right: 0; /* Aligns the transition to the right edge. */
    bottom: -1px; /* Places the transition at the hero bottom. */
    height: 68px; /* Sets the transition height. */
    background: var(--nediqr-legal-page-bg); /* Matches the legal page background. */
    clip-path: polygon(0 58%, 100% 18%, 100% 100%, 0 100%); /* Creates the angled premium shape. */
    pointer-events: none; /* Prevents the transition from blocking interactions. */
} /* Ends angled transition styling. */

.nediqr-legal-hero__inner { /* Styles the hero inner content wrapper. */
    position: relative; /* Keeps hero content above decorative layers. */
    z-index: 1; /* Places hero content above pseudo-elements. */
} /* Ends hero inner content wrapper styling. */

.nediqr-legal-hero__eyebrow { /* Styles the legal hero eyebrow label. */
    display: inline-flex; /* Keeps the label compact. */
    align-items: center; /* Vertically centers the label text. */
    min-height: 32px; /* Sets the label height. */
    margin: 0 0 20px; /* Adds spacing below the label. */
    padding: 0 13px; /* Adds horizontal label padding. */
    border: 1px solid rgba(238, 157, 27, 0.45); /* Adds a soft gold border. */
    border-radius: 999px; /* Makes the label pill-shaped. */
    background: rgba(238, 157, 27, 0.13); /* Adds a soft gold background. */
    color: #ffe0a6; /* Applies readable light-gold text. */
    font-size: 12px; /* Sets compact label text size. */
    font-weight: 900; /* Makes the label bold. */
    line-height: 1; /* Keeps label height clean. */
    letter-spacing: 0.09em; /* Adds premium uppercase spacing. */
    text-transform: uppercase; /* Converts label text to uppercase. */
} /* Ends hero eyebrow label styling. */

.nediqr-legal-hero__title { /* Styles the legal page title to visually match the lighter public homepage hero heading. */
    max-width: 1120px; /* Allows the heading to breathe like the homepage hero heading. */
    margin: 0; /* Removes default heading margin. */
    color: var(--nediqr-legal-white); /* Keeps the title white. */
    font-family: inherit; /* Uses the same font family already used by the public website. */
    font-size: clamp(38px, 4.35vw, 58px); /* Reduces legal heading size so it does not look oversized or heavy. */
    font-weight: 700; /* Reduces title weight to make the heading lighter and closer to the homepage style. */
    line-height: 1.12; /* Gives the title more natural homepage-style breathing space. */
    letter-spacing: -0.026em; /* Reduces tight spacing so the title no longer looks bulky. */
} /* Ends legal page title styling. */

.nediqr-legal-hero__summary { /* Styles the legal hero summary. */
    max-width: 1080px; /* Keeps summary text wide like the public homepage. */
    margin: 22px 0 0; /* Adds spacing above the summary. */
    color: rgba(255, 255, 255, 0.82); /* Applies soft white text. */
    font-size: clamp(16px, 1.7vw, 19px); /* Makes summary text responsive. */
    line-height: 1.75; /* Improves summary readability. */
} /* Ends hero summary styling. */

.nediqr-legal-hero__meta { /* Styles the policy date chip wrapper. */
    display: flex; /* Places date chips in a row. */
    flex-wrap: wrap; /* Allows chips to wrap on smaller screens. */
    gap: 12px; /* Adds spacing between chips. */
    margin-top: 28px; /* Adds spacing above chips. */
} /* Ends policy date chip wrapper styling. */

.nediqr-legal-hero__meta span { /* Styles each policy date chip. */
    display: inline-flex; /* Keeps each chip compact. */
    align-items: center; /* Vertically centers chip text. */
    min-height: 38px; /* Sets chip height. */
    padding: 0 15px; /* Adds horizontal chip padding. */
    border: 1px solid rgba(255, 255, 255, 0.18); /* Adds subtle chip border. */
    border-radius: 999px; /* Makes each chip pill-shaped. */
    background: rgba(255, 255, 255, 0.09); /* Adds a soft glass effect. */
    color: rgba(255, 255, 255, 0.88); /* Keeps chip text readable. */
    font-size: 13px; /* Sets compact chip text size. */
    font-weight: 800; /* Makes chip text bold. */
} /* Ends policy date chip styling. */

.nediqr-legal-shell { /* Styles the legal content shell. */
    position: relative; /* Allows the shell to sit above the hero curve. */
    z-index: 2; /* Places shell above hero transition. */
    display: grid; /* Creates TOC and document columns. */
    grid-template-columns: 320px minmax(0, 1fr); /* Keeps a single-column contents card and gives the document enough width. */
    align-items: start; /* Aligns TOC and document to the top. */
    gap: 32px; /* Adds spacing between TOC and document. */
    margin-top: -42px; /* Pulls the content upward into the hero area. */
    margin-bottom: 82px; /* Adds spacing before the public footer. */
} /* Ends legal content shell styling. */

.nediqr-legal-toc { /* Styles the table of contents card. */
    position: sticky; /* Keeps the TOC visible while reading on desktop. */
    top: var(--nediqr-legal-header-offset); /* Places sticky TOC below the existing public header. */
    height: auto; /* Allows the TOC height to be natural. */
    max-height: none; /* Removes internal height restriction. */
    overflow: visible; /* Removes internal TOC scrolling completely. */
    display: block; /* Keeps the contents list in one single column. */
    padding: 16px; /* Keeps TOC compact and readable. */
    border: 1px solid rgba(220, 230, 242, 0.92); /* Adds a soft card border. */
    border-radius: var(--nediqr-legal-radius-md); /* Applies medium rounded corners. */
    background: rgba(255, 255, 255, 0.96); /* Applies clean white card background. */
    box-shadow: var(--nediqr-legal-shadow-soft); /* Adds soft premium shadow. */
} /* Ends table of contents card styling. */

.nediqr-legal-toc__title { /* Styles the TOC title. */
    margin: 0 0 9px; /* Adds compact spacing below title. */
    color: var(--nediqr-legal-navy); /* Applies deep navy to title. */
    font-size: 15px; /* Sets compact title size. */
    font-weight: 900; /* Makes title bold. */
    line-height: 1.2; /* Keeps title compact. */
} /* Ends TOC title styling. */

.nediqr-legal-toc__link { /* Styles each TOC link. */
    display: block; /* Makes every contents item a full-width row. */
    width: 100%; /* Ensures each contents item uses the single-column card width. */
    padding: 5px 9px; /* Keeps TOC rows compact enough for long Terms contents. */
    border-radius: 9px; /* Adds rounded hover surface. */
    color: #4f5e73; /* Applies muted slate TOC text color. */
    font-size: 11.8px; /* Keeps TOC text compact for 24-item Terms page. */
    font-weight: 800; /* Makes TOC links readable. */
    line-height: 1.18; /* Keeps TOC rows compact. */
    text-decoration: none; /* Removes default link underline. */
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease; /* Adds smooth hover animation. */
} /* Ends TOC link styling. */

.nediqr-legal-toc__link + .nediqr-legal-toc__link { /* Targets every TOC link after the first link. */
    margin-top: 2px; /* Adds a tiny gap between single-column TOC rows. */
} /* Ends TOC row spacing rule. */

.nediqr-legal-toc__link:hover { /* Styles TOC links on hover. */
    background: rgba(195, 224, 233, 0.42); /* Adds soft blue hover background. */
    color: var(--nediqr-legal-navy); /* Changes hover text to brand navy. */
    transform: translateX(2px); /* Adds subtle hover movement. */
} /* Ends TOC hover styling. */

.nediqr-legal-document { /* Styles the main legal document card. */
    width: 100%; /* Makes the document fill available column width. */
    padding: clamp(34px, 3.4vw, 56px); /* Adds responsive premium document padding. */
    border: 1px solid rgba(220, 230, 242, 0.95); /* Adds soft document border. */
    border-radius: var(--nediqr-legal-radius-lg); /* Applies large rounded corners. */
    background: var(--nediqr-legal-white); /* Keeps document card white. */
    box-shadow: var(--nediqr-legal-shadow-card); /* Adds premium card shadow. */
} /* Ends main legal document card styling. */

.nediqr-legal-notice-card { /* Styles the notice card at the top of legal documents. */
    margin: 0 0 38px; /* Adds spacing below notice card. */
    padding: 24px 26px; /* Adds notice card padding. */
    border: 1px solid rgba(238, 157, 27, 0.30); /* Adds gold accent border. */
    border-radius: var(--nediqr-legal-radius-md); /* Applies medium rounded corners. */
    background: linear-gradient(135deg, rgba(32, 39, 90, 0.98), rgba(17, 24, 61, 0.98)); /* Applies premium navy gradient. */
    box-shadow: 0 18px 38px rgba(17, 24, 61, 0.18); /* Adds notice card shadow. */
} /* Ends notice card styling. */

.nediqr-legal-notice-card__title { /* Styles the notice card title. */
    margin: 0 0 8px; /* Adds spacing below notice title. */
    color: var(--nediqr-legal-white); /* Makes notice title white. */
    font-size: 22px; /* Sets notice title size. */
    font-weight: 900; /* Makes notice title bold. */
    line-height: 1.25; /* Keeps notice title compact. */
    letter-spacing: -0.02em; /* Adds modern notice title spacing. */
} /* Ends notice card title styling. */

.nediqr-legal-notice-card__text { /* Styles the notice card text. */
    margin: 0; /* Removes default paragraph margin. */
    color: rgba(255, 255, 255, 0.82); /* Applies soft white notice text. */
    font-size: 15px; /* Sets notice text size. */
    line-height: 1.76; /* Improves notice text readability. */
} /* Ends notice card text styling. */

.nediqr-legal-section { /* Styles each legal document section. */
    scroll-margin-top: var(--nediqr-legal-header-offset); /* Prevents anchor headings from hiding under the header. */
    margin-top: 40px; /* Adds spacing between sections. */
    padding-top: 2px; /* Adds small anchor offset spacing. */
} /* Ends legal document section styling. */

.nediqr-legal-section:first-of-type { /* Targets the first legal section. */
    margin-top: 0; /* Removes extra top spacing from the first section. */
} /* Ends first legal section styling. */

.nediqr-legal-section h2 { /* Styles legal section headings. */
    display: flex; /* Aligns heading accent with heading text. */
    align-items: center; /* Vertically centers heading accent. */
    gap: 13px; /* Adds spacing between heading accent and text. */
    margin: 0 0 15px; /* Adds spacing below headings. */
    color: var(--nediqr-legal-navy); /* Applies deep navy heading color. */
    font-size: clamp(24px, 2.15vw, 32px); /* Makes headings responsive. */
    font-weight: 900; /* Makes headings bold. */
    line-height: 1.18; /* Keeps heading lines compact. */
    letter-spacing: -0.035em; /* Adds premium heading spacing. */
} /* Ends legal section heading styling. */

.nediqr-legal-section h2::before { /* Adds the gold heading accent. */
    content: ""; /* Creates the accent bar. */
    width: 5px; /* Sets accent bar width. */
    height: 31px; /* Sets accent bar height. */
    flex: 0 0 auto; /* Prevents accent bar from shrinking. */
    border-radius: 999px; /* Rounds the accent bar. */
    background: var(--nediqr-legal-gold); /* Applies gold accent color. */
    box-shadow: 0 0 0 5px rgba(238, 157, 27, 0.12); /* Adds soft gold glow. */
} /* Ends gold heading accent styling. */

.nediqr-legal-section p { /* Styles legal paragraphs. */
    margin: 0 0 15px; /* Adds spacing below each paragraph. */
    color: #334155; /* Applies readable slate text. */
    font-size: 16px; /* Sets paragraph size. */
    line-height: 1.86; /* Improves legal text readability. */
} /* Ends legal paragraph styling. */

.nediqr-legal-section p:last-child { /* Targets the final paragraph inside a section. */
    margin-bottom: 0; /* Removes bottom margin from final paragraph. */
} /* Ends final paragraph spacing rule. */

.nediqr-legal-section ul { /* Styles legal unordered lists. */
    display: grid; /* Creates stacked legal list cards. */
    gap: 10px; /* Adds spacing between list cards. */
    margin: 16px 0 0; /* Adds spacing above lists. */
    padding: 0; /* Removes default list padding. */
    list-style: none; /* Removes default bullets. */
} /* Ends unordered list styling. */

.nediqr-legal-section li { /* Styles each legal list item. */
    position: relative; /* Allows custom bullet positioning. */
    padding: 14px 16px 14px 43px; /* Adds list item padding and bullet space. */
    border: 1px solid rgba(220, 230, 242, 0.88); /* Adds soft list border. */
    border-radius: 15px; /* Rounds list card corners. */
    background: #fbfdff; /* Adds light list card background. */
    color: #334155; /* Applies readable list text color. */
    font-size: 15px; /* Sets list text size. */
    line-height: 1.68; /* Improves list readability. */
} /* Ends legal list item styling. */

.nediqr-legal-section li::before { /* Adds custom gold bullet to list items. */
    content: ""; /* Creates custom bullet. */
    position: absolute; /* Positions bullet inside list item. */
    top: 21px; /* Aligns bullet with first text line. */
    left: 18px; /* Places bullet inside left padding. */
    width: 10px; /* Sets bullet width. */
    height: 10px; /* Sets bullet height. */
    border-radius: 999px; /* Makes bullet circular. */
    background: var(--nediqr-legal-gold); /* Applies gold bullet color. */
    box-shadow: 0 0 0 4px rgba(238, 157, 27, 0.15); /* Adds soft bullet glow. */
} /* Ends custom bullet styling. */

.nediqr-legal-section strong { /* Styles strong text inside legal content. */
    color: var(--nediqr-legal-navy); /* Applies navy color to strong labels. */
    font-weight: 900; /* Makes strong labels bold. */
} /* Ends strong text styling. */

.nediqr-legal-info-card { /* Styles reusable legal information cards. */
    margin: 18px 0 4px; /* Adds spacing around info cards. */
    padding: 21px 23px; /* Adds info card padding. */
    border: 1px solid rgba(195, 224, 233, 0.95); /* Adds soft blue border. */
    border-radius: var(--nediqr-legal-radius-md); /* Applies medium rounded corners. */
    background: linear-gradient(180deg, #ffffff, #f8fbff); /* Adds subtle white-blue gradient. */
    box-shadow: 0 14px 34px rgba(17, 24, 61, 0.07); /* Adds soft info card shadow. */
} /* Ends reusable info card styling. */

.nediqr-legal-info-card p { /* Styles paragraphs inside info cards. */
    margin: 0 0 8px; /* Adds compact spacing between info lines. */
    font-size: 15px; /* Sets info card text size. */
    line-height: 1.72; /* Improves info card readability. */
} /* Ends info card paragraph styling. */

.nediqr-legal-info-card p:last-child { /* Targets the final paragraph inside info cards. */
    margin-bottom: 0; /* Removes bottom margin from final info line. */
} /* Ends final info card paragraph styling. */

.nediqr-legal-contact-card { /* Styles the final contact card. */
    margin-top: 18px; /* Adds spacing above contact card. */
    padding: 24px; /* Adds contact card padding. */
    border: 1px solid rgba(238, 157, 27, 0.36); /* Adds gold border accent. */
    border-radius: var(--nediqr-legal-radius-md); /* Applies medium rounded corners. */
    background: linear-gradient(135deg, rgba(249, 246, 240, 0.96), rgba(195, 224, 233, 0.48)); /* Applies cream and soft-blue background. */
    box-shadow: 0 14px 34px rgba(17, 24, 61, 0.08); /* Adds contact card shadow. */
} /* Ends contact card styling. */

.nediqr-legal-contact-card p { /* Styles paragraphs inside the contact card. */
    margin: 0 0 9px; /* Adds compact spacing between contact lines. */
    color: #26364f; /* Applies strong readable text color. */
    font-size: 15px; /* Sets contact text size. */
    line-height: 1.72; /* Improves contact text readability. */
} /* Ends contact card paragraph styling. */

.nediqr-legal-contact-card p:last-child { /* Targets the final paragraph inside the contact card. */
    margin-bottom: 0; /* Removes bottom margin from final contact line. */
} /* Ends final contact card paragraph styling. */

.nediqr-legal-contact-card a { /* Styles links inside the contact card. */
    color: var(--nediqr-legal-navy); /* Applies navy link color. */
    font-weight: 900; /* Makes contact links bold. */
    text-decoration: underline; /* Keeps email links visibly clickable. */
    text-decoration-color: rgba(238, 157, 27, 0.72); /* Applies gold underline color. */
    text-underline-offset: 4px; /* Adds spacing below underlined links. */
} /* Ends contact card link styling. */

.nediqr-legal-disclaimer-card { /* Keeps legacy disclaimer card styling harmless if older pages still contain it. */
    margin-top: 38px; /* Adds spacing above disclaimer card. */
    padding: 18px 20px; /* Adds disclaimer card padding. */
    border: 1px dashed rgba(238, 157, 27, 0.78); /* Adds dashed gold border. */
    border-radius: var(--nediqr-legal-radius-sm); /* Applies small rounded corners. */
    background: rgba(238, 157, 27, 0.08); /* Adds soft gold background. */
} /* Ends legacy disclaimer card styling. */

.nediqr-legal-disclaimer-card p { /* Styles text inside legacy disclaimer cards. */
    margin: 0; /* Removes default paragraph margin. */
    color: #6f4e10; /* Applies readable dark-gold text. */
    font-size: 14px; /* Sets disclaimer text size. */
    font-weight: 800; /* Makes disclaimer text bold. */
    line-height: 1.7; /* Improves disclaimer readability. */
} /* Ends legacy disclaimer card text styling. */

.nediqr-legal-document a:focus-visible, /* Targets visible focus state for document links. */
.nediqr-legal-toc a:focus-visible { /* Targets visible focus state for TOC links. */
    outline: 3px solid rgba(238, 157, 27, 0.75); /* Adds accessible gold focus outline. */
    outline-offset: 3px; /* Adds spacing around focus outline. */
} /* Ends visible focus state styling. */

@media (min-width: 1280px) { /* Starts wide desktop refinement rules. */
    .nediqr-legal-shell { /* Adjusts legal shell on wide desktop screens. */
        grid-template-columns: 320px minmax(0, 1fr); /* Keeps the single-column TOC stable beside the document. */
        gap: 32px; /* Maintains balanced desktop spacing. */
    } /* Ends wide desktop shell refinement. */
} /* Ends wide desktop refinement rules. */

@media (max-width: 1100px) { /* Starts smaller desktop and tablet landscape rules. */
    .nediqr-legal-hero__inner.nq-container, /* Targets legal hero container on smaller desktop screens. */
    .nediqr-legal-shell.nq-container { /* Targets legal shell container on smaller desktop screens. */
        width: min(calc(100% - 40px), var(--nediqr-legal-wide-container)); /* Reduces side spacing safely. */
    } /* Ends smaller desktop legal container adjustment. */

    .nediqr-legal-shell { /* Adjusts legal shell on smaller desktop screens. */
        grid-template-columns: 1fr; /* Moves TOC above document before side layout becomes cramped. */
        gap: 22px; /* Keeps spacing between TOC and document comfortable. */
    } /* Ends smaller desktop legal shell adjustment. */

    .nediqr-legal-toc { /* Adjusts TOC on smaller desktop screens. */
        position: relative; /* Removes sticky behavior when TOC is above the document. */
        top: auto; /* Resets sticky top position. */
        display: block; /* Keeps TOC links in one column on smaller screens too. */
    } /* Ends smaller desktop TOC adjustment. */

    .nediqr-legal-document { /* Adjusts legal document on smaller desktop screens. */
        padding: 34px; /* Reduces document padding. */
    } /* Ends smaller desktop document adjustment. */
} /* Ends smaller desktop and tablet landscape rules. */

@media (max-width: 900px) { /* Starts tablet layout rules. */
    :root { /* Adjusts variables for tablet layouts. */
        --nediqr-legal-header-offset: 82px; /* Reduces anchor offset for smaller public headers. */
    } /* Ends tablet variable adjustment. */

    .nediqr-legal-hero { /* Adjusts hero on tablet screens. */
        padding: 64px 0 86px; /* Reduces hero vertical spacing. */
    } /* Ends tablet hero adjustment. */

    .nediqr-legal-hero__summary { /* Adjusts hero summary on tablet screens. */
        max-width: 100%; /* Allows summary to use full container width. */
    } /* Ends tablet hero summary adjustment. */

    .nediqr-legal-shell { /* Adjusts legal shell on tablet screens. */
        grid-template-columns: 1fr; /* Keeps single-column tablet layout. */
        gap: 22px; /* Keeps spacing between TOC and document. */
        margin-top: -34px; /* Keeps premium overlap effect. */
        margin-bottom: 64px; /* Reduces spacing before footer. */
    } /* Ends tablet legal shell adjustment. */

    .nediqr-legal-toc { /* Adjusts TOC on tablet screens. */
        position: relative; /* Keeps TOC non-sticky on tablet. */
        top: auto; /* Resets sticky top value. */
        height: auto; /* Keeps TOC height natural. */
        max-height: none; /* Ensures no internal height limit. */
        overflow: visible; /* Ensures no internal TOC scrollbar. */
        display: block; /* Keeps TOC links in one column on tablet. */
    } /* Ends tablet TOC adjustment. */
} /* Ends tablet layout rules. */

@media (max-width: 640px) { /* Starts mobile layout rules. */
    .nediqr-legal-hero__inner.nq-container, /* Targets legal hero container on mobile. */
    .nediqr-legal-shell.nq-container { /* Targets legal shell container on mobile. */
        width: min(calc(100% - 28px), var(--nediqr-legal-wide-container)); /* Uses mobile-safe side spacing. */
    } /* Ends mobile legal container adjustment. */

    .nediqr-legal-hero { /* Adjusts hero on mobile. */
        padding: 48px 0 76px; /* Reduces mobile hero spacing. */
    } /* Ends mobile hero adjustment. */

    .nediqr-legal-hero__eyebrow { /* Adjusts hero eyebrow on mobile. */
        min-height: 30px; /* Reduces eyebrow height. */
        margin-bottom: 17px; /* Reduces spacing below eyebrow. */
        font-size: 11px; /* Reduces eyebrow font size. */
    } /* Ends mobile eyebrow adjustment. */

    .nediqr-legal-hero__title { /* Adjusts hero title on mobile. */
        font-size: clamp(32px, 9vw, 42px); /* Keeps mobile title lighter and mobile-safe. */
        font-weight: 700; /* Keeps the mobile title aligned with the lighter desktop title. */
        line-height: 1.14; /* Gives mobile heading better breathing room. */
        letter-spacing: -0.024em; /* Keeps mobile heading spacing softer than before. */
    } /* Ends mobile title adjustment. */

    .nediqr-legal-hero__summary { /* Adjusts hero summary on mobile. */
        margin-top: 18px; /* Reduces summary top spacing. */
        font-size: 15px; /* Sets mobile summary text size. */
        line-height: 1.72; /* Improves mobile summary readability. */
    } /* Ends mobile summary adjustment. */

    .nediqr-legal-hero__meta { /* Adjusts date chips on mobile. */
        gap: 8px; /* Reduces chip spacing. */
        margin-top: 22px; /* Reduces spacing above chips. */
    } /* Ends mobile date chip wrapper adjustment. */

    .nediqr-legal-hero__meta span { /* Adjusts each date chip on mobile. */
        width: 100%; /* Makes each chip full width. */
        justify-content: center; /* Centers chip text. */
        min-height: 36px; /* Reduces chip height. */
    } /* Ends mobile date chip adjustment. */

    .nediqr-legal-shell { /* Adjusts legal shell on mobile. */
        margin-top: -30px; /* Keeps small premium overlap. */
        margin-bottom: 52px; /* Reduces bottom spacing. */
    } /* Ends mobile legal shell adjustment. */

    .nediqr-legal-toc { /* Adjusts TOC on mobile. */
        display: block; /* Keeps TOC links in one column on mobile. */
        padding: 18px; /* Keeps mobile TOC padding comfortable. */
        border-radius: 16px; /* Reduces TOC border radius. */
    } /* Ends mobile TOC adjustment. */

    .nediqr-legal-toc__link { /* Adjusts TOC links on mobile. */
        font-size: 12.5px; /* Slightly increases TOC text size on mobile because it is no longer sticky. */
        line-height: 1.28; /* Improves mobile TOC readability. */
        padding: 7px 10px; /* Gives mobile TOC links better tap area. */
    } /* Ends mobile TOC link adjustment. */

    .nediqr-legal-document { /* Adjusts legal document on mobile. */
        padding: 22px 18px; /* Reduces mobile document padding. */
        border-radius: 22px; /* Reduces mobile document radius. */
    } /* Ends mobile document adjustment. */

    .nediqr-legal-notice-card { /* Adjusts notice card on mobile. */
        padding: 18px; /* Reduces notice card padding. */
        margin-bottom: 28px; /* Reduces spacing below notice card. */
    } /* Ends mobile notice card adjustment. */

    .nediqr-legal-notice-card__title { /* Adjusts notice title on mobile. */
        font-size: 18px; /* Reduces notice title size. */
    } /* Ends mobile notice title adjustment. */

    .nediqr-legal-section { /* Adjusts legal section spacing on mobile. */
        margin-top: 30px; /* Reduces section spacing. */
    } /* Ends mobile section spacing adjustment. */

    .nediqr-legal-section h2 { /* Adjusts legal headings on mobile. */
        gap: 10px; /* Reduces heading accent gap. */
        font-size: 21px; /* Reduces mobile heading size. */
        line-height: 1.24; /* Improves heading wrapping. */
    } /* Ends mobile heading adjustment. */

    .nediqr-legal-section h2::before { /* Adjusts heading accent on mobile. */
        width: 4px; /* Reduces accent width. */
        height: 25px; /* Reduces accent height. */
    } /* Ends mobile heading accent adjustment. */

    .nediqr-legal-section p { /* Adjusts legal paragraphs on mobile. */
        font-size: 15px; /* Reduces paragraph text size. */
        line-height: 1.78; /* Keeps mobile paragraphs readable. */
    } /* Ends mobile paragraph adjustment. */

    .nediqr-legal-section li { /* Adjusts legal list items on mobile. */
        padding: 12px 14px 12px 38px; /* Reduces list item padding. */
        font-size: 14px; /* Reduces list item text size. */
        line-height: 1.65; /* Keeps list item readable. */
    } /* Ends mobile list item adjustment. */

    .nediqr-legal-section li::before { /* Adjusts custom bullet on mobile. */
        top: 19px; /* Aligns bullet with mobile list text. */
        left: 16px; /* Moves bullet slightly inward. */
    } /* Ends mobile custom bullet adjustment. */

    .nediqr-legal-info-card { /* Adjusts info card on mobile. */
        padding: 17px; /* Reduces info card padding. */
    } /* Ends mobile info card adjustment. */

    .nediqr-legal-contact-card { /* Adjusts contact card on mobile. */
        padding: 18px; /* Reduces contact card padding. */
    } /* Ends mobile contact card adjustment. */

    .nediqr-legal-disclaimer-card { /* Adjusts legacy disclaimer card on mobile. */
        padding: 16px; /* Reduces disclaimer card padding. */
    } /* Ends mobile disclaimer card adjustment. */
} /* Ends mobile layout rules. */

@media (max-width: 420px) { /* Starts very small mobile layout rules. */
    .nediqr-legal-document { /* Adjusts document on very small screens. */
        padding: 20px 15px; /* Reduces document padding further. */
    } /* Ends very small screen document adjustment. */

    .nediqr-legal-section h2 { /* Adjusts headings on very small screens. */
        font-size: 20px; /* Keeps headings from becoming too wide. */
    } /* Ends very small screen heading adjustment. */
} /* Ends very small mobile layout rules. */

@media print { /* Starts print-friendly legal page rules. */
    .nediqr-legal-main { /* Adjusts legal main for print. */
        background: #ffffff; /* Uses white print background. */
        overflow: visible; /* Allows full print content flow. */
    } /* Ends print legal main adjustment. */

    .nediqr-legal-hero { /* Adjusts legal hero for print. */
        padding: 24px 0; /* Reduces print hero spacing. */
        color: #000000; /* Uses black text for print. */
        background: #ffffff; /* Removes dark hero background for print. */
    } /* Ends print hero adjustment. */

    .nediqr-legal-hero::before, /* Targets hero grid overlay for print. */
    .nediqr-legal-hero::after { /* Targets hero angled bottom for print. */
        display: none; /* Hides hero decorative elements while printing. */
    } /* Ends print hero decoration hiding. */

    .nediqr-legal-hero__title, /* Targets hero title for print. */
    .nediqr-legal-hero__summary, /* Targets hero summary for print. */
    .nediqr-legal-hero__meta span { /* Targets hero date chips for print. */
        color: #000000; /* Uses black print text. */
    } /* Ends print hero text adjustment. */

    .nediqr-legal-shell { /* Adjusts legal shell for print. */
        display: block; /* Uses single-column print layout. */
        margin-top: 0; /* Removes hero overlap for print. */
        margin-bottom: 0; /* Removes bottom spacing for print. */
    } /* Ends print legal shell adjustment. */

    .nediqr-legal-toc { /* Adjusts TOC for print. */
        display: none; /* Hides TOC in printed output. */
    } /* Ends print TOC hiding. */

    .nediqr-legal-document { /* Adjusts document for print. */
        padding: 0; /* Removes print padding. */
        border: 0; /* Removes print border. */
        border-radius: 0; /* Removes print rounded corners. */
        box-shadow: none; /* Removes print shadows. */
    } /* Ends print document adjustment. */
} /* Ends print-friendly legal page rules. */