/* =========================================================
   BEOACTIVE — LEĐA BEZ BOLA
========================================================= */

.lbb-page {
    --lbb-navy: #102a3a;
    --lbb-green: #258448;
    --lbb-green-bright: #36b83b;
    --lbb-dark-green: #123b35;
    --lbb-red: #ed1e24;

    --lbb-soft: #f5f8f6;
    --lbb-soft-green: #edf5ef;

    --lbb-text: #52636d;
    --lbb-muted: #7b898f;
    --lbb-line: #dce5e0;

    --lbb-mono:
        ui-monospace,
        SFMono-Regular,
        Menlo,
        Monaco,
        Consolas,
        "Liberation Mono",
        monospace;

    background: #fff;
    color: var(--lbb-navy);
}


.lbb-page *,
.lbb-page *::before,
.lbb-page *::after {
    box-sizing: border-box;
}


.lbb-page section[id],
.lbb-page [id="lbb-spine"],
.lbb-page .lbb-module-card[id] {
    scroll-margin-top: 120px;
}



/* =========================================================
   SHARED
========================================================= */

.lbb-eyebrow {
    margin: 0;

    color: var(--lbb-green);

    font-size: 11px;
    font-weight: 700;

    letter-spacing: .13em;
    text-transform: uppercase;
}


.lbb-section-head {
    max-width: 820px;

    margin-bottom:
        clamp(36px, 4.6vw, 56px);
}


.lbb-section-head h2 {
    max-width: 800px;

    margin: 15px 0 0;

    color: var(--lbb-navy);

    font-size:
        clamp(40px, 4.4vw, 64px);

    font-weight: 600;
    line-height: 1.03;

    letter-spacing: -.048em;
}


.lbb-section-head > p:last-child {
    max-width: 660px;

    margin: 20px 0 0;

    color: var(--lbb-text);

    font-size: 16px;
    line-height: 1.7;
}



/* =========================================================
   REPORT BAR
========================================================= */

.lbb-report-bar {
    overflow: hidden;

    padding: 10px 0;

    background: var(--lbb-navy);

    color:
        rgba(255, 255, 255, .62);
}


.lbb-report-bar-inner {
    display: flex;
    align-items: center;

    gap: 34px;

    overflow: hidden;

    white-space: nowrap;

    font-family: var(--lbb-mono);

    font-size: 10px;

    letter-spacing: .08em;
    text-transform: uppercase;
}


.lbb-report-bar span {
    flex: none;
}


.lbb-report-bar strong {
    color: #fff;

    font-weight: 600;
}



/* =========================================================
   HERO
========================================================= */

.lbb-hero {
    position: relative;

    overflow: hidden;

    padding:
        clamp(64px, 6.5vw, 104px)
        0
        clamp(72px, 7vw, 112px);

    background:
        radial-gradient(
            circle at 82% 18%,
            rgba(54, 184, 59, .08),
            transparent 29%
        ),
        linear-gradient(
            180deg,
            #fff 0%,
            #f8faf9 100%
        );
}


.lbb-hero-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(410px, .8fr);

    grid-template-areas:
        "copy    scan"
        "actions scan"
        "trust   scan";

    column-gap:
        clamp(44px, 5.5vw, 88px);

    row-gap: 0;

    align-items: start;
}


.lbb-hero-copy {
    grid-area: copy;

    max-width: 690px;
}


.lbb-scan {
    grid-area: scan;

    align-self: center;
}


.lbb-hero-actions {
    grid-area: actions;
}


.lbb-hero-trust {
    grid-area: trust;
}



/* =========================================================
   HERO COPY
========================================================= */

.lbb-hero h1 {
    max-width: 700px;

    margin: 17px 0 0;

    color: var(--lbb-navy);

    font-size:
        clamp(56px, 5.5vw, 82px);

    font-weight: 600;
    line-height: .97;

    letter-spacing: -.055em;
}


.lbb-hero h1 span {
    display: block;

    margin-top: 10px;

    color: var(--lbb-green);

    font-size: .68em;
    line-height: 1.04;

    letter-spacing: -.045em;
}


.lbb-hero-lead {
    max-width: 610px;

    margin: 27px 0 0;

    color: var(--lbb-text);

    font-size:
        clamp(15px, 1.15vw, 18px);

    line-height: 1.7;
}



/* =========================================================
   HERO BUTTONS
========================================================= */

.lbb-hero-actions {
    display: flex;
    flex-wrap: wrap;

    gap: 11px;

    margin-top: 30px;
}


.lbb-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 9px;

    min-height: 50px;

    padding: 0 22px;

    border:
        1px solid transparent;

    border-radius: 11px;

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;

    transition:
        transform .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}


.lbb-btn:hover {
    transform: translateY(-2px);
}


.lbb-btn-primary {
    background: var(--lbb-green-bright);

    color: #fff;

    box-shadow:
        0 10px 24px
        rgba(54, 184, 59, .15);
}


.lbb-btn-primary:hover {
    background: #2fa934;
}


.lbb-btn-secondary {
    border-color:
        rgba(16, 42, 58, .17);

    background: #fff;

    color: var(--lbb-navy);
}


.lbb-btn-secondary:hover {
    border-color:
        rgba(16, 42, 58, .32);
}



/* =========================================================
   HERO TRUST
========================================================= */

.lbb-hero-trust {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    max-width: 650px;

    margin-top: 38px;

    padding-top: 21px;

    border-top:
        1px solid var(--lbb-line);
}


.lbb-hero-trust div {
    min-width: 0;

    padding: 0 18px;

    border-right:
        1px solid var(--lbb-line);
}


.lbb-hero-trust div:first-child {
    padding-left: 0;
}


.lbb-hero-trust div:last-child {
    padding-right: 0;

    border-right: 0;
}


.lbb-hero-trust strong,
.lbb-hero-trust span {
    display: block;
}


.lbb-hero-trust strong {
    color: var(--lbb-navy);

    font-size: 12px;
    font-weight: 700;

    line-height: 1.35;
}


.lbb-hero-trust span {
    margin-top: 4px;

    color: #75838a;

    font-size: 10.5px;
    line-height: 1.45;
}



/* =========================================================
   SCANNER
========================================================= */

.lbb-scan {
    position: relative;

    overflow: hidden;

    width: 100%;

    padding:
        21px 21px 18px;

    border:
        1px solid
        rgba(16, 42, 58, .16);

    border-radius: 23px;

    background:
        rgba(255, 255, 255, .97);

    box-shadow:
        0 26px 64px
        rgba(10, 42, 35, .09);

    transition:
        border-color .3s ease,
        box-shadow .3s ease;
}


.lbb-scan.is-demo {
    border-color:
        rgba(37, 132, 72, .4);

    box-shadow:
        0 30px 76px
        rgba(10, 42, 35, .14);
}



/* =========================================================
   SCANNER HEADER
========================================================= */

.lbb-scan-head {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 18px;

    padding-bottom: 14px;

    border-bottom:
        1px dashed #cbd8d1;

    color: #64757d;

    font-family: var(--lbb-mono);

    font-size: 9.5px;

    letter-spacing: .08em;
    text-transform: uppercase;
}


.lbb-scan-head span:first-child {
    display: inline-flex;

    align-items: center;

    gap: 7px;
}


.lbb-scan-head i {
    display: block;

    width: 7px;
    height: 7px;

    flex: none;

    border-radius: 50%;

    background: var(--lbb-red);
}



/* =========================================================
   SPINE
========================================================= */

.lbb-spine-stage {
    position: relative;

    min-height: 490px;
}


.lbb-spine-svg {
    display: block;

    width: 100%;
    height: 490px;

    overflow: visible;

    cursor: crosshair;

    touch-action: none;
}


.lbb-region-line {
    stroke:
        rgba(108, 137, 124, .28);

    stroke-width: 1.25;

    stroke-dasharray: 4 7;
}


.lbb-region-label {
    fill: #71838a;

    font-family: var(--lbb-mono);

    font-size: 9px;

    letter-spacing: .045em;
}


.lbb-spine-path {
    fill: none;

    stroke:
        rgba(16, 42, 58, .21);

    stroke-width: 2;

    stroke-linecap: round;
}



/* =========================================================
   VERTEBRAE
========================================================= */

.lbb-spine-vertebrae {
    pointer-events: none;
}


.lbb-vertebra {
    fill: #f9fbfa;

    stroke: #294653;

    stroke-width: 1.35;

    vector-effect:
        non-scaling-stroke;
}


.lbb-vertebra-cervical {
    fill: #f8fbf9;
}


.lbb-vertebra-thoracic {
    fill: #f6faf7;
}


.lbb-vertebra-lumbar {
    fill: #f2f7f4;

    stroke-width: 1.55;
}


.lbb-vertebra-sacral {
    fill: #eaf2ed;

    stroke: #557369;

    stroke-width: 1.05;
}



/* =========================================================
   MARKER
========================================================= */

.lbb-spine-marker {
    cursor: grab;

    outline: none;

    touch-action: none;
}


.lbb-spine-marker:active {
    cursor: grabbing;
}


.lbb-marker-halo {
    fill:
        rgba(237, 30, 36, .09);

    stroke:
        rgba(237, 30, 36, .23);

    stroke-width: 1;
}


.lbb-marker-circle {
    fill: #fff;

    stroke: var(--lbb-red);

    stroke-width: 3;
}


.lbb-spine-marker:focus-visible
.lbb-marker-halo {
    stroke: var(--lbb-green-bright);

    stroke-width: 3;
}


.lbb-spine-marker.is-pulsing
.lbb-marker-halo {
    animation:
        lbbSpinePulse
        .85s ease-in-out
        infinite;
}


@keyframes lbbSpinePulse {

    0%,
    100% {
        r: 18px;
        opacity: .7;
    }

    50% {
        r: 25px;
        opacity: .15;
    }

}



/* =========================================================
   INFO CARD
========================================================= */

.lbb-spine-info {
    position: absolute;

    top: 50%;
    right: 0;

    z-index: 3;

    width: 176px;

    transform:
        translateY(-50%);

    padding:
        17px 16px;

    border:
        1px solid var(--lbb-line);

    border-radius: 14px;

    background:
        rgba(255, 255, 255, .97);

    box-shadow:
        0 12px 28px
        rgba(16, 42, 58, .06);

    pointer-events: auto;

    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}


.lbb-spine-info:has(
    .lbb-spine-module:not([hidden])
) {
    border-color:
        rgba(37, 132, 72, .24);

    box-shadow:
        0 14px 32px
        rgba(37, 132, 72, .07);
}


.lbb-spine-code {
    margin: 0;

    color: var(--lbb-red);

    font-family: var(--lbb-mono);

    font-size: 11px;
    font-weight: 700;
}


.lbb-spine-region {
    display: block;

    margin-top: 7px;

    color: var(--lbb-navy);

    font-size: 13px;
    line-height: 1.35;
}


.lbb-spine-description {
    min-height: 48px;

    margin: 9px 0 0;

    color: #697980;

    font-size: 10.5px;
    line-height: 1.55;
}


.lbb-spine-module {
    display: inline-flex;

    align-items: center;

    gap: 5px;

    margin-top: 10px;
    padding: 0;

    border: 0;

    background: transparent;

    color: var(--lbb-green);

    font-size: 9.5px;
    font-weight: 700;
    line-height: 1.45;

    text-align: left;

    text-decoration: none;

    cursor: pointer;
}


.lbb-spine-module[hidden] {
    display: none !important;
}


.lbb-spine-module span {
    display: inline-block;

    flex: none;

    transition:
        transform .18s ease;
}


.lbb-spine-module:hover {
    text-decoration: underline;

    text-underline-offset: 3px;
}


.lbb-spine-module:hover span {
    transform:
        translateX(3px);
}



/* =========================================================
   SCANNER FOOT
========================================================= */

.lbb-scan-foot {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 18px;

    padding-top: 13px;

    border-top:
        1px dashed #cbd8d1;
}


.lbb-drag-hint,
.lbb-scan-disclaimer {
    font-size: 9px;
    line-height: 1.45;
}


.lbb-drag-hint {
    color: var(--lbb-green);

    font-weight: 700;
}


.lbb-scan-disclaimer {
    max-width: 190px;

    color: #89969b;

    text-align: right;
}



/* =========================================================
   RECOGNITION
========================================================= */

.lbb-recognition {
    padding:
        clamp(84px, 8vw, 126px)
        0;

    background: #fff;
}


.lbb-recognition-card {
    overflow: hidden;

    width: 100%;
    max-width: 980px;

    border:
        1px solid
        rgba(16, 42, 58, .13);

    border-radius: 22px;

    background: var(--lbb-soft);
}


.lbb-recognition-item {
    display: grid;

    grid-template-columns:
        32px minmax(0, 1fr);

    align-items: start;

    gap: 14px;

    padding:
        20px 25px;

    border-bottom:
        1px solid var(--lbb-line);
}


.lbb-check {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 25px;
    height: 25px;

    border:
        1px solid
        rgba(37, 132, 72, .35);

    border-radius: 50%;

    background: #fff;

    color: var(--lbb-green);

    font-size: 12px;
    font-weight: 700;
}


.lbb-recognition-item p {
    margin: 0;

    color: #445963;

    font-size: 15px;
    line-height: 1.62;
}


.lbb-recognition-foot {
    display: grid;

    grid-template-columns:
        minmax(0, .9fr)
        minmax(0, 1.1fr);

    align-items: center;

    gap: 32px;

    padding:
        23px 25px;

    background: var(--lbb-dark-green);

    color: #fff;
}


.lbb-recognition-foot strong {
    max-width: 390px;

    font-size: 14px;
    line-height: 1.5;
}


.lbb-recognition-foot span {
    color:
        rgba(255, 255, 255, .68);

    font-size: 12.5px;
    line-height: 1.55;
}



/* =========================================================
   REALITY
========================================================= */

.lbb-reality {
    padding:
        clamp(84px, 8vw, 126px)
        0;

    background: var(--lbb-soft);
}


.lbb-reality-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 17px;
}


.lbb-reality-card {
    padding:
        clamp(27px, 3vw, 38px);

    border-radius: 22px;
}


.lbb-reality-card-no {
    border:
        1px solid
        rgba(237, 30, 36, .16);

    background: #fff6f6;
}


.lbb-reality-card-yes {
    border:
        1px solid
        rgba(37, 132, 72, .17);

    background: #edf6ef;
}


.lbb-reality-label {
    margin:
        0 0 23px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: .12em;
    text-transform: uppercase;
}


.lbb-reality-card-no
.lbb-reality-label {
    color: var(--lbb-red);
}


.lbb-reality-card-yes
.lbb-reality-label {
    color: var(--lbb-green);
}


.lbb-reality-card ul {
    margin: 0;
    padding: 0;

    list-style: none;
}


.lbb-reality-card li {
    display: grid;

    grid-template-columns:
        22px minmax(0, 1fr);

    gap: 11px;

    padding:
        15px 0;

    border-bottom:
        1px solid
        rgba(16, 42, 58, .085);
}


.lbb-reality-card li:first-child {
    padding-top: 0;
}


.lbb-reality-card li:last-child {
    padding-bottom: 0;

    border-bottom: 0;
}


.lbb-reality-card li > span {
    font-weight: 700;
}


.lbb-reality-card-no
li > span {
    color: var(--lbb-red);
}


.lbb-reality-card-yes
li > span {
    color: var(--lbb-green);
}


.lbb-reality-card li p {
    margin: 0;

    color: #425760;

    font-size: 14.5px;
    line-height: 1.55;
}



/* =========================================================
   MODULES
========================================================= */

.lbb-modules {
    padding:
        clamp(88px, 8.5vw, 132px)
        0;

    background: #fff;
}


.lbb-modules-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 17px;
}


.lbb-module-card {
    position: relative;

    display: flex;
    flex-direction: column;

    overflow: hidden;

    min-width: 0;

    padding:
        32px 32px 29px;

    border:
        1px solid
        rgba(16, 42, 58, .14);

    border-radius: 21px;

    background:
        linear-gradient(
            180deg,
            #fff 0%,
            #fbfcfb 100%
        );

    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}


.lbb-module-card:hover {
    transform:
        translateY(-3px);

    border-color:
        rgba(37, 132, 72, .27);

    box-shadow:
        0 20px 44px
        rgba(16, 42, 58, .065);
}


.lbb-module-card::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;
    right: 0;

    height: 6px;

    background:
        repeating-linear-gradient(
            90deg,
            transparent 0 12px,
            rgba(37, 132, 72, .19) 12px 18px,
            transparent 18px 30px
        );
}


.lbb-module-number {
    position: absolute;

    top: 15px;
    right: 21px;

    color: var(--lbb-navy);

    font-size:
        clamp(68px, 6vw, 92px);

    font-weight: 700;
    line-height: 1;

    letter-spacing: -.07em;

    opacity: .04;

    pointer-events: none;
}


.lbb-module-top {
    position: relative;

    z-index: 1;
}


.lbb-module-icon {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    margin-bottom: 14px;

    color: var(--lbb-green);
}


.lbb-module-icon svg {
    width: 40px;
    height: 40px;
}


.lbb-module-label {
    margin: 0;

    color: var(--lbb-green);

    font-family: var(--lbb-mono);

    font-size: 9.5px;
    font-weight: 700;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.lbb-module-card h3 {
    position: relative;

    z-index: 1;

    max-width: 450px;

    margin:
        16px 0 11px;

    color: var(--lbb-navy);

    font-size:
        clamp(24px, 2vw, 30px);

    font-weight: 600;
    line-height: 1.08;

    letter-spacing: -.035em;
}


.lbb-module-copy {
    position: relative;

    z-index: 1;

    max-width: 520px;

    margin: 0;

    color: var(--lbb-text);

    font-size: 14.5px;
    line-height: 1.65;
}


.lbb-module-contains {
    position: relative;

    z-index: 1;

    margin-top: auto;

    padding-top: 18px;

    border-top:
        1px dashed
        rgba(16, 42, 58, .17);
}


.lbb-module-contains > span {
    display: block;

    margin-bottom: 9px;

    color: #819097;

    font-family: var(--lbb-mono);

    font-size: 8.5px;
    font-weight: 700;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.lbb-module-contains div {
    margin-top: 6px;

    color: #566970;

    font-size: 11.5px;
    line-height: 1.5;
}



/* =========================================================
   MODULE FLOW
========================================================= */

.lbb-module-flow {
    display: flex;

    align-items: center;

    width: 100%;

    gap: 0;

    margin-top: 22px;

    padding:
        16px 19px;

    border:
        1px solid var(--lbb-line);

    border-radius: 13px;

    background: var(--lbb-soft);
}


.lbb-module-flow > span,
.lbb-module-flow > i {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    height: 20px;

    margin: 0;
    padding: 0;

    line-height: 1;

    vertical-align: middle;
}


.lbb-module-flow > span {
    min-width: 24px;

    color: var(--lbb-green);

    font-family: var(--lbb-mono);

    font-size: 10px;
    font-weight: 700;
}


.lbb-module-flow > i {
    min-width: 24px;

    color: var(--lbb-muted);

    font-size: 12px;
    font-style: normal;
    font-weight: 400;

    opacity: .7;
}


.lbb-module-flow > p {
    margin:
        0 0 0 auto;

    color: #718087;

    font-size: 11.5px;
    line-height: 1.35;
}



/* =========================================================
   FORMAT
========================================================= */

.lbb-format {
    padding:
        clamp(82px, 8vw, 122px)
        0;

    background: var(--lbb-soft);
}


.lbb-format-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 15px;
}


.lbb-format-item {
    min-width: 0;

    padding:
        24px 22px;

    border:
        1px solid var(--lbb-line);

    border-radius: 17px;

    background: #fff;
}


.lbb-format-icon {
    width: 37px;
    height: 37px;

    margin-bottom: 20px;

    color: var(--lbb-green);
}


.lbb-format-icon svg {
    display: block;

    width: 100%;
    height: 100%;
}


.lbb-format-item h3 {
    margin:
        0 0 9px;

    color: var(--lbb-navy);

    font-size: 17px;
    font-weight: 600;
    line-height: 1.25;

    letter-spacing: -.025em;
}


.lbb-format-item p {
    margin: 0;

    color: var(--lbb-text);

    font-size: 13px;
    line-height: 1.58;
}



/* =========================================================
   CLINIC
========================================================= */

.lbb-clinic {
    padding:
        clamp(88px, 8.5vw, 132px)
        0;

    background: #fff;
}


.lbb-clinic-grid {
    display: grid;

    grid-template-columns:
        minmax(310px, .85fr)
        minmax(0, 1.15fr);

    align-items: stretch;

    gap:
        clamp(38px, 5vw, 72px);
}


.lbb-clinic-visual {
    position: relative;

    overflow: hidden;

    min-height: 520px;

    border-radius: 22px;

    background: var(--lbb-soft);
}


.lbb-clinic-visual img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center top;
}


.lbb-clinic-stamp {
    position: absolute;

    right: 20px;
    bottom: 20px;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    width: 104px;
    height: 104px;

    border:
        2px solid var(--lbb-red);

    border-radius: 50%;

    background:
        rgba(255, 255, 255, .93);

    color: var(--lbb-red);

    text-align: center;

    transform:
        rotate(-8deg);
}


.lbb-clinic-stamp span {
    font-size: 9px;
    font-weight: 700;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.lbb-clinic-stamp strong {
    margin-top: 3px;

    font-size: 12px;
}


.lbb-clinic-content {
    display: flex;
    flex-direction: column;

    justify-content: center;

    max-width: 650px;
}


.lbb-clinic-content > p {
    margin:
        0 0 17px;

    color: var(--lbb-text);

    font-size: 15px;
    line-height: 1.7;
}


.lbb-clinic-content
.lbb-clinic-lead {
    color: var(--lbb-navy);

    font-size: 19px;
    line-height: 1.58;
}


.lbb-clinic-facts {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap:
        17px 26px;

    margin-top: 20px;

    padding-top: 23px;

    border-top:
        1px solid var(--lbb-line);
}


.lbb-clinic-facts div {
    padding-left: 13px;

    border-left:
        2px solid var(--lbb-green);
}


.lbb-clinic-facts span,
.lbb-clinic-facts strong {
    display: block;
}


.lbb-clinic-facts span {
    color: #849198;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.lbb-clinic-facts strong {
    margin-top: 4px;

    color: var(--lbb-navy);

    font-size: 13px;
}



/* =========================================================
   TESTIMONIALS
========================================================= */

.lbb-testimonials {
    padding:
        clamp(80px, 7.5vw, 118px)
        0;

    background: var(--lbb-soft);
}


.lbb-testimonials-head {
    margin-bottom:
        clamp(32px, 4vw, 48px);
}


.lbb-testimonials-head h2 {
    max-width: 720px;

    margin: 14px 0 0;

    color: var(--lbb-navy);

    font-size:
        clamp(38px, 4vw, 55px);

    font-weight: 600;
    line-height: 1.04;

    letter-spacing: -.045em;
}


.lbb-testimonials-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 15px;
}


.lbb-testimonial-card {
    display: flex;
    flex-direction: column;

    min-height: 210px;

    padding: 25px;

    border:
        1px solid var(--lbb-line);

    border-radius: 18px;

    background: #fff;
}


.lbb-testimonial-stars {
    margin-bottom: 23px;

    color: var(--lbb-green-bright);

    font-size: 11px;

    letter-spacing: .08em;
}


.lbb-testimonial-card blockquote {
    margin: 0;

    color: var(--lbb-navy);

    font-size: 18px;
    font-weight: 500;
    line-height: 1.47;

    letter-spacing: -.02em;
}


.lbb-testimonial-card > p {
    margin:
        auto 0 0;

    padding-top: 18px;

    color: #76858c;

    font-size: 11px;
    font-weight: 700;
}


.lbb-testimonials-footer {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 28px;

    margin-top: 22px;
}


.lbb-testimonials-footer > span {
    color: #819097;

    font-size: 10.5px;
}


.lbb-testimonials-footer a {
    display: inline-flex;

    align-items: center;

    gap: 7px;

    color: var(--lbb-green);

    font-size: 11.5px;
    font-weight: 700;

    text-decoration: none;
}


.lbb-testimonials-footer a:hover {
    text-decoration: underline;

    text-underline-offset: 3px;
}



/* =========================================================
   PRICING
========================================================= */

.lbb-pricing {
    padding:
        clamp(88px, 8.5vw, 132px)
        0;

    background: #fff;
}



/* =========================================================
   BUNDLE
========================================================= */

.lbb-bundle {
    position: relative;

    overflow: hidden;

    height: 360px;

    margin-top: 40px;

    border-radius: 22px;

    background:
        radial-gradient(
            circle at 50% 18%,
            #1d483d 0%,
            #12362f 52%,
            #0b2622 100%
        );
}


.lbb-bundle-grid-bg {
    position: absolute;

    inset: 0;

    opacity: .075;

    background-image:
        linear-gradient(
            rgba(255, 255, 255, .75) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255, 255, 255, .75) 1px,
            transparent 1px
        );

    background-size:
        36px 36px;
}


.lbb-bundle-cluster {
    position: absolute;

    left: 50%;
    bottom: 27px;

    display: flex;

    align-items: flex-end;
    justify-content: center;

    width: 650px;

    transform:
        translateX(-50%);
}


.lbb-bundle-item {
    position: relative;

    display: flex;
    flex-direction: column;

    justify-content: space-between;

    flex: none;

    padding:
        16px 14px;

    border-radius: 6px;

    box-shadow:
        0 22px 38px
        rgba(0, 0, 0, .3);
}


.lbb-bundle-item span {
    font-size: 8px;
    font-weight: 700;

    letter-spacing: .09em;
    text-transform: uppercase;
}


.lbb-bundle-item strong {
    font-size: 14px;
    line-height: 1.12;
}


.lbb-bundle-small {
    z-index: 1;

    width: 115px;
    height: 155px;

    margin-right: -34px;

    background: #f1f4f2;

    color: var(--lbb-navy);

    transform:
        rotate(-15deg)
        translateY(30px);
}


.lbb-bundle-green {
    z-index: 2;

    width: 135px;
    height: 190px;

    margin-right: -38px;

    background: var(--lbb-green);

    color: #fff;

    transform:
        rotate(8deg)
        translateY(17px);
}


.lbb-bundle-red {
    z-index: 3;

    width: 145px;
    height: 210px;

    margin-right: -42px;

    background: var(--lbb-red);

    color: #fff;

    transform:
        rotate(-7deg)
        translateY(14px);
}


.lbb-bundle-dark {
    z-index: 4;

    width: 155px;
    height: 230px;

    margin-right: -45px;

    background: var(--lbb-navy);

    color: #fff;

    transform:
        rotate(5deg)
        translateY(8px);
}


.lbb-bundle-main {
    z-index: 5;

    width: 190px;
    height: 260px;

    background: #fff;

    color: var(--lbb-navy);

    transform:
        rotate(-1.5deg);
}


.lbb-bundle-main strong {
    font-size: 24px;
    line-height: 1.02;
}


.lbb-bundle-main small {
    color: #687980;

    font-size: 9px;
    line-height: 1.4;
}



/* =========================================================
   PRICE CARD
========================================================= */

.lbb-price-card {
    display: grid;

    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(290px, .85fr);

    align-items: center;

    gap:
        clamp(34px, 5vw, 52px);

    margin-top: 24px;

    padding:
        clamp(34px, 4.5vw, 54px);

    border-radius: 22px;

    background: var(--lbb-navy);

    color: #fff;
}


.lbb-price-content {
    min-width: 0;
}


.lbb-price-eyebrow {
    margin: 0;

    color: #92daa0;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .12em;
    text-transform: uppercase;
}


.lbb-price-content h3 {
    max-width: 560px;

    margin:
        14px 0 23px;

    color: #fff;

    font-size:
        clamp(30px, 3.2vw, 44px);

    font-weight: 600;
    line-height: 1.05;

    letter-spacing: -.04em;
}


.lbb-price-content ul {
    margin: 0;
    padding: 0;

    list-style: none;
}


.lbb-price-content li {
    display: flex;

    align-items: flex-start;

    gap: 9px;

    padding: 5px 0;

    color:
        rgba(255, 255, 255, .75);

    font-size: 13px;
    line-height: 1.45;
}


.lbb-price-content li span {
    flex: none;

    color: #92daa0;

    font-weight: 700;
}


.lbb-price-box {
    padding: 29px;

    border:
        1px solid
        rgba(255, 255, 255, .08);

    border-radius: 17px;

    background:
        rgba(255, 255, 255, .07);

    text-align: center;
}


.lbb-price-label {
    color:
        rgba(255, 255, 255, .55);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.lbb-price-value {
    display: flex;

    align-items: flex-start;
    justify-content: center;

    gap: 7px;

    margin-top: 12px;
}


.lbb-price-value small {
    margin-top: 7px;

    color:
        rgba(255, 255, 255, .56);

    font-size: 10px;
}


.lbb-price-value strong {
    color: #fff;

    font-size: 44px;
    line-height: 1;

    letter-spacing: -.04em;
}


.lbb-price-button {
    width: 100%;

    min-height: 49px;

    margin-top: 22px;

    border: 0;
    border-radius: 10px;

    background: var(--lbb-green-bright);

    color: #fff;

    font: inherit;
    font-size: 12.5px;
    font-weight: 700;

    cursor: not-allowed;

    opacity: .7;
}


.lbb-price-box p {
    margin:
        13px 0 0;

    color:
        rgba(255, 255, 255, .47);

    font-size: 9.5px;
    line-height: 1.5;
}



/* =========================================================
   FAQ
========================================================= */

.lbb-faq {
    padding:
        clamp(84px, 8vw, 126px)
        0;

    background: var(--lbb-soft);
}


.lbb-faq-list {
    width: 100%;
    max-width: 900px;

    border-top:
        1px solid var(--lbb-line);
}


.lbb-faq details {
    padding:
        21px 0;

    border-bottom:
        1px solid var(--lbb-line);
}


.lbb-faq summary {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 28px;

    color: var(--lbb-navy);

    font-size: 16px;
    font-weight: 600;
    line-height: 1.45;

    cursor: pointer;

    list-style: none;
}


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


.lbb-faq summary::after {
    content: "+";

    flex: none;

    color: var(--lbb-green);

    font-size: 23px;
    font-weight: 400;

    line-height: 1;
}


.lbb-faq details[open]
summary::after {
    content: "–";
}


.lbb-faq details > p {
    max-width: 760px;

    margin:
        13px 0 0;

    color: var(--lbb-text);

    font-size: 13.5px;
    line-height: 1.65;
}


.lbb-disclaimer {
    max-width: 900px;

    margin-top: 31px;

    padding:
        20px 22px;

    border:
        1px solid
        rgba(237, 30, 36, .15);

    border-radius: 15px;

    background: #fff6f6;
}


.lbb-disclaimer strong {
    display: block;

    margin-bottom: 6px;

    color: var(--lbb-red);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: .09em;
    text-transform: uppercase;
}


.lbb-disclaimer p {
    margin: 0;

    color: #78545a;

    font-size: 12.5px;
    line-height: 1.62;
}



/* =========================================================
   MOBILE SPINE SLIDER — HIDDEN BY DEFAULT
========================================================= */

.lbb-mobile-spine-slider {
    display: none;
}



/* =========================================================
   <= 1100px
========================================================= */

@media (max-width: 1100px) {

    .lbb-hero-grid {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(390px, .8fr);

        column-gap: 40px;
    }


    .lbb-hero h1 {
        font-size:
            clamp(52px, 5.5vw, 68px);
    }


    .lbb-format-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}



/* =========================================================
   <= 980px
========================================================= */

@media (max-width: 980px) {

    .lbb-clinic-grid {
        grid-template-columns: 1fr;
    }


    .lbb-price-card {
        grid-template-columns: 1fr;
    }

}



/* =========================================================
   <= 820px
========================================================= */

@media (max-width: 820px) {

    .lbb-section-head h2 {
        font-size:
            clamp(38px, 7vw, 52px);
    }


    .lbb-testimonials-grid {
        grid-template-columns: 1fr;
    }

}



/* =========================================================
   <= 700px
========================================================= */

@media (max-width: 700px) {

    .lbb-modules-grid {
        grid-template-columns: 1fr;
    }


    .lbb-recognition-foot,
    .lbb-reality-grid {
        grid-template-columns: 1fr;
    }

}



/* =========================================================
   LAPTOP COMPACT
   1200px+ / <= 760px HEIGHT
========================================================= */

@media
    (min-width: 1200px)
    and (max-height: 760px) {

    .lbb-hero {
        padding:
            34px 0
            42px;
    }


    .lbb-hero-grid {
        column-gap: 40px;
    }


    .lbb-hero h1 {
        font-size:
            clamp(50px, 4.35vw, 64px);

        line-height: .96;
    }


    .lbb-hero h1 span {
        margin-top: 6px;
    }


    .lbb-hero-lead {
        max-width: 590px;

        margin-top: 17px;

        font-size: 14px;
        line-height: 1.5;
    }


    .lbb-hero-actions {
        margin-top: 18px;
    }


    .lbb-btn {
        min-height: 45px;

        padding:
            0 19px;

        font-size: 12px;
    }


    .lbb-hero-trust {
        margin-top: 20px;

        padding-top: 14px;
    }


    .lbb-hero-trust strong {
        font-size: 10.5px;
    }


    .lbb-hero-trust span {
        font-size: 9px;
    }


    /* Scanner */

    .lbb-scan {
        padding:
            17px 17px 14px;

        border-radius: 19px;
    }


    .lbb-scan-head {
        padding-bottom: 10px;

        font-size: 8px;
    }


    .lbb-spine-stage {
        min-height: 372px;
    }


    .lbb-spine-svg {
        height: 372px;
    }


    .lbb-spine-info {
        width: 158px;

        padding: 13px;
    }


    .lbb-spine-code {
        font-size: 9px;
    }


    .lbb-spine-region {
        margin-top: 5px;

        font-size: 11px;
    }


    .lbb-spine-description {
        min-height: 0;

        margin-top: 6px;

        font-size: 8.8px;
        line-height: 1.45;
    }


    .lbb-spine-module {
        margin-top: 7px;

        font-size: 8px;
    }


    .lbb-scan-foot {
        padding-top: 9px;
    }


    .lbb-drag-hint,
    .lbb-scan-disclaimer {
        font-size: 7.8px;
    }


    /* Global headings */

    .lbb-section-head {
        margin-bottom: 27px;
    }


    .lbb-section-head h2 {
        margin-top: 10px;

        font-size:
            clamp(38px, 3.65vw, 52px);

        line-height: 1;
    }


    .lbb-section-head > p:last-child {
        max-width: 620px;

        margin-top: 13px;

        font-size: 13px;
        line-height: 1.52;
    }


    .lbb-eyebrow {
        font-size: 8.5px;
    }


    /* Recognition */

    .lbb-recognition {
        padding:
            58px 0;
    }


    .lbb-recognition-card {
        max-width: 1000px;

        border-radius: 18px;
    }


    .lbb-recognition-item {
        grid-template-columns:
            26px minmax(0, 1fr);

        gap: 11px;

        padding:
            13px 19px;
    }


    .lbb-check {
        width: 20px;
        height: 20px;

        font-size: 9px;
    }


    .lbb-recognition-item p {
        font-size: 12px;
        line-height: 1.45;
    }


    .lbb-recognition-foot {
        gap: 24px;

        padding:
            15px 19px;
    }


    .lbb-recognition-foot strong {
        font-size: 11.5px;
    }


    .lbb-recognition-foot span {
        font-size: 10px;
        line-height: 1.45;
    }


    /* Reality */

    .lbb-reality {
        padding:
            58px 0;
    }


    .lbb-reality-card {
        padding:
            24px 27px;

        border-radius: 18px;
    }


    .lbb-reality-label {
        margin-bottom: 17px;

        font-size: 8px;
    }


    .lbb-reality-card li {
        padding:
            10px 0;
    }


    .lbb-reality-card li p {
        font-size: 11.5px;
        line-height: 1.4;
    }


    /* Modules */

    .lbb-modules {
        padding:
            48px 0
            50px;
    }


    .lbb-modules .lbb-section-head {
        margin-bottom: 20px;
    }


    .lbb-module-card {
        padding:
            18px 21px 17px;

        border-radius: 17px;
    }


    .lbb-module-number {
        top: 10px;
        right: 16px;

        font-size: 64px;
    }


    .lbb-module-icon {
        width: 27px;
        height: 27px;

        margin-bottom: 7px;
    }


    .lbb-module-icon svg {
        width: 26px;
        height: 26px;
    }


    .lbb-module-label {
        font-size: 7.5px;
    }


    .lbb-module-card h3 {
        margin:
            8px 0 6px;

        font-size: 20px;
    }


    .lbb-module-copy {
        font-size: 10.8px;
        line-height: 1.43;
    }


    .lbb-module-contains {
        margin-top: 9px;

        padding-top: 8px;
    }


    .lbb-module-contains > span {
        margin-bottom: 4px;

        font-size: 7px;
    }


    .lbb-module-contains div {
        margin-top: 3px;

        font-size: 8.5px;
        line-height: 1.35;
    }


    .lbb-module-flow {
        margin-top: 11px;

        padding:
            9px 14px;
    }


    /* Format */

    .lbb-format {
        padding:
            56px 0;
    }


    .lbb-format-item {
        padding: 18px;

        border-radius: 15px;
    }


    .lbb-format-icon {
        width: 31px;
        height: 31px;

        margin-bottom: 13px;
    }


    .lbb-format-item h3 {
        margin-bottom: 6px;

        font-size: 14.5px;
    }


    .lbb-format-item p {
        font-size: 10.5px;
        line-height: 1.45;
    }


    /* Clinic */

    .lbb-clinic {
        padding:
            44px 0
            48px;
    }


    .lbb-clinic .lbb-section-head {
        margin-bottom: 18px;
    }


    .lbb-clinic .lbb-section-head h2 {
        max-width: 650px;

        font-size: 42px;
    }


    .lbb-clinic-grid {
        grid-template-columns:
            minmax(300px, .78fr)
            minmax(0, 1.22fr);

        align-items: center;

        gap: 42px;
    }


    .lbb-clinic-visual {
        min-height: 0;
        height: 355px;

        border-radius: 18px;
    }


    .lbb-clinic-visual img {
        object-position:
            center 18%;
    }


    .lbb-clinic-stamp {
        right: 14px;
        bottom: 14px;

        width: 78px;
        height: 78px;
    }


    .lbb-clinic-stamp span {
        font-size: 7px;
    }


    .lbb-clinic-stamp strong {
        font-size: 9px;
    }


    .lbb-clinic-content > p {
        margin-bottom: 10px;

        font-size: 11.5px;
        line-height: 1.48;
    }


    .lbb-clinic-content
    .lbb-clinic-lead {
        font-size: 15px;
        line-height: 1.48;
    }


    .lbb-clinic-facts {
        gap:
            12px 20px;

        margin-top: 10px;

        padding-top: 12px;
    }


    .lbb-clinic-facts span {
        font-size: 7.5px;
    }


    .lbb-clinic-facts strong {
        font-size: 10.5px;
    }


    /* Testimonials */

    .lbb-testimonials {
        padding:
            54px 0;
    }


    .lbb-testimonials-head {
        margin-bottom: 22px;
    }


    .lbb-testimonials-head h2 {
        font-size: 44px;
    }


    .lbb-testimonial-card {
        min-height: 145px;

        padding:
            18px 20px;

        border-radius: 16px;
    }


    .lbb-testimonial-stars {
        margin-bottom: 14px;

        font-size: 10px;
    }


    .lbb-testimonial-card blockquote {
        font-size: 14px;
        line-height: 1.45;
    }


    .lbb-testimonial-card > p {
        padding-top: 12px;

        font-size: 9.5px;
    }


    /* Pricing */

    .lbb-pricing {
        padding:
            48px 0
            52px;
    }


    .lbb-bundle {
        height: 270px;

        margin-top: 22px;
    }


    .lbb-bundle-cluster {
        bottom: 14px;

        transform:
            translateX(-50%)
            scale(.80);

        transform-origin:
            center bottom;
    }


    .lbb-price-card {
        gap: 38px;

        margin-top: 14px;

        padding:
            25px 34px;
    }


    .lbb-price-content h3 {
        margin:
            11px 0 17px;

        font-size: 34px;
    }


    .lbb-price-content li {
        padding:
            3px 0;

        font-size: 10.5px;
    }


    .lbb-price-box {
        padding: 24px;
    }


    .lbb-price-value strong {
        font-size: 38px;
    }


    .lbb-price-button {
        min-height: 43px;

        margin-top: 17px;
    }


    /* FAQ */

    .lbb-faq {
        padding:
            58px 0;
    }


    .lbb-faq details {
        padding:
            14px 0;
    }


    .lbb-faq summary {
        font-size: 13px;
    }


    .lbb-faq details > p {
        margin-top: 9px;

        font-size: 11px;
        line-height: 1.5;
    }


    .lbb-disclaimer {
        margin-top: 21px;

        padding:
            16px 18px;
    }


    .lbb-disclaimer p {
        font-size: 10.5px;
    }

}



/* =========================================================
   TABLET PORTRAIT
   621px–980px
========================================================= */

@media
    (min-width: 621px)
    and (max-width: 980px) {

    .lbb-hero {
        padding:
            34px 0
            36px;
    }


    .lbb-hero-grid {
        grid-template-columns: 1fr;

        grid-template-areas:
            "copy"
            "scan"
            "actions"
            "trust";

        row-gap: 0;
    }


    .lbb-hero-copy {
        max-width: 650px;

        margin-bottom: 22px;
    }


    .lbb-hero .lbb-eyebrow {
        font-size: 9px;
    }


    .lbb-hero h1 {
        margin-top: 13px;

        font-size:
            clamp(56px, 8.1vw, 64px);

        line-height: .96;
    }


    .lbb-hero h1 span {
        margin-top: 7px;
    }


    .lbb-hero-lead {
        max-width: 625px;

        margin-top: 17px;

        font-size: 13px;
        line-height: 1.52;
    }


    /* Scanner */

    .lbb-scan {
        width:
            min(610px, 100%);

        margin:
            0 auto;

        padding:
            16px 16px 13px;

        border-radius: 18px;
    }


    .lbb-scan-head {
        padding-bottom: 9px;

        font-size: 7.5px;
    }


    .lbb-spine-stage {
        min-height: 350px;
    }


    .lbb-spine-svg {
        height: 350px;
    }


    .lbb-spine-info {
        width: 150px;

        padding:
            11px;
    }


    .lbb-spine-code {
        font-size: 8.5px;
    }


    .lbb-spine-region {
        margin-top: 4px;

        font-size: 10.5px;
    }


    .lbb-spine-description {
        min-height: 0;

        margin-top: 5px;

        font-size: 8px;
        line-height: 1.4;
    }


    .lbb-spine-module {
        margin-top: 6px;

        font-size: 7.4px;
        line-height: 1.35;
    }


    .lbb-scan-foot {
        padding-top: 8px;
    }


    .lbb-drag-hint,
    .lbb-scan-disclaimer {
        font-size: 7px;
    }


    /* CTA */

    .lbb-hero-actions {
        display: grid;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 9px;

        width:
            min(500px, 100%);

        margin:
            12px auto 0;
    }


    .lbb-hero-actions .lbb-btn {
        width: 100%;

        min-height: 43px;

        padding:
            0 15px;

        font-size: 11px;
    }


    /* Trust */

    .lbb-hero-trust {
        width:
            min(610px, 100%);

        max-width: none;

        margin:
            12px auto 0;

        padding-top: 11px;
    }


    .lbb-hero-trust div {
        padding:
            0 12px;
    }


    .lbb-hero-trust div:first-child {
        padding-left: 0;
    }


    .lbb-hero-trust div:last-child {
        padding-right: 0;
    }


    .lbb-hero-trust strong {
        font-size: 9.5px;
        line-height: 1.25;
    }


    .lbb-hero-trust span {
        margin-top: 2px;

        font-size: 7.8px;
        line-height: 1.3;
    }


    /* Clinic */

    .lbb-clinic {
        padding:
            54px 0;
    }


    .lbb-clinic-grid {
        grid-template-columns: 1fr;

        gap: 25px;
    }


    .lbb-clinic-visual {
        min-height: 0;
        height: 345px;

        border-radius: 20px;
    }


    .lbb-clinic-visual img {
        object-position:
            center 20%;
    }


    .lbb-clinic-stamp {
        right: 15px;
        bottom: 15px;

        width: 82px;
        height: 82px;
    }


    .lbb-clinic-stamp span {
        font-size: 7px;
    }


    .lbb-clinic-stamp strong {
        font-size: 9px;
    }


    .lbb-clinic-content {
        max-width: 100%;
    }


    .lbb-clinic-content
    .lbb-clinic-lead {
        font-size: 17px;
        line-height: 1.52;
    }


    .lbb-clinic-content > p {
        margin-bottom: 13px;

        font-size: 13px;
        line-height: 1.58;
    }


    .lbb-clinic-facts {
        margin-top: 15px;

        padding-top: 17px;
    }

}



/* =========================================================
   TABLET LANDSCAPE COMPACT
   npr. 1024 × 768
========================================================= */

@media
    (min-width: 821px)
    and (max-width: 1199px)
    and (max-height: 850px) {

    .lbb-section-head {
        margin-bottom: 24px;
    }


    .lbb-section-head h2 {
        margin-top: 10px;

        font-size: 44px;
        line-height: 1.02;
    }


    .lbb-section-head > p:last-child {
        margin-top: 13px;

        font-size: 13.5px;
        line-height: 1.52;
    }


    .lbb-eyebrow {
        font-size: 9px;
    }


    /* Hero */

    .lbb-hero {
        padding:
            42px 0
            46px;
    }


    .lbb-hero-grid {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(390px, .82fr);

        grid-template-areas:
            "copy    scan"
            "actions scan"
            "trust   scan";

        column-gap: 38px;
    }


    .lbb-hero-copy {
        margin: 0;
    }


    .lbb-hero h1 {
        margin-top: 13px;

        font-size: 54px;
        line-height: .96;
    }


    .lbb-hero h1 span {
        margin-top: 6px;
    }


    .lbb-hero-lead {
        max-width: 510px;

        margin-top: 20px;

        font-size: 14px;
        line-height: 1.52;
    }


    .lbb-hero-actions {
        margin-top: 28px;

        gap: 9px;
    }


    .lbb-hero-actions .lbb-btn {
        min-height: 46px;

        padding:
            0 18px;

        font-size: 11.5px;
    }


    .lbb-hero-trust {
        max-width: 520px;

        margin-top: 26px;

        padding-top: 14px;
    }


    .lbb-hero-trust div {
        padding:
            0 11px;
    }


    .lbb-hero-trust strong {
        font-size: 10px;
    }


    .lbb-hero-trust span {
        margin-top: 2px;

        font-size: 8.5px;
        line-height: 1.3;
    }


    /* Scanner */

    .lbb-scan {
        padding:
            16px 16px 13px;

        border-radius: 19px;
    }


    .lbb-scan-head {
        padding-bottom: 10px;

        font-size: 8px;
    }


    .lbb-spine-stage {
        min-height: 390px;
    }


    .lbb-spine-svg {
        height: 390px;
    }


    .lbb-spine-info {
        width: 158px;

        padding: 13px;
    }


    .lbb-spine-code {
        font-size: 9px;
    }


    .lbb-spine-region {
        margin-top: 5px;

        font-size: 11px;
    }


    .lbb-spine-description {
        min-height: 0;

        margin-top: 6px;

        font-size: 8.8px;
        line-height: 1.42;
    }


    .lbb-spine-module {
        margin-top: 7px;

        font-size: 8px;
    }


    .lbb-scan-foot {
        padding-top: 9px;
    }


    .lbb-drag-hint,
    .lbb-scan-disclaimer {
        font-size: 7.5px;
    }


    /* Recognition */

    .lbb-recognition {
        padding:
            52px 0;
    }


    .lbb-recognition-item {
        grid-template-columns:
            28px minmax(0, 1fr);

        gap: 11px;

        padding:
            13px 20px;
    }


    .lbb-check {
        width: 21px;
        height: 21px;

        font-size: 9px;
    }


    .lbb-recognition-item p {
        font-size: 12.5px;
        line-height: 1.45;
    }


    .lbb-recognition-foot {
        gap: 25px;

        padding:
            15px 20px;
    }


    .lbb-recognition-foot strong {
        font-size: 11.5px;
    }


    .lbb-recognition-foot span {
        font-size: 10.5px;
        line-height: 1.45;
    }


    /* Reality */

    .lbb-reality {
        padding:
            52px 0;
    }


    .lbb-reality-card {
        padding:
            22px 25px;

        border-radius: 18px;
    }


    .lbb-reality-label {
        margin-bottom: 15px;

        font-size: 8.5px;
    }


    .lbb-reality-card li {
        padding:
            9px 0;
    }


    .lbb-reality-card li p {
        font-size: 12px;
        line-height: 1.42;
    }


    /* Modules */

    .lbb-modules {
        padding:
            50px 0;
    }


    .lbb-modules .lbb-section-head {
        margin-bottom: 20px;
    }


    .lbb-module-card {
        padding:
            19px 21px 17px;

        border-radius: 17px;
    }


    .lbb-module-number {
        top: 10px;
        right: 15px;

        font-size: 62px;
    }


    .lbb-module-icon {
        width: 29px;
        height: 29px;

        margin-bottom: 8px;
    }


    .lbb-module-icon svg {
        width: 28px;
        height: 28px;
    }


    .lbb-module-label {
        font-size: 7.5px;
    }


    .lbb-module-card h3 {
        margin:
            9px 0 6px;

        font-size: 20px;
    }


    .lbb-module-copy {
        font-size: 11px;
        line-height: 1.44;
    }


    .lbb-module-contains {
        margin-top: 10px;

        padding-top: 8px;
    }


    .lbb-module-contains > span {
        margin-bottom: 4px;

        font-size: 7px;
    }


    .lbb-module-contains div {
        margin-top: 3px;

        font-size: 8.7px;
        line-height: 1.35;
    }


    .lbb-module-flow {
        margin-top: 11px;

        padding:
            9px 13px;
    }


    /* Format */

    .lbb-format {
        padding:
            50px 0;
    }


    .lbb-format-item {
        padding:
            18px;

        border-radius: 15px;
    }


    .lbb-format-icon {
        width: 30px;
        height: 30px;

        margin-bottom: 12px;
    }


    .lbb-format-item h3 {
        margin-bottom: 6px;

        font-size: 14px;
    }


    .lbb-format-item p {
        font-size: 10.5px;
        line-height: 1.42;
    }


    /* Clinic */

    .lbb-clinic {
        padding:
            46px 0
            50px;
    }


    .lbb-clinic-grid {
        grid-template-columns:
            minmax(300px, .78fr)
            minmax(0, 1.22fr);

        align-items: center;

        gap: 38px;
    }


    .lbb-clinic-visual {
        min-height: 0;
        height: 385px;

        border-radius: 18px;
    }


    .lbb-clinic-visual img {
        object-position:
            center 18%;
    }


    .lbb-clinic-stamp {
        right: 13px;
        bottom: 13px;

        width: 76px;
        height: 76px;
    }


    .lbb-clinic-stamp span {
        font-size: 6.5px;
    }


    .lbb-clinic-stamp strong {
        font-size: 9px;
    }


    .lbb-clinic-content > p {
        margin-bottom: 10px;

        font-size: 11.5px;
        line-height: 1.48;
    }


    .lbb-clinic-content
    .lbb-clinic-lead {
        font-size: 15.5px;
        line-height: 1.48;
    }


    .lbb-clinic-facts {
        gap:
            11px 18px;

        margin-top: 11px;

        padding-top: 12px;
    }


    .lbb-clinic-facts span {
        font-size: 7.5px;
    }


    .lbb-clinic-facts strong {
        font-size: 10.5px;
    }


    /* Pricing */

    .lbb-pricing {
        padding:
            48px 0
            52px;
    }


    .lbb-bundle {
        height: 300px;

        margin-top: 20px;

        border-radius: 18px;
    }


    .lbb-bundle-cluster {
        bottom: 15px;

        transform:
            translateX(-50%)
            scale(.86);

        transform-origin:
            center bottom;
    }


    .lbb-price-card {
        gap: 30px;

        margin-top: 14px;

        padding:
            28px 30px;
    }


    .lbb-price-content h3 {
        margin:
            10px 0 15px;

        font-size: 32px;
    }


    .lbb-price-content li {
        padding:
            3px 0;

        font-size: 10.5px;
    }


    .lbb-price-box {
        padding: 22px;
    }


    .lbb-price-value strong {
        font-size: 36px;
    }


    .lbb-price-button {
        min-height: 42px;

        margin-top: 15px;
    }

}



/* =========================================================
   SMALL TABLET / LARGE PHONE
   621px–767px
========================================================= */

@media
    (min-width: 621px)
    and (max-width: 767px) {

    .lbb-section-head {
        margin-bottom: 18px;
    }


    .lbb-section-head h2 {
        margin-top: 8px;

        font-size: 28px;
        line-height: 1.02;
    }


    .lbb-section-head > p:last-child {
        margin-top: 10px;

        font-size: 15px;
        line-height: 1.58;
    }


    .lbb-recognition,
    .lbb-reality,
    .lbb-modules,
    .lbb-format,
    .lbb-clinic,
    .lbb-pricing {
        padding:
            36px 0;
    }


    .lbb-format-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}



/* =========================================================
   MOBILE FINAL
   <= 620px
========================================================= */

@media (max-width: 620px) {

    /* -----------------------------------------------------
       GENERAL
    ----------------------------------------------------- */

    .lbb-page section[id],
    .lbb-page [id="lbb-spine"],
    .lbb-page .lbb-module-card[id] {
        scroll-margin-top: 86px;
    }


    .lbb-report-bar {
        display: none;
    }


    .lbb-eyebrow {
        font-size: 8.5px;

        letter-spacing: .13em;
    }


    .lbb-section-head {
        margin-bottom: 14px;
    }


    .lbb-section-head h2 {
        margin-top: 8px;

        font-size: 30px;
        line-height: 1.02;

        letter-spacing: -.035em;
    }


    .lbb-section-head > p:last-child {
        margin-top: 10px;

        font-size: 12.5px;
        line-height: 1.5;
    }



    /* -----------------------------------------------------
       HERO
    ----------------------------------------------------- */

    .lbb-hero {
        padding:
            18px 0
            22px;
    }


    .lbb-hero-grid {
        grid-template-columns: 1fr;

        grid-template-areas:
            "copy"
            "scan"
            "actions"
            "trust";

        row-gap: 11px;
    }


    .lbb-hero-copy {
        margin: 0;
    }


    .lbb-hero h1 {
        margin-top: 10px;

        font-size: 39px;
        line-height: .97;

        letter-spacing: -.048em;
    }


    .lbb-hero h1 span {
        margin-top: 5px;

        font-size: .72em;
    }


    .lbb-hero-lead {
        max-width: none;

        margin-top: 11px;

        font-size: 12px;
        line-height: 1.44;
    }



    /* -----------------------------------------------------
       SCANNER
    ----------------------------------------------------- */

    .lbb-scan {
        width: 100%;

        margin: 0;

        padding:
            10px 10px 9px;

        border-radius: 17px;
    }


    .lbb-scan-head {
        gap: 8px;

        padding-bottom: 6px;

        font-size: 7.8px;

        letter-spacing: .055em;
    }


    .lbb-spine-stage {
        min-height: 0;
    }


    .lbb-spine-svg {
        width: 100%;
        height: 205px;

        cursor: default;

        touch-action: pan-y;
    }


    .lbb-spine-hit-area {
        fill: none;

        stroke:
            rgba(0, 0, 0, .001);

        stroke-width: 54px;

        pointer-events: stroke;

        cursor: ns-resize;

        touch-action: none;
    }


    .lbb-spine-marker {
        touch-action: none;
    }


    .lbb-marker-halo {
        r: 20px;
    }


    .lbb-marker-circle {
        r: 11px;
    }



    /* Region labels */

    .lbb-region-label {
        fill: #52636d;

        font-size: 22.5px;
        font-weight: 700;

        letter-spacing: 0;

        transform:
            translateX(-80px);

        transform-box: fill-box;
    }



    /* -----------------------------------------------------
       MOBILE SLIDER
    ----------------------------------------------------- */

    .lbb-mobile-spine-slider {
        position: absolute;

        top: 4px;
        right: 8px;

        z-index: 5;

        display: flex;
        flex-direction: column;

        align-items: center;
        justify-content: space-between;

        width: 30px;
        height: 197px;

        pointer-events: none;
    }


    .lbb-slider-top,
    .lbb-slider-bottom {
        color: var(--lbb-green);

        font-family: var(--lbb-mono);

        font-size: 8px;
        font-weight: 700;
        line-height: 1;
    }


    .lbb-slider-control {
        position: relative;

        flex: 1;

        width: 30px;

        margin:
            5px 0;

        pointer-events: auto;
    }


    .lbb-slider-control input {
        position: absolute;

        top: 50%;
        left: 50%;

        width: 168px;
        height: 30px;

        margin: 0;

        transform:
            translate(-50%, -50%)
            rotate(90deg);

        transform-origin: center;

        appearance: none;
        -webkit-appearance: none;

        background: transparent;

        cursor: ns-resize;

        touch-action: none;
    }


    .lbb-slider-control
    input::-webkit-slider-runnable-track {
        width: 100%;
        height: 4px;

        border-radius: 999px;

        background:
            rgba(37, 132, 72, .25);
    }


    .lbb-slider-control
    input::-webkit-slider-thumb {
        width: 20px;
        height: 20px;

        margin-top: -8px;

        border:
            2px solid
            var(--lbb-green);

        border-radius: 50%;

        background: #fff;

        box-shadow:
            0 0 0 4px
            rgba(37, 132, 72, .10);

        appearance: none;
        -webkit-appearance: none;
    }


    .lbb-slider-control
    input::-moz-range-track {
        height: 4px;

        border: 0;
        border-radius: 999px;

        background:
            rgba(37, 132, 72, .25);
    }


    .lbb-slider-control
    input::-moz-range-thumb {
        width: 20px;
        height: 20px;

        border:
            2px solid
            var(--lbb-green);

        border-radius: 50%;

        background: #fff;

        box-shadow:
            0 0 0 4px
            rgba(37, 132, 72, .10);
    }



    /* -----------------------------------------------------
       SPINE INFO
    ----------------------------------------------------- */

    .lbb-spine-info {
        position: static !important;

        inset: auto !important;

        display: grid;

        grid-template-columns:
            96px minmax(0, 1fr);

        grid-template-rows:
            auto auto auto;

        column-gap: 9px;
        row-gap: 2px;

        width: 100%;

        margin-top: 6px;

        padding:
            8px 10px;

        transform: none !important;

        border-radius: 13px;
    }


    .lbb-spine-code {
        grid-column: 1;
        grid-row: 1;

        font-size: 9px;
    }


    .lbb-spine-region {
        grid-column: 1;
        grid-row: 2;

        margin:
            2px 0 0;

        font-size: 12.5px;
        line-height: 1.15;
    }


    .lbb-spine-description {
        grid-column: 2;
        grid-row:
            1 / span 2;

        align-self: center;

        display: -webkit-box;

        overflow: hidden;

        min-height: 0;

        margin: 0;

        font-size: 10.5px;
        line-height: 1.38;

        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }


    .lbb-spine-module {
        grid-column:
            1 / -1;

        grid-row: 3;

        margin-top: 3px;

        font-size: 8.5px;
        line-height: 1.35;
    }



    /* Scanner footer */

    .lbb-scan-foot {
        display: block;

        padding-top: 6px;
    }


    .lbb-drag-hint {
        font-size: 0;
    }


    .lbb-drag-hint::before {
        content:
            "Pomerite slajder da istražite kičmu ↑ ↓";

        display: block;

        color: var(--lbb-green);

        font-size: 8.5px;
        font-weight: 700;
        line-height: 1.3;
    }


    .lbb-scan-disclaimer {
        display: none;
    }



    /* -----------------------------------------------------
       HERO CTA
    ----------------------------------------------------- */

    .lbb-hero-actions {
        display: grid;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 7px;

        width: 100%;

        margin: 0;
    }


    .lbb-hero-actions .lbb-btn {
        width: 100%;

        min-height: 40px;

        padding:
            0 9px;

        font-size: 11px;
    }



    /* -----------------------------------------------------
       HERO TRUST
    ----------------------------------------------------- */

    .lbb-hero-trust {
        display: grid;

        grid-template-columns:
            repeat(3, minmax(0, 1fr));

        gap: 0;

        width: 100%;
        max-width: none;

        margin-top: 0;

        padding-top: 10px;
    }


    .lbb-hero-trust div,
    .lbb-hero-trust div:first-child,
    .lbb-hero-trust div:last-child {
        display: flex;

        align-items: center;
        justify-content: center;

        min-height: 34px;

        padding:
            0 8px;

        border-right:
            1px solid var(--lbb-line);

        text-align: center;
    }


    .lbb-hero-trust div:first-child {
        padding-left: 0;
    }


    .lbb-hero-trust div:last-child {
        padding-right: 0;

        border-right: 0;
    }


    .lbb-hero-trust strong {
        font-size: 10.5px;
        font-weight: 700;
        line-height: 1.2;
    }


    .lbb-hero-trust span {
        display: none;
    }



    /* -----------------------------------------------------
       SECTION RHYTHM
    ----------------------------------------------------- */

    .lbb-recognition,
    .lbb-reality,
    .lbb-modules,
    .lbb-format,
    .lbb-clinic {
        padding:
            30px 0;
    }


    .lbb-testimonials {
        padding:
            40px 0;
    }


    .lbb-pricing {
        padding:
            36px 0;
    }


    .lbb-faq {
        padding:
            36px 0
            42px;
    }



    /* -----------------------------------------------------
       RECOGNITION
    ----------------------------------------------------- */

    .lbb-recognition-card {
        border-radius: 17px;
    }


    .lbb-recognition-item {
        grid-template-columns:
            20px minmax(0, 1fr);

        gap: 9px;

        padding:
            10px 12px;
    }


    .lbb-check {
        width: 18px;
        height: 18px;

        font-size: 8px;
    }


    .lbb-recognition-item p {
        font-size: 11.5px;
        line-height: 1.42;
    }


    .lbb-recognition-foot {
        grid-template-columns: 1fr;

        gap: 5px;

        padding:
            11px 12px;
    }


    .lbb-recognition-foot strong {
        font-size: 10.5px;
        line-height: 1.35;
    }


    .lbb-recognition-foot span {
        font-size: 9.5px;
        line-height: 1.4;
    }



    /* -----------------------------------------------------
       REALITY
    ----------------------------------------------------- */

    .lbb-reality-grid {
        grid-template-columns: 1fr;

        gap: 9px;
    }


    .lbb-reality-card {
        padding:
            13px 14px;

        border-radius: 15px;
    }


    .lbb-reality-label {
        margin-bottom: 8px;

        font-size: 7.5px;
    }


    .lbb-reality-card li {
        grid-template-columns:
            17px minmax(0, 1fr);

        gap: 7px;

        padding:
            7px 0;
    }


    .lbb-reality-card li p {
        font-size: 11px;
        line-height: 1.4;
    }



    /* -----------------------------------------------------
       MODULES
    ----------------------------------------------------- */

    .lbb-modules-grid {
        grid-template-columns: 1fr;

        gap: 9px;
    }


    .lbb-module-card {
        padding:
            14px 15px 13px;

        border-radius: 15px;
    }


    .lbb-module-number {
        top: 7px;
        right: 10px;

        font-size: 47px;

        opacity: .08;
    }


    .lbb-module-icon {
        width: 25px;
        height: 25px;

        margin-bottom: 6px;
    }


    .lbb-module-icon svg {
        width: 24px;
        height: 24px;
    }


    .lbb-module-label {
        font-size: 6.5px;
    }


    .lbb-module-card h3 {
        margin:
            7px 0 5px;

        font-size: 17px;
        line-height: 1.15;
    }


    .lbb-module-copy {
        font-size: 11.7px;
        line-height: 1.22;
    }


    .lbb-module-contains {
        margin-top: 6px;

        padding-top: 6px;

        font-size: 9.6px;
        line-height: 11px;
    }


    .lbb-module-contains > span {
        margin-bottom: 4px;

        font-size: 6.8px;
        line-height: 1.2;
    }


    .lbb-module-contains div {
        display: inline;

        margin: 0;

        font-size: inherit;
        line-height: inherit;
    }


    .lbb-module-contains
    div + div::before {
        content: "  ·  ";

        color: #a6b0ac;
    }


    .lbb-module-flow {
        position: relative;

        top: -6px;

        justify-content: center;

        margin-top: 5px;
        margin-bottom: -6px;

        padding:
            8px 10px;
    }


    .lbb-module-flow > span {
        min-width: 22px;
    }


    .lbb-module-flow > i {
        min-width: 19px;

        font-size: 11px;

        transform:
            translateY(-1px);
    }


    .lbb-module-flow > p {
        display: none;
    }



    /* -----------------------------------------------------
       FORMAT
    ----------------------------------------------------- */

    .lbb-format-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 8px;
    }


    .lbb-format-item {
        padding:
            13px 11px;

        border-radius: 14px;
    }


    .lbb-format-icon {
        width: 24px;
        height: 24px;

        margin-bottom: 8px;
    }


    .lbb-format-item h3 {
        margin-bottom: 4px;

        font-size: 12px;
        line-height: 1.25;
    }


    .lbb-format-item p {
        font-size: 10.5px;
        line-height: 1.42;
    }



    /* -----------------------------------------------------
       CLINIC
    ----------------------------------------------------- */

    .lbb-clinic-grid {
        grid-template-columns: 1fr;

        gap: 12px;
    }


    .lbb-clinic-visual {
        min-height: 0;
        height: 240px;

        border-radius: 15px;
    }


    .lbb-clinic-visual img {
        object-fit: cover;

        object-position:
            center 17%;
    }


    .lbb-clinic-stamp {
        right: 9px;
        bottom: 9px;

        width: 62px;
        height: 62px;
    }


    .lbb-clinic-stamp span {
        font-size: 5px;
    }


    .lbb-clinic-stamp strong {
        font-size: 7.5px;
    }


    .lbb-clinic-content
    .lbb-clinic-lead {
        font-size: 12.5px;
        line-height: 1.48;
    }


    .lbb-clinic-content > p {
        margin-bottom: 8px;

        font-size: 11.25px;
        line-height: 1.5;
    }


    .lbb-clinic-facts {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap:
            8px 10px;

        margin-top: 9px;

        padding-top: 9px;
    }


    .lbb-clinic-facts div {
        padding-left: 8px;
    }


    .lbb-clinic-facts span {
        font-size: 8px;
        line-height: 1.15;

        letter-spacing: .11em;
    }


    .lbb-clinic-facts strong {
        margin-top: 2px;

        font-size: 11px;
        line-height: 1.25;
    }



    /* -----------------------------------------------------
       TESTIMONIALS
    ----------------------------------------------------- */

    .lbb-testimonials-head {
        margin-bottom: 26px;
    }


    .lbb-testimonials-head h2 {
        font-size: 33px;
    }


    .lbb-testimonials-grid {
        grid-template-columns: 1fr;

        gap: 12px;
    }


    .lbb-testimonial-card {
        min-height: 0;

        padding:
            18px 18px 16px;

        border-radius: 18px;
    }


    .lbb-testimonial-stars {
        margin-bottom: 17px;
    }


    .lbb-testimonial-card blockquote {
        font-size: 16px;
    }


    .lbb-testimonial-card > p {
        padding-top: 18px;

        font-size: 13px;
        line-height: 1.55;
    }


    .lbb-testimonials-footer {
        flex-direction: column;

        align-items: flex-start;

        gap: 10px;

        margin-top: 18px;
    }



    /* -----------------------------------------------------
       BUNDLE / PRICING
    ----------------------------------------------------- */

    .lbb-bundle {
        height: 250px;

        margin-top: 14px;

        border-radius: 18px;
    }


    .lbb-bundle-cluster {
        bottom: 10px;

        transform:
            translateX(-50%)
            scale(.64);

        transform-origin:
            center bottom;
    }


    .lbb-price-card {
        grid-template-columns: 1fr;

        gap: 16px;

        margin-top: 12px;

        padding:
            18px;

        border-radius: 18px;
    }


    .lbb-price-content h3 {
        margin:
            10px 0 12px;

        font-size: 18px;
        line-height: 1.15;
    }


    .lbb-price-content li {
        padding:
            4px 0;

        font-size: 12px;
        line-height: 1.45;
    }


    .lbb-price-box {
        padding:
            18px 16px;

        border-radius: 16px;
    }


    .lbb-price-value {
        margin-top: 6px;
    }


    .lbb-price-value strong {
        font-size: 34px;
    }


    .lbb-price-button {
        min-height: 48px;

        margin-top: 14px;

        font-size: 14px;
    }



    /* -----------------------------------------------------
       FAQ
    ----------------------------------------------------- */

    .lbb-faq details {
        padding:
            18px 0;
    }


    .lbb-faq summary {
        gap: 16px;

        font-size: 14px;
    }


    .lbb-faq details > p {
        font-size: 12.5px;
    }


    .lbb-disclaimer {
        margin-top: 27px;

        padding:
            18px 17px;
    }

}



/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .lbb-btn,
    .lbb-module-card,
    .lbb-scan,
    .lbb-spine-info,
    .lbb-spine-module span {
        transition: none;
    }


    .lbb-btn:hover,
    .lbb-module-card:hover,
    .lbb-spine-module:hover span {
        transform: none;
    }


    .lbb-spine-marker.is-pulsing
    .lbb-marker-halo {
        animation: none;
    }

}

/* =========================================================
   KIČMA — READABILITY BOOST
   TABLET / LAPTOP / DESKTOP
   MORA BITI NA SAMOM KRAJU FAJLA
========================================================= */


/* =========================================================
   TABLET
   621px — 1199px
========================================================= */

@media (min-width: 621px) and (max-width: 1199px) {

    /* ANATOMIJA: KIČMA / BOČNI PRIKAZ */
    .lbb-scan-head {
        font-size: 10.5px;
        line-height: 1.3;
    }


    /* C1-C7 / T1-T12 / L1-L5 / S1-S5 */
    .lbb-region-label {
        font-size: 12px;
        font-weight: 700;
        letter-spacing: .025em;
    }


    /* Info kartica desno */
    .lbb-spine-info {
        width: 180px;
        padding: 14px 14px;
    }


    .lbb-spine-code {
        font-size: 11.5px;
        line-height: 1.2;
    }


    .lbb-spine-region {
        margin-top: 6px;

        font-size: 15px;
        line-height: 1.25;
    }


    .lbb-spine-description {
        min-height: 0;

        margin-top: 7px;

        font-size: 11.5px;
        line-height: 1.45;
    }


    .lbb-spine-module {
        margin-top: 8px;

        font-size: 10px;
        line-height: 1.4;
    }


    /* Donja instrukcija + disclaimer */
    .lbb-drag-hint,
    .lbb-scan-disclaimer {
        font-size: 9.5px;
        line-height: 1.4;
    }
}



/* =========================================================
   LAPTOP
   1200px — 1599px
========================================================= */

@media (min-width: 1200px) and (max-width: 1599px) {

    .lbb-scan-head {
        font-size: 11px;
        line-height: 1.3;
    }


    .lbb-region-label {
        font-size: 12px;
        font-weight: 700;
        letter-spacing: .02em;
    }


    .lbb-spine-info {
        width: 195px;
        padding: 16px 15px;
    }


    .lbb-spine-code {
        font-size: 12.5px;
        line-height: 1.2;
    }


    .lbb-spine-region {
        margin-top: 7px;

        font-size: 17px;
        line-height: 1.22;
    }


    .lbb-spine-description {
        min-height: 0;

        margin-top: 8px;

        font-size: 12.5px;
        line-height: 1.48;
    }


    .lbb-spine-module {
        margin-top: 9px;

        font-size: 11px;
        line-height: 1.4;
    }


    .lbb-drag-hint,
    .lbb-scan-disclaimer {
        font-size: 10.5px;
        line-height: 1.4;
    }
}



/* =========================================================
   LARGE DESKTOP
   1600px+
========================================================= */

@media (min-width: 1600px) {

    .lbb-scan-head {
        font-size: 12px;
        line-height: 1.3;
    }


    .lbb-region-label {
        font-size: 13px;
        font-weight: 700;
        letter-spacing: .015em;
    }


    .lbb-spine-info {
        width: 210px;
        padding: 18px 17px;
    }


    .lbb-spine-code {
        font-size: 13px;
        line-height: 1.2;
    }


    .lbb-spine-region {
        margin-top: 7px;

        font-size: 18px;
        line-height: 1.22;
    }


    .lbb-spine-description {
        min-height: 0;

        margin-top: 9px;

        font-size: 13.5px;
        line-height: 1.5;
    }


    .lbb-spine-module {
        margin-top: 10px;

        font-size: 11.5px;
        line-height: 1.4;
    }


    .lbb-drag-hint,
    .lbb-scan-disclaimer {
        font-size: 11px;
        line-height: 1.4;
    }
}

/* =========================================================
   SPINE — DESKTOP FINAL POSITION / TYPOGRAPHY
========================================================= */

@media (min-width: 1200px) {

    /* Oznake uz kičmu — ostaju čitljive,
       samo ih odvajamo od pršljenova */
    .lbb-region-label {
        transform: translateX(-14px);
        transform-box: fill-box;

        font-size: 14px;
        font-weight: 700;
        letter-spacing: .02em;
    }


    /* Kartica ide vizuelno više udesno
       jer je uža nego sada */
    .lbb-spine-info {
        width: 184px;

        padding:
            16px 15px;
    }


    .lbb-spine-code {
        font-size: 11.5px;
    }


    .lbb-spine-region {
        margin-top: 6px;

        font-size: 16px;
        line-height: 1.2;
    }


    .lbb-spine-description {
        margin-top: 8px;

        font-size: 12px;
        line-height: 1.45;
    }


    .lbb-spine-module {
        margin-top: 8px;

        font-size: 10.5px;
        line-height: 1.35;
    }

}

/* =========================================================
   LEĐA BEZ BOLA — FINAL MOBILE READABILITY PASS
   Samo sadržaj IZNAD "Ko stoji iza programa"
   Kičma se NE dira.
========================================================= */

@media (max-width: 620px) {

    /* =====================================================
       HERO COPY
    ====================================================== */

    .lbb-hero .lbb-eyebrow {
        font-size: 10px;
        line-height: 1.35;
    }

    .lbb-hero-lead {
        font-size: 15px;
        line-height: 1.58;
    }

    .lbb-hero-actions .lbb-btn {
        min-height: 44px;

        font-size: 13px;
        line-height: 1.25;
    }

    .lbb-hero-trust strong {
        font-size: 12px;
        line-height: 1.25;
    }


    /* =====================================================
       PREPOZNAJETE LI OVO?
    ====================================================== */

    .lbb-recognition .lbb-eyebrow {
        font-size: 9.5px;
    }

    .lbb-recognition
    .lbb-section-head > p:last-child {
        font-size: 14.5px;
        line-height: 1.58;
    }

    .lbb-recognition-item {
        grid-template-columns:
            21px minmax(0, 1fr);

        gap: 10px;

        padding:
            13px 13px;
    }

    .lbb-check {
        width: 19px;
        height: 19px;

        font-size: 9px;
    }

    .lbb-recognition-item p {
        font-size: 14px;
        line-height: 1.5;
    }

    .lbb-recognition-foot {
        gap: 7px;

        padding:
            14px 13px;
    }

    .lbb-recognition-foot strong {
        font-size: 13px;
        line-height: 1.42;
    }

    .lbb-recognition-foot span {
        font-size: 12.5px;
        line-height: 1.5;
    }


    /* =====================================================
       BEZ ILUZIJA
    ====================================================== */

    .lbb-reality .lbb-eyebrow {
        font-size: 9.5px;
    }

    .lbb-reality
    .lbb-section-head > p:last-child {
        font-size: 14.5px;
        line-height: 1.58;
    }

    .lbb-reality-card {
        padding:
            17px 15px;
    }

    .lbb-reality-label {
        margin-bottom: 11px;

        font-size: 9.5px;
        line-height: 1.35;
    }

    .lbb-reality-card li {
        grid-template-columns:
            19px minmax(0, 1fr);

        gap: 9px;

        padding:
            10px 0;
    }

    .lbb-reality-card li p {
        font-size: 14px;
        line-height: 1.5;
    }


    /* =====================================================
       MODULI
    ====================================================== */

    .lbb-modules .lbb-eyebrow {
        font-size: 9.5px;
    }

    .lbb-modules
    .lbb-section-head > p:last-child {
        font-size: 14.5px;
        line-height: 1.58;
    }

    .lbb-modules-grid {
        gap: 12px;
    }

    .lbb-module-card {
        padding:
            17px 16px 16px;
    }

    .lbb-module-label {
        font-size: 8px;
        line-height: 1.3;
    }

    .lbb-module-card h3 {
        margin:
            9px 0 7px;

        font-size: 19px;
        line-height: 1.2;
    }

    .lbb-module-copy {
        font-size: 14px;
        line-height: 1.5;
    }

    .lbb-module-contains {
        margin-top: 10px;

        padding-top: 9px;

        font-size: 12.5px;
        line-height: 1.45;
    }

    .lbb-module-contains > span {
        margin-bottom: 6px;

        font-size: 8.5px;
        line-height: 1.3;
    }


    /* =====================================================
       KAKO FUNKCIONIŠE
    ====================================================== */

    .lbb-format .lbb-eyebrow {
        font-size: 9.5px;
    }

    .lbb-format
    .lbb-section-head > p:last-child {
        font-size: 14.5px;
        line-height: 1.58;
    }

    .lbb-format-item {
        display: flex;
        flex-direction: column;

        justify-content: center;

        min-height: 108px;

        padding:
            15px 13px;
    }

    .lbb-format-icon {
        width: 27px;
        height: 27px;

        margin-bottom: 10px;
    }

    .lbb-format-item h3 {
        margin: 0;

        font-size: 14.5px;
        line-height: 1.3;
    }

    /* Na telefonu naslov već prenosi celu poruku.
       Oslobađamo prostor umesto da tekst ostane mikroskopski. */

    .lbb-format-item p {
        display: none;
    }

}

/* =========================================================
   LEĐA BEZ BOLA — CLINIC MOBILE READABILITY
========================================================= */

@media (max-width: 620px) {

    .lbb-clinic .lbb-eyebrow {
        font-size: 9.5px;
        line-height: 1.35;
    }

    .lbb-clinic-content
    .lbb-clinic-lead {
        font-size: 14.5px;
        line-height: 1.58;
    }

    .lbb-clinic-facts span {
        font-size: 9px;
        line-height: 1.25;
    }

    .lbb-clinic-facts strong {
        font-size: 12.5px;
        line-height: 1.3;
    }

}

/* =========================================================
   PROGRAM CTA — TEMP CONTACT FLOW
========================================================= */

.lbb-price-button-contact {
    display: flex;

    align-items: center;
    justify-content: center;

    text-decoration: none;

    cursor: pointer;
    opacity: 1;
}

.lbb-price-button-contact:hover {
    background: #2fa934;
}

/* =========================================================
   LEĐA BEZ BOLA — PRICING MOBILE READABILITY
========================================================= */

@media (max-width: 620px) {

    /* Section intro */

    .lbb-pricing .lbb-eyebrow {
        font-size: 9.5px;
        line-height: 1.35;
    }

    .lbb-pricing
    .lbb-section-head > p:last-child {
        font-size: 14.5px;
        line-height: 1.58;
    }


    /* Dark program card */

    .lbb-price-eyebrow {
        font-size: 10px;
        line-height: 1.35;
    }

    .lbb-price-content h3 {
        font-size: 21px;
        line-height: 1.18;
    }

    .lbb-price-content li {
        gap: 10px;

        padding: 6px 0;

        font-size: 14px;
        line-height: 1.48;
    }


    /* Price / contact box */

    .lbb-price-label {
        font-size: 10.5px;
        line-height: 1.35;
    }

    .lbb-price-button {
        min-height: 48px;

        font-size: 14px;
    }

    .lbb-price-box p {
        font-size: 12.5px;
        line-height: 1.55;
    }

}