/*
Theme Name: DR Kwon Landing
Theme URI: https://example.com/
Author: Codex
Description: Custom WordPress theme for the DR Kwon landing page.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: dr-kwon-landing
*/
/* Extracted from the finalized Dr Kwon landing page */


:root {
    --porcelain: #fbf6ee;
    --mist: #d9ddd4;
    --eucalyptus: #6b8278;
    --deep: #52685f;
    --ink: #1f1b16;
    --stone: #a89e8f;
    --line: rgba(31, 27, 22, .12);
    --white: #fffdf8;
    --shadow: 0 30px 90px rgba(31, 27, 22, .12);
    --radius: 28px;
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth
}

body {
    margin: 0;
    background: var(--porcelain);
    color: var(--ink);
    font-family: Inter, Arial, sans-serif;
    line-height: 1.45;
    overflow-x: hidden
}

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

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

button,
input,
select {
    font: inherit
}

.noise {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 99;
    opacity: .035;
    background-image: url('data:image/svg+xml,%3Csvg viewBox="0 0 256 256" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="n"%3E%3CfeTurbulence type="fractalNoise" baseFrequency=".9" numOctaves="4" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="100%25" height="100%25" filter="url(%23n)"/%3E%3C/svg%3E')
}

.container {
    width: min(1180px, calc(100% - 40px));
    margin: auto
}

.eyebrow {
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--deep);
    font-size: 12px;
    font-weight: 600
}

.serif {
    font-family: 'Cormorant Garamond', serif
}

.btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 1px solid var(--deep);
    background: var(--deep);
    color: #fff;
    border-radius: 999px;
    padding: 14px 22px;
    font-weight: 600;
    transition: .35s ease;
    cursor: pointer
}

.btn:hover {
    background: var(--ink);
    border-color: var(--ink);
    transform: translateY(-2px)
}

.btn.ghost {
    background: transparent;
    color: var(--ink);
    border-color: var(--line)
}

.btn.ghost:hover {
    background: var(--ink);
    color: #fff
}

.section {
    padding: 110px 0
}

.grid {
    display: grid;
    gap: 24px
}

.reveal {
    opacity: 0;
    transform: translateY(26px);
    transition: 1s cubic-bezier(.2, .8, .2, 1)
}

.reveal.show {
    opacity: 1;
    transform: none
}

.header {
    position: fixed;
    top: 16px;
    left: 50%;
    transform: translateX(-50%);
    width: min(1180px, calc(100% - 32px));
    z-index: 50;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    background: rgba(251, 246, 238, .78);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(31, 27, 22, .08);
    border-radius: 999px
}

.brand {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    letter-spacing: .15em
}

.brand img {
    width: 42px;
    height: 42px;
    object-fit: contain;
    border-radius: 50%
}

.nav {
    display: flex;
    gap: 26px;
    font-size: 13px;
    color: rgba(31, 27, 22, .72)
}

.nav a:hover {
    color: var(--deep)
}

.hero {
    min-height: 100vh;
    display: grid;
    align-items: center;
    padding: 110px 0 60px;
    position: relative;
    overflow: hidden
}

.hero:before {
    content: "";
    position: absolute;
    width: 740px;
    height: 740px;
    border-radius: 50%;
    background: radial-gradient(circle, var(--mist), transparent 66%);
    right: -200px;
    top: 80px;
    filter: blur(10px);
    opacity: .85
}

.hero-grid {
    display: grid;
    grid-template-columns: 1.02fr .98fr;
    gap: 50px;
    align-items: center;
    position: relative;
    z-index: 1
}

.hero h1 {
    font-size: clamp(68px, 9vw, 138px);
    line-height: .83;
    margin: 22px 0;
    font-weight: 500;
    letter-spacing: -.045em
}

.hero h1 em {
    font-style: italic;
    color: var(--deep)
}

.hero p {
    font-size: 18px;
    color: rgba(31, 27, 22, .68);
    max-width: 570px
}

.hero-ctas {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 34px
}

.hero-note {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 52px;
    max-width: 620px
}

.note {
    border-top: 1px solid var(--line);
    padding-top: 16px
}

.note strong {
    display: block;
    font-size: 22px
}

.note span {
    font-size: 12px;
    color: var(--stone)
}

.device-stage {
    position: relative;
    min-height: 610px
}

.halo {
    position: absolute;
    inset: 55px 25px 35px;
    border: 1px solid rgba(107, 130, 120, .22);
    border-radius: 44% 56% 54% 46%;
    animation: spin 18s linear infinite
}

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

.device-card {
    position: absolute;
    background: rgba(255, 250, 245, .74);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(31, 27, 22, .08);
    border-radius: 34px;
    box-shadow: var(--shadow);
    padding: 18px
}

.device-card img {
    border-radius: 24px;
    height: 220px;
    width: 100%;
    object-fit: cover
}

.device-card h3 {
    margin: 12px 0 4px;
    font-size: 18px
}

.device-card small {
    color: var(--stone)
}

.dc1 {
    width: 290px;
    right: 18px;
    top: 20px;
    animation: float 5s ease-in-out infinite
}

.dc2 {
    width: 270px;
    left: 20px;
    top: 180px;
    animation: float 6s ease-in-out infinite reverse
}

.dc3 {
    width: 310px;
    right: 86px;
    bottom: 10px;
    animation: float 7s ease-in-out infinite
}

@keyframes float {
    50% {
        transform: translateY(-18px)
    }
}

.promo {
    position: fixed;
    right: 24px;
    bottom: 24px;
    width: min(380px, calc(100% - 48px));
    z-index: 60;
    background: rgba(31, 27, 22, .9);
    color: #fff;
    border-radius: 28px;
    padding: 24px;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
    display: none
}

.promo.active {
    display: block;
    animation: pop .55s ease
}

@keyframes pop {
    from {
        opacity: 0;
        transform: translateY(20px) scale(.96)
    }
}

.promo .close {
    position: absolute;
    right: 16px;
    top: 12px;
    background: transparent;
    color: #fff;
    border: 0;
    font-size: 22px;
    cursor: pointer
}

.promo h3 {
    font-size: 40px;
    line-height: .95;
    margin: 10px 0 12px;
    font-weight: 500
}

.promo p {
    color: rgba(255, 255, 255, .72)
}

.promo .badge {
    display: inline-block;
    background: var(--eucalyptus);
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 12px;
    letter-spacing: .14em;
    text-transform: uppercase
}

.about {
    background: var(--ink);
    color: #fff;
    position: relative;
    overflow: hidden
}

.about:before {
    content: "DK";
    position: absolute;
    right: -35px;
    top: -120px;
    font-family: 'Cormorant Garamond';
    font-size: 420px;
    color: rgba(255, 255, 255, .035)
}

.about-grid {
    grid-template-columns: .9fr 1.1fr;
    align-items: end
}

.about h2 {
    font-size: clamp(54px, 7vw, 104px);
    line-height: .9;
    margin: 0;
    font-weight: 500
}

.about p {
    font-size: 22px;
    color: rgba(255, 255, 255, .68);
    max-width: 640px
}

.about .pill {
    display: inline-flex;
    border: 1px solid rgba(255, 255, 255, .16);
    padding: 12px 16px;
    border-radius: 999px;
    margin: 8px 6px 0 0;
    color: rgba(255, 255, 255, .76)
}

.treatments .top {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: end;
    margin-bottom: 36px
}

.treatments h2,
.signature h2,
.results h2,
.process h2,
.contact h2 {
    font-size: clamp(48px, 6vw, 88px);
    line-height: .92;
    margin: 10px 0 0;
    font-weight: 500
}

.treatments .top p {
    max-width: 460px;
    color: rgba(31, 27, 22, .65)
}

.cards {
    grid-template-columns: repeat(3, 1fr)
}

.tcard {
    background: #fffdf8;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: 0 20px 70px rgba(31, 27, 22, .055);
    transition: .45s ease
}

.tcard:hover {
    transform: translateY(-10px);
    box-shadow: var(--shadow)
}

.tcard .image {
    height: 280px;
    background: var(--mist);
    overflow: hidden
}

.tcard .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .7s ease
}

.tcard:hover img {
    transform: scale(1.06)
}

.tcard .content {
    padding: 26px
}

.tcard h3 {
    font-size: 34px;
    line-height: 1;
    margin: 8px 0 8px;
    font-weight: 500
}

.tag {
    color: var(--deep);
    font-size: 12px;
    letter-spacing: .16em;
    text-transform: uppercase;
    font-weight: 700
}

.tcard ul {
    padding-left: 18px;
    color: rgba(31, 27, 22, .66)
}

.price {
    display: flex;
    align-items: end;
    gap: 12px;
    margin: 24px 0
}

.price s {
    color: var(--stone)
}

.price strong {
    font-size: 34px;
    font-family: 'Cormorant Garamond'
}

.signature {
    background: linear-gradient(135deg, var(--mist), #fffaf3)
}

.sig-card {
    border-radius: 46px;
    background: var(--deep);
    color: #fff;
    overflow: hidden;
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 560px;
    box-shadow: var(--shadow)
}

.sig-copy {
    padding: 54px;
    align-self: center
}

.sig-copy p {
    color: rgba(255, 255, 255, .72)
}

.sig-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin: 28px 0
}

.sig-list span {
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    padding: 12px 14px;
    color: rgba(255, 255, 255, .82)
}

.sig-visual {
    position: relative;
    background: var(--porcelain);
    display: grid;
    place-items: center
}

.sig-visual img {
    width: 88%;
    border-radius: 34px;
    box-shadow: 0 30px 80px rgba(31, 27, 22, .1)
}

.results-grid {
    grid-template-columns: 1fr 1fr;
    align-items: center
}

.ba {
    position: relative;
    border-radius: 40px;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow)
}

.ba img {
    width: 100%;
    height: 500px;
    object-fit: cover
}

.ba .label {
    position: absolute;
    left: 18px;
    top: 18px;
    background: rgba(255, 250, 245, .84);
    backdrop-filter: blur(16px);
    border-radius: 999px;
    padding: 10px 14px;
    font-size: 12px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--deep);
    font-weight: 700
}

.result-copy p {
    color: rgba(31, 27, 22, .68);
    font-size: 18px
}

.mini-grid {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 24px
}

.mini {
    border-top: 1px solid var(--line);
    padding: 20px 0
}

.mini strong {
    font-size: 22px
}

.mini span {
    display: block;
    color: var(--stone);
    font-size: 13px;
    margin-top: 6px
}

.why {
    background: #fffdf8
}

.why-grid {
    grid-template-columns: repeat(4, 1fr)
}

.why-card {
    border-left: 1px solid var(--line);
    padding: 24px
}

.num {
    font-family: 'Cormorant Garamond';
    font-size: 56px;
    color: var(--stone)
}

.why-card h3 {
    margin: 0 0 10px;
    font-size: 22px
}

.why-card p {
    color: rgba(31, 27, 22, .62)
}

.process .steps {
    margin-top: 38px;
    border-top: 1px solid var(--line)
}

.step {
    display: grid;
    grid-template-columns: 100px 1fr 1fr;
    gap: 24px;
    padding: 28px 0;
    border-bottom: 1px solid var(--line);
    align-items: center
}

.step b {
    font-family: 'Cormorant Garamond';
    font-size: 42px;
    color: var(--stone)
}

.step h3 {
    font-size: 28px;
    margin: 0
}

.step p {
    color: rgba(31, 27, 22, .62);
    margin: 0
}

.contact {
    background: var(--ink);
    color: #fff
}

.contact-grid {
    grid-template-columns: .9fr 1.1fr;
    gap: 36px
}

.form {
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 36px;
    padding: 28px
}

.field {
    display: grid;
    gap: 8px;
    margin-bottom: 14px
}

.field label {
    font-size: 12px;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .55)
}

.field input,
.field select {
    width: 100%;
    padding: 16px 14px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .08);
    color: #fff;
    outline: none
}

.field select option {
    color: #111
}

.contact-info {
    margin-top: 30px;
    color: rgba(255, 255, 255, .66)
}

.footer {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    border-top: 1px solid rgba(255, 255, 255, .1);
    padding-top: 30px;
    margin-top: 60px;
    color: rgba(255, 255, 255, .48);
    font-size: 13px
}

.float-cta {
    position: fixed;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%);
    z-index: 55;
    background: rgba(255, 250, 245, .78);
    backdrop-filter: blur(18px);
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: 8px;
    display: flex;
    gap: 8px;
    box-shadow: var(--shadow)
}

.float-cta span {
    padding: 12px 16px;
    color: rgba(31, 27, 22, .7)
}

@media(max-width:900px) {
    .nav {
        display: none
    }

    .hero-grid,
    .about-grid,
    .sig-card,
    .results-grid,
    .contact-grid {
        grid-template-columns: 1fr
    }

    .device-stage {
        min-height: 720px
    }

    .cards,
    .why-grid {
        grid-template-columns: 1fr
    }

    .treatments .top {
        display: block
    }

    .step {
        grid-template-columns: 70px 1fr
    }

    .step p {
        grid-column: 2
    }

    .footer {
        display: block
    }

    .float-cta span {
        display: none
    }

    .hero-note {
        grid-template-columns: 1fr
    }
}

@media(max-width:560px) {
    .container {
        width: min(100% - 28px, 1180px)
    }

    .hero h1 {
        font-size: 62px
    }

    .section {
        padding: 76px 0
    }

    .dc1,
    .dc2,
    .dc3 {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
        width: 100%;
        margin: 14px 0
    }

    .device-stage {
        min-height: auto
    }

    .halo {
        display: none
    }

    .sig-copy {
        padding: 30px
    }

    .sig-list {
        grid-template-columns: 1fr
    }

    .ba img {
        height: 360px
    }
}

/* --- Hero redesign: machine-focused premium banner --- */
.hero-v2 {
    min-height: 100vh;
    padding: 120px 0 70px;
    display: grid;
    align-items: center;
    position: relative;
    overflow: hidden;
    background: radial-gradient(circle at 72% 50%, rgba(217, 221, 212, .92), rgba(251, 246, 238, .28) 34%, transparent 62%), linear-gradient(120deg, #fbf6ee 0%, #fffaf3 44%, #ebe3d9 100%)
}

.hero-v2:before {
    content: "";
    position: absolute;
    inset: auto -18% -36% 40%;
    height: 86vh;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 250, 245, .92), rgba(255, 250, 245, .42) 42%, transparent 68%);
    filter: blur(3px)
}

.hero-v2:after {
    content: "";
    position: absolute;
    right: 7%;
    top: 14%;
    width: 42vw;
    height: 42vw;
    border: 1.5px solid rgba(255, 255, 255, .72);
    border-radius: 50%;
    box-shadow: 0 0 44px rgba(255, 255, 255, .55), inset 0 0 42px rgba(255, 255, 255, .28)
}

.hero-v2-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(251, 246, 238, .98) 0%, rgba(251, 246, 238, .78) 36%, rgba(251, 246, 238, .18) 72%, rgba(251, 246, 238, .52) 100%);
    z-index: 0
}

.hero-v2-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    gap: 30px;
    align-items: center;
    min-height: calc(100vh - 190px)
}

.hero-v2-copy {
    padding-top: 18px
}

.hero-v2-copy .hero-line {
    display: flex;
    align-items: center;
    gap: 14px;
    color: var(--deep)
}

.hero-v2-copy .hero-line:before {
    content: "";
    width: 42px;
    height: 1px;
    background: var(--deep);
    display: inline-block
}

.hero-v2 h1 {
    font-size: clamp(56px, 6.6vw, 112px);
    line-height: .88;
    margin: 24px 0 22px;
    font-weight: 500;
    letter-spacing: -.055em
}

.hero-v2 h1 em {
    font-style: normal;
    color: var(--eucalyptus)
}

.hero-v2 p {
    font-size: 18px;
    color: rgba(31, 27, 22, .68);
    max-width: 520px
}

.hero-v2-visual {
    position: relative;
    min-height: 620px;
    display: grid;
    place-items: end center
}

.hero-v2-visual img {
    position: relative;
    z-index: 3;
    width: min(880px, 100%);
    max-height: 72vh;
    object-fit: contain;
    filter: drop-shadow(0 32px 48px rgba(31, 27, 22, .2))
}

.hero-glow {
    position: absolute;
    z-index: 1;
    width: 72%;
    height: 72%;
    right: 5%;
    top: 8%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .86), rgba(255, 255, 255, .3) 52%, transparent 72%);
    filter: blur(8px)
}

.device-label {
    position: absolute;
    z-index: 4;
    color: var(--ink);
    font-size: 12px;
    letter-spacing: .02em;
    line-height: 1.45
}

.device-label strong {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-size: 22px;
    font-weight: 600
}

.device-label span {
    color: rgba(31, 27, 22, .62)
}

.label-left {
    left: 2%;
    bottom: 29%
}

.label-center {
    left: 53%;
    top: 20%;
    transform: translateX(-50%);
    text-align: center
}

.label-right {
    right: 0;
    bottom: 28%;
    text-align: left
}

.scroll-cue {
    position: absolute;
    z-index: 5;
    left: 50%;
    bottom: 26px;
    transform: translateX(-50%);
    font-size: 11px;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: rgba(31, 27, 22, .52)
}

.scroll-cue:after {
    content: "";
    display: block;
    width: 1px;
    height: 34px;
    background: rgba(31, 27, 22, .22);
    margin: 10px auto 0
}

.hero-v2 .hero-note,
.hero-v2 .device-stage {
    display: none
}

@media(max-width:980px) {
    .hero-v2 {
        padding-top: 110px
    }

    .hero-v2-grid {
        grid-template-columns: 1fr;
        gap: 10px
    }

    .hero-v2-copy {
        text-align: center;
        margin: auto
    }

    .hero-v2-copy .hero-line {
        justify-content: center
    }

    .hero-v2 p {
        margin-left: auto;
        margin-right: auto
    }

    .hero-v2 .hero-ctas {
        justify-content: center
    }

    .hero-v2-visual {
        min-height: 500px
    }

    .device-label {
        display: none
    }

    .hero-v2:after {
        width: 76vw;
        height: 76vw;
        right: 12%;
        top: 44%
    }
}

@media(max-width:560px) {
    .hero-v2 {
        padding-top: 100px
    }

    .hero-v2 h1 {
        font-size: 54px
    }

    .hero-v2-visual {
        min-height: 350px
    }

    .scroll-cue {
        display: none
    }

    .hero-v2-visual img {
        max-height: 430px;
        width: 116%;
        max-width: none
    }
}


/* Hero update: product-focused opening section */
.hero-machines {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: radial-gradient(circle at 70% 42%, rgba(255, 250, 245, .96), rgba(251, 246, 238, .86) 42%, rgba(217, 221, 212, .44) 76%, var(--porcelain) 100%);
    padding: 120px 0 70px
}

.hero-machines-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(251, 246, 238, .95) 0%, rgba(251, 246, 238, .78) 35%, rgba(251, 246, 238, .28) 100%);
    z-index: 0
}

.hero-machines-bg:before {
    content: "";
    position: absolute;
    inset: auto -8% -24% auto;
    width: 70vw;
    height: 70vw;
    border-radius: 50%;
    border: 1px solid rgba(107, 130, 120, .22);
    box-shadow: 0 0 120px rgba(107, 130, 120, .18), inset 0 0 90px rgba(255, 255, 255, .55)
}

.hero-machines-bg:after {
    content: "";
    position: absolute;
    left: -12%;
    top: 14%;
    width: 36vw;
    height: 36vw;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(107, 130, 120, .12), transparent 66%);
    filter: blur(8px)
}

.hero-machines-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(340px, .78fr) minmax(560px, 1.25fr);
    gap: 30px;
    align-items: center
}

.hero-machines-copy {
    padding-top: 30px;
    max-width: 520px
}

.hero-machines-copy h1 {
    font-size: clamp(62px, 6.8vw, 124px);
    line-height: .86;
    margin: 28px 0 26px;
    font-weight: 500;
    letter-spacing: -.055em
}

.hero-machines-copy h1 em {
    font-style: normal;
    color: var(--deep)
}

.hero-machines-copy p {
    max-width: 430px;
    font-size: 17px;
    color: rgba(31, 27, 22, .72);
    margin: 0 0 32px
}

.hero-line {
    display: flex;
    align-items: center;
    gap: 14px
}

.hero-line:before {
    content: "";
    width: 44px;
    height: 1px;
    background: var(--deep);
    display: inline-block
}

.hero-machines-stage {
    position: relative;
    min-height: 680px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    isolation: isolate
}

.hero-machines-stage:after {
    content: "";
    position: absolute;
    left: 9%;
    right: 2%;
    bottom: 2%;
    height: 18%;
    border-radius: 50%;
    background: radial-gradient(ellipse, rgba(31, 27, 22, .18), transparent 67%);
    filter: blur(18px);
    z-index: -1
}

.hero-machines-img {
    position: relative;
    z-index: 2;
    width: min(920px, 58vw);
    max-width: none;
    filter: drop-shadow(0 40px 70px rgba(31, 27, 22, .18));
    animation: machineFloat 6s ease-in-out infinite
}

.halo {
    position: absolute;
    border-radius: 50%;
    z-index: 1;
    pointer-events: none
}

.halo-one {
    width: 62%;
    aspect-ratio: 1;
    right: 7%;
    top: 9%;
    border: 1px solid rgba(255, 255, 255, .8);
    box-shadow: 0 0 32px rgba(255, 255, 255, .72), inset 0 0 48px rgba(255, 255, 255, .45)
}

.halo-two {
    width: 38%;
    aspect-ratio: 1;
    left: 12%;
    bottom: 6%;
    border: 1px solid rgba(107, 130, 120, .18);
    box-shadow: 0 0 70px rgba(107, 130, 120, .12)
}

.device-label {
    position: absolute;
    z-index: 3;
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: 12px;
    letter-spacing: .03em;
    color: rgba(31, 27, 22, .75);
    text-align: center;
    text-shadow: 0 1px 16px rgba(251, 246, 238, .95)
}

.device-label strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 23px;
    letter-spacing: .08em;
    color: var(--ink);
    font-weight: 600
}

.device-label span {
    line-height: 1.35
}

.label-lavieen {
    left: 9%;
    bottom: 21%
}

.label-oligio {
    top: 21%;
    right: 36%
}

.label-tightan {
    right: 2%;
    bottom: 18%
}

.scroll-cue {
    position: absolute;
    z-index: 2;
    left: 50%;
    bottom: 24px;
    transform: translateX(-50%);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .24em;
    color: rgba(31, 27, 22, .55);
    display: flex;
    align-items: center;
    gap: 10px
}

.scroll-cue span {
    font-size: 18px;
    letter-spacing: 0;
    color: var(--deep)
}

@keyframes machineFloat {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-12px)
    }
}

@media(max-width:980px) {
    .hero-machines {
        padding: 108px 0 54px
    }

    .hero-machines-inner {
        grid-template-columns: 1fr
    }

    .hero-machines-copy {
        max-width: 720px
    }

    .hero-machines-copy h1 {
        font-size: clamp(58px, 14vw, 96px)
    }

    .hero-machines-stage {
        min-height: auto;
        margin-top: 10px
    }

    .hero-machines-img {
        width: 112%;
        max-width: 900px
    }

    .device-label {
        display: none
    }

    .scroll-cue {
        display: none
    }
}

@media(max-width:620px) {
    .hero-machines {
        min-height: auto;
        padding: 94px 0 38px
    }

    .hero-machines-copy h1 {
        font-size: 52px
    }

    .hero-machines-copy p {
        font-size: 15px
    }

    .hero-ctas {
        flex-direction: column;
        align-items: flex-start
    }

    .hero-machines-img {
        width: 128%;
        margin-left: -14%
    }
}


/* ===== DR KWON Hero V4: Clear Product-First Layout ===== */
.hero-clean {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: 118px 0 58px;
    background: linear-gradient(180deg, #fffaf3 0%, #fbf6ee 58%, #f3eadf 100%);
    isolation: isolate
}

.hero-clean:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 54%;
    width: min(760px, 72vw);
    height: min(760px, 72vw);
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .7) 38%, rgba(217, 221, 212, .34) 62%, transparent 72%);
    filter: blur(2px);
    z-index: -2
}

.hero-clean:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 55%;
    width: min(720px, 68vw);
    height: min(720px, 68vw);
    transform: translate(-50%, -50%);
    border: 1px solid rgba(107, 130, 120, .2);
    border-radius: 50%;
    box-shadow: 0 0 80px rgba(255, 255, 255, .66), inset 0 0 42px rgba(255, 255, 255, .42);
    z-index: -1
}

.hero-clean-bg {
    position: absolute;
    inset: 0;
    z-index: -3;
    background: radial-gradient(circle at 10% 22%, rgba(107, 130, 120, .09), transparent 30%), radial-gradient(circle at 86% 30%, rgba(168, 158, 143, .13), transparent 34%), linear-gradient(90deg, rgba(251, 246, 238, .96), rgba(251, 246, 238, .7), rgba(251, 246, 238, .96))
}

.hero-clean-inner {
    width: min(100% - 72px, 1380px);
    margin: auto;
    text-align: center;
    position: relative;
    z-index: 2
}

.hero-clean-kicker {
    display: inline-flex;
    gap: 14px;
    align-items: center;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .28em;
    color: var(--deep);
    margin-bottom: 18px
}

.hero-clean-kicker:before,
.hero-clean-kicker:after {
    content: "";
    width: 44px;
    height: 1px;
    background: rgba(107, 130, 120, .45)
}

.hero-clean h1 {
    font-size: clamp(54px, 7vw, 114px);
    line-height: .9;
    font-weight: 500;
    letter-spacing: -.055em;
    margin: 0 auto 18px;
    max-width: 920px
}

.hero-clean h1 span {
    display: block;
    color: var(--deep)
}

.hero-clean p {
    font-size: clamp(16px, 1.55vw, 22px);
    line-height: 1.55;
    color: rgba(31, 27, 22, .64);
    max-width: 560px;
    margin: 0 auto 26px
}

.hero-clean .hero-ctas {
    justify-content: center;
    margin: 0 0 22px
}

.hero-clean-visual {
    position: relative;
    display: grid;
    place-items: center;
    margin: 12px auto 0;
    min-height: min(56vh, 620px)
}

.hero-clean-visual:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 2%;
    width: min(780px, 72vw);
    height: 90px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: radial-gradient(ellipse, rgba(31, 27, 22, .19), rgba(31, 27, 22, .08) 34%, transparent 70%);
    filter: blur(18px);
    z-index: 0
}

.clean-hero-img {
    position: relative;
    z-index: 2;
    width: min(900px, 74vw);
    max-height: min(56vh, 620px);
    object-fit: contain;
    filter: drop-shadow(0 38px 58px rgba(31, 27, 22, .16));
    animation: machineFloat 6.5s ease-in-out infinite
}

.hero-clean-strip {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    width: min(100%, 1020px);
    margin: 12px auto 0;
    border: 1px solid rgba(168, 158, 143, .26);
    background: rgba(168, 158, 143, .2);
    border-radius: 30px;
    overflow: hidden;
    backdrop-filter: blur(16px)
}

.hero-clean-strip a {
    display: block;
    text-decoration: none;
    color: var(--ink);
    padding: 18px 20px;
    background: rgba(251, 246, 238, .78);
    text-align: left;
    transition: .28s ease
}

.hero-clean-strip a:hover {
    background: rgba(255, 255, 255, .68)
}

.hero-clean-strip strong {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 22px;
    font-weight: 600;
    letter-spacing: .02em
}

.hero-clean-strip span {
    display: block;
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: rgba(31, 27, 22, .52);
    margin-top: 3px
}

.hero-clean .scroll-cue {
    bottom: 18px
}

@media(max-width:900px) {
    .hero-clean {
        padding: 104px 0 46px
    }

    .hero-clean-inner {
        width: min(100% - 36px, 900px)
    }

    .hero-clean h1 {
        font-size: clamp(46px, 12vw, 78px)
    }

    .hero-clean-visual {
        min-height: 390px
    }

    .clean-hero-img {
        width: 112vw;
        max-width: none;
        max-height: 450px
    }

    .hero-clean-strip {
        grid-template-columns: repeat(2, 1fr);
        border-radius: 22px
    }

    .hero-clean .scroll-cue {
        display: none
    }
}

@media(max-width:560px) {
    .hero-clean {
        min-height: auto
    }

    .hero-clean-kicker:before,
    .hero-clean-kicker:after {
        width: 24px
    }

    .hero-clean p {
        font-size: 15px
    }

    .hero-clean-visual {
        min-height: 300px
    }

    .clean-hero-img {
        width: 128vw;
        margin-left: -6vw
    }

    .hero-clean-strip {
        grid-template-columns: 1fr;
        border-radius: 18px
    }

    .hero-clean-strip a {
        padding: 14px 18px
    }

    .hero-clean .hero-ctas {
        align-items: center
    }

    .hero-clean .btn {
        width: 100%;
        justify-content: center
    }
}



/* HERO REFINED V5 - clean premium layout */
.hero-clean {
    min-height: 100svh;
    padding: 112px 0 46px;
    align-items: flex-start;
    background:
        radial-gradient(circle at 50% 78%, rgba(255, 255, 255, .88), rgba(251, 246, 238, .16) 38%, transparent 62%),
        linear-gradient(180deg, #fffaf3 0%, #fbf6ee 56%, #f3eadf 100%);
}

.hero-clean:before,
.hero-clean:after {
    display: none !important
}

.hero-clean-bg {
    background:
        radial-gradient(circle at 10% 14%, rgba(107, 130, 120, .06), transparent 28%),
        radial-gradient(circle at 88% 20%, rgba(168, 158, 143, .1), transparent 30%),
        linear-gradient(90deg, rgba(251, 246, 238, .96), rgba(251, 246, 238, .74), rgba(251, 246, 238, .96));
}

.hero-clean-inner {
    width: min(100% - 64px, 1320px);
    padding-top: 10px;
}

.hero-clean-kicker {
    margin-bottom: 14px;
    color: rgba(82, 104, 95, .86)
}

.hero-clean h1 {
    font-size: clamp(52px, 5.5vw, 96px);
    line-height: .88;
    letter-spacing: -.045em;
    max-width: 760px;
    margin: 0 auto 18px;
}

.hero-clean h1 span {
    display: block;
    color: var(--deep)
}

.hero-clean p {
    max-width: 680px;
    font-size: clamp(16px, 1.24vw, 20px);
    line-height: 1.72;
    margin: 0 auto 22px;
    color: rgba(31, 27, 22, .62);
}

.hero-clean .hero-ctas {
    margin: 0 0 0;
    justify-content: center
}

.hero-clean .btn {
    padding: 13px 24px
}

.hero-clean-visual {
    min-height: min(50vh, 560px);
    margin: 4px auto 0;
    width: min(1040px, 92vw);
    overflow: visible;
}

.hero-clean-visual:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 54%;
    width: min(1120px, 88vw);
    height: min(560px, 44vw);
    transform: translate(-50%, -50%);
    border: 1px solid rgba(107, 130, 120, .13);
    border-radius: 50%;
    box-shadow: 0 0 92px rgba(255, 255, 255, .75), inset 0 0 56px rgba(255, 255, 255, .54);
    opacity: .72;
    z-index: 0;
}

.hero-clean-visual:after {
    bottom: 0;
    height: 82px;
    width: min(820px, 74vw);
    background: radial-gradient(ellipse, rgba(31, 27, 22, .17), rgba(31, 27, 22, .08) 36%, transparent 70%);
}

.clean-hero-img {
    width: min(920px, 86vw);
    max-height: min(50vh, 530px);
    object-fit: contain;
    position: relative;
    z-index: 2;
    margin-top: 0;
    filter: drop-shadow(0 38px 58px rgba(31, 27, 22, .17));
    animation: cleanFloat 6s ease-in-out infinite;
}

.hero-clean-strip {
    margin: 0 auto 0;
    width: min(1020px, 100%);
    grid-template-columns: repeat(4, 1fr);
    background: rgba(255, 250, 245, .62);
    border-color: rgba(31, 27, 22, .09);
    box-shadow: 0 20px 60px rgba(31, 27, 22, .06);
}

.hero-clean-strip a {
    padding: 18px 18px 16px
}

.hero-clean-strip strong {
    font-size: 14px
}

.hero-clean-strip span {
    font-size: 12px
}

.scroll-cue {
    bottom: 14px;
    color: rgba(31, 27, 22, .42)
}

@keyframes cleanFloat {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-10px)
    }
}

@media(max-width:980px) {
    .hero-clean {
        padding: 102px 0 38px;
        min-height: auto
    }

    .hero-clean-inner {
        width: min(100% - 34px, 900px)
    }

    .hero-clean h1 {
        font-size: clamp(48px, 11vw, 78px)
    }

    .hero-clean p {
        font-size: 15px;
        max-width: 560px
    }

    .hero-clean-visual {
        min-height: 390px;
        width: 100%;
        margin-top: 8px
    }

    .hero-clean-visual:before {
        width: 92vw;
        height: 44vw;
        top: 56%
    }

    .clean-hero-img {
        width: 108%;
        max-height: 410px
    }

    .hero-clean-strip {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media(max-width:560px) {
    .hero-clean {
        padding-top: 92px
    }

    .hero-clean-kicker {
        font-size: 9px;
        letter-spacing: .18em
    }

    .hero-clean-kicker:before,
    .hero-clean-kicker:after {
        width: 22px
    }

    .hero-clean h1 {
        font-size: 44px;
        line-height: .92
    }

    .hero-clean p {
        font-size: 14px;
        line-height: 1.6
    }

    .hero-clean .hero-ctas {
        margin-bottom: 4px
    }

    .hero-clean-visual {
        min-height: 300px
    }

    .hero-clean-visual:before {
        display: none
    }

    .clean-hero-img {
        width: 132%;
        max-height: 330px;
        margin-left: -16%
    }

    .hero-clean-strip {
        grid-template-columns: 1fr;
        margin-top: 4px
    }

    .scroll-cue {
        display: none
    }
}


/* V6 subtle sweep light across hero devices */
.hero-clean-visual {
    overflow: hidden !important;
    border-radius: 34px;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
}

.clean-hero-img {
    z-index: 2;
}

.sweep-light {
    position: absolute;
    z-index: 4;
    left: -42%;
    top: 8%;
    width: 34%;
    height: 84%;
    pointer-events: none;
    transform: translateX(-130%) skewX(-18deg);
    opacity: 0;
    mix-blend-mode: screen;
    background: linear-gradient(105deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, .03) 28%,
            rgba(255, 250, 235, .12) 42%,
            rgba(255, 255, 255, .32) 50%,
            rgba(255, 238, 190, .16) 58%,
            rgba(255, 255, 255, .04) 72%,
            rgba(255, 255, 255, 0) 100%);
    filter: blur(22px);
    animation: heroSweepLight 12s cubic-bezier(.4, 0, .2, 1) infinite;
}

.sweep-light:after {
    content: "";
    position: absolute;
    left: 46%;
    top: 0;
    width: 2px;
    height: 100%;
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 0 22px rgba(255, 244, 214, .82), 0 0 48px rgba(255, 244, 214, .45);
    opacity: .18;
}

@keyframes heroSweepLight {

    0%,
    12% {
        transform: translateX(-130%) skewX(-18deg);
        opacity: 0;
    }

    18% {
        opacity: .28;
    }

    34% {
        transform: translateX(480%) skewX(-18deg);
        opacity: .24;
    }

    46%,
    100% {
        transform: translateX(480%) skewX(-18deg);
        opacity: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sweep-light {
        animation: none;
        display: none;
    }
}

@media(max-width:560px) {
    .sweep-light {
        height: 76%;
        top: 12%;
        width: 44%;
        animation-duration: 8.6s;
    }
}


/* V7 Tightan Pro correction overlay */
.hero-clean-visual {
    position: relative;
}

.tightan-eraser {
    position: absolute;
    z-index: 2.6;
    right: 0.2%;
    bottom: 4.4%;
    width: min(330px, 26vw);
    height: min(550px, 51vh);
    border-radius: 38px;
    background: radial-gradient(circle at 50% 45%, rgba(255, 250, 245, .98), rgba(249, 245, 238, .96) 42%, rgba(251, 246, 238, .88) 72%, rgba(251, 246, 238, .58) 100%);
    box-shadow: 0 0 42px rgba(251, 246, 238, .98);
    pointer-events: none;
}

.tightan-correct-img {
    position: absolute;
    z-index: 3;
    right: 2.4%;
    bottom: 4.6%;
    height: min(520px, 49vh);
    width: auto;
    object-fit: contain;
    filter: drop-shadow(0 28px 34px rgba(31, 27, 22, .14));
    animation: cleanFloat 6s ease-in-out infinite;
    pointer-events: none;
}

@media(max-width:980px) {
    .tightan-eraser {
        right: -3%;
        bottom: 3.8%;
        width: 30vw;
        height: 390px;
    }

    .tightan-correct-img {
        right: -1.5%;
        bottom: 3.6%;
        height: 382px;
    }
}

@media(max-width:560px) {
    .tightan-eraser {
        right: -14%;
        bottom: 4.8%;
        width: 42vw;
        height: 300px;
    }

    .tightan-correct-img {
        right: -11%;
        bottom: 4.3%;
        height: 300px;
    }
}


/* v8 updated: exact 3 product hero image */
.clean-hero-img {
    width: min(980px, 78vw);
    max-height: min(58vh, 650px);
    object-fit: contain;
    image-rendering: auto;
}

.hero-clean-visual {
    overflow: visible;
}

@media(max-width:620px) {
    .clean-hero-img {
        width: 142%;
        margin-left: -18%;
    }
}


/* v9 user update: lighter beige background + new 3-products hero image */
:root {
    --porcelain: #fbf6ee;
    --white: #fffdf8;
}

body {
    background: #fbf6ee;
}

.header {
    background: rgba(251, 246, 238, .78);
}

.hero-clean {
    background: linear-gradient(180deg, #fffaf3 0%, #fbf6ee 58%, #f3eadf 100%);
}

.hero-clean-bg {
    background: radial-gradient(circle at 10% 14%, rgba(107, 130, 120, .045), transparent 28%), radial-gradient(circle at 88% 20%, rgba(168, 158, 143, .075), transparent 30%), linear-gradient(90deg, rgba(251, 246, 238, .96), rgba(251, 246, 238, .74), rgba(251, 246, 238, .96));
}

.clean-hero-img {
    width: min(960px, 78vw);
    max-height: min(60vh, 680px);
    object-fit: contain;
}


/* v10 user update: enlarge and highlight hero products */
.hero-clean {
    padding: 98px 0 44px;
    background:
        radial-gradient(circle at 50% 62%, rgba(255, 255, 255, .98) 0%, rgba(255, 250, 243, .78) 34%, rgba(251, 246, 238, .24) 58%, transparent 74%),
        linear-gradient(180deg, #fffaf3 0%, #fbf6ee 56%, #f0e5d8 100%);
}

.hero-clean-inner {
    width: min(100% - 48px, 1480px);
}

.hero-clean h1 {
    font-size: clamp(48px, 4.8vw, 84px);
    margin-bottom: 12px;
}

.hero-clean p {
    margin-bottom: 16px;
}

.hero-clean-visual {
    width: min(1320px, 98vw);
    min-height: min(66vh, 760px);
    margin-top: -6px;
    overflow: visible !important;
    border-radius: 42px;
    -webkit-mask-image: none !important;
    mask-image: none !important;
}

.hero-clean-visual:before {
    width: min(1260px, 96vw);
    height: min(680px, 56vw);
    top: 54%;
    background: radial-gradient(ellipse, rgba(255, 255, 255, .95), rgba(255, 250, 243, .68) 38%, rgba(217, 221, 212, .28) 66%, transparent 74%);
    border-color: rgba(107, 130, 120, .18);
    box-shadow: 0 0 120px rgba(255, 255, 255, .9), inset 0 0 76px rgba(255, 255, 255, .62);
}

.hero-clean-visual:after {
    width: min(1040px, 82vw);
    height: 110px;
    bottom: -2%;
    background: radial-gradient(ellipse, rgba(31, 27, 22, .24), rgba(31, 27, 22, .11) 42%, transparent 72%);
    filter: blur(10px);
}

.clean-hero-img {
    width: min(1220px, 96vw) !important;
    max-height: min(72vh, 780px) !important;
    transform: scale(1.08);
    transform-origin: center bottom;
    filter: drop-shadow(0 46px 72px rgba(31, 27, 22, .25)) drop-shadow(0 0 28px rgba(255, 255, 255, .75));
}

.hero-clean-strip {
    margin-top: 8px;
}

@keyframes cleanFloat {

    0%,
    100% {
        transform: scale(1.08) translateY(0)
    }

    50% {
        transform: scale(1.08) translateY(-10px)
    }
}

@media(max-width:980px) {
    .hero-clean-visual {
        width: 106vw;
        min-height: 500px;
        margin-left: 50%;
        transform: translateX(-50%);
    }

    .clean-hero-img {
        width: 124vw !important;
        max-height: 520px !important;
    }
}

@media(max-width:560px) {
    .hero-clean {
        padding-top: 88px;
    }

    .hero-clean-visual {
        min-height: 360px;
        width: 118vw;
    }

    .clean-hero-img {
        width: 168vw !important;
        max-height: 390px !important;
        margin-left: -28%;
    }
}


/* V11: shorten central Lavieen handpiece arm and keep hero CTA clear */
.hero-clean .hero-ctas {
    position: relative;
    z-index: 5;
    margin-bottom: 18px !important
}

.hero-clean-visual {
    margin-top: 14px !important;
    min-height: min(48vh, 520px) !important
}

.clean-hero-img {
    max-height: min(48vh, 500px) !important;
    width: min(940px, 88vw) !important
}

@media(max-width:980px) {
    .hero-clean-visual {
        margin-top: 18px !important
    }

    .clean-hero-img {
        width: 118vw !important;
        max-height: 480px !important
    }
}

@media(max-width:560px) {
    .clean-hero-img {
        width: 156vw !important;
        max-height: 360px !important;
        margin-left: -22% !important
    }
}



/* V12: compact split hero layout - cleaner first section */
.hero-clean {
    min-height: auto !important;
    padding: 118px 0 46px !important;
    background:
        radial-gradient(circle at 78% 42%, rgba(255, 255, 255, .82), rgba(251, 246, 238, .25) 34%, transparent 58%),
        linear-gradient(135deg, #fffaf3 0%, #fbf6ee 54%, #efe4d8 100%) !important;
}

.hero-clean-bg {
    background: radial-gradient(circle at 15% 12%, rgba(107, 130, 120, .055), transparent 28%), radial-gradient(circle at 82% 70%, rgba(168, 158, 143, .10), transparent 35%) !important;
}

.hero-clean-inner {
    width: min(100% - 56px, 1240px) !important;
    min-height: calc(100svh - 164px);
    display: grid !important;
    grid-template-columns: minmax(360px, .86fr) minmax(520px, 1.14fr);
    grid-template-areas:
        "kicker visual"
        "title visual"
        "text visual"
        "cta visual"
        "strip visual";
    align-content: center;
    align-items: center;
    gap: 10px 48px;
    text-align: left !important;
}

.hero-clean-kicker {
    grid-area: kicker;
    justify-self: start;
    margin: 0 0 8px !important;
    font-size: 10px !important;
    letter-spacing: .24em !important;
}

.hero-clean-kicker:before {
    width: 34px !important
}

.hero-clean-kicker:after {
    display: none !important
}

.hero-clean h1 {
    grid-area: title;
    margin: 0 !important;
    max-width: 520px !important;
    font-size: clamp(48px, 5.2vw, 88px) !important;
    line-height: .9 !important;
}

.hero-clean p {
    grid-area: text;
    margin: 10px 0 10px !important;
    max-width: 480px !important;
    font-size: 16px !important;
    line-height: 1.68 !important;
}

.hero-clean .hero-ctas {
    grid-area: cta;
    justify-content: flex-start !important;
    margin: 10px 0 10px !important;
}

.hero-clean-visual {
    grid-area: visual;
    width: 100% !important;
    min-height: 560px !important;
    margin: 0 !important;
    border-radius: 42px !important;
    overflow: hidden !important;
    background: linear-gradient(180deg, rgba(255, 253, 248, .68), rgba(255, 250, 243, .32));
    border: 1px solid rgba(31, 27, 22, .08);
    box-shadow: 0 28px 90px rgba(31, 27, 22, .09);
    display: grid !important;
    place-items: center !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
}

.hero-clean-visual:before {
    display: block !important;
    width: 82% !important;
    height: 62% !important;
    top: 52% !important;
    border-color: rgba(107, 130, 120, .12) !important;
    opacity: .78 !important;
}

.hero-clean-visual:after {
    width: 72% !important;
    height: 82px !important;
    bottom: 6% !important;
    filter: blur(14px) !important;
}

.clean-hero-img {
    width: min(760px, 100%) !important;
    max-height: 520px !important;
    transform: none !important;
    animation: compactFloat 6s ease-in-out infinite !important;
    filter: drop-shadow(0 36px 56px rgba(31, 27, 22, .18)) !important;
}

.hero-clean-strip {
    grid-area: strip;
    width: 100% !important;
    max-width: 520px !important;
    margin: 16px 0 0 !important;
    grid-template-columns: repeat(2, 1fr) !important;
    border-radius: 24px !important;
    box-shadow: none !important;
    background: rgba(168, 158, 143, .18) !important;
}

.hero-clean-strip a {
    padding: 14px 16px !important;
    background: rgba(255, 250, 245, .68) !important;
}

.hero-clean-strip strong {
    font-size: 17px !important;
    letter-spacing: .01em !important;
}

.hero-clean-strip span {
    font-size: 10px !important;
    line-height: 1.35 !important;
}

.hero-clean .scroll-cue,
.scroll-cue {
    display: none !important;
}

.sweep-light {
    display: none !important;
}

@keyframes compactFloat {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-8px)
    }
}

@media(max-width:980px) {
    .hero-clean {
        padding: 100px 0 38px !important;
    }

    .hero-clean-inner {
        width: min(100% - 34px, 900px) !important;
        min-height: auto;
        grid-template-columns: 1fr;
        grid-template-areas: "kicker""title""text""cta""visual""strip";
        text-align: center !important;
        gap: 10px;
    }

    .hero-clean-kicker {
        justify-self: center !important
    }

    .hero-clean-kicker:after {
        display: block !important;
        width: 34px !important
    }

    .hero-clean h1,
    .hero-clean p {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .hero-clean .hero-ctas {
        justify-content: center !important;
    }

    .hero-clean-visual {
        min-height: 430px !important;
        margin-top: 10px !important;
    }

    .clean-hero-img {
        width: min(780px, 112vw) !important;
        max-height: 430px !important;
    }

    .hero-clean-strip {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media(max-width:560px) {
    .hero-clean {
        padding-top: 88px !important;
    }

    .hero-clean h1 {
        font-size: 44px !important;
    }

    .hero-clean-visual {
        min-height: 310px !important;
        border-radius: 28px !important;
    }

    .clean-hero-img {
        width: 138vw !important;
        max-height: 320px !important;
        margin-left: -12vw !important;
    }

    .hero-clean-strip {
        grid-template-columns: 1fr !important;
        border-radius: 18px !important;
    }
}



/* V13: editorial luxury hero - softer, less rigid composition */
.hero-clean {
    min-height: 100svh !important;
    padding: 102px 0 38px !important;
    overflow: hidden !important;
    background:
        radial-gradient(circle at 52% 42%, rgba(255, 255, 255, .96) 0%, rgba(255, 251, 245, .78) 28%, rgba(251, 246, 238, .28) 52%, transparent 72%),
        radial-gradient(circle at 12% 18%, rgba(107, 130, 120, .055), transparent 30%),
        radial-gradient(circle at 90% 76%, rgba(168, 158, 143, .13), transparent 34%),
        linear-gradient(180deg, #fffaf3 0%, #fbf6ee 58%, #efe4d7 100%) !important;
}

.hero-clean-bg {
    background:
        linear-gradient(115deg, rgba(255, 250, 243, .78), rgba(251, 246, 238, .16) 42%, rgba(255, 255, 255, .32)),
        radial-gradient(ellipse at 50% 62%, rgba(255, 255, 255, .44), transparent 64%) !important;
}

.hero-clean-inner {
    width: min(100% - 58px, 1280px) !important;
    min-height: calc(100svh - 140px) !important;
    position: relative !important;
    display: block !important;
    text-align: center !important;
    padding-top: 0 !important;
}

.hero-clean-kicker {
    position: absolute !important;
    left: 50% !important;
    top: 0 !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
    justify-content: center !important;
    white-space: nowrap !important;
    z-index: 6 !important;
    color: rgba(82, 104, 95, .78) !important;
}

.hero-clean-kicker:before,
.hero-clean-kicker:after {
    display: block !important;
    width: 36px !important;
    background: rgba(107, 130, 120, .36) !important;
}

.hero-clean-visual {
    position: absolute !important;
    inset: 34px 0 auto !important;
    width: 100% !important;
    height: min(66svh, 650px) !important;
    min-height: 520px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    overflow: visible !important;
    display: grid !important;
    place-items: center !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    z-index: 2 !important;
}

.hero-clean-visual:before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) rotate(-4deg) !important;
    width: min(1040px, 86vw) !important;
    height: min(520px, 42vw) !important;
    border-radius: 50% !important;
    border: 1px solid rgba(107, 130, 120, .12) !important;
    background: radial-gradient(ellipse, rgba(255, 255, 255, .78), rgba(255, 250, 243, .36) 42%, transparent 72%) !important;
    box-shadow: 0 0 110px rgba(255, 255, 255, .82), inset 0 0 62px rgba(255, 255, 255, .38) !important;
    opacity: 1 !important;
    z-index: 0 !important;
}

.hero-clean-visual:after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 6% !important;
    transform: translateX(-50%) !important;
    width: min(900px, 70vw) !important;
    height: 100px !important;
    border-radius: 50% !important;
    background: radial-gradient(ellipse, rgba(31, 27, 22, .19), rgba(31, 27, 22, .075) 44%, transparent 72%) !important;
    filter: blur(18px) !important;
    z-index: 1 !important;
}

.clean-hero-img {
    position: relative !important;
    z-index: 3 !important;
    width: min(1040px, 86vw) !important;
    max-height: min(64svh, 630px) !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    transform: none !important;
    animation: editorialFloat 7s ease-in-out infinite !important;
    filter: drop-shadow(0 44px 70px rgba(31, 27, 22, .20)) drop-shadow(0 0 24px rgba(255, 255, 255, .72)) !important;
}

.hero-clean h1 {
    position: absolute !important;
    left: 0 !important;
    bottom: 114px !important;
    z-index: 5 !important;
    max-width: 560px !important;
    margin: 0 !important;
    text-align: left !important;
    font-size: clamp(48px, 5.8vw, 96px) !important;
    line-height: .88 !important;
    letter-spacing: -.055em !important;
    text-shadow: 0 14px 38px rgba(255, 250, 243, .86) !important;
}

.hero-clean h1 span {
    display: inline !important;
    color: var(--deep) !important;
}

.hero-clean p {
    position: absolute !important;
    left: 0 !important;
    bottom: 42px !important;
    z-index: 5 !important;
    max-width: 480px !important;
    margin: 0 !important;
    text-align: left !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: rgba(31, 27, 22, .66) !important;
}

.hero-clean .hero-ctas {
    position: absolute !important;
    right: 0 !important;
    bottom: 52px !important;
    z-index: 6 !important;
    justify-content: flex-end !important;
    margin: 0 !important;
}

.hero-clean .btn {
    box-shadow: 0 18px 44px rgba(82, 104, 95, .18) !important;
    padding: 14px 26px !important;
}

.hero-clean-strip {
    position: absolute !important;
    right: 0 !important;
    top: 118px !important;
    z-index: 6 !important;
    width: 250px !important;
    max-width: 250px !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    border-radius: 28px !important;
    overflow: hidden !important;
    border: 1px solid rgba(31, 27, 22, .08) !important;
    background: rgba(255, 253, 248, .5) !important;
    box-shadow: 0 24px 70px rgba(31, 27, 22, .08) !important;
    backdrop-filter: blur(18px) !important;
}

.hero-clean-strip a {
    padding: 13px 16px !important;
    background: rgba(255, 250, 245, .58) !important;
    border-bottom: 1px solid rgba(31, 27, 22, .06) !important;
}

.hero-clean-strip a:last-child {
    border-bottom: 0 !important;
}

.hero-clean-strip strong {
    font-size: 17px !important;
    line-height: 1 !important;
}

.hero-clean-strip span {
    font-size: 10px !important;
    line-height: 1.35 !important;
    letter-spacing: .06em !important;
}

.sweep-light {
    display: block !important;
    opacity: .2 !important;
}

@keyframes editorialFloat {

    0%,
    100% {
        transform: translateY(0) rotate(.2deg)
    }

    50% {
        transform: translateY(-10px) rotate(-.2deg)
    }
}

@media(max-width:980px) {
    .hero-clean {
        min-height: auto !important;
        padding: 94px 0 34px !important;
    }

    .hero-clean-inner {
        width: min(100% - 34px, 900px) !important;
        min-height: auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }

    .hero-clean-kicker,
    .hero-clean h1,
    .hero-clean p,
    .hero-clean .hero-ctas,
    .hero-clean-strip,
    .hero-clean-visual {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        transform: none !important;
    }

    .hero-clean-kicker {
        order: 1 !important;
        margin-bottom: 12px !important;
    }

    .hero-clean-visual {
        order: 2 !important;
        height: auto !important;
        min-height: 420px !important;
        inset: auto !important;
        margin: 0 auto 6px !important;
    }

    .clean-hero-img {
        width: min(820px, 114vw) !important;
        max-height: 430px !important;
    }

    .hero-clean h1 {
        order: 3 !important;
        text-align: center !important;
        max-width: 760px !important;
        font-size: clamp(46px, 11vw, 78px) !important;
        margin-top: -8px !important;
    }

    .hero-clean p {
        order: 4 !important;
        text-align: center !important;
        max-width: 560px !important;
        margin: 14px auto 0 !important;
    }

    .hero-clean .hero-ctas {
        order: 5 !important;
        justify-content: center !important;
        margin: 18px 0 0 !important;
    }

    .hero-clean-strip {
        order: 6 !important;
        width: min(100%, 560px) !important;
        max-width: 560px !important;
        grid-template-columns: repeat(2, 1fr) !important;
        margin-top: 22px !important;
    }
}

@media(max-width:560px) {
    .hero-clean {
        padding-top: 86px !important;
    }

    .hero-clean-inner {
        width: min(100% - 28px, 520px) !important;
    }

    .hero-clean-kicker {
        font-size: 9px !important;
        letter-spacing: .16em !important;
    }

    .hero-clean-kicker:before,
    .hero-clean-kicker:after {
        width: 22px !important;
    }

    .hero-clean-visual {
        min-height: 320px !important;
    }

    .hero-clean-visual:before {
        width: 112vw !important;
        height: 260px !important;
    }

    .clean-hero-img {
        width: 152vw !important;
        max-height: 340px !important;
        margin-left: -18vw !important;
    }

    .hero-clean h1 {
        font-size: 42px !important;
        line-height: .94 !important;
    }

    .hero-clean p {
        font-size: 14px !important;
        line-height: 1.62 !important;
    }

    .hero-clean .btn {
        width: 100% !important;
        justify-content: center !important;
    }

    .hero-clean-strip {
        grid-template-columns: 1fr !important;
        border-radius: 20px !important;
    }
}



/* V14: clean balanced hero - no overlap, no rigid split */
.hero-clean {
    min-height: auto !important;
    padding: 112px 0 58px !important;
    overflow: hidden !important;
    background:
        radial-gradient(circle at 50% 32%, rgba(255, 255, 255, .92) 0%, rgba(255, 250, 243, .72) 32%, rgba(251, 246, 238, .28) 58%, transparent 76%),
        linear-gradient(180deg, #fffaf4 0%, #fbf6ee 62%, #f1e7dc 100%) !important;
}

.hero-clean-bg {
    background: radial-gradient(circle at 12% 18%, rgba(107, 130, 120, .04), transparent 30%), radial-gradient(circle at 88% 62%, rgba(168, 158, 143, .08), transparent 34%) !important;
}

.hero-clean-inner {
    width: min(100% - 48px, 1180px) !important;
    min-height: auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-areas: "kicker""title""text""cta""visual""strip" !important;
    gap: 0 !important;
    text-align: center !important;
    position: relative !important;
    padding: 0 !important;
}

.hero-clean-kicker,
.hero-clean h1,
.hero-clean p,
.hero-clean .hero-ctas,
.hero-clean-visual,
.hero-clean-strip {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    inset: auto !important;
    transform: none !important;
    z-index: auto !important;
}

.hero-clean-kicker {
    grid-area: kicker !important;
    justify-self: center !important;
    margin: 0 0 18px !important;
    font-size: 10px !important;
    letter-spacing: .26em !important;
    color: rgba(82, 104, 95, .8) !important;
    white-space: normal !important;
}

.hero-clean-kicker:before,
.hero-clean-kicker:after {
    display: block !important;
    width: 36px !important;
    background: rgba(107, 130, 120, .35) !important;
}

.hero-clean h1 {
    grid-area: title !important;
    max-width: 820px !important;
    margin: 0 auto 16px !important;
    text-align: center !important;
    font-size: clamp(46px, 6vw, 86px) !important;
    line-height: .95 !important;
    letter-spacing: -.052em !important;
    text-shadow: none !important;
}

.hero-clean h1 span {
    display: inline !important;
    color: var(--deep) !important;
}

.hero-clean p {
    grid-area: text !important;
    max-width: 590px !important;
    margin: 0 auto 24px !important;
    text-align: center !important;
    font-size: clamp(15px, 1.2vw, 17px) !important;
    line-height: 1.72 !important;
    color: rgba(31, 27, 22, .64) !important;
}

.hero-clean .hero-ctas {
    grid-area: cta !important;
    display: flex !important;
    justify-content: center !important;
    margin: 0 0 34px !important;
}

.hero-clean .btn {
    padding: 14px 26px !important;
    box-shadow: 0 18px 42px rgba(82, 104, 95, .16) !important;
}

.hero-clean-visual {
    grid-area: visual !important;
    width: min(100%, 1040px) !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(31, 27, 22, .075) !important;
    border-radius: 42px !important;
    background: linear-gradient(180deg, rgba(255, 253, 248, .72), rgba(255, 250, 243, .36)) !important;
    box-shadow: 0 26px 76px rgba(31, 27, 22, .08) !important;
    overflow: hidden !important;
    padding: 34px 34px 20px !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
}

.hero-clean-visual:before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    top: 52% !important;
    transform: translate(-50%, -50%) !important;
    width: 82% !important;
    height: 58% !important;
    border-radius: 50% !important;
    border: 1px solid rgba(107, 130, 120, .12) !important;
    background: radial-gradient(ellipse, rgba(255, 255, 255, .74), rgba(255, 250, 243, .32) 44%, transparent 74%) !important;
    box-shadow: 0 0 90px rgba(255, 255, 255, .74), inset 0 0 46px rgba(255, 255, 255, .38) !important;
    opacity: 1 !important;
    z-index: 0 !important;
}

.hero-clean-visual:after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 8% !important;
    transform: translateX(-50%) !important;
    width: 68% !important;
    height: 86px !important;
    border-radius: 50% !important;
    background: radial-gradient(ellipse, rgba(31, 27, 22, .16), rgba(31, 27, 22, .07) 42%, transparent 72%) !important;
    filter: blur(16px) !important;
    z-index: 1 !important;
}

.clean-hero-img {
    position: relative !important;
    z-index: 2 !important;
    width: min(880px, 92vw) !important;
    max-height: 520px !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    transform: none !important;
    animation: cleanHeroFloat 7s ease-in-out infinite !important;
    filter: drop-shadow(0 34px 52px rgba(31, 27, 22, .17)) drop-shadow(0 0 18px rgba(255, 255, 255, .66)) !important;
}

.hero-clean-strip {
    grid-area: strip !important;
    width: min(100%, 880px) !important;
    max-width: 880px !important;
    margin: 22px auto 0 !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    border-radius: 26px !important;
    overflow: hidden !important;
    border: 1px solid rgba(31, 27, 22, .07) !important;
    background: rgba(168, 158, 143, .16) !important;
    box-shadow: none !important;
    backdrop-filter: blur(14px) !important;
}

.hero-clean-strip a {
    padding: 15px 16px !important;
    background: rgba(255, 250, 245, .68) !important;
    border-bottom: 0 !important;
    text-align: center !important;
}

.hero-clean-strip strong {
    font-size: 16px !important;
    line-height: 1.1 !important;
}

.hero-clean-strip span {
    font-size: 10px !important;
    line-height: 1.35 !important;
    letter-spacing: .06em !important;
}

.sweep-light,
.hero-clean .scroll-cue,
.scroll-cue {
    display: none !important;
}

@keyframes cleanHeroFloat {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-8px)
    }
}

@media(max-width:980px) {
    .hero-clean {
        padding: 96px 0 42px !important;
    }

    .hero-clean-inner {
        width: min(100% - 34px, 900px) !important;
    }

    .hero-clean h1 {
        font-size: clamp(42px, 10vw, 70px) !important;
    }

    .hero-clean .hero-ctas {
        margin-bottom: 26px !important;
    }

    .hero-clean-visual {
        border-radius: 32px !important;
        padding: 28px 10px 18px !important;
    }

    .clean-hero-img {
        width: min(760px, 112vw) !important;
        max-height: 430px !important;
    }

    .hero-clean-strip {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media(max-width:560px) {
    .hero-clean {
        padding-top: 84px !important;
    }

    .hero-clean-inner {
        width: min(100% - 28px, 520px) !important;
    }

    .hero-clean-kicker {
        font-size: 9px !important;
        letter-spacing: .16em !important;
        margin-bottom: 14px !important;
    }

    .hero-clean-kicker:before,
    .hero-clean-kicker:after {
        width: 22px !important;
    }

    .hero-clean h1 {
        font-size: 40px !important;
        line-height: .96 !important;
        margin-bottom: 12px !important;
    }

    .hero-clean p {
        font-size: 14px !important;
        line-height: 1.62 !important;
        margin-bottom: 20px !important;
    }

    .hero-clean .hero-ctas {
        margin-bottom: 22px !important;
    }

    .hero-clean .btn {
        width: 100% !important;
        justify-content: center !important;
    }

    .hero-clean-visual {
        border-radius: 24px !important;
        padding: 22px 0 12px !important;
    }

    .clean-hero-img {
        width: 138vw !important;
        max-height: 330px !important;
        margin-left: -16vw !important;
    }

    .hero-clean-strip {
        grid-template-columns: 1fr !important;
        border-radius: 20px !important;
        margin-top: 16px !important;
    }
}


/* V15: remove white product frame - products float directly on beige background */
.hero-clean-visual {
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 10px 0 0 !important;
    overflow: visible !important;
}

.hero-clean-visual:before {
    width: 74% !important;
    height: 48% !important;
    border: none !important;
    background: radial-gradient(ellipse, rgba(255, 255, 255, .44), rgba(255, 250, 243, .20) 44%, transparent 74%) !important;
    box-shadow: none !important;
    filter: blur(8px) !important;
    opacity: .88 !important;
}

.hero-clean-visual:after {
    width: 62% !important;
    height: 78px !important;
    background: radial-gradient(ellipse, rgba(31, 27, 22, .14), rgba(31, 27, 22, .055) 42%, transparent 72%) !important;
    filter: blur(18px) !important;
}

.clean-hero-img {
    filter: drop-shadow(0 34px 50px rgba(31, 27, 22, .16)) drop-shadow(0 0 14px rgba(255, 255, 255, .42)) !important;
}

@media(max-width:980px) {
    .hero-clean-visual {
        padding: 8px 0 0 !important;
    }
}

@media(max-width:560px) {
    .hero-clean-visual {
        padding: 6px 0 0 !important;
    }
}



/* V16: subtle premium sweep light across product group - CSS only */
.hero-clean-visual {
    position: relative !important;
    overflow: hidden !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    isolation: isolate !important;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%) !important;
    mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%) !important;
}

.hero-clean-visual:before,
.hero-clean-visual:after {
    pointer-events: none !important;
}

.clean-hero-img {
    z-index: 2 !important;
    transition: transform .45s ease, filter .45s ease !important;
    will-change: transform !important;
}

.hero-clean-visual:hover .clean-hero-img {
    filter: drop-shadow(0 38px 56px rgba(31, 27, 22, .18)) drop-shadow(0 0 18px rgba(255, 255, 255, .48)) !important;
}

.sweep-light {
    display: block !important;
    position: absolute !important;
    z-index: 4 !important;
    left: -46% !important;
    top: 4% !important;
    width: 36% !important;
    height: 92% !important;
    pointer-events: none !important;
    opacity: 0 !important;
    mix-blend-mode: screen !important;
    transform: translateX(-150%) skewX(-20deg) !important;
    background: linear-gradient(105deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, .025) 28%,
            rgba(255, 250, 235, .11) 42%,
            rgba(255, 255, 255, .28) 50%,
            rgba(255, 241, 204, .12) 58%,
            rgba(255, 255, 255, .035) 72%,
            rgba(255, 255, 255, 0) 100%) !important;
    filter: blur(22px) !important;
    animation: heroSweepLightV16 7.5s ease-in-out infinite !important;
    will-change: transform, opacity !important;
}

.sweep-light:after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 4% !important;
    width: 1px !important;
    height: 92% !important;
    background: rgba(255, 255, 255, .58) !important;
    box-shadow: 0 0 18px rgba(255, 246, 220, .58), 0 0 42px rgba(255, 246, 220, .28) !important;
    opacity: .16 !important;
}

@keyframes heroSweepLightV16 {

    0%,
    16% {
        transform: translateX(-150%) skewX(-20deg);
        opacity: 0;
    }

    24% {
        opacity: .46;
    }

    52% {
        transform: translateX(470%) skewX(-20deg);
        opacity: .36;
    }

    66%,
    100% {
        transform: translateX(520%) skewX(-20deg);
        opacity: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sweep-light {
        animation: none !important;
        display: none !important;
    }

    .clean-hero-img {
        animation: none !important;
    }
}

@media(max-width:560px) {
    .sweep-light {
        top: 10% !important;
        height: 78% !important;
        width: 48% !important;
        animation-duration: 6.8s !important;
    }
}



/* V17 fix: make sweep light clearly visible across product image - CSS only */
.hero-clean-visual {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

.hero-clean-visual .sweep-light {
    display: block !important;
    visibility: visible !important;
    position: absolute !important;
    z-index: 9 !important;
    left: 0 !important;
    top: 2% !important;
    width: 24% !important;
    height: 96% !important;
    pointer-events: none !important;
    opacity: 0 !important;
    mix-blend-mode: screen !important;
    transform: translate3d(-170%, 0, 0) skewX(-18deg) !important;
    background: linear-gradient(105deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, .08) 26%,
            rgba(255, 248, 224, .38) 43%,
            rgba(255, 255, 255, .82) 50%,
            rgba(255, 236, 186, .34) 57%,
            rgba(255, 255, 255, .08) 74%,
            rgba(255, 255, 255, 0) 100%) !important;
    filter: blur(10px) !important;
    animation: drKwonVisibleSweep 5.8s cubic-bezier(.42, 0, .2, 1) infinite !important;
    will-change: transform, opacity !important;
}

.hero-clean-visual .sweep-light:before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(105deg, transparent 43%, rgba(255, 255, 255, .72) 50%, transparent 57%) !important;
    filter: blur(2px) !important;
    opacity: .45 !important;
}

.hero-clean-visual .sweep-light:after {
    content: "" !important;
    position: absolute !important;
    top: 3% !important;
    left: 50% !important;
    width: 2px !important;
    height: 94% !important;
    background: rgba(255, 255, 255, .9) !important;
    box-shadow: 0 0 18px rgba(255, 255, 255, .88), 0 0 42px rgba(255, 237, 190, .58) !important;
    opacity: .36 !important;
}

@keyframes drKwonVisibleSweep {

    0%,
    12% {
        transform: translate3d(-170%, 0, 0) skewX(-18deg) !important;
        opacity: 0 !important;
    }

    20% {
        opacity: .78 !important;
    }

    48% {
        transform: translate3d(470%, 0, 0) skewX(-18deg) !important;
        opacity: .62 !important;
    }

    62%,
    100% {
        transform: translate3d(560%, 0, 0) skewX(-18deg) !important;
        opacity: 0 !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-clean-visual .sweep-light {
        display: none !important;
        animation: none !important;
    }
}

@media(max-width:560px) {
    .hero-clean-visual .sweep-light {
        width: 34% !important;
        height: 84% !important;
        top: 8% !important;
        animation-duration: 5.2s !important;
    }
}


/* Sequential push + soft glow for philosophy pills */
.about .pill {
    opacity: .62;
    transform: translateY(10px) scale(.96);
    background: rgba(255, 255, 255, .015);
    transition: background .35s ease, border-color .35s ease, color .35s ease, box-shadow .35s ease, transform .35s ease;
    will-change: transform, opacity, background, box-shadow;
}

.about .reveal.show .pill {
    animation: dkPillPush 1.05s cubic-bezier(.2, .8, .2, 1) forwards;
}

.about .reveal.show .pill:nth-of-type(1) {
    animation-delay: .12s
}

.about .reveal.show .pill:nth-of-type(2) {
    animation-delay: .34s
}

.about .reveal.show .pill:nth-of-type(3) {
    animation-delay: .56s
}

@keyframes dkPillPush {
    0% {
        opacity: .45;
        transform: translateY(12px) scale(.94);
        background: rgba(255, 255, 255, .015);
        border-color: rgba(255, 255, 255, .14);
        color: rgba(255, 255, 255, .62);
        box-shadow: none
    }

    45% {
        opacity: 1;
        transform: translateY(-4px) scale(1.035);
        background: rgba(255, 255, 255, .105);
        border-color: rgba(255, 255, 255, .42);
        color: rgba(255, 255, 255, .96);
        box-shadow: 0 0 0 1px rgba(255, 255, 255, .08), 0 16px 42px rgba(255, 255, 255, .08)
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
        background: rgba(255, 255, 255, .055);
        border-color: rgba(255, 255, 255, .28);
        color: rgba(255, 255, 255, .86);
        box-shadow: 0 10px 32px rgba(255, 255, 255, .035)
    }
}

@media (prefers-reduced-motion:reduce) {
    .about .reveal.show .pill {
        animation: none;
        opacity: 1;
        transform: none
    }
}



/* ===== V19 Interactive 3 Flip Books - treatments section ===== */
.treatments.flipbook-section {
    position: relative;
    overflow: hidden;
    background: radial-gradient(circle at 18% 8%, rgba(107, 130, 120, .08), transparent 30%), radial-gradient(circle at 90% 20%, rgba(168, 158, 143, .10), transparent 34%), linear-gradient(180deg, #fbf6ee 0%, #fffaf3 52%, #efe4d8 100%)
}

.flipbook-section .top {
    margin-bottom: 44px
}

.flipbook-section .top p {
    max-width: 520px
}

.flipbook-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    align-items: start
}

.flipbook-card {
    position: relative;
    perspective: 1800px
}

.flipbook-shell {
    position: relative;
    border: 0;
    background: transparent;
    width: 100%;
    padding: 0;
    cursor: pointer;
    text-align: left;
    outline: 0
}

.book {
    position: relative;
    height: 560px;
    border-radius: 30px;
    transform-style: preserve-3d;
    transition: transform .65s cubic-bezier(.2, .75, .2, 1), filter .45s ease;
    filter: drop-shadow(0 26px 58px rgba(31, 27, 22, .14))
}

.flipbook-shell:hover .book {
    transform: translateY(-8px) rotateX(3deg) rotateY(-3deg)
}

.flipbook-card.is-open .book {
    transform: translateY(-12px) rotateY(-4deg)
}

.book-spine {
    position: absolute;
    left: 0;
    top: 16px;
    bottom: 16px;
    width: 20px;
    border-radius: 16px;
    background: linear-gradient(90deg, rgba(31, 27, 22, .28), rgba(255, 255, 255, .22), rgba(31, 27, 22, .08));
    z-index: 12;
    box-shadow: 8px 0 20px rgba(31, 27, 22, .10)
}

.book-page {
    position: absolute;
    inset: 0;
    border-radius: 30px;
    overflow: hidden;
    background: #fffdf8;
    border: 1px solid rgba(31, 27, 22, .09);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
    transform-origin: left center;
    backface-visibility: hidden;
    transition: transform .74s cubic-bezier(.22, .75, .24, 1), opacity .35s ease, box-shadow .74s ease;
    display: grid
}

.book-page:not(.cover) {
    padding: 18px
}

.book-page img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 20px;
    background: #fff
}

.book-page:nth-child(2) {
    z-index: 9
}

.book-page:nth-child(3) {
    z-index: 8
}

.book-page:nth-child(4) {
    z-index: 7
}

.book-page:nth-child(5) {
    z-index: 6
}

.flipbook-card[data-page="1"] .p1,
.flipbook-card[data-page="2"] .p1,
.flipbook-card[data-page="3"] .p1 {
    transform: rotateY(-178deg);
    box-shadow: 18px 12px 35px rgba(31, 27, 22, .12)
}

.flipbook-card[data-page="2"] .p2,
.flipbook-card[data-page="3"] .p2 {
    transform: rotateY(-178deg);
    box-shadow: 18px 12px 35px rgba(31, 27, 22, .12)
}

.flipbook-card[data-page="3"] .p3 {
    transform: rotateY(-178deg);
    box-shadow: 18px 12px 35px rgba(31, 27, 22, .12)
}

.cover {
    padding: 32px;
    background: linear-gradient(145deg, #fffdf8, #efe5da);
    align-content: space-between
}

.cover:before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 88% 12%, rgba(255, 255, 255, .96), transparent 34%), linear-gradient(120deg, transparent 55%, rgba(107, 130, 120, .10));
    pointer-events: none
}

.cover .cover-inner {
    position: relative;
    z-index: 1;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.cover .book-kicker {
    font-size: 11px;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--deep);
    font-weight: 700
}

.cover h3 {
    font-size: clamp(42px, 4vw, 60px);
    line-height: .86;
    margin: 24px 0 12px;
    font-weight: 500;
    letter-spacing: -.04em
}

.cover p {
    color: rgba(31, 27, 22, .62);
    font-size: 15px
}

.cover .book-price {
    display: flex;
    align-items: end;
    gap: 12px;
    margin-top: 18px
}

.cover .book-price s {
    color: var(--stone)
}

.cover .book-price strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 36px
}

.cover .tap {
    display: inline-flex;
    width: max-content;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(31, 27, 22, .13);
    border-radius: 999px;
    padding: 10px 14px;
    font-size: 12px;
    font-weight: 700;
    color: var(--ink);
    background: rgba(255, 255, 255, .36)
}

.desc-page {
    padding: 28px !important;
    align-content: center;
    background: linear-gradient(145deg, #fffdf8, #f5eee4)
}

.desc-page h4 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 38px;
    line-height: .95;
    margin: 0 0 18px;
    font-weight: 500
}

.desc-page p {
    color: rgba(31, 27, 22, .66);
    margin: 0 0 16px
}

.desc-page ul {
    margin: 0 0 22px;
    padding-left: 18px;
    color: rgba(31, 27, 22, .68)
}

.desc-page li {
    margin: 6px 0
}

.desc-page .btn {
    width: max-content
}

.book-ui {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 16px;
    padding: 0 5px
}

.book-ui span {
    font-size: 12px;
    color: rgba(31, 27, 22, .54)
}

.book-nav {
    display: flex;
    gap: 8px
}

.book-nav button {
    border: 1px solid rgba(31, 27, 22, .12);
    background: rgba(255, 253, 248, .76);
    border-radius: 999px;
    padding: 8px 12px;
    cursor: pointer;
    color: var(--ink)
}

.book-nav button:hover {
    background: var(--ink);
    color: #fff
}

.book-dots {
    display: flex;
    gap: 6px
}

.book-dots i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(31, 27, 22, .18)
}

.flipbook-card[data-page="0"] .book-dots i:nth-child(1),
.flipbook-card[data-page="1"] .book-dots i:nth-child(2),
.flipbook-card[data-page="2"] .book-dots i:nth-child(3),
.flipbook-card[data-page="3"] .book-dots i:nth-child(4) {
    background: var(--deep)
}

.book-note {
    margin-top: 14px;
    color: rgba(31, 27, 22, .56);
    font-size: 13px;
    min-height: 38px
}

.accent-oligio .cover {
    background: linear-gradient(145deg, #fffdf8, #e8f5f4)
}

.accent-oligio .cover h3 span {
    color: #0aaebe
}

.accent-lavieen .cover {
    background: linear-gradient(145deg, #fffdf8, #f4e4d6)
}

.accent-lavieen .cover h3 span {
    color: #e85b32
}

.accent-tightan .cover {
    background: linear-gradient(145deg, #fffdf8, #eaf4f6)
}

.accent-tightan .cover h3 span {
    color: #0b5f89
}

@media(max-width:1080px) {
    .flipbook-grid {
        grid-template-columns: 1fr;
        gap: 38px
    }

    .book {
        height: min(72vw, 620px)
    }

    .flipbook-card {
        max-width: 720px;
        margin: auto;
        width: 100%
    }
}

@media(max-width:560px) {
    .book {
        height: 560px
    }

    .book-page:not(.cover) {
        padding: 10px
    }

    .cover {
        padding: 24px
    }

    .cover h3 {
        font-size: 42px
    }

    .desc-page {
        padding: 22px !important
    }

    .desc-page h4 {
        font-size: 32px
    }

    .book-ui {
        display: grid;
        gap: 10px
    }

    .book-nav {
        justify-content: space-between
    }

    .book-nav button {
        flex: 1
    }

    .flipbook-section .top {
        text-align: left
    }
}



/* V22: combine service menu with existing treatment cards */
.service-highlights {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin: 0 0 28px;
}

.service-highlight-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(31, 27, 22, .09);
    border-radius: 28px;
    background: rgba(255, 253, 248, .76);
    box-shadow: 0 18px 54px rgba(31, 27, 22, .055);
    padding: 24px 26px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 18px;
    align-items: end;
}

.service-highlight-card:before {
    content: "";
    position: absolute;
    right: -80px;
    top: -90px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(107, 130, 120, .14), transparent 68%);
}

.service-highlight-card.combo:before {
    background: radial-gradient(circle, rgba(168, 158, 143, .18), transparent 68%)
}

.service-highlight-card>* {
    position: relative;
    z-index: 1
}

.service-badge {
    display: inline-flex;
    width: max-content;
    border: 1px solid rgba(82, 104, 95, .2);
    background: rgba(107, 130, 120, .08);
    color: var(--deep);
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 10px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 12px;
}

.service-highlight-card h3 {
    font-size: 34px;
    line-height: .96;
    margin: 0 0 8px;
    font-weight: 500;
}

.service-highlight-card p {
    margin: 0;
    color: rgba(31, 27, 22, .62);
    max-width: 520px;
}

.service-highlight-card .price {
    margin: 0;
    white-space: nowrap;
    justify-content: flex-end;
}

.tcard .content .service-badge {
    margin-bottom: 14px;
    background: rgba(255, 255, 255, .45);
}

.tcard .content .tag {
    margin-bottom: 8px;
}

.tcard .btn.ghost {
    background: rgba(255, 253, 248, .66)
}

.tcard .btn.ghost:hover {
    background: var(--ink);
    color: #fff
}

@media(max-width:900px) {
    .service-highlights {
        grid-template-columns: 1fr;
    }

    .service-highlight-card {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .service-highlight-card .price {
        justify-content: flex-start;
    }
}

@media(max-width:560px) {
    .service-highlight-card {
        padding: 20px;
        border-radius: 22px;
    }

    .service-highlight-card h3 {
        font-size: 30px;
    }
}


/* V24: editorial service menu - no card layout */
.treatments.editorial-services-section {
    background:
        radial-gradient(circle at 10% 8%, rgba(107, 130, 120, .075), transparent 28%),
        radial-gradient(circle at 92% 18%, rgba(168, 158, 143, .12), transparent 34%),
        linear-gradient(180deg, #fbf6ee 0%, #fffaf3 52%, #f0e6da 100%);
    overflow: hidden;
}

.editorial-services-head {
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    gap: 60px;
    align-items: end;
    padding-bottom: 50px;
    border-bottom: 1px solid rgba(31, 27, 22, .12);
}

.editorial-services-head h2 {
    font-size: clamp(52px, 7vw, 108px);
    line-height: .88;
    letter-spacing: -.055em;
    margin: 12px 0 0;
    font-weight: 500;
}

.editorial-services-head p {
    margin: 0 0 12px;
    max-width: 620px;
    color: rgba(31, 27, 22, .62);
    font-size: 18px;
    line-height: 1.72;
}

.editorial-service-list {
    position: relative;
}

.editorial-service-row {
    display: grid;
    grid-template-columns: 92px minmax(260px, .92fr) minmax(360px, 1.12fr) 190px;
    gap: 34px;
    align-items: center;
    min-height: 300px;
    padding: 54px 0;
    border-bottom: 1px solid rgba(31, 27, 22, .12);
}

.editorial-service-row:first-child {
    min-height: 360px;
}

.es-index {
    font-family: 'Cormorant Garamond', serif;
    font-size: 72px;
    line-height: 1;
    color: rgba(31, 27, 22, .22);
    font-weight: 500;
}

.es-visual {
    position: relative;
    min-height: 220px;
    border-radius: 0;
    overflow: hidden;
    isolation: isolate;
    background: transparent;
}

.es-visual:before {
    content: "";
    position: absolute;
    inset: 20px 0;
    background: linear-gradient(135deg, rgba(31, 27, 22, .92), rgba(82, 104, 95, .76), rgba(255, 253, 248, .76));
    clip-path: polygon(0 0, 100% 12%, 84% 100%, 8% 88%);
    box-shadow: 0 24px 70px rgba(31, 27, 22, .12);
}

.es-visual:after {
    content: "";
    position: absolute;
    width: 190px;
    height: 190px;
    border-radius: 50%;
    right: 12%;
    top: 50%;
    transform: translateY(-50%);
    background: radial-gradient(circle, rgba(255, 255, 255, .86), rgba(255, 255, 255, .16) 58%, transparent 70%);
    filter: blur(1px);
    opacity: .9;
}

.es-visual .device-word {
    position: absolute;
    left: 34px;
    bottom: 42px;
    z-index: 2;
    color: #fffdf8;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(38px, 4vw, 68px);
    line-height: .88;
    letter-spacing: -.04em;
    text-shadow: 0 14px 32px rgba(0, 0, 0, .22);
}

.es-visual .device-sub {
    position: absolute;
    z-index: 2;
    left: 36px;
    top: 44px;
    color: rgba(255, 253, 248, .72);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .24em;
}

.es-visual.tightan:before {
    background: linear-gradient(135deg, #fffdf8, #d9eef0 48%, #52685f);
}

.es-visual.tightan .device-word,
.es-visual.tightan .device-sub {
    color: #1f1b16;
    text-shadow: none;
}

.es-visual.oligio:before {
    background: linear-gradient(135deg, #f7fbfb, #20b7c8 52%, #171717);
}

.es-visual.lavieen:before {
    background: linear-gradient(135deg, #f4512a, #fff4e8 54%, #1f1b16);
}

.es-visual.combo:before {
    background: linear-gradient(135deg, #52685f, #1f1b16 50%, #fffdf8);
}

.es-copy {
    max-width: 620px;
}

.es-kicker {
    display: block;
    margin-bottom: 12px;
    color: var(--deep);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .2em;
    text-transform: uppercase;
}

.es-copy h3 {
    margin: 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(38px, 4.8vw, 72px);
    line-height: .9;
    font-weight: 500;
    letter-spacing: -.045em;
}

.es-copy p {
    margin: 18px 0 0;
    color: rgba(31, 27, 22, .64);
    font-size: 16px;
    line-height: 1.7;
}

.es-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 20px;
}

.es-tags span {
    border-top: 1px solid rgba(31, 27, 22, .16);
    padding-top: 8px;
    min-width: 92px;
    font-size: 12px;
    color: rgba(31, 27, 22, .58);
}

.es-price {
    text-align: right;
    align-self: center;
}

.es-price s {
    display: block;
    color: var(--stone);
    font-size: 18px;
    margin-bottom: 4px;
}

.es-price strong {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 48px;
    line-height: 1;
    color: var(--ink);
}

.es-price .btn {
    margin-top: 24px;
    padding: 12px 18px;
}

@media(max-width:1080px) {
    .editorial-services-head {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .editorial-service-row {
        grid-template-columns: 70px 1fr;
        gap: 24px;
    }

    .es-visual {
        grid-column: 2;
        min-height: 230px;
    }

    .es-copy {
        grid-column: 2;
    }

    .es-price {
        grid-column: 2;
        text-align: left;
        display: flex;
        align-items: center;
        gap: 20px;
        flex-wrap: wrap;
    }

    .es-price .btn {
        margin-top: 0;
    }
}

@media(max-width:620px) {
    .editorial-services-head {
        padding-bottom: 34px;
    }

    .editorial-services-head h2 {
        font-size: 44px;
    }

    .editorial-services-head p {
        font-size: 15px;
    }

    .editorial-service-row {
        grid-template-columns: 1fr;
        gap: 18px;
        min-height: auto;
        padding: 38px 0;
    }

    .es-index {
        font-size: 42px;
    }

    .es-visual,
    .es-copy,
    .es-price {
        grid-column: auto;
    }

    .es-visual {
        min-height: 190px;
    }

    .es-visual .device-word {
        left: 24px;
        bottom: 32px;
        font-size: 42px;
    }

    .es-visual .device-sub {
        left: 26px;
        top: 34px;
        font-size: 9px;
    }

    .es-copy h3 {
        font-size: 38px;
    }

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

    .es-price {
        display: block;
    }

    .es-price .btn {
        margin-top: 16px;
        width: 100%;
        justify-content: center;
    }
}


/* V25: service section - main service full row + supporting services 2 per row with machine visuals */
.treatments.service-matrix-section {
    background: linear-gradient(180deg, #fbf6ee 0%, #fffaf3 46%, #f4eadf 100%) !important;
    padding: 96px 0 112px !important;
}

.service-matrix-head {
    display: grid;
    grid-template-columns: .85fr 1fr;
    gap: 54px;
    align-items: end;
    padding-bottom: 44px;
    border-bottom: 1px solid rgba(31, 27, 22, .12);
}

.service-matrix-head h2 {
    font-size: clamp(52px, 6vw, 92px);
    line-height: .92;
    margin: 10px 0 0;
    font-weight: 500;
    letter-spacing: -.045em;
}

.service-matrix-head p {
    max-width: 540px;
    margin: 0 0 8px;
    color: rgba(31, 27, 22, .62);
    font-size: 18px;
    line-height: 1.7;
}

.service-primary {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    gap: 56px;
    align-items: center;
    padding: 56px 0 62px;
    border-bottom: 1px solid rgba(31, 27, 22, .12);
}

.service-primary-visual {
    min-height: 430px;
    display: grid;
    place-items: center;
    position: relative;
    overflow: hidden;
}

.service-primary-visual:before {
    content: "";
    position: absolute;
    inset: 10% 6% 2%;
    border-radius: 50%;
    background: radial-gradient(ellipse, rgba(255, 255, 255, .82), rgba(255, 250, 243, .32) 50%, transparent 72%);
    filter: blur(4px);
}

.service-primary-visual img {
    position: relative;
    z-index: 1;
    max-height: 520px;
    width: auto;
    max-width: 94%;
    object-fit: contain;
    filter: drop-shadow(0 34px 46px rgba(31, 27, 22, .18));
}

.service-primary-copy {
    display: grid;
    gap: 18px;
    align-content: center;
}

.service-category {
    color: var(--deep);
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 700;
}

.service-primary-copy h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(54px, 6vw, 96px);
    line-height: .9;
    margin: 0;
    font-weight: 500;
    letter-spacing: -.045em;
}

.service-primary-copy p {
    max-width: 560px;
    color: rgba(31, 27, 22, .64);
    font-size: 18px;
    line-height: 1.74;
    margin: 0;
}

.service-benefit {
    font-size: 18px;
    color: rgba(31, 27, 22, .78);
    border-left: 2px solid var(--deep);
    padding-left: 18px;
}

.service-price-line {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.service-price-line s {
    color: var(--stone);
    font-size: 18px;
}

.service-price-line strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 44px;
    line-height: 1;
}

.service-support-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 52px;
    padding-top: 8px;
}

.service-support-item {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 28px;
    align-items: center;
    padding: 42px 0;
    border-bottom: 1px solid rgba(31, 27, 22, .12);
    min-height: 270px;
}

.service-support-visual {
    height: 210px;
    position: relative;
    display: grid;
    place-items: center;
}

.service-support-visual:before {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .9), rgba(217, 221, 212, .28) 54%, transparent 72%);
    filter: blur(1px);
}

.service-support-visual img {
    position: relative;
    z-index: 1;
    max-height: 220px;
    max-width: 160px;
    object-fit: contain;
    filter: drop-shadow(0 22px 28px rgba(31, 27, 22, .16));
}

.combo-devices {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 0;
}

.combo-devices img {
    max-width: 92px !important;
    margin: 0 -10px;
}

.service-support-copy h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 38px;
    line-height: 1;
    margin: 8px 0 8px;
    font-weight: 500;
}

.service-support-copy p {
    color: rgba(31, 27, 22, .62);
    margin: 0 0 18px;
    line-height: 1.55;
}

.service-meta {
    display: flex;
    gap: 10px 14px;
    flex-wrap: wrap;
    align-items: center;
}

.service-meta span {
    font-size: 12px;
    letter-spacing: .13em;
    text-transform: uppercase;
    color: var(--deep);
    font-weight: 700;
}

.service-meta s {
    color: var(--stone);
}

.service-meta strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 30px;
    line-height: 1;
}

@media(max-width:980px) {

    .service-matrix-head,
    .service-primary {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .service-primary-visual {
        min-height: 340px;
    }

    .service-support-grid {
        grid-template-columns: 1fr;
    }

    .service-support-item {
        grid-template-columns: 130px 1fr;
        gap: 22px;
    }
}

@media(max-width:560px) {
    .treatments.service-matrix-section {
        padding: 76px 0 82px !important;
    }

    .service-matrix-head h2 {
        font-size: 44px;
    }

    .service-matrix-head p,
    .service-primary-copy p {
        font-size: 15px;
    }

    .service-primary {
        padding: 38px 0 48px;
    }

    .service-primary-visual {
        min-height: 280px;
    }

    .service-primary-copy h3 {
        font-size: 52px;
    }

    .service-support-item {
        grid-template-columns: 1fr;
        min-height: auto;
        padding: 34px 0;
    }

    .service-support-visual {
        height: 190px;
        justify-content: start;
    }

    .service-support-copy h3 {
        font-size: 34px;
    }
}



/* V26: Supporting treatments continuous marquee slider */
.supporting-services-wrap {
    padding: 18px 0 0;
    overflow: hidden;
}

.supporting-services-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 30px;
    margin: 0 0 26px;
}

.supporting-services-head .eyebrow {
    margin-bottom: 8px;
    display: block;
}

.supporting-services-head h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(38px, 4.8vw, 72px);
    line-height: .95;
    margin: 0;
    font-weight: 500;
    letter-spacing: -.04em;
}

.supporting-services-head p {
    max-width: 430px;
    margin: 0 0 6px;
    color: rgba(31, 27, 22, .62);
    line-height: 1.68;
}

.supporting-marquee {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 8px 0 14px;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
}

.supporting-track {
    display: flex;
    gap: 26px;
    width: max-content;
    animation: dkSupportingLoop 34s linear infinite;
    will-change: transform;
}

.supporting-marquee:hover .supporting-track {
    animation-play-state: paused;
}

.supporting-slide {
    width: min(380px, 78vw);
    min-height: 430px;
    display: grid;
    grid-template-rows: 250px 1fr;
    flex: 0 0 auto;
    border-top: 1px solid rgba(31, 27, 22, .16);
    border-bottom: 1px solid rgba(31, 27, 22, .12);
    background: linear-gradient(180deg, rgba(255, 253, 248, .56), rgba(255, 250, 243, .22));
    padding: 22px 22px 24px;
    transition: transform .35s ease, background .35s ease;
}

.supporting-slide:hover {
    transform: translateY(-6px);
    background: linear-gradient(180deg, rgba(255, 253, 248, .82), rgba(255, 250, 243, .36));
}

.supporting-slide-visual {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 240px;
}

.supporting-slide-visual:before {
    content: "";
    position: absolute;
    width: 210px;
    height: 210px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .96), rgba(217, 221, 212, .3) 56%, transparent 74%);
    filter: blur(2px);
}

.supporting-slide-visual img {
    position: relative;
    z-index: 1;
    max-height: 240px;
    max-width: 88%;
    width: auto;
    object-fit: contain;
    filter: drop-shadow(0 26px 34px rgba(31, 27, 22, .18));
}

.supporting-slide-visual.combo-machines {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
}

.supporting-slide-visual.combo-machines img {
    max-width: 45%;
    margin: 0 -12px;
}

.supporting-slide-copy {
    display: grid;
    align-content: start;
    gap: 10px;
}

.supporting-slide-copy .service-category {
    font-size: 11px;
    letter-spacing: .18em;
}

.supporting-slide-copy h4 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 34px;
    line-height: 1;
    margin: 0;
    font-weight: 500;
    letter-spacing: -.02em;
}

.supporting-slide-copy p {
    margin: 0;
    color: rgba(31, 27, 22, .62);
    line-height: 1.55;
}

.supporting-slide-price {
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-top: 8px;
}

.supporting-slide-price s {
    color: var(--stone);
    font-size: 15px;
}

.supporting-slide-price strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 32px;
    line-height: 1;
}

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

.supporting-slide-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 11px 18px;
    border-radius: 999px;
    border: 1px solid rgba(82, 104, 95, .28);
    background: rgba(82, 104, 95, .92);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1;
    box-shadow: 0 14px 34px rgba(82, 104, 95, .18);
    transition: transform .32s cubic-bezier(.22, 1, .36, 1), box-shadow .32s ease, background .32s ease, border-color .32s ease;
}

.supporting-slide-cta:after {
    content: "\2192";
    margin-left: 9px;
    transition: transform .32s cubic-bezier(.22, 1, .36, 1);
}

.supporting-slide-cta:hover {
    transform: translateY(-2px);
    background: var(--ink);
    border-color: rgba(31, 27, 22, .22);
    box-shadow: 0 18px 42px rgba(31, 27, 22, .18);
}

.supporting-slide-cta:hover:after {
    transform: translateX(4px);
}

.supporting-slide:hover .supporting-slide-cta {
    box-shadow: 0 18px 46px rgba(82, 104, 95, .22);
}

@media(max-width:560px) {
    .supporting-slide-actions {
        margin-top: 12px
    }

    .supporting-slide-cta {
        width: 100%;
        min-height: 44px;
    }
}

@keyframes dkSupportingLoop {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(calc(-50% - 13px));
    }
}

@media(max-width:980px) {
    .supporting-services-head {
        display: block;
    }

    .supporting-services-head p {
        margin-top: 14px;
    }

    .supporting-slide {
        width: min(340px, 82vw);
        min-height: 410px;
        grid-template-rows: 230px 1fr;
    }
}

@media(max-width:560px) {
    .supporting-services-wrap {
        padding-top: 28px;
    }

    .supporting-slide {
        width: 78vw;
        min-height: 390px;
        padding: 20px 18px;
        grid-template-rows: 220px 1fr;
    }

    .supporting-slide-copy h4 {
        font-size: 30px;
    }

    .supporting-track {
        gap: 18px;
        animation-duration: 28s;
    }
}



/* V20 compact animated reason section */
.why-compact {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 18%, rgba(107, 130, 120, .10), transparent 30%),
        linear-gradient(180deg, #fffdf8 0%, #fbf6ee 100%);
    padding: 82px 0 !important;
}

.why-compact:before {
    content: "";
    position: absolute;
    inset: 18px 6%;
    border-top: 1px solid rgba(31, 27, 22, .08);
    pointer-events: none;
}

.why-compact-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: .78fr 1.22fr;
    gap: 46px;
    align-items: center;
}

.why-compact-copy h2 {
    font-size: clamp(42px, 4.8vw, 76px);
    line-height: .9;
    letter-spacing: -.045em;
    font-weight: 500;
    margin: 16px 0 14px;
}

.why-compact-copy p {
    max-width: 420px;
    color: rgba(31, 27, 22, .62);
    font-size: 16px;
    line-height: 1.7;
    margin: 0;
}

.why-orbit {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.why-chip {
    position: relative;
    overflow: hidden;
    min-height: 168px;
    padding: 22px 22px 20px;
    border: 1px solid rgba(31, 27, 22, .08);
    border-radius: 26px;
    background: rgba(255, 253, 248, .62);
    box-shadow: 0 18px 54px rgba(31, 27, 22, .055);
    transform: translateY(18px);
    opacity: 0;
    transition: transform .45s ease, box-shadow .45s ease, border-color .45s ease;
}

.why-chip:before {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    right: -44px;
    top: -44px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(107, 130, 120, .18), transparent 68%);
    transform: scale(.7);
    opacity: .78;
}

.why-chip:after {
    content: "";
    position: absolute;
    left: -45%;
    top: 0;
    width: 34%;
    height: 100%;
    background: linear-gradient(110deg, transparent, rgba(255, 255, 255, .38), transparent);
    transform: skewX(-18deg);
    opacity: 0;
}

.why-orbit.show .why-chip {
    animation: whyChipIn .82s cubic-bezier(.2, .8, .2, 1) forwards;
}

.why-orbit.show .why-chip:nth-child(1) {
    animation-delay: .06s
}

.why-orbit.show .why-chip:nth-child(2) {
    animation-delay: .18s
}

.why-orbit.show .why-chip:nth-child(3) {
    animation-delay: .30s
}

.why-orbit.show .why-chip:nth-child(4) {
    animation-delay: .42s
}

.why-orbit.show .why-chip:after {
    animation: whyShine 4.8s ease-in-out infinite;
}

.why-orbit.show .why-chip:nth-child(2):after {
    animation-delay: .7s
}

.why-orbit.show .why-chip:nth-child(3):after {
    animation-delay: 1.4s
}

.why-orbit.show .why-chip:nth-child(4):after {
    animation-delay: 2.1s
}

.why-chip:hover {
    transform: translateY(-6px) !important;
    border-color: rgba(82, 104, 95, .28);
    box-shadow: 0 26px 72px rgba(31, 27, 22, .09);
}

.why-chip .why-icon {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    margin-bottom: 18px;
    background: rgba(82, 104, 95, .10);
    color: var(--deep);
    font-weight: 700;
    letter-spacing: .04em;
}

.why-chip h3 {
    position: relative;
    margin: 0 0 8px;
    font-size: 21px;
    letter-spacing: -.02em;
}

.why-chip p {
    position: relative;
    margin: 0;
    color: rgba(31, 27, 22, .62);
    line-height: 1.55;
    font-size: 14px;
}

@keyframes whyChipIn {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.98)
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1)
    }
}

@keyframes whyShine {

    0%,
    55% {
        left: -45%;
        opacity: 0
    }

    66% {
        opacity: .65
    }

    82% {
        left: 118%;
        opacity: 0
    }

    100% {
        left: 118%;
        opacity: 0
    }
}

@media(max-width:900px) {
    .why-compact-inner {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: center
    }

    .why-compact-copy p {
        margin: auto
    }
}

@media(max-width:620px) {
    .why-compact {
        padding: 70px 0 !important
    }

    .why-orbit {
        grid-template-columns: 1fr
    }

    .why-chip {
        min-height: auto
    }
}

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

    .why-orbit.show .why-chip,
    .why-orbit.show .why-chip:after {
        animation: none !important;
        opacity: 1;
        transform: none
    }
}



/* ===== V19 Soft Premium Motion: hero + first sections ===== */
:root {
    --mx: 0px;
    --my: 0px;
    --tiltX: 0deg;
    --tiltY: 0deg;
}

.hero-clean {
    position: relative;
    isolation: isolate;
}

.hero-clean:before {
    content: "";
    position: absolute;
    inset: -18% -10% auto auto;
    width: min(680px, 58vw);
    height: min(680px, 58vw);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .72), rgba(217, 221, 212, .28) 46%, transparent 72%);
    filter: blur(24px);
    opacity: .9;
    z-index: 0;
    animation: dkGlowDrift 12s ease-in-out infinite;
    pointer-events: none;
}

.hero-clean:after {
    content: "";
    position: absolute;
    left: 8%;
    bottom: 5%;
    width: min(420px, 46vw);
    height: min(420px, 46vw);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(107, 130, 120, .11), transparent 70%);
    filter: blur(28px);
    z-index: 0;
    animation: dkGlowDriftAlt 14s ease-in-out infinite;
    pointer-events: none;
}

.hero-clean-inner {
    position: relative;
    z-index: 2;
}

.hero-clean-kicker {
    animation: dkFadeUp .9s cubic-bezier(.2, .8, .2, 1) .05s both;
}

.hero-clean h1 {
    animation: dkFadeUp 1s cubic-bezier(.2, .8, .2, 1) .18s both;
}

.hero-clean p {
    animation: dkFadeUp 1s cubic-bezier(.2, .8, .2, 1) .32s both;
}

.hero-clean .hero-ctas {
    animation: dkFadeUp 1s cubic-bezier(.2, .8, .2, 1) .46s both;
}

.hero-clean-visual {
    transform: translate3d(var(--mx), var(--my), 0) rotateX(var(--tiltX)) rotateY(var(--tiltY));
    transition: transform .28s ease-out;
    will-change: transform;
}

.hero-clean-visual:before {
    animation: dkHaloBreath 7s ease-in-out infinite !important;
}

.clean-hero-img {
    animation: dkDeviceFloat 6.8s ease-in-out infinite !important;
}

.hero-clean-strip a {
    position: relative;
    overflow: hidden;
}

.hero-clean-strip a:after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-115%);
    background: linear-gradient(105deg, transparent 20%, rgba(255, 255, 255, .38) 50%, transparent 78%);
    animation: dkSoftSweep 7.5s ease-in-out infinite;
    pointer-events: none;
}

.hero-clean-strip a:nth-child(2):after {
    animation-delay: .65s
}

.hero-clean-strip a:nth-child(3):after {
    animation-delay: 1.3s
}

.hero-clean-strip a:nth-child(4):after {
    animation-delay: 1.95s
}

.about .pill {
    transition: transform .35s ease, background .35s ease, border-color .35s ease, box-shadow .35s ease;
}

.about .pill:hover {
    transform: translateY(-4px);
    background: rgba(255, 255, 255, .095);
    border-color: rgba(255, 255, 255, .34);
    box-shadow: 0 16px 44px rgba(255, 255, 255, .06);
}

.service-primary,
.supporting-slide,
.why-chip {
    will-change: transform;
}

.service-primary {
    transition: transform .45s cubic-bezier(.2, .8, .2, 1), box-shadow .45s ease;
}

.service-primary:hover {
    transform: translateY(-8px);
}

.service-primary-visual img {
    animation: dkDeviceFloatSmall 7.2s ease-in-out infinite;
}

.supporting-slide {
    transition: transform .35s ease, box-shadow .35s ease;
}

.supporting-slide:hover {
    transform: translateY(-8px) scale(1.012);
}

.supporting-slide-visual img {
    animation: dkDeviceFloatTiny 6.6s ease-in-out infinite;
}

.why-chip {
    transition: transform .35s ease, background .35s ease, border-color .35s ease;
}

.why-chip:hover {
    transform: translateY(-6px);
}

@keyframes dkFadeUp {
    from {
        opacity: 0;
        transform: translateY(22px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@keyframes dkGlowDrift {

    0%,
    100% {
        transform: translate3d(0, 0, 0) scale(1)
    }

    50% {
        transform: translate3d(-34px, 28px, 0) scale(1.08)
    }
}

@keyframes dkGlowDriftAlt {

    0%,
    100% {
        transform: translate3d(0, 0, 0) scale(1)
    }

    50% {
        transform: translate3d(36px, -24px, 0) scale(1.06)
    }
}

@keyframes dkHaloBreath {

    0%,
    100% {
        opacity: .58;
        transform: translate(-50%, -50%) scale(1)
    }

    50% {
        opacity: .92;
        transform: translate(-50%, -50%) scale(1.045)
    }
}

@keyframes dkDeviceFloat {

    0%,
    100% {
        transform: translateY(0) rotate(.15deg)
    }

    50% {
        transform: translateY(-11px) rotate(-.15deg)
    }
}

@keyframes dkDeviceFloatSmall {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-7px)
    }
}

@keyframes dkDeviceFloatTiny {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-5px)
    }
}

@keyframes dkSoftSweep {

    0%,
    22% {
        transform: translateX(-115%);
        opacity: 0
    }

    34% {
        opacity: .45
    }

    54% {
        transform: translateX(115%);
        opacity: .28
    }

    68%,
    100% {
        transform: translateX(115%);
        opacity: 0
    }
}

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

    .hero-clean:before,
    .hero-clean:after,
    .hero-clean-kicker,
    .hero-clean h1,
    .hero-clean p,
    .hero-clean .hero-ctas,
    .hero-clean-visual:before,
    .clean-hero-img,
    .hero-clean-strip a:after,
    .service-primary-visual img,
    .supporting-slide-visual img {
        animation: none !important
    }

    .hero-clean-visual {
        transform: none !important
    }
}

@media(max-width:640px) {

    .hero-clean:before,
    .hero-clean:after {
        opacity: .45
    }

    .hero-clean-visual {
        transform: none !important
    }

    .service-primary:hover,
    .supporting-slide:hover,
    .why-chip:hover {
        transform: none
    }
}



/* Final navbar logo update */
.header {
    min-height: 64px;
}

.brand {
    gap: 0 !important;
    letter-spacing: 0 !important;
    min-width: 150px;
}

.brand img {
    width: 150px !important;
    height: auto !important;
    max-height: 56px !important;
    object-fit: contain !important;
    border-radius: 0 !important;
    display: block !important;
}

@media(max-width:700px) {
    .header {
        min-height: 58px;
        padding: 8px 12px !important
    }

    .brand {
        min-width: 118px
    }

    .brand img {
        width: 118px !important;
        max-height: 48px !important
    }
}


/* V19 promotional popup: center-first modal then compact corner card */
.promo {
    position: fixed !important;
    left: 50% !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) scale(.94) !important;
    width: min(620px, calc(100% - 38px)) !important;
    z-index: 90 !important;
    display: block !important;
    opacity: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
    padding: 34px 34px 32px !important;
    color: #fff !important;
    border: 1px solid rgba(255, 255, 255, .18) !important;
    border-radius: 34px !important;
    background:
        radial-gradient(circle at 12% 4%, rgba(255, 255, 255, .25), transparent 28%),
        radial-gradient(circle at 88% 18%, rgba(214, 187, 132, .24), transparent 32%),
        linear-gradient(135deg, #213831 0%, #52685f 58%, #1f1b16 100%) !important;
    box-shadow: 0 46px 120px rgba(31, 27, 22, .32), 0 0 0 9999px rgba(31, 27, 22, .28) !important;
    transition: opacity .45s ease, transform .45s cubic-bezier(.2, .8, .2, 1), left .55s ease, top .55s ease, right .55s ease, bottom .55s ease, width .55s ease, padding .55s ease, box-shadow .55s ease, border-radius .55s ease !important;
}

.promo:before {
    content: "";
    position: absolute;
    inset: -40% auto -40% -22%;
    width: 42%;
    transform: skewX(-18deg) translateX(-120%);
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .34), transparent);
    filter: blur(10px);
    animation: promoShine 3.2s ease-in-out infinite;
}

.promo:after {
    content: "\2713";
    position: absolute;
    right: 28px;
    top: 28px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .09);
    color: rgba(255, 255, 255, .78);
    font-size: 11px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.promo.active {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translate(-50%, -50%) scale(1) !important;
    animation: promoBreathe 2.8s ease-in-out infinite !important;
}

.promo.corner {
    left: auto !important;
    top: auto !important;
    right: 24px !important;
    bottom: 24px !important;
    transform: none !important;
    width: min(390px, calc(100% - 48px)) !important;
    padding: 24px !important;
    border-radius: 28px !important;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28) !important;
    animation: cornerPulse 3s ease-in-out infinite !important;
}

.promo.corner:after {
    display: none !important;
}

.promo .close {
    position: absolute !important;
    right: 16px !important;
    top: 14px !important;
    width: 34px !important;
    height: 34px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(255, 255, 255, .2) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .1) !important;
    color: #fff !important;
    font-size: 22px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    z-index: 3 !important;
}

.promo .badge {
    background: rgba(214, 187, 132, .22) !important;
    border: 1px solid rgba(214, 187, 132, .46) !important;
    color: #fff !important;
    margin-bottom: 14px !important;
}

.promo h3 {
    font-size: clamp(38px, 4.1vw, 64px) !important;
    max-width: 470px !important;
    margin: 8px 0 14px !important;
    line-height: .9 !important;
    letter-spacing: -.035em !important;
}

.promo p {
    max-width: 500px !important;
    color: rgba(255, 255, 255, .76) !important;
    font-size: 15px !important;
    line-height: 1.62 !important;
    margin: 0 0 22px !important;
}

.promo .btn {
    background: #fff !important;
    color: #213831 !important;
    border-color: #fff !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, .16) !important;
}

.promo.corner h3 {
    font-size: 38px !important;
    max-width: 300px !important;
}

.promo.corner p {
    font-size: 14px !important;
    margin-bottom: 18px !important;
}

@keyframes promoBreathe {

    0%,
    100% {
        box-shadow: 0 46px 120px rgba(31, 27, 22, .32), 0 0 0 9999px rgba(31, 27, 22, .28)
    }

    50% {
        box-shadow: 0 54px 140px rgba(31, 27, 22, .42), 0 0 0 9999px rgba(31, 27, 22, .34)
    }
}

@keyframes promoShine {

    0%,
    18% {
        transform: skewX(-18deg) translateX(-140%);
        opacity: 0
    }

    36% {
        opacity: .9
    }

    64% {
        transform: skewX(-18deg) translateX(420%);
        opacity: 0
    }

    100% {
        transform: skewX(-18deg) translateX(420%);
        opacity: 0
    }
}

@keyframes cornerPulse {

    0%,
    100% {
        box-shadow: 0 28px 80px rgba(0, 0, 0, .28)
    }

    50% {
        box-shadow: 0 34px 92px rgba(82, 104, 95, .38)
    }
}

@media(max-width:560px) {
    .promo {
        width: calc(100% - 28px) !important;
        padding: 28px 22px 24px !important;
        border-radius: 28px !important;
    }

    .promo:after {
        position: relative;
        display: inline-block;
        right: auto;
        top: auto;
        margin: 0 0 10px;
    }

    .promo h3 {
        font-size: 38px !important;
    }

    .promo.corner {
        right: 14px !important;
        bottom: 14px !important;
        width: calc(100% - 28px) !important;
    }
}

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

    .promo,
    .promo:before {
        animation: none !important;
    }
}


/* V20 premium ivory promotional popup design - keeps existing animation behavior */
.promo.promo-premium {
    color: var(--ink) !important;
    padding: 0 !important;
    border-radius: 34px !important;
    border: 1px solid rgba(107, 130, 120, .22) !important;
    background:
        radial-gradient(circle at 0% 0%, rgba(255, 255, 255, .98), transparent 32%),
        radial-gradient(circle at 96% 10%, rgba(214, 187, 132, .30), transparent 28%),
        linear-gradient(135deg, #fffdf8 0%, #fbf6ee 52%, #efe5d5 100%) !important;
    box-shadow: 0 50px 130px rgba(31, 27, 22, .22), 0 0 0 9999px rgba(31, 27, 22, .24) !important;
}

.promo.promo-premium:before {
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .70), rgba(214, 187, 132, .28), transparent) !important;
    filter: blur(12px) !important;
}

.promo.promo-premium:after {
    content: "\2713" !important;
    right: 28px !important;
    top: 28px !important;
    border-color: rgba(107, 130, 120, .22) !important;
    background: rgba(82, 104, 95, .09) !important;
    color: var(--deep) !important;
    font-weight: 700 !important;
}

.promo.promo-premium .promo-inner {
    position: relative;
    z-index: 2;
    padding: 38px 36px 34px;
}

.promo.promo-premium .promo-inner:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 9px;
    border-radius: 34px 0 0 34px;
    background: linear-gradient(180deg, var(--deep), #d6bb84, var(--deep));
}

.promo.promo-premium .close {
    background: rgba(31, 27, 22, .05) !important;
    border-color: rgba(31, 27, 22, .13) !important;
    color: var(--ink) !important;
}

.promo.promo-premium .promo-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 11px;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--deep);
    font-weight: 800;
    margin-bottom: 16px;
}

.promo.promo-premium .promo-kicker:before {
    content: "";
    width: 36px;
    height: 1px;
    background: rgba(82, 104, 95, .55);
}

.promo.promo-premium h3 {
    color: var(--ink) !important;
    font-size: clamp(44px, 4.5vw, 70px) !important;
    max-width: 520px !important;
    margin: 0 0 18px !important;
    line-height: .84 !important;
    letter-spacing: -.048em !important;
}

.promo.promo-premium .promo-highlight {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin: 18px 0 16px;
}

.promo.promo-premium .promo-highlight span {
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(82, 104, 95, .18);
    background: rgba(255, 255, 255, .48);
    color: rgba(31, 27, 22, .74);
    font-size: 13px;
    font-weight: 700;
}

.promo.promo-premium .promo-highlight strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 28px;
    color: #b49455;
    line-height: 1;
}

.promo.promo-premium .promo-discount {
    display: grid;
    grid-template-columns: auto auto 1fr;
    align-items: end;
    gap: 12px;
    padding: 16px 18px;
    margin: 16px 0 18px;
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(82, 104, 95, .10), rgba(214, 187, 132, .14));
    border: 1px solid rgba(82, 104, 95, .12);
}

.promo.promo-premium .promo-discount small {
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--deep);
    font-weight: 800;
    padding-bottom: 10px;
}

.promo.promo-premium .promo-discount b {
    font-family: 'Cormorant Garamond', serif;
    font-size: 74px;
    line-height: .78;
    letter-spacing: -.06em;
    color: var(--ink);
}

.promo.promo-premium .promo-discount em {
    font-style: normal;
    font-size: 14px;
    color: rgba(31, 27, 22, .64);
    padding-bottom: 8px;
}

.promo.promo-premium p {
    color: rgba(31, 27, 22, .66) !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    max-width: 530px !important;
    margin: 0 0 22px !important;
}

.promo.promo-premium .promo-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

.promo.promo-premium .promo-limit {
    color: var(--deep);
    font-size: 12px;
    letter-spacing: .13em;
    text-transform: uppercase;
    font-weight: 800;
}

.promo.promo-premium .btn {
    background: var(--deep) !important;
    color: #fff !important;
    border-color: var(--deep) !important;
    box-shadow: 0 16px 40px rgba(82, 104, 95, .18) !important;
}

.promo.promo-premium.corner {
    border-radius: 28px !important;
    box-shadow: 0 28px 80px rgba(31, 27, 22, .20) !important;
}

.promo.promo-premium.corner .promo-inner {
    padding: 26px 24px 24px;
}

.promo.promo-premium.corner .promo-inner:before {
    width: 7px;
    border-radius: 28px 0 0 28px;
}

.promo.promo-premium.corner .promo-kicker {
    margin-bottom: 10px;
    font-size: 10px;
}

.promo.promo-premium.corner h3 {
    font-size: 38px !important;
    max-width: 280px !important;
    margin-bottom: 14px !important;
}

.promo.promo-premium.corner .promo-highlight {
    display: none;
}

.promo.promo-premium.corner .promo-discount {
    grid-template-columns: auto 1fr;
    gap: 8px;
    margin: 12px 0 14px;
    padding: 12px 14px;
    border-radius: 18px;
}

.promo.promo-premium.corner .promo-discount small {
    display: none;
}

.promo.promo-premium.corner .promo-discount b {
    font-size: 48px;
}

.promo.promo-premium.corner .promo-discount em {
    font-size: 12px;
    padding-bottom: 5px;
}

.promo.promo-premium.corner p {
    font-size: 13px !important;
    margin-bottom: 16px !important;
}

.promo.promo-premium.corner .promo-limit {
    font-size: 10px;
}

@media(max-width:560px) {
    .promo.promo-premium .promo-inner {
        padding: 30px 22px 24px;
    }

    .promo.promo-premium:after {
        position: relative !important;
        right: auto !important;
        top: auto !important;
        margin: 0 0 0 22px !important;
        display: inline-flex !important;
    }

    .promo.promo-premium h3 {
        font-size: 42px !important;
    }

    .promo.promo-premium .promo-discount {
        grid-template-columns: auto 1fr;
    }

    .promo.promo-premium .promo-discount small {
        display: none;
    }

    .promo.promo-premium .promo-discount b {
        font-size: 56px;
    }
}


/* V21 clear offer popup: bigger 30% + 30 people focus */
.promo.promo-clear-offer {
    width: min(760px, calc(100% - 44px)) !important;
    border-radius: 38px !important;
    border: 1px solid rgba(82, 104, 95, .22) !important;
    background:
        radial-gradient(circle at 12% 15%, rgba(255, 255, 255, .96), transparent 34%),
        radial-gradient(circle at 94% 9%, rgba(214, 187, 132, .34), transparent 32%),
        linear-gradient(135deg, #fffdf8 0%, #fbf6ee 48%, #eadfcd 100%) !important;
    overflow: hidden !important;
}

.promo.promo-clear-offer:after {
    display: none !important;
}

.promo.promo-clear-offer .promo-inner {
    padding: 34px 34px 30px !important;
}

.promo.promo-clear-offer .promo-inner:before {
    width: 100% !important;
    height: 7px !important;
    bottom: auto !important;
    right: 0 !important;
    border-radius: 38px 38px 0 0 !important;
    background: linear-gradient(90deg, var(--deep), #d6bb84, var(--deep)) !important;
}

.promo.promo-clear-offer .promo-kicker {
    margin-bottom: 22px !important;
    padding-left: 0 !important;
    color: var(--deep) !important;
}

.promo.promo-clear-offer .promo-kicker:before {
    display: none !important;
}

.promo-main-grid {
    display: grid;
    grid-template-columns: minmax(210px, .8fr) 1.2fr;
    gap: 24px;
    align-items: center;
}

.promo-hero-number {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 230px;
    border-radius: 30px;
    background:
        radial-gradient(circle at 50% 42%, rgba(255, 255, 255, .24), transparent 46%),
        linear-gradient(145deg, var(--deep), #31443c 72%);
    color: #fff;
    overflow: hidden;
    box-shadow: 0 28px 70px rgba(82, 104, 95, .30);
}

.promo-hero-number:before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 24px;
}

.promo-hero-number:after {
    content: "";
    position: absolute;
    width: 80px;
    height: 160%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .36), transparent);
    transform: rotate(18deg) translateX(-210px);
    animation: offerNumberShine 2.8s ease-in-out infinite;
}

.promo-hero-number span {
    position: absolute;
    top: 28px;
    left: 28px;
    font-size: 12px;
    letter-spacing: .22em;
    text-transform: uppercase;
    font-weight: 800;
    color: rgba(255, 255, 255, .68);
}

.promo-hero-number strong {
    position: relative;
    z-index: 1;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(88px, 11vw, 138px);
    line-height: .75;
    letter-spacing: -.08em;
}

.promo.promo-clear-offer .promo-copy h3 {
    font-size: clamp(40px, 4vw, 68px) !important;
    line-height: .9 !important;
    margin: 0 0 16px !important;
    max-width: 420px !important;
}

.promo.promo-clear-offer .promo-copy p {
    margin: 0 !important;
    max-width: 430px !important;
    font-size: 17px !important;
    color: rgba(31, 27, 22, .68) !important;
}

.promo-count-strip {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 18px;
    margin: 24px 0 22px;
}

.promo-count {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 20px;
    border-radius: 24px;
    background: #fffdf8;
    border: 1px solid rgba(214, 187, 132, .42);
    box-shadow: 0 16px 40px rgba(31, 27, 22, .06);
}

.promo-count strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 72px;
    line-height: .72;
    color: #b49455;
    letter-spacing: -.05em;
    animation: countPulse 1.9s ease-in-out infinite;
}

.promo-count span {
    font-size: 13px;
    line-height: 1.2;
    color: rgba(31, 27, 22, .70);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.promo-services {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.promo-services span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .55);
    border: 1px solid rgba(82, 104, 95, .13);
    color: rgba(31, 27, 22, .72);
    font-weight: 750;
    font-size: 13px;
}

.promo.promo-clear-offer .promo-bottom {
    padding-top: 18px;
    border-top: 1px solid rgba(31, 27, 22, .10);
}

.promo.promo-clear-offer .btn {
    background: #1f1b16 !important;
    border-color: #1f1b16 !important;
    padding: 14px 22px !important;
}

@keyframes offerNumberShine {

    0%,
    18% {
        transform: rotate(18deg) translateX(-230px);
        opacity: 0
    }

    36% {
        opacity: .65
    }

    64% {
        transform: rotate(18deg) translateX(270px);
        opacity: 0
    }

    100% {
        transform: rotate(18deg) translateX(270px);
        opacity: 0
    }
}

@keyframes countPulse {

    0%,
    100% {
        transform: scale(1)
    }

    50% {
        transform: scale(1.055)
    }
}

.promo.promo-clear-offer.corner {
    width: min(390px, calc(100% - 48px)) !important;
    border-radius: 30px !important;
}

.promo.promo-clear-offer.corner .promo-inner {
    padding: 26px 24px 24px !important;
}

.promo.promo-clear-offer.corner .promo-main-grid {
    grid-template-columns: 1fr;
    gap: 14px;
}

.promo.promo-clear-offer.corner .promo-hero-number {
    min-height: 132px;
    border-radius: 22px;
}

.promo.promo-clear-offer.corner .promo-hero-number strong {
    font-size: 84px;
}

.promo.promo-clear-offer.corner .promo-hero-number span {
    top: 18px;
    left: 20px;
}

.promo.promo-clear-offer.corner .promo-copy h3 {
    font-size: 34px !important;
}

.promo.promo-clear-offer.corner .promo-copy p {
    font-size: 13px !important;
}

.promo.promo-clear-offer.corner .promo-count-strip {
    grid-template-columns: 1fr;
    margin: 14px 0;
}

.promo.promo-clear-offer.corner .promo-count {
    padding: 14px 16px;
}

.promo.promo-clear-offer.corner .promo-count strong {
    font-size: 52px;
}

.promo.promo-clear-offer.corner .promo-services {
    display: none;
}

@media(max-width:680px) {
    .promo.promo-clear-offer {
        width: calc(100% - 28px) !important;
    }

    .promo-main-grid {
        grid-template-columns: 1fr;
    }

    .promo-hero-number {
        min-height: 170px;
    }

    .promo-count-strip {
        grid-template-columns: 1fr;
    }

    .promo-services {
        grid-template-columns: 1fr 1fr;
    }

    .promo.promo-clear-offer .promo-inner {
        padding: 28px 22px 24px !important;
    }
}



/* V22 unified typography + clean premium popup */
:root {
    --dk-gold: #b99659;
    --dk-gold-soft: #efe1c3;
    --dk-ivory: #fffdf8;
    --dk-cream: #fbf6ee;
    --dk-green: #52685f;
    --dk-ink: #1f1b16;
}

body,
button,
input,
select,
a,
p,
span,
small,
strong,
b,
em,
li,
label,
div,
h1,
h2,
h3,
h4,
h5,
h6,
.serif,
.price strong,
.num,
.promo * {
    font-family: 'Inter', Arial, sans-serif !important;
}

h1,
h2,
h3,
h4 {
    letter-spacing: -.045em;
}

.promo.promo-unified {
    position: fixed !important;
    left: 50% !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) scale(.96) !important;
    width: min(560px, calc(100% - 36px)) !important;
    z-index: 95 !important;
    display: block !important;
    opacity: 0 !important;
    pointer-events: none !important;
    padding: 0 !important;
    border-radius: 34px !important;
    overflow: hidden !important;
    color: var(--dk-ink) !important;
    border: 1px solid rgba(82, 104, 95, .18) !important;
    background: linear-gradient(180deg, #fffdf8 0%, #fbf6ee 100%) !important;
    box-shadow: 0 42px 120px rgba(31, 27, 22, .22), 0 0 0 9999px rgba(31, 27, 22, .26) !important;
    transition: opacity .45s ease, transform .45s cubic-bezier(.2, .8, .2, 1), left .55s ease, top .55s ease, right .55s ease, bottom .55s ease, width .55s ease, box-shadow .55s ease, border-radius .55s ease !important;
}

.promo.promo-unified:before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: radial-gradient(circle at 18% 0%, rgba(255, 255, 255, .96), transparent 34%), radial-gradient(circle at 92% 10%, rgba(185, 150, 89, .18), transparent 32%) !important;
    pointer-events: none !important;
    animation: none !important;
}

.promo.promo-unified:after {
    content: "" !important;
    position: absolute !important;
    left: -26% !important;
    top: -30% !important;
    width: 38% !important;
    height: 160% !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .86), transparent) !important;
    filter: blur(12px) !important;
    transform: skewX(-18deg) translateX(-160%) !important;
    animation: promoCleanSweep 3.4s ease-in-out infinite !important;
    pointer-events: none !important;
}

.promo.promo-unified.active {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translate(-50%, -50%) scale(1) !important;
    animation: promoSoftPulse 3.2s ease-in-out infinite !important;
}

.promo.promo-unified .promo-inner {
    position: relative;
    z-index: 2;
    padding: 28px !important;
}

.promo.promo-unified .close {
    position: absolute !important;
    right: 16px !important;
    top: 16px !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(31, 27, 22, .12) !important;
    background: rgba(255, 255, 255, .72) !important;
    color: var(--dk-ink) !important;
    display: grid !important;
    place-items: center !important;
    font-size: 22px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    z-index: 5 !important;
}

.promo.promo-unified .promo-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 44px 22px 0;
    text-transform: uppercase;
    letter-spacing: .18em;
    font-size: 11px;
    font-weight: 800;
    color: var(--dk-green);
}

.promo.promo-unified .promo-topline i {
    font-style: normal;
    letter-spacing: .13em;
    color: var(--dk-gold);
    border: 1px solid rgba(185, 150, 89, .28);
    background: rgba(185, 150, 89, .08);
    border-radius: 999px;
    padding: 7px 10px;
}

.promo-offer-grid {
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    gap: 14px;
    margin-bottom: 20px;
}

.promo-save-block,
.promo-limit-block {
    position: relative;
    overflow: hidden;
    border-radius: 26px;
    min-height: 190px;
    display: grid;
    place-items: center;
    text-align: center;
}

.promo-save-block {
    background: linear-gradient(145deg, var(--dk-green), #22382f);
    color: #fff;
    box-shadow: 0 22px 54px rgba(82, 104, 95, .28);
}

.promo-save-block:before,
.promo-limit-block:before {
    content: "";
    position: absolute;
    inset: 14px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, .20);
    pointer-events: none;
}

.promo-save-block span {
    position: absolute;
    top: 24px;
    left: 24px;
    text-transform: uppercase;
    letter-spacing: .24em;
    font-size: 11px;
    font-weight: 800;
    color: rgba(255, 255, 255, .72);
}

.promo-save-block strong {
    font-size: 118px;
    line-height: .78;
    letter-spacing: -.095em;
    font-weight: 900;
    color: #fff;
    animation: promoNumberPop 2.4s ease-in-out infinite;
}

.promo-limit-block {
    background: #fff;
    border: 1px solid rgba(185, 150, 89, .24);
    box-shadow: 0 14px 38px rgba(31, 27, 22, .05);
    padding: 20px;
    color: var(--dk-ink);
}

.promo-limit-block:before {
    border-color: rgba(185, 150, 89, .20);
}

.promo-limit-block small {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .18em;
    font-weight: 800;
    color: rgba(31, 27, 22, .48);
    align-self: end;
}

.promo-limit-block strong {
    font-size: 82px;
    line-height: .78;
    letter-spacing: -.07em;
    font-weight: 900;
    color: var(--dk-gold);
}

.promo-limit-block span {
    text-transform: uppercase;
    letter-spacing: .14em;
    font-size: 12px;
    font-weight: 900;
    color: var(--dk-green);
    align-self: start;
}

.promo-copy-clean {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 18px;
    align-items: end;
    margin: 0 0 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(31, 27, 22, .09);
}

.promo-copy-clean h3 {
    font-size: 34px !important;
    line-height: .98 !important;
    margin: 0 !important;
    font-weight: 800 !important;
    color: var(--dk-ink) !important;
    letter-spacing: -.055em !important;
}

.promo-copy-clean p {
    margin: 0 !important;
    color: rgba(31, 27, 22, .62) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.promo-mini-services {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 0 0 20px;
}

.promo-mini-services span {
    border: 1px solid rgba(82, 104, 95, .13);
    background: rgba(255, 255, 255, .55);
    border-radius: 999px;
    padding: 9px 12px;
    font-size: 12px;
    font-weight: 700;
    color: rgba(31, 27, 22, .66);
}

.promo.promo-unified .promo-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    padding-top: 0 !important;
    border: 0 !important;
}

.promo.promo-unified .promo-limit {
    font-size: 11px;
    letter-spacing: .13em;
    text-transform: uppercase;
    font-weight: 800;
    color: rgba(31, 27, 22, .46);
}

.promo.promo-unified .btn {
    background: var(--dk-ink) !important;
    color: #fff !important;
    border-color: var(--dk-ink) !important;
    border-radius: 999px !important;
    padding: 14px 22px !important;
    box-shadow: 0 14px 34px rgba(31, 27, 22, .14) !important;
    font-weight: 800 !important;
}

.promo.promo-unified.corner {
    left: auto !important;
    top: auto !important;
    right: 24px !important;
    bottom: 24px !important;
    transform: none !important;
    width: min(360px, calc(100% - 48px)) !important;
    border-radius: 28px !important;
    box-shadow: 0 24px 70px rgba(31, 27, 22, .18) !important;
    animation: cornerPulse 3.2s ease-in-out infinite !important;
}

.promo.promo-unified.corner .promo-inner {
    padding: 22px !important;
}

.promo.promo-unified.corner .promo-topline {
    margin-bottom: 14px;
    font-size: 9px;
    letter-spacing: .14em;
}

.promo.promo-unified.corner .promo-topline i {
    display: none;
}

.promo.promo-unified.corner .promo-offer-grid {
    grid-template-columns: 1fr 120px;
    gap: 10px;
    margin-bottom: 14px;
}

.promo.promo-unified.corner .promo-save-block,
.promo.promo-unified.corner .promo-limit-block {
    min-height: 120px;
    border-radius: 20px;
}

.promo.promo-unified.corner .promo-save-block strong {
    font-size: 72px;
}

.promo.promo-unified.corner .promo-save-block span {
    top: 15px;
    left: 16px;
    font-size: 9px;
}

.promo.promo-unified.corner .promo-limit-block strong {
    font-size: 46px;
}

.promo.promo-unified.corner .promo-limit-block small {
    display: none;
}

.promo.promo-unified.corner .promo-limit-block span {
    font-size: 9px;
}

.promo.promo-unified.corner .promo-copy-clean {
    display: block;
    margin-bottom: 12px;
    padding-bottom: 12px;
}

.promo.promo-unified.corner .promo-copy-clean h3 {
    font-size: 24px !important;
    margin-bottom: 8px !important;
}

.promo.promo-unified.corner .promo-copy-clean p {
    font-size: 12px !important;
}

.promo.promo-unified.corner .promo-mini-services {
    display: none;
}

.promo.promo-unified.corner .promo-limit {
    display: none;
}

@keyframes promoCleanSweep {

    0%,
    18% {
        transform: skewX(-18deg) translateX(-160%);
        opacity: 0
    }

    38% {
        opacity: .65
    }

    62% {
        transform: skewX(-18deg) translateX(470%);
        opacity: 0
    }

    100% {
        transform: skewX(-18deg) translateX(470%);
        opacity: 0
    }
}

@keyframes promoSoftPulse {

    0%,
    100% {
        box-shadow: 0 42px 120px rgba(31, 27, 22, .22), 0 0 0 9999px rgba(31, 27, 22, .26)
    }

    50% {
        box-shadow: 0 52px 135px rgba(31, 27, 22, .30), 0 0 0 9999px rgba(31, 27, 22, .30)
    }
}

@keyframes promoNumberPop {

    0%,
    100% {
        transform: scale(1)
    }

    50% {
        transform: scale(1.035)
    }
}

@media(max-width:620px) {
    .promo.promo-unified {
        width: calc(100% - 28px) !important;
        border-radius: 28px !important
    }

    .promo.promo-unified .promo-inner {
        padding: 24px 18px 20px !important
    }

    .promo-offer-grid {
        grid-template-columns: 1fr
    }

    .promo-save-block {
        min-height: 160px
    }

    .promo-save-block strong {
        font-size: 96px
    }

    .promo-limit-block {
        min-height: 122px
    }

    .promo-copy-clean {
        display: block
    }

    .promo-copy-clean h3 {
        margin-bottom: 10px !important
    }

    .promo-mini-services span {
        font-size: 11px
    }

    .promo.promo-unified.corner {
        right: 14px !important;
        bottom: 14px !important;
        width: calc(100% - 28px) !important
    }

    .promo.promo-unified.corner .promo-offer-grid {
        grid-template-columns: 1fr 110px;
    }
}

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

    .promo.promo-unified,
    .promo.promo-unified:after,
    .promo-save-block strong {
        animation: none !important;
    }
}

/* Promo service pills: sequential push on initial load */
.promo-mini-services span {
    opacity: 0;
    transform: translateY(12px) scale(.92);
    will-change: transform, opacity, box-shadow, background;
}

.promo.promo-unified.active:not(.corner) .promo-mini-services span {
    animation: promoServicePush .86s cubic-bezier(.22, 1, .36, 1) forwards;
}

.promo.promo-unified.active:not(.corner) .promo-mini-services span:nth-child(1) {
    animation-delay: .60s;
}

.promo.promo-unified.active:not(.corner) .promo-mini-services span:nth-child(2) {
    animation-delay: 1.30s;
}

.promo.promo-unified.active:not(.corner) .promo-mini-services span:nth-child(3) {
    animation-delay: 2.00s;
}

.promo.promo-unified.active:not(.corner) .promo-mini-services span:nth-child(4) {
    animation-delay: 2.70s;
}

@keyframes promoServicePush {
    0% {
        opacity: 0;
        transform: translateY(14px) scale(.90);
        background: rgba(255, 255, 255, .38);
        box-shadow: none;
    }

    55% {
        opacity: 1;
        transform: translateY(-5px) scale(1.055);
        background: rgba(255, 255, 255, .84);
        box-shadow: 0 14px 30px rgba(82, 104, 95, .13), 0 0 0 1px rgba(185, 150, 89, .16);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
        background: rgba(255, 255, 255, .58);
        box-shadow: 0 8px 18px rgba(31, 27, 22, .045);
    }
}

@media (prefers-reduced-motion:reduce) {
    .promo.promo-unified.active:not(.corner) .promo-mini-services span {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}



/* V25: sweep light only on the 30% offer number */
.promo.promo-unified .promo-save-block strong {
    position: relative !important;
    z-index: 2 !important;
    display: inline-block !important;
    overflow: hidden !important;
    padding: .05em .10em .08em !important;
    margin: -.05em -.10em -.08em !important;
    border-radius: 18px !important;
}

.promo.promo-unified .promo-save-block strong:after {
    content: "" !important;
    position: absolute !important;
    z-index: 3 !important;
    left: -46% !important;
    top: -22% !important;
    width: 34% !important;
    height: 150% !important;
    pointer-events: none !important;
    transform: translateX(-170%) skewX(-18deg) !important;
    background: linear-gradient(105deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, .08) 28%,
            rgba(255, 252, 236, .48) 44%,
            rgba(255, 255, 255, .96) 50%,
            rgba(255, 239, 196, .46) 57%,
            rgba(255, 255, 255, .10) 72%,
            rgba(255, 255, 255, 0) 100%) !important;
    filter: blur(5px) !important;
    mix-blend-mode: screen !important;
    animation: dkThirtySweep 4.2s cubic-bezier(.42, 0, .2, 1) infinite !important;
}

.promo.promo-unified .promo-save-block strong:before {
    content: "" !important;
    position: absolute !important;
    z-index: 4 !important;
    top: -14% !important;
    left: -40% !important;
    width: 1.5px !important;
    height: 128% !important;
    background: rgba(255, 255, 255, .75) !important;
    box-shadow: 0 0 16px rgba(255, 255, 255, .82), 0 0 34px rgba(255, 236, 178, .50) !important;
    transform: translateX(-170%) skewX(-18deg) !important;
    opacity: 0 !important;
    animation: dkThirtySweepLine 4.2s cubic-bezier(.42, 0, .2, 1) infinite !important;
}

@keyframes dkThirtySweep {

    0%,
    20% {
        transform: translateX(-170%) skewX(-18deg);
        opacity: 0;
    }

    30% {
        opacity: .95;
    }

    52% {
        transform: translateX(520%) skewX(-18deg);
        opacity: .78;
    }

    66%,
    100% {
        transform: translateX(620%) skewX(-18deg);
        opacity: 0;
    }
}

@keyframes dkThirtySweepLine {

    0%,
    22% {
        transform: translateX(-170%) skewX(-18deg);
        opacity: 0;
    }

    32% {
        opacity: .42;
    }

    52% {
        transform: translateX(520%) skewX(-18deg);
        opacity: .35;
    }

    66%,
    100% {
        transform: translateX(620%) skewX(-18deg);
        opacity: 0;
    }
}

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

    .promo.promo-unified .promo-save-block strong:after,
    .promo.promo-unified .promo-save-block strong:before {
        animation: none !important;
        display: none !important;
    }
}



/* V26: stronger, clearly visible sweep light on 30% */
.promo.promo-unified .promo-save-block {
    isolation: isolate !important;
}

.promo.promo-unified .promo-save-block strong {
    position: relative !important;
    z-index: 5 !important;
    display: inline-block !important;
    overflow: hidden !important;
    padding: .05em .16em .10em !important;
    margin: -.05em -.16em -.10em !important;
    color: #fff !important;
    text-shadow: 0 0 18px rgba(255, 255, 255, .20), 0 8px 28px rgba(0, 0, 0, .18) !important;
    animation: promoNumberPop 2.4s ease-in-out infinite, dkThirtyGlowBoost 3.6s ease-in-out infinite !important;
}

.promo.promo-unified .promo-save-block strong:after {
    content: "" !important;
    position: absolute !important;
    z-index: 8 !important;
    top: -48% !important;
    left: -72% !important;
    width: 48px !important;
    height: 205% !important;
    pointer-events: none !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, .38) 26%,
            rgba(255, 255, 255, 1) 47%,
            rgba(255, 234, 167, .95) 58%,
            rgba(255, 255, 255, .34) 76%,
            rgba(255, 255, 255, 0) 100%) !important;
    filter: blur(1.2px) !important;
    box-shadow: 0 0 22px rgba(255, 255, 255, .86), 0 0 52px rgba(255, 224, 148, .58) !important;
    transform: translateX(-130%) rotate(22deg) !important;
    opacity: 0 !important;
    mix-blend-mode: screen !important;
    animation: dkThirtyVisibleSweep 3.6s cubic-bezier(.42, 0, .2, 1) infinite !important;
}

.promo.promo-unified .promo-save-block strong:before {
    content: "" !important;
    position: absolute !important;
    z-index: 9 !important;
    top: -42% !important;
    left: -60% !important;
    width: 5px !important;
    height: 190% !important;
    pointer-events: none !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .95) !important;
    box-shadow: 0 0 16px rgba(255, 255, 255, 1), 0 0 38px rgba(255, 230, 164, .78) !important;
    transform: translateX(-140%) rotate(22deg) !important;
    opacity: 0 !important;
    animation: dkThirtyVisibleLine 3.6s cubic-bezier(.42, 0, .2, 1) infinite !important;
}

@keyframes dkThirtyVisibleSweep {

    0%,
    58% {
        transform: translateX(-150%) rotate(22deg);
        opacity: 0;
    }

    63% {
        opacity: 1;
    }

    82% {
        transform: translateX(620%) rotate(22deg);
        opacity: .95;
    }

    90%,
    100% {
        transform: translateX(720%) rotate(22deg);
        opacity: 0;
    }
}

@keyframes dkThirtyVisibleLine {

    0%,
    60% {
        transform: translateX(-150%) rotate(22deg);
        opacity: 0;
    }

    65% {
        opacity: .75;
    }

    82% {
        transform: translateX(650%) rotate(22deg);
        opacity: .60;
    }

    90%,
    100% {
        transform: translateX(760%) rotate(22deg);
        opacity: 0;
    }
}

@keyframes dkThirtyGlowBoost {

    0%,
    58%,
    100% {
        text-shadow: 0 0 18px rgba(255, 255, 255, .20), 0 8px 28px rgba(0, 0, 0, .18);
        filter: brightness(1);
    }

    70% {
        text-shadow: 0 0 26px rgba(255, 255, 255, .74), 0 0 48px rgba(255, 225, 156, .50), 0 8px 28px rgba(0, 0, 0, .18);
        filter: brightness(1.12);
    }
}

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

    .promo.promo-unified .promo-save-block strong,
    .promo.promo-unified .promo-save-block strong:after,
    .promo.promo-unified .promo-save-block strong:before {
        animation: none !important;
    }
}


/* V31: supporting treatment hover focus preview */
.supporting-slide {
    cursor: pointer;
    transform-origin: center center;
}

.supporting-marquee.is-focus .supporting-track {
    animation-play-state: paused !important;
}

.supporting-slide.is-hover-source {
    opacity: .42;
    transform: translateY(-4px) scale(.98);
}

.supporting-focus-preview {
    position: fixed;
    inset: 0;
    z-index: 90;
    display: grid;
    place-items: center;
    padding: 28px;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity .28s ease, visibility .28s ease;
}

.supporting-focus-preview:before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 50% 50%, rgba(251, 246, 238, .34), rgba(31, 27, 22, .10) 58%, rgba(31, 27, 22, .18));
    backdrop-filter: blur(5px);
}

.supporting-focus-preview.active {
    opacity: 1;
    visibility: visible;
}

.supporting-focus-preview .supporting-slide {
    position: relative;
    z-index: 1;
    width: min(560px, 88vw);
    min-height: min(620px, 82vh);
    grid-template-rows: minmax(280px, .95fr) auto;
    padding: 34px 36px 38px;
    background: linear-gradient(180deg, rgba(255, 253, 248, .96), rgba(255, 250, 243, .86));
    border: 1px solid rgba(31, 27, 22, .12);
    border-radius: 34px;
    box-shadow: 0 46px 130px rgba(31, 27, 22, .24);
    transform: translateY(18px) scale(.88);
    opacity: 0;
    transition: transform .42s cubic-bezier(.22, 1, .36, 1), opacity .32s ease;
    overflow: hidden;
}

.supporting-focus-preview.active .supporting-slide {
    transform: translateY(0) scale(1);
    opacity: 1;
}

.supporting-focus-preview .supporting-slide:before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(circle at 50% 18%, rgba(255, 255, 255, .9), transparent 42%);
}

.supporting-focus-preview .supporting-slide-visual {
    min-height: 290px;
}

.supporting-focus-preview .supporting-slide-visual:before {
    width: 270px;
    height: 270px;
    background: radial-gradient(circle, rgba(255, 255, 255, 1), rgba(217, 221, 212, .36) 54%, transparent 74%);
}

.supporting-focus-preview .supporting-slide-visual img {
    max-height: 300px;
    filter: drop-shadow(0 34px 44px rgba(31, 27, 22, .22));
}

.supporting-focus-preview .supporting-slide-copy h4 {
    font-size: clamp(40px, 4.2vw, 58px);
}

.supporting-focus-preview .supporting-slide-copy p {
    font-size: 17px;
}

.supporting-focus-preview .supporting-slide-price strong {
    font-size: 44px;
}

@media(max-width:560px) {
    .supporting-focus-preview {
        display: none !important;
    }

    .supporting-slide.is-hover-source {
        opacity: 1;
        transform: none;
    }
}



/* V19: floating glassmorphism treatment chips around hero products */
.hero-clean-inner {
    position: relative !important;
}

.hero-clean-strip {
    position: absolute !important;
    left: 50% !important;
    top: 55% !important;
    transform: translate(-50%, -50%) !important;
    width: min(1180px, 96vw) !important;
    max-width: none !important;
    height: 0 !important;
    margin: 0 !important;
    display: block !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    overflow: visible !important;
    z-index: 12 !important;
    pointer-events: none !important;
}

.hero-clean-strip a {
    position: absolute !important;
    width: clamp(160px, 15vw, 220px) !important;
    min-height: 74px !important;
    padding: 16px 18px !important;
    border-radius: 24px !important;
    text-align: left !important;
    color: var(--ink) !important;
    background: linear-gradient(135deg, rgba(255, 253, 248, .72), rgba(255, 250, 245, .34)) !important;
    border: 1px solid rgba(255, 255, 255, .62) !important;
    box-shadow: 0 24px 60px rgba(31, 27, 22, .11), inset 0 1px 0 rgba(255, 255, 255, .74) !important;
    backdrop-filter: blur(18px) saturate(130%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(130%) !important;
    pointer-events: auto !important;
    overflow: hidden !important;
    transition: transform .45s cubic-bezier(.2, .8, .2, 1), box-shadow .45s ease, background .45s ease !important;
    animation: dkGlassFloat 6.8s ease-in-out infinite !important;
}

.hero-clean-strip a:before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: radial-gradient(circle at 22% 18%, rgba(255, 255, 255, .82), transparent 38%), linear-gradient(120deg, rgba(255, 255, 255, .28), transparent 52%);
    opacity: .72;
    pointer-events: none;
}

.hero-clean-strip a:after {
    content: "" !important;
    position: absolute !important;
    left: -80% !important;
    top: -30% !important;
    width: 46% !important;
    height: 160% !important;
    transform: rotate(22deg) !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .52), rgba(255, 236, 190, .35), transparent) !important;
    animation: dkFloatingChipSweep 8s ease-in-out infinite !important;
    pointer-events: none !important;
}

.hero-clean-strip a:hover {
    transform: translateY(-8px) scale(1.04) !important;
    background: linear-gradient(135deg, rgba(255, 253, 248, .86), rgba(255, 250, 245, .48)) !important;
    box-shadow: 0 34px 82px rgba(31, 27, 22, .16), inset 0 1px 0 rgba(255, 255, 255, .86) !important;
}

.hero-clean-strip strong,
.hero-clean-strip span {
    position: relative !important;
    z-index: 2 !important;
}

.hero-clean-strip strong {
    display: block !important;
    font-family: Manrope, Inter, Arial, sans-serif !important;
    font-size: clamp(18px, 1.6vw, 25px) !important;
    font-weight: 700 !important;
    letter-spacing: -.03em !important;
    line-height: 1.05 !important;
}

.hero-clean-strip span {
    display: block !important;
    margin-top: 8px !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: rgba(31, 27, 22, .56) !important;
}

.hero-clean-strip a:nth-child(1) {
    left: 4% !important;
    top: -155px !important;
    animation-delay: 0s !important;
}

.hero-clean-strip a:nth-child(2) {
    left: 31% !important;
    top: -218px !important;
    animation-delay: .8s !important;
}

.hero-clean-strip a:nth-child(3) {
    right: 19% !important;
    top: -162px !important;
    animation-delay: 1.6s !important;
}

.hero-clean-strip a:nth-child(4) {
    right: 2% !important;
    top: 28px !important;
    animation-delay: 2.4s !important;
}

.hero-clean-strip a:nth-child(2):after {
    animation-delay: 1.1s !important;
}

.hero-clean-strip a:nth-child(3):after {
    animation-delay: 2.2s !important;
}

.hero-clean-strip a:nth-child(4):after {
    animation-delay: 3.3s !important;
}

@keyframes dkGlassFloat {

    0%,
    100% {
        translate: 0 0;
    }

    50% {
        translate: 0 -10px;
    }
}

@keyframes dkFloatingChipSweep {

    0%,
    58% {
        left: -80%;
        opacity: 0;
    }

    68% {
        opacity: .82;
    }

    86% {
        left: 130%;
        opacity: .68;
    }

    100% {
        left: 130%;
        opacity: 0;
    }
}

@media(max-width:980px) {
    .hero-clean-strip {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        width: min(100%, 640px) !important;
        height: auto !important;
        margin: 22px auto 0 !important;
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
        pointer-events: auto !important;
    }

    .hero-clean-strip a {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        width: 100% !important;
        min-height: 70px !important;
        animation: dkGlassFloatMobile 7s ease-in-out infinite !important;
    }
}

@media(max-width:560px) {
    .hero-clean-strip {
        grid-template-columns: 1fr !important;
        width: 100% !important;
    }

    .hero-clean-strip a {
        border-radius: 20px !important;
        padding: 15px 16px !important;
    }
}

@keyframes dkGlassFloatMobile {

    0%,
    100% {
        translate: 0 0;
    }

    50% {
        translate: 0 -5px;
    }
}



/* V33: Main service spotlight hover - centered premium focus */
.service-primary {
    position: relative !important;
    border-radius: 42px !important;
    transition: transform .55s cubic-bezier(.22, 1, .36, 1), filter .55s ease, opacity .55s ease !important;
    cursor: pointer;
}

.service-primary:after {
    content: "";
    position: absolute;
    inset: 18px 0;
    border-radius: 42px;
    pointer-events: none;
    opacity: 0;
    background: radial-gradient(circle at 42% 45%, rgba(255, 255, 255, .52), transparent 52%);
    transition: opacity .55s ease;
    z-index: -1;
}

.service-primary:hover {
    transform: translateY(-10px) scale(1.012) !important;
}

.service-primary:hover:after {
    opacity: 1;
}

.service-primary.is-main-hover-source {
    transform: scale(.985) !important;
    filter: saturate(.92) blur(.5px);
    opacity: .82;
}

.main-service-focus-preview {
    position: fixed;
    inset: 0;
    z-index: 88;
    display: grid;
    place-items: center;
    padding: 40px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    background: radial-gradient(circle at 50% 45%, rgba(251, 246, 238, .52), rgba(31, 27, 22, .20) 58%, rgba(31, 27, 22, .34));
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition: opacity .38s ease, visibility .38s ease;
}

.main-service-focus-preview.active {
    opacity: 1;
    visibility: visible;
}

.main-service-focus-preview .service-primary {
    width: min(1180px, calc(100vw - 72px));
    max-height: min(82vh, 780px);
    overflow: hidden;
    display: grid !important;
    grid-template-columns: .96fr 1.04fr !important;
    gap: 48px !important;
    align-items: center !important;
    padding: 38px 46px !important;
    border: 1px solid rgba(255, 255, 255, .38) !important;
    border-radius: 46px !important;
    background: linear-gradient(135deg, rgba(255, 253, 248, .92), rgba(251, 246, 238, .70) 54%, rgba(217, 221, 212, .60)) !important;
    box-shadow: 0 45px 130px rgba(31, 27, 22, .28), inset 0 1px 0 rgba(255, 255, 255, .76) !important;
    transform: translateY(22px) scale(.92) !important;
    opacity: 0 !important;
    cursor: default !important;
}

.main-service-focus-preview.active .service-primary {
    transform: translateY(0) scale(1) !important;
    opacity: 1 !important;
    transition: transform .62s cubic-bezier(.16, 1, .3, 1), opacity .42s ease !important;
}

.main-service-focus-preview .service-primary:before {
    content: "";
    position: absolute;
    left: -40%;
    top: -30%;
    width: 34%;
    height: 160%;
    transform: skewX(-20deg);
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .28), rgba(255, 238, 180, .20), transparent);
    filter: blur(12px);
    animation: mainServiceSweep 2.6s .18s ease-out 1;
    pointer-events: none;
    z-index: 5;
}

.main-service-focus-preview .service-primary:after {
    opacity: 1 !important;
    inset: 0 !important;
    background: radial-gradient(circle at 25% 48%, rgba(255, 255, 255, .72), transparent 44%), radial-gradient(circle at 72% 36%, rgba(107, 130, 120, .14), transparent 42%) !important;
}

.main-service-focus-preview .service-primary-visual {
    min-height: 510px !important;
}

.main-service-focus-preview .service-primary-visual img {
    max-height: 620px !important;
    max-width: 100% !important;
    animation: mainDeviceFloat 4.8s ease-in-out infinite !important;
    filter: drop-shadow(0 42px 60px rgba(31, 27, 22, .23)) !important;
}

.main-service-focus-preview .service-primary-copy h3 {
    font-size: clamp(64px, 7vw, 118px) !important;
}

.main-service-focus-preview .service-primary-copy p {
    font-size: 20px !important;
    max-width: 610px !important;
}

.main-service-focus-preview .service-price-line strong {
    font-size: clamp(46px, 4.8vw, 72px) !important;
}

@keyframes mainServiceSweep {
    0% {
        transform: translateX(-60%) skewX(-20deg);
        opacity: 0;
    }

    18% {
        opacity: .9;
    }

    100% {
        transform: translateX(520%) skewX(-20deg);
        opacity: 0;
    }
}

@keyframes mainDeviceFloat {

    0%,
    100% {
        transform: translateY(0) scale(1.02);
    }

    50% {
        transform: translateY(-12px) scale(1.035);
    }
}

@media(max-width:900px) {
    .main-service-focus-preview {
        display: none !important;
    }

    .service-primary:hover {
        transform: none !important;
    }
}

@media (prefers-reduced-motion:reduce) {
    .main-service-focus-preview {
        display: none !important;
    }

    .service-primary:hover {
        transform: none !important;
    }

    .service-primary-visual img {
        animation: none !important;
    }
}



/* V34: Staggered floating glass service cards around hero devices */
.hero-clean-strip {
    width: min(1040px, 92vw) !important;
    top: 50% !important;
    z-index: 15 !important;
}

.hero-clean-strip a {
    width: clamp(132px, 11.5vw, 168px) !important;
    min-height: 58px !important;
    padding: 12px 15px !important;
    border-radius: 20px !important;
    background: linear-gradient(135deg, rgba(255, 253, 248, .64), rgba(255, 250, 245, .30)) !important;
    box-shadow: 0 18px 46px rgba(31, 27, 22, .10), inset 0 1px 0 rgba(255, 255, 255, .78) !important;
    backdrop-filter: blur(16px) saturate(135%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(135%) !important;
}

.hero-clean-strip strong {
    font-size: clamp(17px, 1.15vw, 22px) !important;
    line-height: 1.03 !important;
    letter-spacing: -.035em !important;
}

.hero-clean-strip span {
    margin-top: 7px !important;
    font-size: 9.5px !important;
    letter-spacing: .14em !important;
    line-height: 1.32 !important;
}

/* two left, two right, staggered around the device group */
.hero-clean-strip a:nth-child(1) {
    left: 3.5% !important;
    top: -54px !important;
    animation-delay: 0s !important;
}

/* XERF - left middle */
.hero-clean-strip a:nth-child(2) {
    right: 4.5% !important;
    left: auto !important;
    top: -118px !important;
    animation-delay: .9s !important;
}

/* Oligio - right top */
.hero-clean-strip a:nth-child(3) {
    left: 8.5% !important;
    top: 86px !important;
    animation-delay: 1.8s !important;
}

/* Tightan - left low */
.hero-clean-strip a:nth-child(4) {
    right: 8% !important;
    left: auto !important;
    top: 58px !important;
    animation-delay: 2.7s !important;
}

/* Lavieen - right low */
.hero-clean-strip a:hover {
    transform: translateY(-8px) scale(1.075) !important;
    box-shadow: 0 30px 78px rgba(31, 27, 22, .17), inset 0 1px 0 rgba(255, 255, 255, .9) !important;
    background: linear-gradient(135deg, rgba(255, 253, 248, .88), rgba(255, 250, 245, .52)) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(1),
.hero-clean-strip:hover a:nth-child(1) {
    transform: translate(10px, -2px) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(2),
.hero-clean-strip:hover a:nth-child(2) {
    transform: translate(-10px, 2px) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(3),
.hero-clean-strip:hover a:nth-child(3) {
    transform: translate(12px, -4px) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(4),
.hero-clean-strip:hover a:nth-child(4) {
    transform: translate(-12px, -3px) !important;
}

@keyframes dkGlassFloat {

    0%,
    100% {
        translate: 0 0;
    }

    50% {
        translate: 0 -7px;
    }
}

@media(max-width:980px) {
    .hero-clean-strip {
        width: min(100%, 640px) !important;
        top: auto !important;
    }

    .hero-clean-strip a {
        width: 100% !important;
        min-height: 64px !important;
        padding: 14px 16px !important;
    }
}



/* V35: true four-card floating glassmorphism hero treatment menu */
.hero-clean-inner {
    position: relative !important;
    overflow: visible !important;
}

.hero-clean-visual {
    position: relative !important;
    z-index: 4 !important;
}

.hero-clean-strip {
    position: absolute !important;
    left: 50% !important;
    top: 57% !important;
    transform: translate(-50%, -50%) !important;
    width: min(1180px, 96vw) !important;
    height: min(540px, 48vw) !important;
    min-height: 430px !important;
    max-height: 560px !important;
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    pointer-events: none !important;
    z-index: 16 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.hero-clean-strip a {
    position: absolute !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: clamp(150px, 14vw, 210px) !important;
    min-height: 82px !important;
    padding: 18px 22px !important;
    border-radius: 28px !important;
    color: var(--ink) !important;
    text-align: left !important;
    overflow: hidden !important;
    pointer-events: auto !important;
    border: 1px solid rgba(255, 255, 255, .58) !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .66), rgba(255, 250, 245, .34) 52%, rgba(217, 221, 212, .22)),
        rgba(255, 255, 255, .22) !important;
    box-shadow:
        0 22px 65px rgba(31, 27, 22, .12),
        inset 0 1px 0 rgba(255, 255, 255, .9),
        inset 0 -1px 0 rgba(255, 255, 255, .24) !important;
    backdrop-filter: blur(24px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(160%) !important;
    transform: translate3d(0, 0, 0) scale(.92) !important;
    animation: dkFloatGlassCard 6.4s ease-in-out infinite !important;
    transition: transform .45s cubic-bezier(.22, 1, .36, 1), box-shadow .45s ease, background .45s ease, border-color .45s ease !important;
}

.hero-clean-strip a:before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: inherit !important;
    background: radial-gradient(circle at 24% 0%, rgba(255, 255, 255, .82), transparent 42%) !important;
    opacity: .55 !important;
    pointer-events: none !important;
}

.hero-clean-strip a:after {
    content: "" !important;
    position: absolute !important;
    top: -40% !important;
    left: -55% !important;
    width: 34% !important;
    height: 180% !important;
    transform: rotate(22deg) !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .62), rgba(255, 238, 190, .28), transparent) !important;
    opacity: .32 !important;
    pointer-events: none !important;
}

.hero-clean-strip strong {
    position: relative !important;
    z-index: 1 !important;
    font-family: Manrope, Inter, Arial, sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(20px, 1.5vw, 28px) !important;
    line-height: 1 !important;
    letter-spacing: -.055em !important;
    color: var(--ink) !important;
}

.hero-clean-strip span {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    margin-top: 10px !important;
    font-size: 10.5px !important;
    line-height: 1.35 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    color: rgba(31, 27, 22, .58) !important;
}

/* 2 cards left + 2 cards right, staggered around product image */
.hero-clean-strip a:nth-child(1) {
    left: 3% !important;
    top: 34% !important;
    right: auto !important;
    animation-delay: 0s !important;
}

/* XERF: left upper */
.hero-clean-strip a:nth-child(4) {
    left: 9% !important;
    top: 64% !important;
    right: auto !important;
    animation-delay: 1.5s !important;
}

/* Lavieen: left lower */
.hero-clean-strip a:nth-child(2) {
    right: 6% !important;
    top: 28% !important;
    left: auto !important;
    animation-delay: .75s !important;
}

/* Oligio: right upper */
.hero-clean-strip a:nth-child(3) {
    right: 2% !important;
    top: 58% !important;
    left: auto !important;
    animation-delay: 2.25s !important;
}

/* Tightan: right lower */
.hero-clean-strip a:hover {
    transform: translate3d(0, -10px, 0) scale(1.04) !important;
    border-color: rgba(255, 255, 255, .86) !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, .82), rgba(255, 250, 245, .48) 54%, rgba(217, 221, 212, .28)), rgba(255, 255, 255, .30) !important;
    box-shadow: 0 34px 90px rgba(31, 27, 22, .18), inset 0 1px 0 rgba(255, 255, 255, 1) !important;
    z-index: 30 !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(1) {
    transform: translate3d(12px, -2px, 0) scale(.94) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(4) {
    transform: translate3d(14px, -4px, 0) scale(.94) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(2) {
    transform: translate3d(-12px, 2px, 0) scale(.94) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(3) {
    transform: translate3d(-14px, -3px, 0) scale(.94) !important;
}

@keyframes dkFloatGlassCard {

    0%,
    100% {
        translate: 0 0;
    }

    50% {
        translate: 0 -12px;
    }
}

@media(max-width:1100px) {
    .hero-clean-strip {
        height: 430px !important;
        top: 58% !important;
    }

    .hero-clean-strip a {
        width: clamp(136px, 18vw, 185px) !important;
        padding: 16px 18px !important;
        min-height: 76px !important;
    }

    .hero-clean-strip a:nth-child(1) {
        left: 0 !important;
        top: 35% !important;
    }

    .hero-clean-strip a:nth-child(4) {
        left: 5% !important;
        top: 66% !important;
    }

    .hero-clean-strip a:nth-child(2) {
        right: 2% !important;
        top: 31% !important;
    }

    .hero-clean-strip a:nth-child(3) {
        right: 0 !important;
        top: 62% !important;
    }
}

@media(max-width:760px) {
    .hero-clean-strip {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
        margin: 18px auto 0 !important;
        pointer-events: auto !important;
    }

    .hero-clean-strip a,
    .hero-clean-strip a:nth-child(1),
    .hero-clean-strip a:nth-child(2),
    .hero-clean-strip a:nth-child(3),
    .hero-clean-strip a:nth-child(4) {
        position: relative !important;
        inset: auto !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        width: 100% !important;
        min-height: 76px !important;
        transform: none !important;
        animation: dkFloatGlassCard 7s ease-in-out infinite !important;
    }
}

@media(max-width:520px) {
    .hero-clean-strip {
        grid-template-columns: 1fr !important;
    }

    .hero-clean-strip a {
        min-height: 70px !important;
    }
}



/* V36: final glass cards clustered around the 3 hero devices */
.hero-clean-inner {
    position: relative !important;
    overflow: visible !important;
}

.hero-clean-visual {
    z-index: 5 !important;
    transition: transform .55s cubic-bezier(.22, 1, .36, 1), filter .55s ease !important;
}

.hero-clean-visual:hover {
    transform: scale(1.018) !important;
    filter: drop-shadow(0 28px 70px rgba(31, 27, 22, .10)) !important;
}

.hero-clean-strip {
    position: absolute !important;
    left: 50% !important;
    top: 55% !important;
    transform: translate(-50%, -50%) !important;
    width: clamp(860px, 58vw, 1180px) !important;
    height: clamp(430px, 38vw, 560px) !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    pointer-events: none !important;
    z-index: 18 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.hero-clean-strip a {
    position: absolute !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: clamp(150px, 10.2vw, 198px) !important;
    min-height: 72px !important;
    padding: 15px 18px !important;
    border-radius: 24px !important;
    color: var(--ink) !important;
    text-align: left !important;
    pointer-events: auto !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, .58) !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, .42), rgba(255, 250, 245, .20) 58%, rgba(217, 221, 212, .16)), rgba(255, 255, 255, .18) !important;
    box-shadow: 0 20px 58px rgba(31, 27, 22, .105), inset 0 1px 0 rgba(255, 255, 255, .88), inset 0 -1px 0 rgba(255, 255, 255, .18) !important;
    backdrop-filter: blur(26px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(26px) saturate(180%) !important;
    transform: translate3d(0, 0, 0) !important;
    animation: dkHeroGlassSoftFloat 6.6s ease-in-out infinite !important;
    transition: transform .52s cubic-bezier(.22, 1, .36, 1), box-shadow .52s ease, background .52s ease, border-color .52s ease, opacity .52s ease !important;
    opacity: .94 !important;
}

.hero-clean-strip a:before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: inherit !important;
    background: radial-gradient(circle at 20% 0%, rgba(255, 255, 255, .82), transparent 42%), linear-gradient(145deg, rgba(255, 255, 255, .22), transparent 55%) !important;
    opacity: .72 !important;
    pointer-events: none !important;
}

.hero-clean-strip a:after {
    content: "" !important;
    position: absolute !important;
    top: -48% !important;
    left: -62% !important;
    width: 36% !important;
    height: 190% !important;
    transform: rotate(22deg) !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .68), rgba(255, 239, 194, .36), transparent) !important;
    opacity: .28 !important;
    pointer-events: none !important;
    animation: dkGlassMiniSweep 8.8s ease-in-out infinite !important;
}

.hero-clean-strip strong {
    position: relative !important;
    z-index: 2 !important;
    font-family: Manrope, Inter, Arial, sans-serif !important;
    font-size: clamp(18px, 1.22vw, 24px) !important;
    font-weight: 800 !important;
    letter-spacing: -.045em !important;
    line-height: 1 !important;
    color: var(--ink) !important;
    transition: letter-spacing .45s ease !important;
}

.hero-clean-strip span {
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    margin-top: 8px !important;
    font-size: 9.5px !important;
    line-height: 1.35 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: rgba(31, 27, 22, .56) !important;
}

/* two left and two right, staggered tightly around the product cluster */
.hero-clean-strip a:nth-child(1) {
    left: 0 !important;
    top: 42% !important;
    right: auto !important;
    animation-delay: 0s !important;
}

/* XERF: left middle */
.hero-clean-strip a:nth-child(4) {
    left: 9% !important;
    top: 72% !important;
    right: auto !important;
    animation-delay: 1.7s !important;
}

/* Lavieen: left lower */
.hero-clean-strip a:nth-child(2) {
    right: 9% !important;
    top: 18% !important;
    left: auto !important;
    animation-delay: .85s !important;
}

/* Oligio: right upper */
.hero-clean-strip a:nth-child(3) {
    right: 0 !important;
    top: 51% !important;
    left: auto !important;
    animation-delay: 2.45s !important;
}

/* Tightan: right middle-low */
.hero-clean-strip a:hover {
    transform: translate3d(0, -10px, 0) scale(1.075) !important;
    border-color: rgba(255, 255, 255, .88) !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, .62), rgba(255, 250, 245, .32) 58%, rgba(217, 221, 212, .22)), rgba(255, 255, 255, .30) !important;
    box-shadow: 0 32px 88px rgba(31, 27, 22, .16), inset 0 1px 0 rgba(255, 255, 255, 1) !important;
    opacity: 1 !important;
    z-index: 10 !important;
}

.hero-clean-strip a:hover strong {
    letter-spacing: .01em !important;
}

.hero-clean-visual:hover+.hero-clean-strip a {
    opacity: 1 !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(1),
.hero-clean-strip:hover a:nth-child(1) {
    transform: translate3d(12px, -2px, 0) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(4),
.hero-clean-strip:hover a:nth-child(4) {
    transform: translate3d(16px, -6px, 0) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(2),
.hero-clean-strip:hover a:nth-child(2) {
    transform: translate3d(-14px, 3px, 0) !important;
}

.hero-clean-visual:hover+.hero-clean-strip a:nth-child(3),
.hero-clean-strip:hover a:nth-child(3) {
    transform: translate3d(-16px, -5px, 0) !important;
}

@keyframes dkHeroGlassSoftFloat {

    0%,
    100% {
        translate: 0 0;
    }

    50% {
        translate: 0 -8px;
    }
}

@keyframes dkGlassMiniSweep {

    0%,
    62% {
        left: -62%;
        opacity: 0;
    }

    70% {
        opacity: .32;
    }

    100% {
        left: 135%;
        opacity: 0;
    }
}

@media(max-width:980px) {
    .hero-clean-strip {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        width: min(100%, 640px) !important;
        height: auto !important;
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
        margin: 22px auto 0 !important;
    }

    .hero-clean-strip a {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        width: 100% !important;
        min-height: 72px !important;
    }
}

@media(max-width:560px) {
    .hero-clean-strip {
        grid-template-columns: 1fr !important;
    }
}



/* V37: Final left/right floating glass cards around the 3 hero products */
.hero-clean-inner {
    position: relative !important;
    isolation: isolate !important;
}

.hero-clean-visual {
    position: relative !important;
    z-index: 3 !important;
    overflow: visible !important;
}

.clean-hero-img {
    position: relative !important;
    z-index: 3 !important;
    transition: transform .55s cubic-bezier(.22, 1, .36, 1), filter .55s cubic-bezier(.22, 1, .36, 1) !important;
}

.hero-clean-inner:hover .clean-hero-img {
    transform: translateY(-6px) scale(1.025) !important;
    filter: drop-shadow(0 44px 76px rgba(31, 27, 22, .21)) drop-shadow(0 0 24px rgba(255, 255, 255, .58)) !important;
}

.hero-clean-strip {
    position: absolute !important;
    left: 50% !important;
    top: 56% !important;
    transform: translate(-50%, -50%) !important;
    width: min(1120px, 92vw) !important;
    height: min(520px, 48vw) !important;
    max-height: 560px !important;
    min-height: 410px !important;
    display: block !important;
    overflow: visible !important;
    z-index: 7 !important;
    pointer-events: none !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    border-radius: 0 !important;
}

.hero-clean-strip a {
    position: absolute !important;
    width: clamp(190px, 18vw, 245px) !important;
    min-height: 104px !important;
    pointer-events: auto !important;
    padding: 18px 20px !important;
    border-radius: 26px !important;
    color: rgba(31, 27, 22, .88) !important;
    text-align: left !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, .44), rgba(255, 250, 243, .26)) !important;
    border: 1px solid rgba(255, 255, 255, .58) !important;
    box-shadow: 0 24px 70px rgba(31, 27, 22, .09), inset 0 1px 0 rgba(255, 255, 255, .72) !important;
    backdrop-filter: blur(26px) saturate(170%) !important;
    -webkit-backdrop-filter: blur(26px) saturate(170%) !important;
    overflow: hidden !important;
    opacity: .94 !important;
    transform: translate3d(0, 0, 0) !important;
    transition: transform .45s cubic-bezier(.22, 1, .36, 1), box-shadow .45s cubic-bezier(.22, 1, .36, 1), background .45s ease, border-color .45s ease, opacity .45s ease !important;
    animation: dkGlassFloat 6.4s ease-in-out infinite !important;
}

.hero-clean-strip a:before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: inherit !important;
    background: radial-gradient(circle at 20% 0%, rgba(255, 255, 255, .62), transparent 42%), linear-gradient(120deg, rgba(255, 255, 255, .16), transparent 52%) !important;
    pointer-events: none !important;
}

.hero-clean-strip a:after {
    content: "" !important;
    position: absolute !important;
    left: 18px !important;
    right: 18px !important;
    top: 12px !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .75), transparent) !important;
    opacity: .75 !important;
}

.hero-clean-strip a strong,
.hero-clean-strip a span {
    position: relative !important;
    z-index: 2 !important;
}

.hero-clean-strip a strong {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: clamp(22px, 2vw, 30px) !important;
    line-height: .95 !important;
    font-weight: 600 !important;
    letter-spacing: .015em !important;
    color: rgba(31, 27, 22, .94) !important;
    margin-bottom: 10px !important;
    transition: letter-spacing .35s ease, color .35s ease !important;
}

.hero-clean-strip a span {
    font-family: 'Inter', Arial, sans-serif !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
    letter-spacing: .11em !important;
    text-transform: uppercase !important;
    color: rgba(31, 27, 22, .58) !important;
}

.hero-clean-strip a:hover {
    transform: translate3d(0, -10px, 0) scale(1.08) !important;
    opacity: 1 !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, .62), rgba(255, 250, 243, .38)) !important;
    border-color: rgba(255, 255, 255, .82) !important;
    box-shadow: 0 34px 92px rgba(31, 27, 22, .16), inset 0 1px 0 rgba(255, 255, 255, .9) !important;
    z-index: 12 !important;
}

.hero-clean-strip a:hover strong {
    letter-spacing: .075em !important;
    color: var(--deep) !important;
}

/* Two cards on the left of the products */
.hero-clean-strip a:nth-child(1) {
    left: 0 !important;
    top: 22% !important;
    right: auto !important;
    bottom: auto !important;
    animation-duration: 6.1s !important;
    animation-delay: 0s !important;
}

.hero-clean-strip a:nth-child(4) {
    left: 4.5% !important;
    top: 61% !important;
    right: auto !important;
    bottom: auto !important;
    animation-duration: 7.1s !important;
    animation-delay: 1.35s !important;
}

/* Two cards on the right of the products */
.hero-clean-strip a:nth-child(2) {
    right: 0 !important;
    top: 20% !important;
    left: auto !important;
    bottom: auto !important;
    animation-duration: 6.8s !important;
    animation-delay: .65s !important;
}

.hero-clean-strip a:nth-child(3) {
    right: 4.5% !important;
    top: 59% !important;
    left: auto !important;
    bottom: auto !important;
    animation-duration: 7.6s !important;
    animation-delay: 2s !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(1) {
    transform: translateX(12px) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(4) {
    transform: translateX(10px) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(2) {
    transform: translateX(-12px) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(3) {
    transform: translateX(-10px) !important;
}

.hero-clean-inner .hero-clean-strip a:hover {
    transform: translate3d(0, -10px, 0) scale(1.08) !important;
}

@keyframes dkGlassFloat {

    0%,
    100% {
        translate: 0 0;
    }

    50% {
        translate: 0 -10px;
    }
}

@media(max-width:1100px) {
    .hero-clean-strip {
        width: min(980px, 94vw) !important;
        height: 460px !important;
        top: 55% !important;
    }

    .hero-clean-strip a {
        width: 205px !important;
        padding: 16px 17px !important;
    }

    .hero-clean-strip a:nth-child(1) {
        left: 0 !important;
        top: 24% !important;
    }

    .hero-clean-strip a:nth-child(4) {
        left: 3% !important;
        top: 62% !important;
    }

    .hero-clean-strip a:nth-child(2) {
        right: 0 !important;
        top: 22% !important;
    }

    .hero-clean-strip a:nth-child(3) {
        right: 3% !important;
        top: 60% !important;
    }
}

@media(max-width:900px) {
    .hero-clean-strip {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
        margin: 18px auto 0 !important;
        pointer-events: auto !important;
    }

    .hero-clean-strip a,
    .hero-clean-strip a:nth-child(n) {
        position: relative !important;
        inset: auto !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        width: auto !important;
        min-height: 96px !important;
        animation: none !important;
        transform: none !important;
    }

    .hero-clean-inner:hover .hero-clean-strip a:nth-child(n) {
        transform: none !important;
    }

    .hero-clean-strip a:hover {
        transform: translateY(-6px) scale(1.03) !important;
    }
}

@media(max-width:560px) {
    .hero-clean-strip {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .hero-clean-strip a {
        min-height: auto !important;
        padding: 16px !important;
        border-radius: 22px !important;
    }
}



/* V32 popup clear layout: cleaner premium offer hierarchy */
.promo.promo-unified.promo-clean-v2 {
    width: min(500px, calc(100% - 36px)) !important;
    border-radius: 32px !important;
    background: linear-gradient(180deg, #fffdf8 0%, #fbf6ee 100%) !important;
    border: 1px solid rgba(82, 104, 95, .18) !important;
    color: var(--dk-ink) !important;
    overflow: hidden !important;
}

.promo.promo-unified.promo-clean-v2:before {
    background:
        radial-gradient(circle at 50% -6%, rgba(255, 255, 255, .98), transparent 34%),
        radial-gradient(circle at 92% 8%, rgba(185, 150, 89, .18), transparent 32%) !important;
}

.promo.promo-unified.promo-clean-v2 .promo-inner {
    padding: 30px 30px 28px !important;
}

.promo.promo-unified.promo-clean-v2 .close {
    right: 16px !important;
    top: 16px !important;
    background: rgba(255, 255, 255, .84) !important;
    border-color: rgba(31, 27, 22, .10) !important;
}

.promo-v2-kicker {
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .22em;
    font-size: 11px;
    font-weight: 850;
    color: var(--dk-green);
    margin: 2px 46px 18px;
}

.promo-v2-hero {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 238px;
    border-radius: 28px;
    background:
        radial-gradient(circle at 50% 28%, rgba(255, 255, 255, .20), transparent 38%),
        linear-gradient(145deg, var(--dk-green), #22382f 76%);
    color: #fff;
    box-shadow: 0 26px 68px rgba(82, 104, 95, .30);
    overflow: hidden;
    isolation: isolate;
}

.promo-v2-hero:before {
    content: "";
    position: absolute;
    inset: 16px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 22px;
    pointer-events: none;
}

.promo-v2-save,
.promo-v2-off {
    position: absolute;
    z-index: 3;
    text-transform: uppercase;
    letter-spacing: .24em;
    font-size: 11px;
    font-weight: 850;
    color: rgba(255, 255, 255, .68);
}

.promo-v2-save {
    top: 24px;
    left: 26px;
}

.promo-v2-off {
    right: 26px;
    bottom: 24px;
}

.promo-v2-percent {
    position: relative;
    z-index: 4;
    display: inline-block;
    overflow: hidden;
    padding: .02em .14em .08em;
    margin: -.02em -.14em -.08em;
    font-size: clamp(112px, 18vw, 160px);
    line-height: .78;
    letter-spacing: -.10em;
    font-weight: 900;
    color: #fff;
    text-shadow: 0 8px 30px rgba(0, 0, 0, .18), 0 0 18px rgba(255, 255, 255, .20);
    animation: promoNumberPop 2.6s ease-in-out infinite, dkThirtyGlowBoost 3.6s ease-in-out infinite !important;
}

.promo-v2-percent:after {
    content: "";
    position: absolute;
    z-index: 8;
    top: -50%;
    left: -72%;
    width: 52px;
    height: 210%;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, .42), rgba(255, 255, 255, 1), rgba(255, 235, 174, .95), rgba(255, 255, 255, .30), rgba(255, 255, 255, 0));
    filter: blur(1.2px);
    box-shadow: 0 0 24px rgba(255, 255, 255, .86), 0 0 54px rgba(255, 224, 148, .58);
    transform: translateX(-140%) rotate(22deg);
    opacity: 0;
    mix-blend-mode: screen;
    pointer-events: none;
    animation: dkThirtyVisibleSweep 3.6s cubic-bezier(.42, 0, .2, 1) infinite !important;
}

.promo-v2-percent:before {
    content: "";
    position: absolute;
    z-index: 9;
    top: -44%;
    left: -60%;
    width: 5px;
    height: 194%;
    border-radius: 999px;
    background: rgba(255, 255, 255, .95);
    box-shadow: 0 0 16px rgba(255, 255, 255, 1), 0 0 38px rgba(255, 230, 164, .78);
    transform: translateX(-140%) rotate(22deg);
    opacity: 0;
    pointer-events: none;
    animation: dkThirtyVisibleLine 3.6s cubic-bezier(.42, 0, .2, 1) infinite !important;
}

.promo-v2-limit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    margin: 16px 0 14px;
    padding: 14px 18px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(185, 150, 89, .30);
    box-shadow: 0 14px 34px rgba(31, 27, 22, .055);
    text-transform: uppercase;
    color: rgba(31, 27, 22, .62);
    font-size: 11px;
    letter-spacing: .12em;
    font-weight: 850;
}

.promo-v2-limit strong {
    color: var(--dk-gold);
    font-size: 40px;
    line-height: .75;
    letter-spacing: -.04em;
    font-weight: 900;
    animation: countPulse 2.2s ease-in-out infinite;
}

.promo-v2-included {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 14px;
}

.promo-v2-included div {
    min-height: 84px;
    border-radius: 20px;
    padding: 16px 16px 15px;
    background: rgba(255, 255, 255, .62);
    border: 1px solid rgba(82, 104, 95, .12);
}

.promo-v2-included small {
    display: block;
    text-transform: uppercase;
    letter-spacing: .16em;
    font-size: 9px;
    font-weight: 850;
    color: rgba(31, 27, 22, .42);
    margin-bottom: 8px;
}

.promo-v2-included b {
    display: block;
    font-size: 14px;
    line-height: 1.22;
    font-weight: 850;
    color: var(--dk-ink);
}

.promo-clean-v2 .promo-v2-services {
    justify-content: center !important;
    margin: 0 0 18px !important;
}

.promo-clean-v2 .promo-v2-services span {
    padding: 8px 11px !important;
    font-size: 11px !important;
    background: rgba(255, 255, 255, .56) !important;
}

.promo-clean-v2 .promo-v2-bottom {
    border-top: 1px solid rgba(31, 27, 22, .08) !important;
    padding-top: 18px !important;
}

.promo.promo-unified.promo-clean-v2.corner {
    width: min(340px, calc(100% - 48px)) !important;
    border-radius: 28px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-inner {
    padding: 22px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-kicker {
    font-size: 9px;
    margin: 0 40px 12px;
    letter-spacing: .16em;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-hero {
    min-height: 132px;
    border-radius: 22px;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-percent {
    font-size: 76px;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-save,
.promo.promo-unified.promo-clean-v2.corner .promo-v2-off {
    font-size: 8px;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-save {
    top: 16px;
    left: 17px;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-off {
    right: 17px;
    bottom: 16px;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-limit {
    padding: 12px 14px;
    margin: 12px 0;
    font-size: 9px;
    gap: 8px;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-limit strong {
    font-size: 32px;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-included {
    display: none;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-services {
    display: none;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-bottom {
    padding-top: 12px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-limit {
    display: none;
}

@media(max-width:620px) {
    .promo.promo-unified.promo-clean-v2 .promo-inner {
        padding: 24px 18px 20px !important;
    }

    .promo-v2-hero {
        min-height: 190px;
        border-radius: 24px;
    }

    .promo-v2-percent {
        font-size: 106px;
    }

    .promo-v2-included {
        grid-template-columns: 1fr;
    }

    .promo-clean-v2 .promo-v2-bottom {
        display: grid !important;
        gap: 12px;
    }

    .promo-clean-v2 .promo-v2-bottom .btn {
        justify-content: center !important;
        width: 100%;
    }
}

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

    .promo-v2-percent,
    .promo-v2-percent:after,
    .promo-v2-percent:before,
    .promo-v2-limit strong {
        animation: none !important;
    }
}



/* V34 final contact CTA: clearer, more action-led closing section */
.contact.contact-final-cta {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 18% 22%, rgba(107, 130, 120, .28), transparent 28%),
        radial-gradient(circle at 82% 70%, rgba(255, 250, 245, .12), transparent 30%),
        linear-gradient(135deg, #191612 0%, #211d18 48%, #11100e 100%) !important;
    color: #fff;
    padding: 112px 0 42px !important;
    isolation: isolate;
}

.contact.contact-final-cta:before {
    content: "";
    position: absolute;
    inset: -20% auto auto -12%;
    width: 560px;
    height: 560px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(107, 130, 120, .28), transparent 68%);
    filter: blur(12px);
    opacity: .72;
    animation: contactAura 8s ease-in-out infinite;
    z-index: -1;
}

.contact.contact-final-cta:after {
    content: "";
    position: absolute;
    right: 8%;
    bottom: 8%;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .08);
    box-shadow: 0 0 90px rgba(107, 130, 120, .14), inset 0 0 60px rgba(255, 255, 255, .04);
    animation: contactRing 12s linear infinite;
    z-index: -1;
}

@keyframes contactAura {

    0%,
    100% {
        transform: translate3d(0, 0, 0) scale(1)
    }

    50% {
        transform: translate3d(24px, 18px, 0) scale(1.08)
    }
}

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

.contact-final-grid {
    display: grid;
    grid-template-columns: minmax(420px, 1.04fr) minmax(360px, .82fr);
    gap: 56px;
    align-items: stretch;
}

.contact-final-copy {
    position: relative;
    padding: 22px 0 12px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.contact-final-copy .eyebrow {
    color: rgba(171, 199, 187, .9);
    margin-bottom: 18px;
}

.contact-final-copy h2 {
    margin: 0;
    max-width: 760px;
    font-family: Inter, Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: clamp(50px, 6vw, 104px) !important;
    line-height: .9 !important;
    letter-spacing: -.065em !important;
}

.contact-final-copy h2 span {
    display: block;
    color: #d9ddd4;
}

.contact-final-copy p {
    max-width: 560px;
    margin: 26px 0 0;
    color: rgba(255, 255, 255, .68);
    font-size: 18px;
    line-height: 1.72;
}

.contact-offer-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 34px 0 0;
}

.contact-offer-strip span {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 12px 17px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 999px;
    background: rgba(255, 255, 255, .055);
    color: rgba(255, 255, 255, .82);
    backdrop-filter: blur(14px);
    animation: contactChipIn .78s cubic-bezier(.2, .8, .2, 1) both;
}

.contact-offer-strip span:nth-child(2) {
    animation-delay: .14s
}

.contact-offer-strip span:nth-child(3) {
    animation-delay: .28s
}

@keyframes contactChipIn {
    from {
        opacity: 0;
        transform: translateY(12px) scale(.96)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.contact-big-cta {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 16px;
    width: max-content;
    margin-top: 38px;
    padding: 18px 26px 18px 28px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .22);
    background: linear-gradient(135deg, #6b8278, #52685f);
    color: #fff;
    font-weight: 800;
    font-size: 18px;
    box-shadow: 0 26px 76px rgba(82, 104, 95, .34);
    overflow: hidden;
    transition: transform .35s ease, box-shadow .35s ease;
}

.contact-big-cta:before {
    content: "";
    position: absolute;
    left: -38%;
    top: -70%;
    width: 36%;
    height: 240%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .42), rgba(255, 239, 190, .22), transparent);
    transform: skewX(-20deg);
    animation: contactBtnSweep 3.6s ease-in-out infinite;
}

.contact-big-cta em {
    font-style: normal;
    position: relative;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .16);
    transition: transform .35s ease, background .35s ease;
}

.contact-big-cta:hover {
    transform: translateY(-4px) scale(1.02);
    box-shadow: 0 32px 90px rgba(82, 104, 95, .44)
}

.contact-big-cta:hover em {
    transform: translateX(5px);
    background: rgba(255, 255, 255, .24)
}

@keyframes contactBtnSweep {

    0%,
    50% {
        transform: translateX(0) skewX(-20deg);
        opacity: 0
    }

    58% {
        opacity: .9
    }

    82% {
        transform: translateX(440%) skewX(-20deg);
        opacity: 0
    }

    100% {
        transform: translateX(440%) skewX(-20deg);
        opacity: 0
    }
}

.contact-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    width: min(100%, 680px);
    margin-top: 46px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 26px;
    overflow: hidden;
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(18px);
}

.contact-stat {
    padding: 22px 20px;
    background: rgba(255, 255, 255, .035)
}

.contact-stat strong {
    display: block;
    font-size: 28px;
    line-height: 1;
    font-weight: 800;
    color: #fff
}

.contact-stat span {
    display: block;
    margin-top: 8px;
    font-size: 12px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .52)
}

.contact-final-card {
    position: relative;
    border-radius: 42px;
    padding: 28px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .125), rgba(255, 255, 255, .055));
    border: 1px solid rgba(255, 255, 255, .16);
    box-shadow: 0 38px 110px rgba(0, 0, 0, .28), inset 0 1px 0 rgba(255, 255, 255, .12);
    backdrop-filter: blur(26px) saturate(130%);
    animation: contactFloat 7s ease-in-out infinite;
}

@keyframes contactFloat {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-9px)
    }
}

.contact-final-card:before {
    content: "\2713";
    position: absolute;
    right: 22px;
    top: 18px;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .08em;
    color: #111;
    background: #fffdf8;
    border-radius: 999px;
    padding: 8px 12px;
    box-shadow: 0 14px 40px rgba(0, 0, 0, .18);
}

.contact-final-card .form-title {
    margin-bottom: 22px;
    padding-right: 68px;
}

.contact-final-card .form-title h3 {
    margin: 0;
    font-size: 32px;
    letter-spacing: -.03em;
    color: #fff;
}

.contact-final-card .form-title span {
    display: block;
    margin-top: 5px;
    color: rgba(255, 255, 255, .55);
    font-size: 13px;
}

.contact-final-card .field {
    margin-bottom: 14px;
}

.contact-final-card .field label {
    color: rgba(255, 255, 255, .58) !important;
}

.contact-final-card .field input,
.contact-final-card .field select {
    height: 56px;
    border-radius: 18px !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    background: rgba(255, 255, 255, .095) !important;
    color: #fff !important;
    transition: border-color .25s ease, background .25s ease, box-shadow .25s ease;
}

.contact-final-card .field input:focus,
.contact-final-card .field select:focus {
    border-color: rgba(217, 221, 212, .5) !important;
    background: rgba(255, 255, 255, .13) !important;
    box-shadow: 0 0 0 4px rgba(107, 130, 120, .18) !important;
}

.contact-final-card .field input::placeholder {
    color: rgba(255, 255, 255, .4)
}

.contact-final-card .btn {
    width: 100%;
    justify-content: center;
    margin-top: 8px;
    padding: 17px 22px !important;
    background: #fffdf8 !important;
    color: #1f1b16 !important;
    border-color: #fffdf8 !important;
    font-weight: 800;
    box-shadow: 0 22px 58px rgba(255, 255, 255, .12);
}

.contact-final-card .contact-footnote {
    margin: 14px 0 0;
    text-align: center;
    font-size: 12px;
    color: rgba(255, 255, 255, .42)
}

.contact.contact-final-cta .footer {
    border-color: rgba(255, 255, 255, .1) !important;
    margin-top: 78px !important;
}

@media(max-width:980px) {
    .contact-final-grid {
        grid-template-columns: 1fr;
        gap: 36px
    }

    .contact-final-copy {
        text-align: center;
        align-items: center
    }

    .contact-final-copy p {
        margin-left: auto;
        margin-right: auto
    }

    .contact-offer-strip {
        justify-content: center
    }

    .contact-stats {
        margin-left: auto;
        margin-right: auto
    }

    .contact-big-cta {
        margin-left: auto;
        margin-right: auto
    }
}

@media(max-width:620px) {
    .contact.contact-final-cta {
        padding: 84px 0 34px !important
    }

    .contact-final-copy h2 {
        font-size: 44px !important
    }

    .contact-final-copy p {
        font-size: 15px
    }

    .contact-offer-strip span {
        width: 100%;
        justify-content: center
    }

    .contact-stats {
        grid-template-columns: 1fr;
        border-radius: 22px
    }

    .contact-final-card {
        border-radius: 30px;
        padding: 22px
    }

    .contact-big-cta {
        width: 100%;
        justify-content: center
    }
}

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

    .contact.contact-final-cta:before,
    .contact.contact-final-cta:after,
    .contact-final-card,
    .contact-big-cta:before,
    .contact-offer-strip span {
        animation: none !important
    }
}

/* V34 popup bottom CTA: center the deadline and claim button */
.promo-clean-v2 .promo-v2-bottom {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 16px !important;
    padding-top: 24px !important;
}

.promo-clean-v2 .promo-v2-bottom .promo-limit {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    letter-spacing: .16em !important;
    color: rgba(31, 27, 22, .58) !important;
}

.promo-clean-v2 .promo-v2-bottom .btn {
    margin: 0 auto !important;
    min-width: 220px !important;
    justify-content: center !important;
    background: #1f1b16 !important;
    border-color: #1f1b16 !important;
    color: #fff !important;
    box-shadow: 0 18px 48px rgba(31, 27, 22, .22) !important;
}

.promo-clean-v2.corner .promo-v2-bottom .btn {
    min-width: 100% !important;
}

/* Final compact corner-popup layout:
   after first minimize, remove the ghost gap and stack content tightly. */
.promo.promo-unified.promo-clean-v2.corner .promo-inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: start !important;
    gap: 10px !important;
    padding: 18px 18px 16px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-countdown,
.promo.promo-unified.promo-clean-v2.corner .promo-v2-hero,
.promo.promo-unified.promo-clean-v2.corner .promo-v2-limit,
.promo.promo-unified.promo-clean-v2.corner .promo-exclusion-note,
.promo.promo-unified.promo-clean-v2.corner .promo-v2-bottom {
    margin: 0 !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-hero {
    min-height: 124px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-limit {
    margin-top: 2px !important;
    margin-bottom: 0 !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-exclusion-note {
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    text-align: center !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-bottom {
    display: block !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
    border-top: 0 !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-bottom .btn {
    width: 100% !important;
    min-width: 100% !important;
    margin: 0 !important;
}

/* Hard reset for minimized popup height:
   keep the compact card only as tall as its visible content. */
.promo.promo-unified.promo-clean-v2.corner {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-inner {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-bottom {
    margin-top: 8px !important;
}

/* Final compact height trim for the minimized popup card */
.promo.promo-unified.promo-clean-v2.corner {
    width: min(340px, calc(100vw - 32px)) !important;
    border-radius: 26px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-inner {
    padding: 14px 14px 12px !important;
    gap: 6px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-countdown {
    margin: 0 44px 6px 0 !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-hero {
    min-height: 104px !important;
    border-radius: 18px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-percent {
    font-size: 64px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-limit {
    margin: 4px 0 2px !important;
    padding: 9px 12px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-limit strong {
    font-size: 28px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-exclusion-note {
    margin: 2px 0 0 !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-bottom {
    padding-top: 4px !important;
    margin-top: 0 !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-bottom .btn {
    min-height: 50px !important;
    height: 50px !important;
    border-radius: 999px !important;
}



/* V FINAL: align CTA buttons inside service slider cards */
.supporting-slide {
    min-height: 460px !important;
    display: grid !important;
    grid-template-rows: 250px 1fr !important;
    align-items: stretch !important;
}

.supporting-slide-copy {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-content: stretch !important;
    gap: 10px !important;
}

.supporting-slide-copy h4 {
    min-height: 68px !important;
    display: flex !important;
    align-items: flex-start !important;
}

.supporting-slide-copy p {
    min-height: 74px !important;
}

.supporting-slide-price {
    min-height: 42px !important;
    margin-top: auto !important;
    margin-bottom: 14px !important;
    display: flex !important;
    align-items: baseline !important;
}

.supporting-slide-actions {
    margin-top: 0 !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
}

.supporting-slide-cta {
    width: 178px !important;
    min-height: 46px !important;
    padding: 12px 20px !important;
    white-space: nowrap !important;
}

@media(max-width:560px) {
    .supporting-slide {
        min-height: 440px !important;
        grid-template-rows: 220px 1fr !important;
    }

    .supporting-slide-copy h4 {
        min-height: auto !important;
    }

    .supporting-slide-copy p {
        min-height: 64px !important;
    }

    .supporting-slide-cta {
        width: 100% !important;
    }
}



/* V FINAL 2: compact horizontal layout for supporting treatment slider cards */
.supporting-marquee {
    padding: 22px 0 34px !important;
}

.supporting-track {
    gap: 24px !important;
}

.supporting-slide {
    width: min(620px, 84vw) !important;
    min-height: 320px !important;
    height: 320px !important;
    padding: 22px !important;
    display: grid !important;
    grid-template-columns: 210px 1fr !important;
    grid-template-rows: 1fr !important;
    gap: 24px !important;
    align-items: stretch !important;
    border-radius: 34px !important;
    background: rgba(255, 253, 248, .72) !important;
    border: 1px solid rgba(31, 27, 22, .08) !important;
    box-shadow: 0 24px 70px rgba(31, 27, 22, .075) !important;
    overflow: hidden !important;
}

.supporting-slide:before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: 33px;
    pointer-events: none;
    background: linear-gradient(135deg, rgba(255, 255, 255, .42), rgba(255, 255, 255, 0) 54%);
    opacity: .8;
}

.supporting-slide:hover {
    transform: translateY(-8px) scale(1.018) !important;
    box-shadow: 0 36px 92px rgba(31, 27, 22, .12) !important;
}

.supporting-slide-visual {
    height: 100% !important;
    min-height: 0 !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 26px !important;
    background: radial-gradient(circle at 50% 42%, rgba(255, 255, 255, .96), rgba(246, 240, 230, .74) 56%, rgba(232, 224, 212, .36)) !important;
    border: 1px solid rgba(31, 27, 22, .065) !important;
    overflow: hidden !important;
    position: relative !important;
}

.supporting-slide-visual:before {
    width: 150px !important;
    height: 150px !important;
    background: radial-gradient(circle, rgba(255, 255, 255, .96), rgba(255, 255, 255, .24) 60%, transparent 72%) !important;
    filter: blur(5px) !important;
}

.supporting-slide-visual img {
    max-width: 82% !important;
    max-height: 88% !important;
    object-fit: contain !important;
    margin: 0 !important;
    filter: drop-shadow(0 24px 32px rgba(31, 27, 22, .15)) !important;
}

.supporting-slide-visual.combo-machines {
    gap: 0 !important;
}

.supporting-slide-visual.combo-machines img {
    max-width: 56% !important;
    max-height: 86% !important;
    margin: 0 -18px !important;
}

.supporting-slide-copy {
    position: relative !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 8px 4px 4px !important;
}

.supporting-slide-copy .service-category {
    font-size: 10px !important;
    letter-spacing: .20em !important;
    line-height: 1.1 !important;
    color: var(--deep) !important;
    margin-bottom: 16px !important;
}

.supporting-slide-copy h4 {
    min-height: 0 !important;
    display: block !important;
    font-size: clamp(34px, 3.1vw, 48px) !important;
    line-height: .92 !important;
    letter-spacing: -.045em !important;
    margin: 0 0 14px !important;
    max-width: 330px !important;
}

.supporting-slide-copy p {
    min-height: 0 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    color: rgba(31, 27, 22, .62) !important;
    margin: 0 !important;
    max-width: 330px !important;
}

.supporting-slide-footer {
    margin-top: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding-top: 18px !important;
}

.supporting-slide-price {
    min-height: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: baseline !important;
    gap: 10px !important;
    white-space: nowrap !important;
}

.supporting-slide-price s {
    font-size: 14px !important;
    color: rgba(31, 27, 22, .35) !important;
}

.supporting-slide-price strong {
    font-family: Manrope, Inter, Arial, sans-serif !important;
    font-size: 34px !important;
    letter-spacing: -.04em !important;
    line-height: 1 !important;
}

.supporting-slide-actions {
    min-height: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
}

.supporting-slide-cta {
    width: auto !important;
    min-width: 126px !important;
    min-height: 44px !important;
    padding: 12px 18px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    letter-spacing: -.01em !important;
    white-space: nowrap !important;
}

.supporting-slide-cta::before {
    display: none !important;
}

.supporting-slide-cta:after {
    content: "\2192";
    margin-left: 9px;
    transition: transform .32s cubic-bezier(.22, 1, .36, 1);
}

@media(min-width:981px) {
    .supporting-slide-copy .service-category br {
        display: none;
    }
}

@media(max-width:700px) {
    .supporting-slide {
        width: 82vw !important;
        height: auto !important;
        min-height: 420px !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: 190px 1fr !important;
        gap: 18px !important;
        padding: 18px !important;
    }

    .supporting-slide-copy {
        padding: 0 2px 2px !important;
    }

    .supporting-slide-copy h4 {
        font-size: 32px !important;
        max-width: none !important;
    }

    .supporting-slide-copy p {
        font-size: 14px !important;
        max-width: none !important;
    }

    .supporting-slide-footer {
        display: block !important;
        padding-top: 18px !important;
    }

    .supporting-slide-actions {
        margin-top: 14px !important;
    }

    .supporting-slide-cta {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* Make hover preview use same compact visual rhythm instead of oversized vertical card */
.supporting-focus-preview .supporting-slide {
    width: min(720px, 86vw) !important;
    height: 360px !important;
    min-height: 360px !important;
    grid-template-columns: 240px 1fr !important;
    grid-template-rows: 1fr !important;
    padding: 26px !important;
    gap: 28px !important;
}

.supporting-focus-preview .supporting-slide-copy h4 {
    font-size: 54px !important;
    max-width: 390px !important;
}

.supporting-focus-preview .supporting-slide-copy p {
    font-size: 17px !important;
    max-width: 390px !important;
}

.supporting-focus-preview .supporting-slide-price strong {
    font-size: 40px !important;
}

@media(max-width:700px) {
    .supporting-focus-preview {
        display: none !important;
    }
}


/* V42 premium offer highlight: make launch promotion the hero of final CTA */
.contact.contact-final-cta {
    background:
        radial-gradient(circle at 18% 20%, rgba(107, 130, 120, .34), transparent 31%),
        radial-gradient(circle at 58% 46%, rgba(214, 184, 122, .12), transparent 32%),
        radial-gradient(circle at 88% 72%, rgba(255, 255, 255, .08), transparent 34%),
        linear-gradient(135deg, #171411 0%, #221e18 50%, #11100e 100%) !important;
}

.offer-focus-copy {
    align-items: flex-start !important;
    text-align: left !important;
}

.offer-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    padding: 9px 16px;
    border-radius: 999px;
    border: 1px solid rgba(214, 184, 122, .34);
    background: rgba(214, 184, 122, .08);
    color: #dcc18a;
    text-transform: uppercase;
    letter-spacing: .22em;
    font-size: 12px;
    font-weight: 800;
}

.offer-badge:before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #dcc18a;
    box-shadow: 0 0 18px rgba(214, 184, 122, .82);
}

.contact-final-copy .offer-title {
    font-family: Inter, Arial, sans-serif !important;
    font-size: clamp(56px, 7.5vw, 128px) !important;
    line-height: .82 !important;
    letter-spacing: -.07em !important;
    margin: 0 !important;
    max-width: 860px !important;
    color: #fff !important;
}

.offer-title span {
    position: relative;
    display: inline-block !important;
    color: transparent !important;
    background: linear-gradient(120deg, #fff9e8 0%, #d8b16a 45%, #fff3c9 68%, #b99250 100%);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 18px 70px rgba(216, 177, 106, .16);
    overflow: hidden;
    isolation: isolate;
}

.offer-title span:after {
    content: "";
    position: absolute;
    top: -26%;
    left: -52%;
    width: 80px;
    height: 152%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .95), rgba(255, 229, 165, .8), transparent);
    transform: skewX(-18deg);
    filter: blur(2px);
    mix-blend-mode: screen;
    animation: offerPercentSweep 4.6s ease-in-out infinite;
}

@keyframes offerPercentSweep {

    0%,
    58% {
        transform: translateX(0) skewX(-18deg);
        opacity: 0
    }

    66% {
        opacity: .98
    }

    88% {
        transform: translateX(760%) skewX(-18deg);
        opacity: .75
    }

    100% {
        transform: translateX(820%) skewX(-18deg);
        opacity: 0
    }
}

.offer-subtitle {
    max-width: 640px !important;
    margin: 24px 0 0 !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 18px !important;
    line-height: 1.72 !important;
}

.offer-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 30px 0 0;
}

.offer-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(14px);
    color: rgba(255, 255, 255, .86);
    font-weight: 700;
    animation: offerPillRise .78s cubic-bezier(.2, .8, .2, 1) both;
}

.offer-pills span:nth-child(2) {
    animation-delay: .14s
}

.offer-pills span:nth-child(3) {
    animation-delay: .28s
}

@keyframes offerPillRise {
    from {
        opacity: 0;
        transform: translateY(14px) scale(.97)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.offer-highlight-grid {
    display: grid;
    grid-template-columns: 1fr 1.16fr 1fr;
    gap: 1px;
    width: min(100%, 760px);
    margin: 40px 0 0;
    border-radius: 34px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(22px) saturate(140%);
    box-shadow: 0 28px 90px rgba(0, 0, 0, .22);
}

.offer-highlight-card {
    position: relative;
    padding: 28px 26px;
    background: rgba(255, 255, 255, .04);
    min-height: 150px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.offer-highlight-card small {
    color: rgba(255, 255, 255, .54);
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 800;
}

.offer-highlight-card strong {
    display: block;
    margin: 8px 0 4px;
    font-size: clamp(40px, 4vw, 64px);
    line-height: .9;
    font-weight: 900;
    color: #fff;
    letter-spacing: -.04em;
}

.offer-highlight-card span {
    font-size: 12px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .62);
    font-weight: 800;
}

.offer-highlight-card.percent {
    background: linear-gradient(160deg, rgba(216, 177, 106, .22), rgba(107, 130, 120, .1));
}

.offer-highlight-card.percent strong {
    color: transparent;
    background: linear-gradient(120deg, #fff9e8, #d8b16a 55%, #fff2c2);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 0 42px rgba(216, 177, 106, .14);
}

.offer-highlight-card.limited strong {
    animation: offerSpotPulse 5.6s ease-in-out infinite;
}

@keyframes offerSpotPulse {

    0%,
    78%,
    100% {
        transform: scale(1)
    }

    84% {
        transform: scale(1.08)
    }

    90% {
        transform: scale(.98)
    }
}

.offer-main-cta {
    margin-top: 34px !important;
    padding: 20px 30px !important;
    font-size: 20px !important;
    background: linear-gradient(135deg, #fffdf8, #e7d6aa) !important;
    color: #1f1b16 !important;
    border-color: rgba(255, 255, 255, .5) !important;
    box-shadow: 0 28px 88px rgba(216, 177, 106, .22) !important;
}

.offer-main-cta em {
    background: rgba(31, 27, 22, .12) !important;
    color: #1f1b16 !important;
}

.offer-note {
    margin: 15px 0 0 !important;
    color: rgba(255, 255, 255, .52) !important;
    font-size: 13px !important;
    letter-spacing: .03em;
}

.contact-final-card:before {
    background: #d8b16a !important;
    color: #1f1b16 !important;
    content: "30% OFF" !important;
}

@media(max-width:980px) {
    .offer-focus-copy {
        align-items: center !important;
        text-align: center !important
    }

    .offer-subtitle {
        margin-left: auto !important;
        margin-right: auto !important
    }

    .offer-pills {
        justify-content: center
    }

    .offer-highlight-grid {
        margin-left: auto;
        margin-right: auto
    }

    .offer-main-cta {
        margin-left: auto !important;
        margin-right: auto !important
    }
}

@media(max-width:620px) {
    .contact-final-copy .offer-title {
        font-size: 52px !important
    }

    .offer-highlight-grid {
        grid-template-columns: 1fr;
        border-radius: 24px
    }

    .offer-highlight-card {
        min-height: auto;
        padding: 22px
    }

    .offer-main-cta {
        width: 100%;
        justify-content: center
    }

    .offer-pills span {
        width: 100%;
        justify-content: center
    }
}

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

    .offer-title span:after,
    .offer-pills span,
    .offer-highlight-card.limited strong {
        animation: none !important
    }
}


/* V25: About video story slider restored */
.dk-story-video-section {
    background: radial-gradient(circle at 72% 42%, rgba(215, 183, 119, .08), transparent 34%), linear-gradient(135deg, #171512 0%, #221f1a 54%, #151310 100%) !important;
    color: #fffdf8 !important;
    padding: 118px 0 !important;
    position: relative !important;
    overflow: hidden !important;
    border-top: 1px solid rgba(255, 250, 245, .08);
    border-bottom: 1px solid rgba(255, 250, 245, .08);
}

.dk-story-video-section:before {
    content: "DK";
    position: absolute;
    left: -30px;
    bottom: -115px;
    font-family: 'Cormorant Garamond', serif;
    font-size: 330px;
    color: rgba(255, 255, 255, .035);
    line-height: .8;
    pointer-events: none;
}

.dk-story-video-grid {
    display: grid;
    grid-template-columns: .72fr 1.28fr;
    gap: 58px;
    align-items: center;
    position: relative;
    z-index: 2;
}

.dk-story-video-copy {
    max-width: 540px
}

.dk-story-video-copy .eyebrow {
    color: #d7b777 !important;
    letter-spacing: .28em
}

.dk-story-video-copy h2 {
    font-size: clamp(56px, 5.6vw, 92px);
    line-height: .9;
    font-weight: 500;
    margin: 24px 0 28px;
    color: #fffaf1
}

.dk-story-video-copy p {
    font-size: 18px;
    line-height: 1.85;
    color: rgba(255, 250, 245, .72);
    max-width: 520px
}

.dk-story-line {
    width: 64px;
    height: 2px;
    background: #d7b777;
    margin-top: 30px;
    box-shadow: 0 0 30px rgba(215, 183, 119, .48)
}

.dk-story-video-stage {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    display: flex;
    align-items: center;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}

.dk-story-video-track {
    display: flex;
    align-items: center;
    gap: 28px;
    width: max-content;
    animation: dkStoryVideoMarquee 38s linear infinite;
    will-change: transform;
}

.dk-story-video-stage:hover .dk-story-video-track {
    animation-play-state: paused;
}

.dk-story-video-card {
    position: relative;
    flex: 0 0 236px;
    aspect-ratio: 9/16;
    border-radius: 30px;
    overflow: hidden;
    background: #111;
    cursor: pointer;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .36), inset 0 1px rgba(255, 255, 255, .2);
    border: 1px solid rgba(255, 250, 245, .18);
    transform: scale(.92);
    opacity: .72;
    transition: transform .45s ease, opacity .45s ease, box-shadow .45s ease, border-color .45s ease;
}

.dk-story-video-card:nth-child(3n+2) {
    transform: scale(1.05);
    opacity: .96;
    border-color: rgba(215, 183, 119, .62);
    box-shadow: 0 38px 100px rgba(0, 0, 0, .42), 0 0 0 1px rgba(215, 183, 119, .12), inset 0 1px rgba(255, 255, 255, .26)
}

.dk-story-video-card:hover,
.dk-story-video-card.is-playing {
    transform: scale(1.09) translateY(-10px);
    opacity: 1;
    border-color: rgba(215, 183, 119, .9);
    box-shadow: 0 48px 120px rgba(0, 0, 0, .52), 0 0 0 1px rgba(215, 183, 119, .22), inset 0 1px rgba(255, 255, 255, .34);
    z-index: 5
}

.dk-story-video-card video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(.86) sepia(.16) contrast(.94) brightness(.86);
}

.dk-story-video-card:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .12) 0%, rgba(0, 0, 0, .08) 38%, rgba(0, 0, 0, .72) 100%);
    pointer-events: none;
}

.dk-story-video-time {
    position: absolute;
    left: 18px;
    top: 18px;
    z-index: 3;
    font-size: 12px;
    color: #fff;
    letter-spacing: .03em
}

.dk-story-video-play {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 4;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(255, 250, 245, .72);
    color: rgba(31, 27, 22, .78);
    backdrop-filter: blur(16px);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .24), inset 0 1px rgba(255, 255, 255, .7);
    padding-left: 3px;
    transition: .3s ease
}

.dk-story-video-card.is-playing .dk-story-video-play {
    opacity: 0;
    transform: translate(-50%, -50%) scale(.82)
}

.dk-story-video-meta {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 24px;
    z-index: 4;
    color: #fff
}

.dk-story-video-meta b {
    display: block;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: 12px;
    margin-bottom: 8px
}

.dk-story-video-meta span {
    display: block;
    color: rgba(255, 255, 255, .84);
    font-size: 13px;
    line-height: 1.5
}

@keyframes dkStoryVideoMarquee {
    from {
        transform: translate3d(0, 0, 0)
    }

    to {
        transform: translate3d(-50%, 0, 0)
    }
}

@media(max-width:980px) {
    .dk-story-video-grid {
        grid-template-columns: 1fr;
        gap: 36px;
        text-align: center
    }

    .dk-story-video-copy {
        margin: auto
    }

    .dk-story-video-copy p {
        margin-left: auto;
        margin-right: auto
    }

    .dk-story-line {
        margin-left: auto;
        margin-right: auto
    }

    .dk-story-video-stage {
        min-height: 480px
    }

    .dk-story-video-card {
        flex-basis: 205px
    }
}

@media(max-width:560px) {
    .dk-story-video-section {
        padding: 82px 0 !important
    }

    .dk-story-video-copy h2 {
        font-size: 48px
    }

    .dk-story-video-copy p {
        font-size: 15px
    }

    .dk-story-video-stage {
        min-height: 390px
    }

    .dk-story-video-track {
        gap: 18px;
        animation-duration: 32s
    }

    .dk-story-video-card {
        flex-basis: 160px;
        border-radius: 22px
    }

    .dk-story-video-play {
        width: 48px;
        height: 48px
    }

    .dk-story-video-meta {
        left: 14px;
        right: 14px;
        bottom: 18px
    }

    .dk-story-video-meta span {
        font-size: 11px
    }
}


/* FEEDBACK UPDATE: clarify XERF exclusion and original-price hierarchy */
.xerf-exclusion-note {
    margin: 0;
    color: rgba(82, 104, 95, .82);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.service-primary .service-price-line {
    margin-top: 6px !important;
}

.service-primary .service-price-line strong {
    display: none !important;
}

.supporting-slide-price.original-only {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 3px !important;
}

.supporting-slide-price.original-only span {
    font-size: 10px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: rgba(31, 27, 22, .48) !important;
    font-weight: 900 !important;
}

.supporting-slide-price.original-only strong {
    font-size: 30px !important;
}

.offer-treatment-grid .offer-highlight-card strong {
    font-size: clamp(42px, 4.8vw, 74px) !important;
}

.offer-treatment-grid .offer-highlight-card span {
    font-size: 12px !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}

.promo-exclusion-note {
    margin: 12px 0 0 !important;
    text-align: center !important;
    font-size: 11px !important;
    color: rgba(31, 27, 22, .58) !important;
    font-weight: 800 !important;
    letter-spacing: .04em !important;
}

.promo.promo-unified.corner .promo-exclusion-note {
    display: none !important;
}



/* V62: remove XERF chip from hero and rebalance selected-treatment chips */
.hero-clean-strip--selected {
    width: min(920px, 84vw) !important;
    top: 50% !important;
    z-index: 18 !important;
}

.hero-clean-strip--selected a {
    width: clamp(150px, 12vw, 190px) !important;
    min-height: 64px !important;
    padding: 13px 16px !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, rgba(255, 253, 248, .56), rgba(255, 250, 245, .24)) !important;
    border: 1px solid rgba(255, 255, 255, .58) !important;
    box-shadow: 0 22px 62px rgba(31, 27, 22, .12), inset 0 1px 0 rgba(255, 255, 255, .75) !important;
    backdrop-filter: blur(22px) saturate(155%) !important;
    -webkit-backdrop-filter: blur(22px) saturate(155%) !important;
}

.hero-clean-strip--selected strong {
    font-size: clamp(18px, 1.28vw, 23px) !important;
    line-height: 1.02 !important;
}

.hero-clean-strip--selected span {
    margin-top: 7px !important;
    font-size: 9.5px !important;
    letter-spacing: .14em !important;
    line-height: 1.3 !important;
}

.hero-clean-strip--selected a:nth-child(1) {
    left: 5% !important;
    right: auto !important;
    top: -88px !important;
    animation-delay: 0s !important;
}

.hero-clean-strip--selected a:nth-child(2) {
    right: 3.5% !important;
    left: auto !important;
    top: -52px !important;
    animation-delay: .9s !important;
}

.hero-clean-strip--selected a:nth-child(3) {
    left: 50% !important;
    right: auto !important;
    top: 82px !important;
    transform: translateX(-50%) !important;
    animation-delay: 1.8s !important;
}

.hero-clean-strip--selected a:nth-child(1):after {
    animation-delay: .3s !important;
}

.hero-clean-strip--selected a:nth-child(2):after {
    animation-delay: 1.5s !important;
}

.hero-clean-strip--selected a:nth-child(3):after {
    animation-delay: 2.7s !important;
}

.hero-clean-visual:hover+.hero-clean-strip--selected a:nth-child(1),
.hero-clean-strip--selected:hover a:nth-child(1) {
    transform: translate(10px, -3px) scale(1.02) !important;
}

.hero-clean-visual:hover+.hero-clean-strip--selected a:nth-child(2),
.hero-clean-strip--selected:hover a:nth-child(2) {
    transform: translate(-10px, -2px) scale(1.02) !important;
}

.hero-clean-visual:hover+.hero-clean-strip--selected a:nth-child(3),
.hero-clean-strip--selected:hover a:nth-child(3) {
    transform: translateX(-50%) translateY(-8px) scale(1.03) !important;
}

@media(max-width:980px) {
    .hero-clean-strip--selected {
        position: relative !important;
        width: min(100%, 640px) !important;
        height: auto !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 12px !important;
        margin: 22px auto 0 !important;
    }

    .hero-clean-strip--selected a {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        transform: none !important;
        width: 100% !important;
    }
}

@media(max-width:640px) {
    .hero-clean-strip--selected {
        grid-template-columns: 1fr !important;
    }
}



/* ===== About Dr. Kwon video profile section ===== */
.dk-about-profile {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 22% 34%, rgba(107, 130, 120, .16), transparent 34%),
        radial-gradient(circle at 82% 62%, rgba(216, 177, 106, .10), transparent 36%),
        linear-gradient(135deg, #1f1b16 0%, #29231d 46%, #17140f 100%);
    color: #fffdf8;
    padding: 120px 0;
    isolation: isolate;
}

.dk-about-profile:before {
    content: "\2713";
    position: absolute;
    right: -7vw;
    bottom: -12vw;
    font-family: 'Cormorant Garamond', serif;
    font-size: min(36vw, 560px);
    line-height: .8;
    color: rgba(255, 255, 255, .035);
    z-index: -1;
    pointer-events: none;
}

.dk-about-profile-grid {
    display: grid;
    grid-template-columns: minmax(280px, .86fr) minmax(360px, 1.14fr);
    gap: clamp(44px, 7vw, 110px);
    align-items: center;
}

.dk-about-video-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

.dk-about-video-shell {
    position: relative;
    width: min(360px, 72vw);
    aspect-ratio: 9/16;
    border-radius: 36px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .06);
    box-shadow: 0 42px 120px rgba(0, 0, 0, .38), inset 0 1px 0 rgba(255, 255, 255, .18);
    transform: translateZ(0);
    animation: dkAboutFloat 7s ease-in-out infinite;
}

.dk-about-video-shell:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(0, 0, 0, .08), transparent 40%, rgba(0, 0, 0, .22));
}

.dk-about-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(.92) contrast(1.02) brightness(.92);
}

.dk-about-video-glow {
    position: absolute;
    inset: auto 8% -18% 8%;
    height: 34%;
    background: radial-gradient(ellipse, rgba(216, 177, 106, .34), transparent 68%);
    filter: blur(24px);
    z-index: 1;
    pointer-events: none;
}

.dk-about-video-badge {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 3;
    border: 1px solid rgba(255, 255, 255, .22);
    background: rgba(31, 27, 22, .38);
    backdrop-filter: blur(16px);
    color: #fffdf8;
    border-radius: 999px;
    padding: 10px 14px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .16em;
    font-weight: 700;
}

.dk-about-profile-copy .eyebrow {
    color: #d8b16a;
    margin-bottom: 22px;
}

.dk-about-profile-copy h2 {
    font-size: clamp(52px, 7vw, 106px);
    line-height: .88;
    margin: 0 0 28px;
    letter-spacing: -.045em;
    font-weight: 500;
}

.dk-about-profile-copy p {
    max-width: 680px;
    color: rgba(255, 255, 255, .68);
    font-size: clamp(16px, 1.4vw, 20px);
    line-height: 1.78;
    margin: 0 0 18px;
}

.dk-about-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    max-width: 720px;
    margin: 34px 0 34px;
}

.dk-about-points span {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 52px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    padding: 13px 16px;
    background: rgba(255, 255, 255, .045);
    color: rgba(255, 255, 255, .78);
    backdrop-filter: blur(14px);
    font-size: 14px;
}

.dk-about-points span:before {
    content: "\2713";
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(216, 177, 106, .18);
    color: #d8b16a;
    font-weight: 800;
    flex: 0 0 auto;
}

.dk-about-cta {
    background: #d8b16a !important;
    border-color: #d8b16a !important;
    color: #1f1b16 !important;
    box-shadow: 0 20px 60px rgba(216, 177, 106, .18);
}

.dk-about-profile-copy.reveal.show .dk-about-points span {
    animation: dkAboutPointIn .75s cubic-bezier(.22, 1, .36, 1) both;
}

.dk-about-profile-copy.reveal.show .dk-about-points span:nth-child(1) {
    animation-delay: .08s;
}

.dk-about-profile-copy.reveal.show .dk-about-points span:nth-child(2) {
    animation-delay: .18s;
}

.dk-about-profile-copy.reveal.show .dk-about-points span:nth-child(3) {
    animation-delay: .28s;
}

.dk-about-profile-copy.reveal.show .dk-about-points span:nth-child(4) {
    animation-delay: .38s;
}

@keyframes dkAboutFloat {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-10px)
    }
}

@keyframes dkAboutPointIn {
    from {
        opacity: 0;
        transform: translateY(12px) scale(.98)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@media(max-width:980px) {
    .dk-about-profile {
        padding: 92px 0;
    }

    .dk-about-profile-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .dk-about-profile-copy p {
        margin-left: auto;
        margin-right: auto;
    }

    .dk-about-points {
        margin-left: auto;
        margin-right: auto;
    }

    .dk-about-video-shell {
        width: min(340px, 78vw);
        order: 1;
    }
}

@media(max-width:620px) {
    .dk-about-profile {
        padding: 78px 0;
    }

    .dk-about-profile-copy h2 {
        font-size: 48px;
    }

    .dk-about-points {
        grid-template-columns: 1fr;
    }

    .dk-about-video-shell {
        border-radius: 28px;
    }
}

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

    .dk-about-video-shell,
    .dk-about-profile-copy.reveal.show .dk-about-points span {
        animation: none !important;
    }
}



/* V40: About section video-focused layout */
.dk-about-orbit {
    padding: 92px 0 86px !important;
    background:
        radial-gradient(circle at 50% 52%, rgba(216, 177, 106, .10), transparent 34%),
        radial-gradient(circle at 70% 45%, rgba(107, 130, 120, .16), transparent 40%),
        #1f1b16 !important;
}

.dk-about-orbit:before {
    inset: 24px !important;
    border-radius: 44px !important;
    opacity: .8 !important;
}

.dk-about-orbit-bg {
    left: 50% !important;
    top: 48% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    font-size: clamp(170px, 24vw, 360px) !important;
    opacity: .05 !important;
    line-height: .8 !important;
}

.dk-about-orbit-inner {
    width: min(100% - 44px, 1180px) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-areas: "copy""stage""points" !important;
    gap: 26px !important;
    text-align: center !important;
}

.dk-about-orbit-copy {
    grid-area: copy !important;
    max-width: 820px !important;
    margin: 0 auto !important;
    position: relative;
    z-index: 4 !important;
}

.dk-about-orbit-copy .eyebrow {
    margin-bottom: 12px !important;
    color: #d8b16a !important;
}

.dk-about-orbit-copy h2 {
    max-width: 820px !important;
    margin: 0 auto 14px !important;
    font-size: clamp(44px, 6.6vw, 94px) !important;
    line-height: .92 !important;
}

.dk-about-orbit-copy p {
    max-width: 620px !important;
    margin: 0 auto !important;
    font-size: 16px !important;
    line-height: 1.68 !important;
    color: rgba(255, 255, 255, .70) !important;
}

.dk-about-orbit-quote {
    max-width: 540px !important;
    margin: 18px auto 0 !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(216, 177, 106, .42) !important;
    padding: 16px 0 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(255, 255, 255, .86) !important;
}

.dk-about-orbit-stage {
    grid-area: stage !important;
    min-height: 0 !important;
    height: auto !important;
    display: grid !important;
    place-items: center !important;
    position: relative !important;
    margin: 8px auto 0 !important;
    width: 100% !important;
    max-width: 980px !important;
    z-index: 3 !important;
}

.dk-about-orbit-stage:before {
    width: min(920px, 82vw) !important;
    height: min(540px, 52vw) !important;
    background: radial-gradient(ellipse, rgba(216, 177, 106, .16), rgba(255, 255, 255, .05) 42%, transparent 72%) !important;
    filter: blur(24px) !important;
    opacity: .9 !important;
}

.dk-about-orbit-video {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: min(520px, 76vw) !important;
    aspect-ratio: 9/16 !important;
    border-radius: 42px !important;
    box-shadow: 0 46px 130px rgba(0, 0, 0, .46), 0 0 0 1px rgba(255, 255, 255, .16), inset 0 1px rgba(255, 255, 255, .25) !important;
    overflow: hidden !important;
    transform-origin: center !important;
}

.dk-about-orbit-video video {
    filter: saturate(.92) contrast(1.05) brightness(.94) !important;
}

.dk-about-orbit-label {
    top: 18px !important;
    left: 18px !important;
    bottom: auto !important;
    background: rgba(255, 255, 255, .14) !important;
    border: 1px solid rgba(255, 255, 255, .22) !important;
    backdrop-filter: blur(16px) !important;
    color: #fff !important;
}

.dk-about-orbit-card {
    pointer-events: none !important;
    width: 190px !important;
    padding: 16px 18px !important;
    border-radius: 24px !important;
    background: rgba(255, 255, 255, .11) !important;
    backdrop-filter: blur(18px) !important;
    border: 1px solid rgba(255, 255, 255, .18) !important;
    opacity: .86 !important;
    box-shadow: 0 22px 70px rgba(0, 0, 0, .18) !important;
}

.dk-card-a {
    left: 11% !important;
    top: 42% !important;
    right: auto !important;
    bottom: auto !important;
}

.dk-card-b {
    right: 10% !important;
    bottom: 14% !important;
    left: auto !important;
    top: auto !important;
}

.dk-about-orbit-points {
    grid-area: points !important;
    width: min(780px, 100%) !important;
    margin: 10px auto 0 !important;
    grid-template-columns: repeat(3, 1fr) !important;
    background: rgba(255, 255, 255, .07) !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    backdrop-filter: blur(16px) !important;
}

.dk-about-orbit-points span {
    padding: 15px 18px !important;
    font-size: 12px !important;
    color: rgba(255, 255, 255, .78) !important;
}

.dk-about-orbit:hover .dk-about-orbit-video {
    transform: translateY(-8px) scale(1.018) !important;
    box-shadow: 0 58px 150px rgba(0, 0, 0, .52), 0 0 0 1px rgba(216, 177, 106, .30) !important;
}

@media(max-width:980px) {
    .dk-about-orbit {
        padding: 78px 0 !important;
    }

    .dk-about-orbit-video {
        width: min(420px, 82vw) !important;
        border-radius: 34px !important;
    }

    .dk-about-orbit-card {
        display: none !important;
    }

    .dk-about-orbit-points {
        grid-template-columns: 1fr !important;
        border-radius: 26px !important;
        width: min(520px, 100%) !important;
    }
}

@media(max-width:560px) {
    .dk-about-orbit-copy h2 {
        font-size: 42px !important;
    }

    .dk-about-orbit-copy p {
        font-size: 14px !important;
    }

    .dk-about-orbit-video {
        width: min(330px, 86vw) !important;
        border-radius: 28px !important;
    }
}


/* Meet Dr. Kwon cinematic hero */
.meet-hero {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: 118px 0 72px;
    background: radial-gradient(circle at 78% 30%, rgba(107, 130, 120, .22), transparent 34%), radial-gradient(circle at 18% 22%, rgba(201, 164, 92, .13), transparent 32%), linear-gradient(135deg, #15120f 0%, #221d18 52%, #fbf6ee 52%, #fbf6ee 100%);
    isolation: isolate
}

.meet-hero:before {
    content: "DK";
    position: absolute;
    right: -6vw;
    top: 4vh;
    font-family: Georgia, serif;
    font-size: clamp(180px, 32vw, 520px);
    line-height: .8;
    color: rgba(255, 255, 255, .045);
    z-index: -1;
    letter-spacing: -.08em
}

.meet-hero:after {
    content: "";
    position: absolute;
    inset: auto 0 0 0;
    height: 38%;
    background: linear-gradient(0deg, rgba(251, 246, 238, .96), transparent);
    z-index: -1;
    opacity: .38
}

.meet-hero-inner {
    width: min(1260px, calc(100% - 44px));
    margin: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 470px);
    gap: clamp(34px, 6vw, 92px);
    align-items: center
}

.meet-copy {
    color: #fff;
    position: relative;
    z-index: 2;
    max-width: 620px
}

.meet-kicker {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-size: 12px;
    letter-spacing: .28em;
    text-transform: uppercase;
    color: rgba(210, 190, 150, .95);
    font-weight: 700;
    margin-bottom: 20px
}

.meet-kicker:before {
    content: "";
    width: 46px;
    height: 1px;
    background: rgba(210, 190, 150, .72)
}

.meet-copy h1 {
    font-family: Georgia, 'Times New Roman', serif;
    font-weight: 400;
    font-size: clamp(52px, 7.2vw, 118px);
    line-height: .88;
    letter-spacing: -.075em;
    margin: 0 0 24px
}

.meet-copy h1 span {
    display: block;
    color: rgba(255, 255, 255, .82)
}

.meet-copy p {
    max-width: 560px;
    font-size: clamp(16px, 1.35vw, 20px);
    line-height: 1.75;
    color: rgba(255, 255, 255, .72);
    margin: 0 0 28px
}

.meet-quote {
    border-left: 2px solid rgba(210, 190, 150, .72);
    padding-left: 18px;
    color: rgba(255, 255, 255, .86);
    font-weight: 600;
    margin: 0 0 26px
}

.meet-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 34px
}

.meet-badges span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(14px);
    border-radius: 999px;
    padding: 10px 14px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px
}

.meet-badges span:before {
    content: "\2713";
    color: #d6c08d;
    font-weight: 800
}

.meet-actions {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap
}

.meet-actions .btn {
    background: #6b8278;
    border-color: #6b8278;
    color: #fff;
    box-shadow: 0 24px 50px rgba(0, 0, 0, .22)
}

.meet-actions .btn.ghost {
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .18);
    color: #fff
}

.meet-actions .btn.ghost:hover {
    background: rgba(255, 255, 255, .16)
}

.meet-video-wrap {
    position: relative;
    justify-self: center;
    width: min(430px, 38vw);
    aspect-ratio: 9/16;
    border-radius: 36px;
    padding: 10px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .34), rgba(255, 255, 255, .08));
    border: 1px solid rgba(255, 255, 255, .25);
    box-shadow: 0 38px 95px rgba(31, 27, 22, .34), 0 0 0 1px rgba(255, 255, 255, .08) inset;
    animation: meetFloat 7s ease-in-out infinite;
    transform-origin: center
}

.meet-video-wrap:before {
    content: "";
    position: absolute;
    inset: -22px;
    border-radius: 44px;
    background: radial-gradient(circle at 50% 18%, rgba(107, 130, 120, .36), transparent 55%);
    filter: blur(24px);
    z-index: -1
}

.meet-video-wrap:after {
    content: "ABOUT DR. KWON";
    position: absolute;
    left: 24px;
    top: 24px;
    z-index: 3;
    color: rgba(255, 255, 255, .9);
    font-size: 10px;
    letter-spacing: .22em;
    font-weight: 800;
    text-transform: uppercase;
    text-shadow: 0 1px 10px rgba(0, 0, 0, .35)
}

.meet-video-wrap video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 28px;
    display: block;
    filter: saturate(.92) contrast(1.04);
    background: #15120f
}

.meet-video-wrap:hover {
    transform: translateY(-8px) scale(1.018);
    box-shadow: 0 48px 120px rgba(31, 27, 22, .42)
}

.meet-video-caption {
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 24px;
    z-index: 4;
    padding: 15px 16px;
    border-radius: 22px;
    background: rgba(20, 18, 15, .36);
    border: 1px solid rgba(255, 255, 255, .13);
    backdrop-filter: blur(14px);
    color: #fff
}

.meet-video-caption strong {
    display: block;
    font-size: 15px
}

.meet-video-caption small {
    display: block;
    color: rgba(255, 255, 255, .7);
    margin-top: 4px;
    line-height: 1.45
}

.meet-scroll {
    position: absolute;
    left: 50%;
    bottom: 26px;
    transform: translateX(-50%);
    color: rgba(255, 255, 255, .55);
    font-size: 11px;
    letter-spacing: .22em;
    text-transform: uppercase;
    display: flex;
    gap: 10px;
    align-items: center
}

.meet-scroll:after {
    content: "";
    width: 38px;
    height: 1px;
    background: rgba(255, 255, 255, .38)
}

@keyframes meetFloat {

    0%,
    100% {
        translate: 0 0
    }

    50% {
        translate: 0 -12px
    }
}

@media(max-width:980px) {
    .meet-hero {
        min-height: auto;
        padding: 110px 0 72px;
        background: linear-gradient(180deg, #15120f 0%, #241f1a 58%, #fbf6ee 58%, #fbf6ee 100%)
    }

    .meet-hero-inner {
        grid-template-columns: 1fr;
        gap: 34px
    }

    .meet-copy {
        text-align: left
    }

    .meet-video-wrap {
        width: min(420px, 78vw)
    }

    .meet-scroll {
        display: none
    }
}

@media(max-width:560px) {
    .meet-hero {
        padding: 96px 0 56px
    }

    .meet-copy h1 {
        font-size: 52px
    }

    .meet-copy p {
        font-size: 15px
    }

    .meet-badges span {
        font-size: 12px;
        padding: 9px 12px
    }

    .meet-actions .btn {
        width: 100%;
        justify-content: center
    }

    .meet-video-wrap {
        width: min(340px, 88vw);
        border-radius: 28px
    }

    .meet-video-wrap video {
        border-radius: 22px
    }

    .meet-video-caption {
        left: 18px;
        right: 18px;
        bottom: 18px
    }
}



/* ===== V29: Compact Certificates strip added to original Meet Dr. Kwon layout ===== */
.dk-cert-section {
    position: relative;
    padding: 34px 0 86px;
    background:
        radial-gradient(circle at 12% 10%, rgba(107, 130, 120, .10), transparent 28%),
        radial-gradient(circle at 88% 30%, rgba(205, 176, 118, .12), transparent 26%),
        linear-gradient(180deg, var(--porcelain), #fffaf2 55%, var(--porcelain));
    overflow: hidden;
}

.dk-cert-section::before {
    content: "\2713";
    position: absolute;
    right: -2vw;
    top: -70px;
    font-size: clamp(140px, 22vw, 360px);
    line-height: 1;
    font-weight: 700;
    letter-spacing: -.08em;
    color: rgba(31, 27, 22, .035);
    pointer-events: none;
}

.dk-cert-wrap {
    width: min(1180px, 92%);
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.dk-cert-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 26px;
}

.dk-cert-kicker {
    font-size: 12px;
    letter-spacing: .32em;
    text-transform: uppercase;
    color: var(--deep);
    font-weight: 800;
    margin-bottom: 9px;
}

.dk-cert-title {
    font-size: clamp(32px, 4vw, 58px);
    line-height: .95;
    font-weight: 600;
    letter-spacing: -.04em;
    margin: 0;
}

.dk-cert-desc {
    max-width: 420px;
    color: rgba(31, 27, 22, .62);
    font-size: 15px;
    line-height: 1.7;
    margin: 0 0 6px;
}

.dk-cert-row {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
    align-items: stretch;
}

.dk-cert-card {
    position: relative;
    min-height: 212px;
    border-radius: 24px;
    padding: 12px;
    cursor: pointer;
    background: linear-gradient(135deg, rgba(255, 255, 255, .72), rgba(255, 247, 232, .48));
    border: 1px solid rgba(31, 27, 22, .12);
    box-shadow: 0 24px 60px rgba(31, 27, 22, .08);
    overflow: hidden;
    transition: transform .45s cubic-bezier(.22, 1, .36, 1), box-shadow .45s cubic-bezier(.22, 1, .36, 1), border-color .45s ease;
    isolation: isolate;
}

.dk-cert-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(115deg, transparent 0%, rgba(255, 255, 255, .55) 42%, rgba(255, 255, 255, .12) 50%, transparent 62%);
    transform: translateX(-110%);
    opacity: 0;
    transition: .7s cubic-bezier(.22, 1, .36, 1);
    z-index: 2;
    pointer-events: none;
}

.dk-cert-card:hover {
    transform: translateY(-10px) scale(1.018);
    box-shadow: 0 36px 88px rgba(31, 27, 22, .16);
    border-color: rgba(205, 176, 118, .45);
}

.dk-cert-card:hover::before {
    opacity: 1;
    transform: translateX(110%);
}

.dk-cert-paper {
    position: relative;
    height: 100%;
    min-height: 188px;
    border-radius: 18px;
    padding: 18px 14px 14px;
    background:
        linear-gradient(180deg, rgba(255, 253, 248, .98), rgba(246, 236, 216, .92)),
        repeating-linear-gradient(0deg, transparent 0 7px, rgba(205, 176, 118, .06) 8px 9px);
    border: 7px solid transparent;
    background-clip: padding-box;
    box-shadow:
        inset 0 0 0 1px rgba(205, 176, 118, .45),
        inset 0 0 0 4px rgba(255, 255, 255, .7),
        0 8px 18px rgba(31, 27, 22, .08);
    text-align: center;
}

.dk-cert-paper::before {
    content: "";
    position: absolute;
    inset: -7px;
    border-radius: 20px;
    z-index: -1;
    background: linear-gradient(135deg, #9b6d29, #efd79b 24%, #9b6d29 48%, #fff2be 67%, #8f692b 100%);
}

.dk-cert-badge {
    width: 38px;
    height: 38px;
    margin: 0 auto 10px;
    border-radius: 999px;
    background: radial-gradient(circle at 34% 30%, #fff6cf, #c7a052 58%, #7f6526);
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .45), 0 8px 16px rgba(31, 27, 22, .12);
    display: grid;
    place-items: center;
    color: #fff;
    font-weight: 900;
    font-size: 16px;
}

.dk-cert-label {
    font-size: 10px;
    letter-spacing: .28em;
    text-transform: uppercase;
    color: rgba(31, 27, 22, .58);
    font-weight: 800;
    margin-bottom: 6px;
}

.dk-cert-name {
    font-family: Georgia, serif;
    font-size: 18px;
    line-height: 1.05;
    color: var(--ink);
    margin: 0 0 10px;
    font-weight: 500;
}

.dk-cert-for {
    font-size: 10px;
    color: rgba(31, 27, 22, .58);
    margin: 0 auto 9px;
    line-height: 1.45;
    max-width: 140px;
}

.dk-cert-course {
    font-size: 11px;
    line-height: 1.35;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-weight: 800;
    color: var(--deep);
    margin: 0 auto;
    max-width: 160px;
}

.dk-cert-meta {
    font-size: 9px;
    color: rgba(31, 27, 22, .42);
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
    border-top: 1px solid rgba(31, 27, 22, .10);
    padding-top: 8px;
}

.dk-cert-caption {
    text-align: center;
    margin-top: 12px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: rgba(31, 27, 22, .72);
    line-height: 1.4;
}

.dk-cert-sub {
    text-align: center;
    font-size: 11px;
    color: rgba(31, 27, 22, .48);
    margin-top: 3px;
}

.dk-cert-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(20, 17, 14, .66);
    backdrop-filter: blur(18px);
}

.dk-cert-lightbox.show {
    display: flex;
}

.dk-cert-lightbox-inner {
    position: relative;
    width: min(560px, 92vw);
}

.dk-cert-lightbox .dk-cert-card {
    min-height: 520px;
    cursor: default;
    transform: none !important;
    box-shadow: 0 50px 120px rgba(0, 0, 0, .38);
}

.dk-cert-lightbox .dk-cert-paper {
    min-height: 490px;
    padding: 54px 42px 32px;
}

.dk-cert-lightbox .dk-cert-badge {
    width: 82px;
    height: 82px;
    font-size: 34px;
    margin-bottom: 30px;
}

.dk-cert-lightbox .dk-cert-label {
    font-size: 13px;
    margin-bottom: 14px;
}

.dk-cert-lightbox .dk-cert-name {
    font-size: 42px;
    margin-bottom: 24px;
}

.dk-cert-lightbox .dk-cert-for {
    font-size: 14px;
    max-width: 320px;
    margin-bottom: 20px;
}

.dk-cert-lightbox .dk-cert-course {
    font-size: 18px;
    max-width: 380px;
}

.dk-cert-close {
    position: absolute;
    right: -12px;
    top: -12px;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    color: var(--ink);
    display: grid;
    place-items: center;
    cursor: pointer;
    font-size: 24px;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .18);
}

@media(max-width:1050px) {
    .dk-cert-row {
        grid-template-columns: repeat(3, 1fr)
    }

    .dk-cert-head {
        align-items: start;
        flex-direction: column
    }

    .dk-cert-desc {
        max-width: 680px
    }
}

@media(max-width:700px) {
    .dk-cert-section {
        padding: 28px 0 68px
    }

    .dk-cert-row {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding-bottom: 10px
    }

    .dk-cert-card {
        flex: 0 0 74%;
        scroll-snap-align: center
    }

    .dk-cert-title {
        font-size: 38px
    }

    .dk-cert-lightbox .dk-cert-card {
        min-height: 460px
    }

    .dk-cert-lightbox .dk-cert-paper {
        min-height: 430px;
        padding: 42px 24px 28px
    }

    .dk-cert-lightbox .dk-cert-name {
        font-size: 32px
    }
}

/* === Other Services: 3-column layout === */
#normal-services .normal-slider-group {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 28px !important;
}

#normal-services .normal-slider-card {
    width: 100% !important;
    min-height: 420px !important;
    padding: 34px !important;
    border-radius: 28px !important;
}

#normal-services .normal-slider-card img {
    height: 220px !important;
    object-fit: cover !important;
    width: 100% !important;
}

@media(max-width:991px) {
    #normal-services .normal-slider-group {
        grid-template-columns: 1fr !important;
    }
}




#contact-form {
    scroll-margin-top: 110px;
}

#contact-form.dk-form-highlight .form,
#contact-form.dk-form-highlight {
    animation: dkFormGlow 1.65s cubic-bezier(.22, 1, .36, 1);
}

@keyframes dkFormGlow {
    0% {
        box-shadow: 0 0 0 rgba(201, 164, 92, 0), 0 0 0 0 rgba(201, 164, 92, 0);
    }

    28% {
        box-shadow: 0 0 0 1px rgba(201, 164, 92, .50), 0 0 54px rgba(201, 164, 92, .36);
    }

    66% {
        box-shadow: 0 0 0 1px rgba(201, 164, 92, .38), 0 0 34px rgba(201, 164, 92, .24);
    }

    100% {
        box-shadow: 0 0 0 rgba(201, 164, 92, 0), 0 0 0 0 rgba(201, 164, 92, 0);
    }
}

.supporting-slide-cta {
    white-space: nowrap;
}

/* V45: whole supporting service card is clickable to final form */
.supporting-slide {
    cursor: pointer;
}

.supporting-slide * {
    pointer-events: auto;
}

.supporting-slide:focus-visible {
    outline: 2px solid rgba(201, 164, 92, .72);
    outline-offset: 5px;
}

.supporting-slide .supporting-slide-cta {
    pointer-events: none;
}

/* V42 premium offer highlight: make launch promotion the hero of final CTA */
.contact.contact-final-cta {
    background:
        radial-gradient(circle at 18% 20%, rgba(107, 130, 120, .34), transparent 31%),
        radial-gradient(circle at 58% 46%, rgba(214, 184, 122, .12), transparent 32%),
        radial-gradient(circle at 88% 72%, rgba(255, 255, 255, .08), transparent 34%),
        linear-gradient(135deg, #171411 0%, #221e18 50%, #11100e 100%) !important;
}

.offer-focus-copy {
    align-items: flex-start !important;
    text-align: left !important;
}

.offer-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    padding: 9px 16px;
    border-radius: 999px;
    border: 1px solid rgba(214, 184, 122, .34);
    background: rgba(214, 184, 122, .08);
    color: #dcc18a;
    text-transform: uppercase;
    letter-spacing: .22em;
    font-size: 12px;
    font-weight: 800;
}

.offer-badge:before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #dcc18a;
    box-shadow: 0 0 18px rgba(214, 184, 122, .82);
}

.contact-final-copy .offer-title {
    font-family: Inter, Arial, sans-serif !important;
    font-size: clamp(56px, 7.5vw, 128px) !important;
    line-height: .82 !important;
    letter-spacing: -.07em !important;
    margin: 0 !important;
    max-width: 860px !important;
    color: #fff !important;
}

.offer-title span {
    position: relative;
    display: inline-block !important;
    color: transparent !important;
    background: linear-gradient(120deg, #fff9e8 0%, #d8b16a 45%, #fff3c9 68%, #b99250 100%);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 18px 70px rgba(216, 177, 106, .16);
    overflow: hidden;
    isolation: isolate;
}

.offer-title span:after {
    content: "";
    position: absolute;
    top: -26%;
    left: -52%;
    width: 80px;
    height: 152%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .95), rgba(255, 229, 165, .8), transparent);
    transform: skewX(-18deg);
    filter: blur(2px);
    mix-blend-mode: screen;
    animation: offerPercentSweep 4.6s ease-in-out infinite;
}

@keyframes offerPercentSweep {

    0%,
    58% {
        transform: translateX(0) skewX(-18deg);
        opacity: 0
    }

    66% {
        opacity: .98
    }

    88% {
        transform: translateX(760%) skewX(-18deg);
        opacity: .75
    }

    100% {
        transform: translateX(820%) skewX(-18deg);
        opacity: 0
    }
}

.offer-subtitle {
    max-width: 640px !important;
    margin: 24px 0 0 !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 18px !important;
    line-height: 1.72 !important;
}

.offer-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 30px 0 0;
}

.offer-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(14px);
    color: rgba(255, 255, 255, .86);
    font-weight: 700;
    animation: offerPillRise .78s cubic-bezier(.2, .8, .2, 1) both;
}

.offer-pills span:nth-child(2) {
    animation-delay: .14s
}

.offer-pills span:nth-child(3) {
    animation-delay: .28s
}

@keyframes offerPillRise {
    from {
        opacity: 0;
        transform: translateY(14px) scale(.97)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.offer-highlight-grid {
    display: grid;
    grid-template-columns: 1fr 1.16fr 1fr;
    gap: 1px;
    width: min(100%, 760px);
    margin: 40px 0 0;
    border-radius: 34px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(22px) saturate(140%);
    box-shadow: 0 28px 90px rgba(0, 0, 0, .22);
}

.offer-highlight-card {
    position: relative;
    padding: 28px 26px;
    background: rgba(255, 255, 255, .04);
    min-height: 150px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.offer-highlight-card small {
    color: rgba(255, 255, 255, .54);
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 800;
}

.offer-highlight-card strong {
    display: block;
    margin: 8px 0 4px;
    font-size: clamp(40px, 4vw, 64px);
    line-height: .9;
    font-weight: 900;
    color: #fff;
    letter-spacing: -.04em;
}

.offer-highlight-card span {
    font-size: 12px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .62);
    font-weight: 800;
}

.offer-highlight-card.percent {
    background: linear-gradient(160deg, rgba(216, 177, 106, .22), rgba(107, 130, 120, .1));
}

.offer-highlight-card.percent strong {
    color: transparent;
    background: linear-gradient(120deg, #fff9e8, #d8b16a 55%, #fff2c2);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 0 42px rgba(216, 177, 106, .14);
}

.offer-highlight-card.limited strong {
    animation: offerSpotPulse 5.6s ease-in-out infinite;
}

@keyframes offerSpotPulse {

    0%,
    78%,
    100% {
        transform: scale(1)
    }

    84% {
        transform: scale(1.08)
    }

    90% {
        transform: scale(.98)
    }
}

.offer-main-cta {
    margin-top: 34px !important;
    padding: 20px 30px !important;
    font-size: 20px !important;
    background: linear-gradient(135deg, #fffdf8, #e7d6aa) !important;
    color: #1f1b16 !important;
    border-color: rgba(255, 255, 255, .5) !important;
    box-shadow: 0 28px 88px rgba(216, 177, 106, .22) !important;
}

.offer-main-cta em {
    background: rgba(31, 27, 22, .12) !important;
    color: #1f1b16 !important;
}

.offer-note {
    margin: 15px 0 0 !important;
    color: rgba(255, 255, 255, .52) !important;
    font-size: 13px !important;
    letter-spacing: .03em;
}

.contact-final-card:before {
    background: #d8b16a !important;
    color: #1f1b16 !important;
    content: "30% OFF" !important;
}

@media(max-width:980px) {
    .offer-focus-copy {
        align-items: center !important;
        text-align: center !important
    }

    .offer-subtitle {
        margin-left: auto !important;
        margin-right: auto !important
    }

    .offer-pills {
        justify-content: center
    }

    .offer-highlight-grid {
        margin-left: auto;
        margin-right: auto
    }

    .offer-main-cta {
        margin-left: auto !important;
        margin-right: auto !important
    }
}

@media(max-width:620px) {
    .contact-final-copy .offer-title {
        font-size: 52px !important
    }

    .offer-highlight-grid {
        grid-template-columns: 1fr;
        border-radius: 24px
    }

    .offer-highlight-card {
        min-height: auto;
        padding: 22px
    }

    .offer-main-cta {
        width: 100%;
        justify-content: center
    }

    .offer-pills span {
        width: 100%;
        justify-content: center
    }
}

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

    .offer-title span:after,
    .offer-pills span,
    .offer-highlight-card.limited strong {
        animation: none !important
    }
}




/* V54: compact About Dr. Kwon with video + photo editorial collage */
.dk-about-media-v2 {
    position: relative;
    overflow: hidden;
    padding: 106px 0 !important;
    background:
        radial-gradient(circle at 14% 20%, rgba(107, 130, 120, .20), transparent 34%),
        radial-gradient(circle at 82% 62%, rgba(216, 177, 106, .12), transparent 34%),
        linear-gradient(135deg, #1d1914 0%, #29231d 48%, #15120f 100%) !important;
    color: #fffdf8;
    isolation: isolate;
}

.dk-about-media-v2:before {
    content: "\2713";
    position: absolute;
    left: -5vw;
    bottom: -11vw;
    font-family: 'Cormorant Garamond', serif;
    font-size: min(34vw, 520px);
    line-height: .8;
    color: rgba(255, 255, 255, .035);
    pointer-events: none;
    z-index: -1;
}

.dk-about-media-grid {
    display: grid;
    grid-template-columns: minmax(300px, .72fr) minmax(640px, 1.28fr);
    gap: clamp(42px, 6vw, 88px);
    align-items: center;
}

.dk-about-media-copy .eyebrow {
    color: #d8b16a;
    margin-bottom: 18px;
}

.dk-about-media-copy h2 {
    font-size: clamp(48px, 5.8vw, 88px);
    line-height: .9;
    letter-spacing: -.045em;
    margin: 0 0 22px;
    font-weight: 500;
}

.dk-about-media-copy p {
    max-width: 470px;
    color: rgba(255, 255, 255, .66);
    font-size: 16px;
    line-height: 1.72;
    margin: 0 0 24px;
}

.dk-about-mini-points {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 28px;
}

.dk-about-mini-points span {
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .045);
    color: rgba(255, 255, 255, .76);
    border-radius: 999px;
    padding: 10px 14px;
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    backdrop-filter: blur(14px);
}

.dk-about-media-copy .dk-about-cta {
    margin-top: 4px;
}

.dk-about-media-stage {
    position: relative;
    display: grid;
    grid-template-columns: minmax(230px, 330px) minmax(360px, 1fr);
    gap: 22px;
    align-items: center;
    min-height: 560px;
}

.dk-about-video-feature {
    width: 100% !important;
    max-width: 330px !important;
    justify-self: end;
    border-radius: 34px !important;
    transform: translateY(18px);
    animation: dkAboutVideoFloatV2 7.5s ease-in-out infinite !important;
    border: 1px solid rgba(255, 255, 255, .22) !important;
    box-shadow: 0 40px 110px rgba(0, 0, 0, .42), inset 0 1px 0 rgba(255, 255, 255, .22) !important;
}

.dk-about-photo-mosaic {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: 170px;
    gap: 18px;
    align-items: stretch;
}

.dk-about-photo {
    position: relative;
    margin: 0;
    overflow: hidden;
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .06);
    box-shadow: 0 24px 70px rgba(0, 0, 0, .24), inset 0 1px 0 rgba(255, 255, 255, .14);
    transform: translateZ(0);
}

.dk-about-photo:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .02), rgba(0, 0, 0, .18));
    pointer-events: none;
}

.dk-about-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(.82) contrast(1.03) brightness(.86);
    transition: transform .8s cubic-bezier(.22, 1, .36, 1), filter .8s cubic-bezier(.22, 1, .36, 1);
}

.dk-about-photo:hover img {
    transform: scale(1.055);
    filter: saturate(.96) contrast(1.04) brightness(.94);
}

.dk-photo-large {
    grid-row: span 2;
    min-height: 358px;
}

.dk-photo-wide {
    grid-column: span 2;
}

.dk-about-media-stage.reveal.show .dk-about-photo {
    animation: dkPhotoIn .8s cubic-bezier(.22, 1, .36, 1) both;
}

.dk-about-media-stage.reveal.show .dk-about-photo:nth-child(1) {
    animation-delay: .08s;
}

.dk-about-media-stage.reveal.show .dk-about-photo:nth-child(2) {
    animation-delay: .18s;
}

.dk-about-media-stage.reveal.show .dk-about-photo:nth-child(3) {
    animation-delay: .28s;
}

.dk-about-media-stage.reveal.show .dk-about-photo:nth-child(4) {
    animation-delay: .38s;
}

@keyframes dkAboutVideoFloatV2 {

    0%,
    100% {
        transform: translateY(18px)
    }

    50% {
        transform: translateY(4px)
    }
}

@keyframes dkPhotoIn {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.98)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@media(max-width:1120px) {
    .dk-about-media-grid {
        grid-template-columns: 1fr;
    }

    .dk-about-media-copy {
        text-align: center;
    }

    .dk-about-media-copy p {
        margin-left: auto;
        margin-right: auto;
    }

    .dk-about-mini-points {
        justify-content: center;
    }

    .dk-about-media-stage {
        grid-template-columns: minmax(220px, 300px) minmax(330px, 1fr);
        max-width: 900px;
        margin: auto;
    }
}

@media(max-width:760px) {
    .dk-about-media-v2 {
        padding: 78px 0 !important;
    }

    .dk-about-media-copy h2 {
        font-size: 44px;
    }

    .dk-about-media-stage {
        grid-template-columns: 1fr;
        min-height: auto;
        gap: 24px;
    }

    .dk-about-video-feature {
        justify-self: center;
        width: min(300px, 76vw) !important;
    }

    .dk-about-photo-mosaic {
        grid-template-columns: 1fr 1fr;
        grid-auto-rows: 135px;
    }

    .dk-photo-large {
        grid-row: auto;
        min-height: 0;
    }

    .dk-photo-wide {
        grid-column: span 2;
    }
}

@media(max-width:520px) {
    .dk-about-photo-mosaic {
        grid-template-columns: 1fr;
        grid-auto-rows: 180px;
    }

    .dk-photo-wide {
        grid-column: auto;
    }
}

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

    .dk-about-video-feature,
    .dk-about-media-stage.reveal.show .dk-about-photo {
        animation: none !important;
    }
}



/* V55: About Dr. Kwon video + vertical photo reel, fixed image orientation */
.dk-about-reel {
    position: relative;
    overflow: hidden;
    padding: 108px 0 !important;
    background:
        radial-gradient(circle at 16% 20%, rgba(107, 130, 120, .22), transparent 34%),
        radial-gradient(circle at 86% 62%, rgba(216, 177, 106, .12), transparent 36%),
        linear-gradient(135deg, #1d1914 0%, #29231d 48%, #15120f 100%) !important;
    color: #fffdf8;
    isolation: isolate;
}

.dk-about-reel:before {
    content: "\2713";
    position: absolute;
    right: -7vw;
    bottom: -12vw;
    font-family: 'Cormorant Garamond', serif;
    font-size: min(34vw, 520px);
    line-height: .8;
    color: rgba(255, 255, 255, .032);
    pointer-events: none;
    z-index: -1;
}

.dk-about-reel-grid {
    display: grid;
    grid-template-columns: minmax(280px, .74fr) minmax(420px, 1.26fr);
    gap: clamp(46px, 7vw, 96px);
    align-items: center;
}

.dk-about-reel-video-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

.dk-about-reel-video {
    position: relative;
    width: min(360px, 76vw);
    aspect-ratio: 9/16;
    border-radius: 36px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .20);
    background: rgba(255, 255, 255, .06);
    box-shadow: 0 42px 120px rgba(0, 0, 0, .42), inset 0 1px 0 rgba(255, 255, 255, .20);
    animation: dkAboutReelFloat 7.4s ease-in-out infinite;
}

.dk-about-reel-video:after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(0, 0, 0, .06), transparent 42%, rgba(0, 0, 0, .22));
}

.dk-about-reel-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(.92) contrast(1.04) brightness(.92);
}

.dk-about-reel-badge {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 2;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .24);
    background: rgba(31, 27, 22, .42);
    backdrop-filter: blur(16px);
    color: #fffdf8;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.dk-about-reel-copy .eyebrow {
    color: #d8b16a;
    margin-bottom: 18px;
}

.dk-about-reel-copy h2 {
    font-size: clamp(48px, 5.6vw, 90px);
    line-height: .9;
    letter-spacing: -.045em;
    margin: 0 0 22px;
    font-weight: 500;
}

.dk-about-reel-copy p {
    max-width: 620px;
    color: rgba(255, 255, 255, .66);
    font-size: 16px;
    line-height: 1.72;
    margin: 0 0 22px;
}

.dk-about-reel-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 28px;
}

.dk-about-reel-tags span {
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .045);
    color: rgba(255, 255, 255, .78);
    border-radius: 999px;
    padding: 10px 14px;
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    backdrop-filter: blur(14px);
}

.dk-about-reel-strip {
    position: relative;
    max-width: 760px;
    overflow: hidden;
    margin-top: 24px;
    padding: 4px 0 10px;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 9%, #000 91%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 9%, #000 91%, transparent 100%);
}

.dk-about-reel-track {
    display: flex;
    gap: 16px;
    width: max-content;
    animation: dkAboutPhotoSlide 24s linear infinite;
}

.dk-about-reel-strip:hover .dk-about-reel-track {
    animation-play-state: paused;
}

.dk-about-thumb {
    appearance: none;
    border: 1px solid rgba(255, 255, 255, .18);
    padding: 0;
    margin: 0;
    width: 132px;
    aspect-ratio: 9/14;
    border-radius: 22px;
    overflow: hidden;
    background: rgba(255, 255, 255, .06);
    box-shadow: 0 18px 52px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .14);
    cursor: pointer;
    position: relative;
    flex: 0 0 auto;
    transform: translateZ(0);
    transition: transform .35s cubic-bezier(.22, 1, .36, 1), border-color .35s ease, box-shadow .35s ease;
}

.dk-about-thumb:after {
    content: "\2713";
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 2;
    color: #fffdf8;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    opacity: .9;
    text-shadow: 0 2px 14px rgba(0, 0, 0, .55);
}

.dk-about-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(.86) contrast(1.04) brightness(.86);
    transition: filter .35s ease, transform .45s cubic-bezier(.22, 1, .36, 1);
}

.dk-about-thumb:hover {
    transform: translateY(-6px);
    border-color: rgba(216, 177, 106, .58);
    box-shadow: 0 26px 68px rgba(0, 0, 0, .34), 0 0 0 1px rgba(216, 177, 106, .08);
}

.dk-about-thumb:hover img {
    filter: saturate(1) contrast(1.04) brightness(.94);
    transform: scale(1.04);
}

.dk-about-modal {
    position: fixed;
    inset: 0;
    z-index: 120;
    display: none;
    place-items: center;
    padding: 28px;
    background: rgba(17, 14, 11, .72);
    backdrop-filter: blur(18px);
}

.dk-about-modal.open {
    display: grid;
    animation: dkModalFade .24s ease both;
}

.dk-about-modal-card {
    position: relative;
    width: min(520px, 92vw);
    max-height: 88vh;
    border-radius: 32px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .06);
    box-shadow: 0 44px 140px rgba(0, 0, 0, .58), inset 0 1px 0 rgba(255, 255, 255, .16);
    animation: dkModalIn .34s cubic-bezier(.22, 1, .36, 1) both;
}

.dk-about-modal-card img {
    width: 100%;
    height: 100%;
    max-height: 88vh;
    object-fit: contain;
    display: block;
    background: #15120f;
}

.dk-about-modal-close {
    position: absolute;
    right: 14px;
    top: 14px;
    z-index: 2;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .25);
    background: rgba(255, 255, 255, .72);
    color: #1f1b16;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    backdrop-filter: blur(12px);
}

@keyframes dkAboutReelFloat {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-10px)
    }
}

@keyframes dkAboutPhotoSlide {
    to {
        transform: translateX(calc(-50% - 8px));
    }
}

@keyframes dkModalFade {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes dkModalIn {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.96)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@media(max-width:1020px) {
    .dk-about-reel-grid {
        grid-template-columns: 1fr;
        text-align: center
    }

    .dk-about-reel-tags {
        justify-content: center
    }

    .dk-about-reel-copy p {
        margin-left: auto;
        margin-right: auto
    }

    .dk-about-reel-strip {
        margin-left: auto;
        margin-right: auto
    }

    .dk-about-reel-video {
        width: min(330px, 78vw)
    }
}

@media(max-width:560px) {
    .dk-about-reel {
        padding: 78px 0 !important
    }

    .dk-about-reel-copy h2 {
        font-size: 44px
    }

    .dk-about-thumb {
        width: 112px;
        border-radius: 18px
    }

    .dk-about-reel-track {
        gap: 12px
    }

    .dk-about-reel-video {
        border-radius: 28px
    }

    .dk-about-reel-strip {
        max-width: 100%;
    }
}

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

    .dk-about-reel-video,
    .dk-about-reel-track,
    .dk-about-modal.open,
    .dk-about-modal-card {
        animation: none !important;
    }
}



/* Restore About Dr. Kwon to the clean video-only layout */
.dk-about-video-only {
    overflow: hidden !important;
    padding: 112px 0 !important;
}

.dk-about-video-only-grid {
    display: grid !important;
    grid-template-columns: minmax(280px, .82fr) minmax(360px, 1.18fr) !important;
    gap: clamp(48px, 7vw, 112px) !important;
    align-items: center !important;
}

.dk-about-video-only .dk-about-reel-video-wrap {
    justify-content: center !important;
}

.dk-about-video-only-card {
    width: min(365px, 74vw) !important;
    border-radius: 38px !important;
    box-shadow: 0 44px 130px rgba(0, 0, 0, .44), inset 0 1px 0 rgba(255, 255, 255, .22) !important;
}

.dk-about-video-only-copy h2 {
    max-width: 700px !important;
    margin-bottom: 24px !important;
}

.dk-about-video-only-copy p {
    max-width: 620px !important;
    margin-bottom: 26px !important;
}

.dk-about-video-only .dk-about-reel-tags {
    margin-bottom: 32px !important;
}

.dk-about-video-only .dk-about-reel-tags span {
    white-space: nowrap;
}

.dk-about-video-only .dk-about-cta {
    margin-top: 0 !important;
}

@media(max-width:980px) {
    .dk-about-video-only-grid {
        grid-template-columns: 1fr !important;
        text-align: center !important;
    }

    .dk-about-video-only-copy p {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .dk-about-video-only .dk-about-reel-tags {
        justify-content: center !important;
    }
}

@media(max-width:560px) {
    .dk-about-video-only {
        padding: 82px 0 !important;
    }

    .dk-about-video-only-card {
        width: min(315px, 82vw) !important;
        border-radius: 30px !important;
    }
}



/* V57: compact creative About Dr. Kwon - single video, layered orbit layout */
.dk-about-orbit {
    position: relative;
    overflow: hidden;
    padding: 96px 0 104px !important;
    background:
        radial-gradient(circle at 72% 44%, rgba(216, 177, 106, .13), transparent 30%),
        radial-gradient(circle at 18% 72%, rgba(107, 130, 120, .16), transparent 34%),
        linear-gradient(145deg, #18140f 0%, #211c16 48%, #17130f 100%) !important;
    color: #fff;
    isolation: isolate;
}

.dk-about-orbit:before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 42px;
    pointer-events: none;
    z-index: 0;
}

.dk-about-orbit-bg {
    position: absolute;
    right: -4vw;
    bottom: -12vw;
    font-family: 'Cormorant Garamond', serif;
    font-size: min(42vw, 620px);
    line-height: .8;
    color: rgba(255, 255, 255, .035);
    pointer-events: none;
    z-index: 0;
}

.dk-about-orbit-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(320px, .9fr) minmax(360px, 1.1fr);
    grid-template-areas:
        "copy stage"
        "points points";
    gap: 46px 72px;
    align-items: center;
}

.dk-about-orbit-copy {
    grid-area: copy;
    max-width: 560px;
}

.dk-about-orbit-copy .eyebrow {
    color: #d8b16a;
    margin-bottom: 18px;
}

.dk-about-orbit-copy h2 {
    margin: 0 0 22px;
    font-size: clamp(54px, 6vw, 96px);
    line-height: .88;
    letter-spacing: -.045em;
    font-weight: 500;
}

.dk-about-orbit-copy p {
    margin: 0 0 28px;
    max-width: 500px;
    color: rgba(255, 255, 255, .68);
    font-size: 18px;
    line-height: 1.75;
}

.dk-about-orbit-quote {
    display: inline-flex;
    max-width: 460px;
    padding: 18px 22px;
    border-left: 2px solid rgba(216, 177, 106, .8);
    background: rgba(255, 255, 255, .045);
    color: rgba(255, 255, 255, .76);
    border-radius: 0 22px 22px 0;
    backdrop-filter: blur(14px);
}

.dk-about-orbit-stage {
    grid-area: stage;
    position: relative;
    min-height: 520px;
    display: grid;
    place-items: center;
}

.dk-about-orbit-stage:before {
    content: "";
    position: absolute;
    width: min(520px, 88%);
    aspect-ratio: 1;
    border-radius: 50%;
    border: 1px solid rgba(216, 177, 106, .16);
    box-shadow: 0 0 90px rgba(216, 177, 106, .08), inset 0 0 70px rgba(255, 255, 255, .025);
    transform: rotate(-8deg);
}

.dk-about-orbit-video {
    position: relative;
    width: min(320px, 52vw);
    aspect-ratio: 9/16;
    border-radius: 38px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .22);
    box-shadow: 0 42px 110px rgba(0, 0, 0, .44), 0 0 0 1px rgba(216, 177, 106, .08);
    background: #111;
    transform: rotate(-2deg);
    animation: dkOrbitVideoFloat 7.4s ease-in-out infinite;
    z-index: 2;
}

.dk-about-orbit-video:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .04), transparent 42%, rgba(0, 0, 0, .34));
    pointer-events: none;
}

.dk-about-orbit-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(.9) contrast(1.04) brightness(.92);
}

.dk-about-orbit-label {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 3;
    padding: 9px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .22);
    backdrop-filter: blur(16px);
    font-size: 12px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .88);
}

.dk-about-orbit-card {
    position: absolute;
    z-index: 3;
    width: 210px;
    padding: 18px 18px 16px;
    border-radius: 24px;
    background: rgba(255, 255, 255, .11);
    border: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(20px) saturate(160%);
    box-shadow: 0 26px 70px rgba(0, 0, 0, .26), inset 0 1px rgba(255, 255, 255, .16);
    color: #fff;
}

.dk-about-orbit-card strong {
    display: block;
    color: #d8b16a;
    font-size: 13px;
    letter-spacing: .18em;
    margin-bottom: 8px;
}

.dk-about-orbit-card span {
    display: block;
    color: rgba(255, 255, 255, .78);
    font-size: 14px;
    line-height: 1.45;
}

.dk-card-a {
    left: 2%;
    top: 18%;
    animation: dkOrbitCardA 6.4s ease-in-out infinite;
}

.dk-card-b {
    right: 0;
    bottom: 18%;
    animation: dkOrbitCardB 6.8s ease-in-out infinite;
}

.dk-about-orbit-points {
    grid-area: points;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 30px;
    overflow: hidden;
    background: rgba(255, 255, 255, .05);
    backdrop-filter: blur(18px);
}

.dk-about-orbit-points span {
    padding: 22px 20px;
    text-align: center;
    color: rgba(255, 255, 255, .72);
    font-size: 13px;
    letter-spacing: .14em;
    text-transform: uppercase;
    background: rgba(255, 255, 255, .025);
}

.dk-about-orbit-stage.reveal.show .dk-about-orbit-video {
    animation: dkOrbitVideoFloat 7.4s ease-in-out infinite, dkOrbitIn .9s cubic-bezier(.22, 1, .36, 1) both;
}

.dk-about-orbit-copy.reveal.show .dk-about-orbit-quote {
    animation: dkOrbitIn .75s cubic-bezier(.22, 1, .36, 1) .18s both;
}

@keyframes dkOrbitVideoFloat {

    0%,
    100% {
        transform: rotate(-2deg) translateY(0)
    }

    50% {
        transform: rotate(-2deg) translateY(-10px)
    }
}

@keyframes dkOrbitCardA {

    0%,
    100% {
        transform: translateY(0) rotate(2deg)
    }

    50% {
        transform: translateY(-8px) rotate(2deg)
    }
}

@keyframes dkOrbitCardB {

    0%,
    100% {
        transform: translateY(0) rotate(-2deg)
    }

    50% {
        transform: translateY(9px) rotate(-2deg)
    }
}

@keyframes dkOrbitIn {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.96)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.dk-about-orbit:hover .dk-about-orbit-video {
    box-shadow: 0 50px 130px rgba(0, 0, 0, .5), 0 0 0 1px rgba(216, 177, 106, .26);
}

@media(max-width:980px) {
    .dk-about-orbit {
        padding: 86px 0 !important;
    }

    .dk-about-orbit-inner {
        grid-template-columns: 1fr;
        grid-template-areas: "copy""stage""points";
        gap: 36px;
        text-align: center;
    }

    .dk-about-orbit-copy {
        max-width: 720px;
        margin: auto;
    }

    .dk-about-orbit-copy p {
        margin-left: auto;
        margin-right: auto;
    }

    .dk-about-orbit-quote {
        border-left: 0;
        border-top: 2px solid rgba(216, 177, 106, .8);
        border-radius: 22px;
    }

    .dk-about-orbit-stage {
        min-height: 520px;
        max-width: 640px;
        margin: auto;
        width: 100%;
    }

    .dk-about-orbit-card {
        width: 190px;
        text-align: left;
    }

    .dk-card-a {
        left: 4%;
        top: 12%;
    }

    .dk-card-b {
        right: 4%;
        bottom: 12%;
    }
}

@media(max-width:620px) {
    .dk-about-orbit:before {
        inset: 10px;
        border-radius: 30px;
    }

    .dk-about-orbit-copy h2 {
        font-size: 46px;
    }

    .dk-about-orbit-copy p {
        font-size: 15px;
        line-height: 1.65;
    }

    .dk-about-orbit-stage {
        min-height: 460px;
    }

    .dk-about-orbit-video {
        width: min(270px, 72vw);
        border-radius: 30px;
    }

    .dk-about-orbit-card {
        position: relative;
        width: 100%;
        max-width: 280px;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        margin: 10px auto;
        animation: none !important;
    }

    .dk-about-orbit-stage {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    .dk-about-orbit-stage:before {
        width: 90%;
    }

    .dk-about-orbit-points {
        grid-template-columns: 1fr;
        border-radius: 22px;
    }

    .dk-about-orbit-points span {
        padding: 16px 14px;
    }
}

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

    .dk-about-orbit-video,
    .dk-about-orbit-card,
    .dk-about-orbit-stage.reveal.show .dk-about-orbit-video,
    .dk-about-orbit-copy.reveal.show .dk-about-orbit-quote {
        animation: none !important;
    }
}



/* V52: About Dr. Kwon - balanced two-column layout, larger video focus */
.dk-about-orbit {
    padding: 96px 0 92px !important;
    min-height: auto !important;
    overflow: hidden !important;
    background:
        radial-gradient(circle at 26% 48%, rgba(216, 177, 106, .13), transparent 36%),
        radial-gradient(circle at 72% 28%, rgba(107, 130, 120, .18), transparent 36%),
        linear-gradient(135deg, #1f1b16 0%, #28221b 48%, #15130f 100%) !important;
}

.dk-about-orbit:before {
    inset: 24px !important;
    border-radius: 44px !important;
    opacity: .72 !important;
}

.dk-about-orbit-bg {
    left: 72% !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    font-size: clamp(180px, 27vw, 420px) !important;
    opacity: .045 !important;
    line-height: .8 !important;
}

.dk-about-orbit-inner {
    width: min(100% - 48px, 1180px) !important;
    display: grid !important;
    grid-template-columns: minmax(360px, 1.08fr) minmax(330px, .92fr) !important;
    grid-template-areas:
        "stage copy"
        "stage points" !important;
    gap: clamp(34px, 5vw, 76px) !important;
    align-items: center !important;
    text-align: left !important;
}

.dk-about-orbit-copy {
    grid-area: copy !important;
    max-width: 540px !important;
    margin: 0 !important;
    position: relative !important;
    z-index: 4 !important;
}

.dk-about-orbit-copy .eyebrow {
    margin-bottom: 16px !important;
    color: #d8b16a !important;
}

.dk-about-orbit-copy h2 {
    max-width: 520px !important;
    margin: 0 0 18px !important;
    font-size: clamp(46px, 5.4vw, 82px) !important;
    line-height: .92 !important;
    letter-spacing: -.05em !important;
}

.dk-about-orbit-copy p {
    max-width: 470px !important;
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.72 !important;
    color: rgba(255, 255, 255, .70) !important;
}

.dk-about-orbit-quote {
    max-width: 430px !important;
    margin: 24px 0 0 !important;
    padding: 18px 0 0 !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(216, 177, 106, .46) !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(255, 255, 255, .88) !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
}

.dk-about-orbit-stage {
    grid-area: stage !important;
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    min-height: 660px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    z-index: 3 !important;
}

.dk-about-orbit-stage:before {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: min(560px, 82vw) !important;
    height: min(640px, 82vw) !important;
    border-radius: 42% 58% 54% 46% !important;
    background: radial-gradient(ellipse, rgba(216, 177, 106, .18), rgba(107, 130, 120, .13) 42%, transparent 72%) !important;
    filter: blur(22px) !important;
    opacity: .95 !important;
    pointer-events: none !important;
}

.dk-about-orbit-video {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: min(420px, 42vw) !important;
    aspect-ratio: 9/16 !important;
    border-radius: 38px !important;
    overflow: hidden !important;
    transform: rotate(-1.5deg) !important;
    transform-origin: center !important;
    box-shadow: 0 46px 120px rgba(0, 0, 0, .48), 0 0 0 1px rgba(255, 255, 255, .16), inset 0 1px rgba(255, 255, 255, .22) !important;
    transition: transform .55s cubic-bezier(.22, 1, .36, 1), box-shadow .55s ease !important;
}

.dk-about-orbit-video video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    filter: saturate(.92) contrast(1.04) brightness(.94) !important;
}

.dk-about-orbit-video:after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(0, 0, 0, .04), transparent 42%, rgba(0, 0, 0, .28)) !important;
    pointer-events: none !important;
}

.dk-about-orbit-label {
    top: 18px !important;
    left: 18px !important;
    bottom: auto !important;
    background: rgba(255, 255, 255, .14) !important;
    border: 1px solid rgba(255, 255, 255, .22) !important;
    backdrop-filter: blur(16px) !important;
    color: #fff !important;
}

.dk-about-orbit-card {
    display: none !important;
}

.dk-about-orbit-points {
    grid-area: points !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 28px 0 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    backdrop-filter: none !important;
}

.dk-about-orbit-points span {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-align: left !important;
    padding: 14px 18px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    background: rgba(255, 255, 255, .055) !important;
    backdrop-filter: blur(14px) !important;
    color: rgba(255, 255, 255, .78) !important;
    font-size: 12px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
}

.dk-about-orbit-points span:before {
    content: "\2713" !important;
    display: grid !important;
    place-items: center !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: rgba(216, 177, 106, .16) !important;
    color: #d8b16a !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    flex: 0 0 auto !important;
}

.dk-about-orbit-stage.reveal.show .dk-about-orbit-video {
    animation: dkAboutTwoColIn .9s cubic-bezier(.22, 1, .36, 1) both, dkAboutTwoColFloat 7.6s ease-in-out .9s infinite !important;
}

.dk-about-orbit-copy.reveal.show .dk-about-orbit-quote {
    animation: dkAboutTwoColTextIn .75s cubic-bezier(.22, 1, .36, 1) .18s both !important;
}

.dk-about-orbit-points.reveal.show span {
    animation: dkAboutTwoColTextIn .7s cubic-bezier(.22, 1, .36, 1) both !important;
}

.dk-about-orbit-points.reveal.show span:nth-child(1) {
    animation-delay: .05s !important;
}

.dk-about-orbit-points.reveal.show span:nth-child(2) {
    animation-delay: .15s !important;
}

.dk-about-orbit-points.reveal.show span:nth-child(3) {
    animation-delay: .25s !important;
}

.dk-about-orbit:hover .dk-about-orbit-video {
    transform: rotate(-1.5deg) translateY(-8px) scale(1.018) !important;
    box-shadow: 0 58px 150px rgba(0, 0, 0, .54), 0 0 0 1px rgba(216, 177, 106, .30) !important;
}

@keyframes dkAboutTwoColIn {
    from {
        opacity: 0;
        transform: rotate(-1.5deg) translateY(22px) scale(.96)
    }

    to {
        opacity: 1;
        transform: rotate(-1.5deg) translateY(0) scale(1)
    }
}

@keyframes dkAboutTwoColFloat {

    0%,
    100% {
        transform: rotate(-1.5deg) translateY(0)
    }

    50% {
        transform: rotate(-1.5deg) translateY(-10px)
    }
}

@keyframes dkAboutTwoColTextIn {
    from {
        opacity: 0;
        transform: translateY(12px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@media(max-width:980px) {
    .dk-about-orbit {
        padding: 82px 0 86px !important;
    }

    .dk-about-orbit-inner {
        grid-template-columns: 1fr !important;
        grid-template-areas: "stage""copy""points" !important;
        text-align: center !important;
        gap: 28px !important;
    }

    .dk-about-orbit-stage {
        min-height: auto !important;
    }

    .dk-about-orbit-video {
        width: min(380px, 78vw) !important;
    }

    .dk-about-orbit-copy {
        margin: 0 auto !important;
        text-align: center !important;
    }

    .dk-about-orbit-copy p,
    .dk-about-orbit-quote {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .dk-about-orbit-points {
        margin-left: auto !important;
        margin-right: auto !important;
        max-width: 560px !important;
    }
}

@media(max-width:560px) {
    .dk-about-orbit {
        padding: 70px 0 !important;
    }

    .dk-about-orbit-inner {
        width: min(100% - 28px, 520px) !important;
    }

    .dk-about-orbit-copy h2 {
        font-size: 42px !important;
    }

    .dk-about-orbit-copy p {
        font-size: 14px !important;
    }

    .dk-about-orbit-video {
        width: min(310px, 82vw) !important;
        border-radius: 28px !important;
    }
}

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

    .dk-about-orbit-video,
    .dk-about-orbit-stage.reveal.show .dk-about-orbit-video,
    .dk-about-orbit-points.reveal.show span {
        animation: none !important;
    }
}



/* Final: Meet Dr. Kwon replaces About Us, using the previous warm ivory section mood */
.meet-hero {
    min-height: auto !important;
    padding: 98px 0 48px !important;
    background:
        radial-gradient(circle at 74% 34%, rgba(255, 255, 255, .92), rgba(251, 246, 238, .42) 28%, transparent 56%),
        radial-gradient(circle at 18% 18%, rgba(107, 130, 120, .12), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(216, 177, 106, .12), transparent 34%),
        linear-gradient(135deg, #fffaf3 0%, #fbf6ee 58%, #efe4d7 100%) !important;
    color: var(--ink) !important;
    overflow: hidden !important;
}

.meet-hero:before {
    content: "\2713" !important;
    right: -5vw !important;
    top: 9vh !important;
    color: rgba(31, 27, 22, .045) !important;
    font-family: 'Cormorant Garamond', serif !important;
    z-index: 0 !important;
}

.meet-hero:after {
    content: "" !important;
    position: absolute !important;
    inset: auto -8% -20% 42% !important;
    height: 58% !important;
    border-radius: 50% !important;
    background: radial-gradient(ellipse, rgba(107, 130, 120, .14), rgba(255, 255, 255, .28) 42%, transparent 72%) !important;
    filter: blur(16px) !important;
    opacity: .9 !important;
    z-index: 0 !important;
}

.meet-hero-inner {
    position: relative !important;
    z-index: 2 !important;
    width: min(1160px, calc(100% - 52px)) !important;
    grid-template-columns: minmax(0, .95fr) minmax(300px, 420px) !important;
    gap: clamp(26px, 4vw, 54px) !important;
    align-items: center !important;
}

.meet-copy {
    color: var(--ink) !important;
}

.meet-kicker {
    color: var(--deep) !important;
}

.meet-kicker:before {
    background: rgba(107, 130, 120, .58) !important;
}

.meet-copy h1 {
    color: var(--ink) !important;
    font-size: clamp(44px, 5.9vw, 90px) !important;
    line-height: .9 !important;
    margin: 0 0 18px !important;
}

.meet-copy h1 span {
    color: var(--deep) !important;
}

.meet-copy p {
    color: rgba(31, 27, 22, .66) !important;
    font-size: clamp(15px, 1.08vw, 18px) !important;
    line-height: 1.62 !important;
    margin: 0 0 18px !important;
    max-width: 500px !important;
}

.meet-quote {
    color: rgba(31, 27, 22, .80) !important;
    border-left-color: rgba(107, 130, 120, .52) !important;
    margin: 0 0 18px !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
}

.meet-badges {
    margin: 0 0 22px !important;
    gap: 8px !important;
}

.meet-badges span {
    background: rgba(255, 253, 248, .62) !important;
    border-color: rgba(31, 27, 22, .10) !important;
    color: rgba(31, 27, 22, .70) !important;
    box-shadow: 0 18px 52px rgba(31, 27, 22, .055), inset 0 1px rgba(255, 255, 255, .74) !important;
    font-size: 12px !important;
    padding: 8px 12px !important;
}

.meet-badges span:before {
    color: var(--deep) !important;
}

.meet-actions .btn {
    background: var(--deep) !important;
    border-color: var(--deep) !important;
    color: #fff !important;
    box-shadow: 0 22px 52px rgba(82, 104, 95, .20) !important;
    padding: 12px 18px !important;
}

.meet-actions .btn.ghost {
    background: rgba(255, 253, 248, .62) !important;
    border-color: rgba(31, 27, 22, .12) !important;
    color: var(--ink) !important;
}

.meet-video-wrap {
    width: min(360px, 32vw) !important;
    padding: 8px !important;
    border-radius: 32px !important;
    background: linear-gradient(145deg, rgba(255, 255, 255, .92), rgba(255, 250, 245, .44)) !important;
    border: 1px solid rgba(255, 255, 255, .78) !important;
    box-shadow: 0 34px 86px rgba(31, 27, 22, .14), 0 0 0 1px rgba(31, 27, 22, .035) inset !important;
}

.meet-video-wrap:before {
    background: radial-gradient(circle at 50% 18%, rgba(107, 130, 120, .30), transparent 58%) !important;
    opacity: .9 !important;
}

.meet-video-wrap:after {
    background: rgba(31, 27, 22, .30) !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    border-radius: 999px !important;
    padding: 7px 11px !important;
    left: 18px !important;
    top: 18px !important;
    font-size: 9px !important;
}

.meet-video-wrap video {
    border-radius: 24px !important;
    image-rendering: auto !important;
    filter: saturate(1.02) contrast(1.08) brightness(1.01) !important;
    transform: translateZ(0) !important;
    backface-visibility: hidden !important;
}

.meet-video-caption {
    background: rgba(255, 253, 248, .72) !important;
    border: 1px solid rgba(255, 255, 255, .62) !important;
    color: var(--ink) !important;
    box-shadow: 0 18px 52px rgba(31, 27, 22, .10) !important;
    left: 18px !important;
    right: 18px !important;
    bottom: 18px !important;
    padding: 12px 14px !important;
}

.meet-video-caption strong {
    font-size: 14px !important;
}

.meet-video-caption small {
    color: rgba(31, 27, 22, .58) !important;
}

.meet-scroll {
    color: rgba(31, 27, 22, .46) !important;
    bottom: 14px !important;
}

.meet-scroll:after {
    background: rgba(31, 27, 22, .22) !important;
}

@media(max-width:980px) {
    .meet-hero {
        padding: 88px 0 40px !important;
        background: linear-gradient(180deg, #fffaf3 0%, #fbf6ee 62%, #efe4d7 100%) !important;
    }

    .meet-hero-inner {
        grid-template-columns: 1fr !important;
    }

    .meet-copy {
        text-align: center !important;
        margin: auto !important;
    }

    .meet-kicker {
        justify-content: center !important;
    }

    .meet-kicker:before {
        display: none !important;
    }

    .meet-actions,
    .meet-badges {
        justify-content: center !important;
    }

    .meet-copy p {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .meet-video-wrap {
        width: min(360px, 72vw) !important;
    }
}

@media(max-width:560px) {
    .meet-hero {
        padding: 84px 0 42px !important;
    }

    .meet-hero-inner {
        width: min(100% - 28px, 520px) !important;
    }

    .meet-copy h1 {
        font-size: 40px !important;
    }

    .meet-video-wrap {
        width: min(300px, 82vw) !important;
        border-radius: 26px !important;
    }

    .meet-video-wrap video {
        border-radius: 20px !important;
    }
}

/* Final mobile polish for Meet Dr. Kwon hero */
@media(max-width:560px) {
    .header {
        top: 10px !important;
        width: min(100% - 20px, 560px) !important;
        padding: 8px 10px !important;
    }

    .header .brand img {
        width: 34px !important;
        height: 34px !important;
    }

    .header .btn {
        padding: 11px 16px !important;
        font-size: 14px !important;
    }

    .meet-hero {
        padding: 86px 0 34px !important;
    }

    .meet-hero-inner {
        width: min(100% - 24px, 520px) !important;
        gap: 20px !important;
    }

    .meet-copy {
        text-align: center !important;
        max-width: none !important;
    }

    .meet-kicker {
        justify-content: center !important;
        font-size: 10px !important;
        letter-spacing: .18em !important;
        margin-bottom: 10px !important;
    }

    .meet-kicker:before {
        display: none !important;
    }

    .meet-copy h1 {
        font-size: clamp(36px, 10.6vw, 44px) !important;
        line-height: .96 !important;
        margin: 0 0 12px !important;
    }

    .meet-copy p {
        max-width: 100% !important;
        font-size: 14px !important;
        line-height: 1.58 !important;
        margin: 0 0 16px !important;
    }

    .meet-quote {
        font-size: 14px !important;
        line-height: 1.5 !important;
        margin-bottom: 16px !important;
    }

    .meet-badges {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        width: 100% !important;
        margin-top: 0 !important;
    }

    .meet-badges span {
        width: 100% !important;
        justify-content: center !important;
        text-align: center !important;
        min-height: 42px !important;
    }

    .meet-actions {
        width: 100% !important;
        flex-direction: column !important;
        gap: 10px !important;
        margin-top: 14px !important;
    }

    .meet-actions .btn,
    .meet-actions .btn.ghost {
        width: 100% !important;
        justify-content: center !important;
        min-height: 48px !important;
    }

    .meet-video-wrap {
        width: 100% !important;
        max-width: 340px !important;
        padding: 7px !important;
        border-radius: 24px !important;
        margin: 4px auto 0 !important;
    }

    .meet-video-wrap:before {
        inset: -12px !important;
        filter: blur(16px) !important;
    }

    .meet-video-wrap:after {
        left: 12px !important;
        top: 12px !important;
        padding: 6px 9px !important;
        font-size: 8px !important;
        letter-spacing: .16em !important;
    }

    .meet-video-wrap video {
        border-radius: 18px !important;
    }

    .meet-video-sound-toggle {
        top: 12px !important;
        right: 12px !important;
        bottom: auto !important;
        padding: 8px 10px !important;
        font-size: 9px !important;
        letter-spacing: .1em !important;
        min-height: 32px !important;
    }

    .meet-video-caption {
        left: 12px !important;
        right: 12px !important;
        bottom: 12px !important;
        padding: 11px 12px !important;
        border-radius: 18px !important;
    }

    .meet-video-caption strong {
        font-size: 12px !important;
        line-height: 1.3 !important;
    }

    .meet-video-caption small {
        font-size: 12px !important;
        line-height: 1.42 !important;
    }

    .meet-scroll {
        display: none !important;
    }
}

/* Certifications auto-slide carousel */
.dk-cert-carousel {
    position: relative !important;
    overflow: hidden !important;
    padding: 10px 0 26px !important;
    margin-top: 8px !important;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}

.dk-cert-track {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 0 !important;
    align-items: stretch !important;
    width: max-content !important;
    animation: dkCertMarquee 34s linear infinite !important;
    will-change: transform !important;
}

.dk-cert-carousel:hover .dk-cert-track {
    animation-play-state: paused !important;
}

.dk-cert-group {
    display: flex !important;
    gap: 18px !important;
    padding-right: 18px !important;
    align-items: stretch !important;
}

.dk-cert-group .dk-cert-card {
    flex: 0 0 238px !important;
    min-width: 238px !important;
}

.dk-cert-edge {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 110px;
    z-index: 3;
    pointer-events: none;
}

.dk-cert-edge-left {
    left: 0;
    background: linear-gradient(90deg, #fbf6ee 0%, rgba(251, 246, 238, .86) 34%, rgba(251, 246, 238, 0) 100%);
}

.dk-cert-edge-right {
    right: 0;
    background: linear-gradient(270deg, #fbf6ee 0%, rgba(251, 246, 238, .86) 34%, rgba(251, 246, 238, 0) 100%);
}

.dk-cert-card {
    cursor: pointer;
}

.dk-cert-card:hover {
    z-index: 4;
}

.dk-cert-hint {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 2px;
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: rgba(31, 27, 22, .45);
    font-weight: 800;
}

.dk-cert-hint span {
    width: 44px;
    height: 1px;
    background: rgba(91, 114, 102, .35);
    display: inline-block;
}

@keyframes dkCertMarquee {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

@media(max-width:1050px) {
    .dk-cert-group .dk-cert-card {
        flex-basis: 230px !important;
        min-width: 230px !important;
    }

    .dk-cert-track {
        animation-duration: 30s !important;
    }
}

@media(max-width:700px) {
    .dk-cert-carousel {
        margin-left: -4vw !important;
        margin-right: -4vw !important;
        padding-left: 4vw !important;
        padding-right: 4vw !important;
    }

    .dk-cert-group .dk-cert-card {
        flex-basis: 74vw !important;
        min-width: 74vw !important;
        scroll-snap-align: center !important;
    }

    .dk-cert-track {
        animation-duration: 24s !important;
    }

    .dk-cert-edge {
        width: 56px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dk-cert-track {
        animation: none !important;
    }
}



.product-card,
.tcard {
    padding-bottom: 32px !important;
    display: flex !important;
    flex-direction: column !important;
}

.product-card .btn,
.tcard .btn {
    margin-top: auto !important;
    margin-bottom: 8px !important;
    position: relative !important;
    bottom: auto !important;
}



/* FINAL FIX: keep supporting-card CTA fully visible and inset from the card border */
.supporting-marquee {
    padding: 18px 0 56px !important;
    overflow: visible !important;
}

.supporting-track {
    align-items: stretch !important;
}

.supporting-slide {
    height: 496px !important;
    min-height: 496px !important;
    padding: 18px 18px 32px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.supporting-slide-visual {
    flex: 0 0 126px !important;
    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;
    margin-bottom: 8px !important;
}

.supporting-slide-visual img {
    max-height: 98px !important;
}

.supporting-slide-copy {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

.supporting-slide-copy h4 {
    min-height: 54px !important;
    max-height: 60px !important;
    font-size: 28px !important;
}

.supporting-slide-copy p {
    min-height: 46px !important;
    max-height: 52px !important;
    font-size: 13.5px !important;
}

.supporting-slide-footer {
    margin-top: auto !important;
    padding-top: 10px !important;
    padding-bottom: 2px !important;
    gap: 12px !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
}

.supporting-slide-price {
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: baseline !important;
}

.supporting-slide-actions {
    width: 100% !important;
    min-height: 50px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.supporting-slide-cta {
    display: inline-flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 84% !important;
    min-height: 48px !important;
    height: 48px !important;
    margin: 0 auto !important;
    border-radius: 22px !important;
    align-items: center !important;
    justify-content: center !important;
    transform: none !important;
    position: relative !important;
    z-index: 3 !important;
}

@media(max-width:560px) {
    .supporting-marquee {
        padding-bottom: 48px !important;
    }

    .supporting-slide {
        height: 470px !important;
        min-height: 470px !important;
        padding: 16px 16px 28px !important;
    }

    .supporting-slide-visual {
        flex-basis: 118px !important;
        height: 118px !important;
        min-height: 118px !important;
        max-height: 118px !important;
    }

    .supporting-slide-cta {
        width: 86% !important;
        height: 46px !important;
        min-height: 46px !important;
    }
}



/* FINAL: bring supporting slider Book button fully inside each card */
.supporting-services-wrap,
.supporting-marquee {
    overflow: visible !important;
}

.supporting-marquee {
    padding: 18px 0 96px !important;
}

.supporting-track {
    align-items: stretch !important;
}

.supporting-slide {
    position: relative !important;
    height: 520px !important;
    min-height: 520px !important;
    padding: 16px 18px 132px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.supporting-slide-visual {
    flex: 0 0 126px !important;
    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;
    margin-bottom: 8px !important;
}

.supporting-slide-visual img {
    max-height: 96px !important;
    max-width: 74% !important;
}

.supporting-slide-visual.combo-machines img {
    max-height: 96px !important;
    max-width: 36% !important;
}

.supporting-slide-copy {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    padding: 0 2px !important;
}

.supporting-slide-copy .service-category {
    margin-bottom: 6px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
}

.supporting-slide-copy h4 {
    min-height: 46px !important;
    max-height: 58px !important;
    margin-bottom: 10px !important;
    font-size: 28px !important;
    line-height: 1 !important;
    overflow: hidden !important;
}

.supporting-slide-copy h5,
.supporting-slide-copy .supporting-slide-subtitle {
    margin: 0 0 8px !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
}

.supporting-slide-copy p {
    min-height: auto !important;
    max-height: 44px !important;
    margin: 0 0 8px !important;
    font-size: 13.5px !important;
    line-height: 1.35 !important;
    overflow: hidden !important;
}

.supporting-slide-copy ul,
.supporting-slide-benefits {
    margin: 0 !important;
    padding-left: 0 !important;
    list-style: none !important;
    display: grid !important;
    gap: 4px !important;
}

.supporting-slide-copy li,
.supporting-slide-benefits li {
    font-size: 12.5px !important;
    line-height: 1.28 !important;
    margin: 0 !important;
}

.supporting-slide-footer {
    position: absolute !important;
    left: 18px !important;
    right: 18px !important;
    bottom: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    align-items: stretch !important;
}

.supporting-slide-price {
    min-height: 36px !important;
    margin: 0 !important;
    justify-content: center !important;
}

.supporting-slide-price strong {
    font-size: 34px !important;
    line-height: 1 !important;
}

.supporting-slide-actions {
    width: 100% !important;
    min-height: 52px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.supporting-slide-cta {
    width: 86% !important;
    height: 52px !important;
    min-height: 52px !important;
    margin: 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

@media(max-width:560px) {
    .supporting-marquee {
        padding-bottom: 82px !important;
    }

    .supporting-slide {
        height: 500px !important;
        min-height: 500px !important;
        padding: 16px 16px 126px !important;
    }

    .supporting-slide-footer {
        left: 16px !important;
        right: 16px !important;
        bottom: 22px !important;
    }

    .supporting-slide-cta {
        width: 88% !important;
        height: 50px !important;
        min-height: 50px !important;
    }

    .supporting-slide-price strong {
        font-size: 31px !important;
    }
}



#treatments .service-primary {
    grid-template-columns: 1.05fr .95fr !important;
}

#treatments .service-primary-visual {
    min-height: 430px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 30px !important;
    background: #fff !important;
    box-shadow: 0 28px 80px rgba(31, 27, 22, .11) !important;
}

#treatments .service-primary-visual:before {
    display: none !important;
}

#treatments .core-service-clinical-image {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
    border-radius: inherit !important;
    background: #fff !important;
    filter: none !important;
}

#treatments .supporting-services-wrap,
#treatments .supporting-marquee,
#treatments .supporting-track,
#treatments .supporting-slide {
    display: none !important;
}

@media(max-width:860px) {
    #treatments .service-primary {
        grid-template-columns: 1fr !important;
    }

    #treatments .service-primary-visual {
        min-height: 280px !important;
    }
}



.dk-service-case-slide,
.dk-service-case-slide img,
.dk-service-panel img {
    cursor: default !important;
}

.dk-service-case-slide:hover,
.dk-service-case-slide:hover img {
    transform: none !important;
    scale: 1 !important;
}

.dk-service-lightbox,
.dk-lightbox,
.dk-image-modal,
.case-lightbox,
.image-preview-overlay,
.image-preview-modal,
.service-image-modal {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}



.service-primary,
.service-primary:hover,
.service-primary.is-main-hover-source {
    transform: none !important;
    filter: none !important;
    opacity: 1 !important;
    cursor: default !important;
}

.service-primary:hover:after {
    opacity: 0 !important;
}

.main-service-focus-preview {
    display: none !important;
}

.service-primary-visual img,
.service-primary:hover .service-primary-visual img {
    transform: none !important;
    scale: 1 !important;
}



#contact .offer-focus-copy .offer-title {
    margin-top: 0 !important;
}



.dk-service-case-slide,
.dk-service-case-slide img {
    cursor: default !important;
    transform: none !important;
    scale: 1 !important;
}

.dk-service-case-slide:hover,
.dk-service-case-slide:hover img {
    transform: none !important;
    scale: 1 !important;
}



/* Compact service tabs */
.dk-clinical-service-section .dk-service-switcher {
    gap: 8px !important;
    margin-bottom: 18px !important;
}

.dk-clinical-service-section .dk-service-switcher button {
    min-height: 72px !important;
    padding: 11px 14px !important;
    border-radius: 18px !important;
}

.dk-clinical-service-section .dk-service-switcher button:hover,
.dk-clinical-service-section .dk-service-switcher button.active {
    transform: translateY(-1px) !important;
}

.dk-clinical-service-section .dk-service-switcher span {
    margin-bottom: 4px !important;
    font-size: 9px !important;
}

.dk-clinical-service-section .dk-service-switcher strong {
    margin-bottom: 2px !important;
    font-size: 15px !important;
}

.dk-clinical-service-section .dk-service-switcher small {
    font-size: 10px !important;
}

/* More balanced clinical slide scale */
.dk-clinical-service-section .dk-clinical-layout {
    grid-template-columns: minmax(0, 1.55fr) minmax(280px, .45fr) !important;
    gap: 20px !important;
    align-items: center !important;
}

.dk-clinical-service-section .dk-clinical-visual {
    aspect-ratio: 16/9 !important;
    max-height: 610px !important;
    border-radius: 28px !important;
}

.dk-clinical-service-section .dk-service-case-slide {
    padding: 12px !important;
}

.dk-clinical-service-section .dk-service-case-slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    transform: scale(.96) !important;
    transform-origin: center !important;
    border-radius: 18px !important;
}

.dk-clinical-service-section .dk-clinical-arrow {
    width: 42px !important;
    height: 42px !important;
    font-size: 18px !important;
}

/* Simplified information column */
.dk-clinical-service-section .dk-clinical-info-compact {
    min-height: auto !important;
    padding: 26px !important;
    border-radius: 28px !important;
    justify-content: center !important;
}

.dk-clinical-service-section .dk-clinical-info-compact h3 {
    margin: 0 0 24px !important;
    font-size: clamp(38px, 4vw, 56px) !important;
    line-height: .95 !important;
}

.dk-clinical-service-section .dk-clinical-data-compact {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    margin: 0 0 24px !important;
}

.dk-clinical-service-section .dk-clinical-data-compact>div {
    padding: 15px 0 !important;
    border-top: 1px solid rgba(31, 27, 22, .10) !important;
}

.dk-clinical-service-section .dk-clinical-data-compact>div:last-child {
    border-bottom: 1px solid rgba(31, 27, 22, .10) !important;
}

.dk-clinical-service-section .dk-clinical-data-compact small {
    display: block !important;
    margin-bottom: 6px !important;
    font-size: 9px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: var(--stone) !important;
}

.dk-clinical-service-section .dk-clinical-data-compact strong {
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.dk-clinical-service-section .dk-clinical-cta {
    width: 100% !important;
    min-height: 48px !important;
    padding: 12px 18px !important;
    justify-content: center !important;
    text-align: center !important;
}

/* Slightly tighter section */
.dk-clinical-service-section {
    padding: 86px 0 92px !important;
}

@media(max-width:900px) {
    .dk-clinical-service-section .dk-clinical-layout {
        grid-template-columns: 1fr !important;
    }

    .dk-clinical-service-section .dk-service-switcher {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .dk-clinical-service-section .dk-clinical-visual {
        max-height: none !important;
    }
}

@media(max-width:560px) {
    .dk-clinical-service-section .dk-service-switcher button {
        min-height: 68px !important;
        padding: 10px 12px !important;
    }

    .dk-clinical-service-section .dk-service-case-slide {
        padding: 6px !important;
    }

    .dk-clinical-service-section .dk-service-case-slide img {
        transform: scale(.98) !important;
    }
}



.normal-services-track {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 18px !important;
    animation: none !important;
    transform: none !important;
}

.normal-slider-group {
    display: contents !important;
    width: auto !important;
    flex: none !important;
    padding: 0 !important;
}

.normal-slider-group.is-clone {
    display: none !important;
}

.normal-slider-card {
    min-height: 420px !important;
}

.normal-services-marquee {
    overflow: visible !important;
}

.normal-services-marquee:before,
.normal-services-marquee:after {
    display: none !important;
}

@media(max-width:1100px) {
    .normal-services-track {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media(max-width:768px) {
    .normal-services-track {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media(max-width:520px) {
    .normal-services-track {
        grid-template-columns: 1fr !important;
    }
}



.xerf-compare-wrap {
    min-height: unset !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    padding: 18px !important;
}

.xerf-compare-stage {
    position: relative;
    width: 100%;
    aspect-ratio: 1/1;
    overflow: hidden;
    border-radius: 24px;
    background: #222;
    box-shadow: 0 22px 60px rgba(0, 0, 0, .16);
    user-select: none;
}

.xerf-compare-img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
    pointer-events: none;
}

.xerf-after-layer {
    position: absolute;
    inset: 0;
    width: 50%;
    overflow: hidden;
    z-index: 2;
}

.xerf-after-img {
    width: 100vw !important;
    max-width: none !important;
}

.xerf-compare-divider {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 2px;
    background: rgba(255, 255, 255, .95);
    z-index: 4;
    transform: translateX(-1px);
    pointer-events: none;
}

.xerf-compare-handle {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #fff;
    color: #53695f;
    font-size: 20px;
    font-weight: 900;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .22);
    transform: translate(-50%, -50%);
}

.xerf-compare-label {
    position: absolute;
    top: 16px;
    z-index: 5;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .88);
    color: #1f1d19;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
    pointer-events: none;
}

.xerf-label-before {
    left: 16px;
}

.xerf-label-after {
    right: 16px;
}

.xerf-compare-range {
    position: absolute;
    inset: 0;
    z-index: 6;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: ew-resize;
}

@media(max-width:900px) {
    .xerf-compare-stage {
        aspect-ratio: 4/3;
    }
}



/* Remove only the 30% OFF badge attached to the footer form */
.contact-final-card::before,
.contact-final-card:before {
    content: none !important;
    display: none !important;
}

.contact-final-card {
    padding-top: inherit !important;
}



.dk-clinical-info-compact #dkClinicalSummary {
    position: relative;
    margin: 0 0 4px !important;
    color: rgba(31, 27, 22, .62) !important;
    font-size: 15px !important;
    line-height: 1.58 !important;
}

.dk-clinical-info-compact .dk-clinical-pill {
    margin-bottom: 4px;
}

.dk-clinical-info-compact h3 {
    margin: 17px 0 12px !important;
}

.dk-clinical-info-compact .dk-clinical-data-compact {
    margin-top: 20px !important;
}

.dk-clinical-visual.oligio-cropped-mode {
    aspect-ratio: 32/15 !important;
}

.dk-clinical-visual.oligio-cropped-mode .dk-service-case-slide img {
    object-fit: contain !important;
    object-position: center !important;
    background: #292929;
}

@media(max-width:760px) {
    .dk-clinical-visual.oligio-cropped-mode {
        aspect-ratio: 16/10 !important;
    }

    .dk-clinical-info-compact #dkClinicalSummary {
        font-size: 14px !important;
    }
}



.dk-clinical-service-section .dk-clinical-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 3fr) minmax(300px, 2fr) !important;
    gap: 22px !important;
    align-items: stretch !important;
}

.dk-clinical-service-section .dk-clinical-visual {
    width: 100% !important;
    min-width: 0 !important;
}

.dk-clinical-service-section .dk-clinical-info-compact {
    min-width: 0 !important;
    padding: 24px 26px !important;
    border-radius: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 0 !important;
}

.dk-clinical-service-section .dk-clinical-info-compact .dk-clinical-pill {
    margin: 0 0 14px !important;
    font-size: 10px !important;
    letter-spacing: .16em !important;
}

.dk-clinical-service-section .dk-clinical-info-compact h3 {
    margin: 0 0 20px !important;
    font-size: clamp(34px, 3.5vw, 52px) !important;
    line-height: .96 !important;
}

.dk-clinical-service-section .dk-clinical-data-compact {
    margin: 0 !important;
    gap: 0 !important;
}

.dk-clinical-service-section .dk-clinical-data-compact>div {
    padding: 14px 0 !important;
}

.dk-clinical-service-section .dk-clinical-data-compact small {
    display: block !important;
    margin-bottom: 5px !important;
    font-size: 10px !important;
    letter-spacing: .13em !important;
}

.dk-clinical-service-section .dk-clinical-data-compact strong {
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
}

.dk-clinical-service-section .dk-clinical-cta {
    width: max-content !important;
    margin-top: 18px !important;
    padding: 13px 20px !important;
    font-size: 13px !important;
}

.dk-clinical-visual.oligio-cropped-mode {
    aspect-ratio: 1920/818 !important;
}

.dk-clinical-visual.oligio-cropped-mode .dk-service-case-slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    background: #292929 !important;
}

@media(max-width:900px) {
    .dk-clinical-service-section .dk-clinical-layout {
        grid-template-columns: 1fr !important;
    }

    .dk-clinical-service-section .dk-clinical-info-compact {
        padding: 22px !important;
    }
}



.dk-clinical-visual[data-current-service="tightan"],
.dk-clinical-visual[data-current-service="lavieen"],
.dk-clinical-visual[data-current-service="combination"] {
    aspect-ratio: 16/9 !important;
}

.dk-clinical-visual .dk-service-case-slide img {
    object-fit: contain !important;
    object-position: center !important;
}



.dk-clinical-service-section .dk-clinical-visual {
    overflow: hidden !important;
}

.dk-clinical-service-section .dk-service-case-slide {
    overflow: hidden !important;
    background: #292929 !important;
}

.dk-clinical-service-section .dk-service-case-slide img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
    display: block !important;
    background: #292929 !important;
}

@media(max-width:900px) {
    .dk-clinical-service-section .dk-service-case-slide img {
        width: 100% !important;
        height: 100% !important;
        transform: none !important;
    }
}



/* The final tab uses wide multi-panel clinical images.
   Match the frame to their true ratio so no side faces are clipped. */
.dk-clinical-visual[data-current-service="combination"] {
    aspect-ratio: 1302 / 479 !important;
}

.dk-clinical-visual[data-current-service="combination"] .dk-service-case-slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
}

@media(max-width:900px) {
    .dk-clinical-visual[data-current-service="combination"] {
        aspect-ratio: 1302 / 479 !important;
    }
}



.dk-clinical-visual[data-current-service="combination"] {
    aspect-ratio: 1440 / 555 !important;
}

.dk-clinical-visual[data-current-service="combination"] .dk-service-case-slide {
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
}

.dk-clinical-visual[data-current-service="combination"] .dk-service-case-slide img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
    display: block !important;
}

@media(max-width:900px) {
    .dk-clinical-visual[data-current-service="combination"] {
        aspect-ratio: 1440 / 555 !important;
    }
}



/* Final override: show the entire four-panel clinical image in the last tab. */
.dk-clinical-visual[data-current-service="combination"] {
    aspect-ratio: 1440 / 555 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    background: #292929 !important;
}

.dk-clinical-visual[data-current-service="combination"] .dk-service-case-track,
.dk-clinical-visual[data-current-service="combination"] .dk-service-case-slide {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
}

.dk-clinical-visual[data-current-service="combination"] .dk-service-case-slide img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    background: #292929 !important;
}

@media(max-width:900px) {
    .dk-clinical-visual[data-current-service="combination"] {
        aspect-ratio: 1440 / 555 !important;
    }
}



/* Combination: show all four panels and fill the entire visual frame. */
.dk-clinical-visual[data-current-service="combination"] {
    width: 100% !important;
    max-width: none !important;
    aspect-ratio: 1440 / 555 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    background: #292929 !important;
}

.dk-clinical-visual[data-current-service="combination"] .dk-service-case-slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
}

.dk-clinical-visual[data-current-service="combination"] .dk-service-case-slide img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: fill !important;
    object-position: center !important;
    transform: none !important;
    display: block !important;
}

@media (max-width:900px) {
    .dk-clinical-visual[data-current-service="combination"] {
        aspect-ratio: 1440 / 555 !important;
    }
}


/* Final lock for normal service clinical slider:
   make the frame match the image presentation instead of leaving a wide rectangle. */
.dk-clinical-service-section .dk-clinical-layout {
    align-items: start !important;
}

.dk-clinical-service-section .dk-clinical-visual,
.dk-clinical-service-section .dk-clinical-visual[data-current-service="oligio"],
.dk-clinical-service-section .dk-clinical-visual[data-current-service="tightan"],
.dk-clinical-service-section .dk-clinical-visual[data-current-service="lavieen"],
.dk-clinical-service-section .dk-clinical-visual[data-current-service="combination"] {
    justify-self: center !important;
    width: min(100%, 760px) !important;
    max-width: 760px !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-radius: 24px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.dk-clinical-service-section .dk-service-panel,
.dk-clinical-service-section .dk-service-case-slide {
    background: transparent !important;
}

.dk-clinical-service-section .dk-service-case-slide img,
.dk-clinical-service-section .dk-clinical-visual[data-current-service="combination"] .dk-service-case-slide img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.02) !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    background: transparent !important;
}

@media(max-width:980px) {
    .dk-clinical-service-section .dk-clinical-visual,
    .dk-clinical-service-section .dk-clinical-visual[data-current-service="oligio"],
    .dk-clinical-service-section .dk-clinical-visual[data-current-service="tightan"],
    .dk-clinical-service-section .dk-clinical-visual[data-current-service="lavieen"],
    .dk-clinical-service-section .dk-clinical-visual[data-current-service="combination"] {
        width: min(100%, 640px) !important;
        max-width: 640px !important;
        aspect-ratio: 1 / 1 !important;
    }
}

@media(max-width:560px) {
    .dk-clinical-service-section .dk-clinical-visual,
    .dk-clinical-service-section .dk-clinical-visual[data-current-service="oligio"],
    .dk-clinical-service-section .dk-clinical-visual[data-current-service="tightan"],
    .dk-clinical-service-section .dk-clinical-visual[data-current-service="lavieen"],
    .dk-clinical-service-section .dk-clinical-visual[data-current-service="combination"] {
        width: 100% !important;
        max-width: 100% !important;
        aspect-ratio: 1 / 1 !important;
        border-radius: 20px !important;
    }
}



.xerf-showcase {
    align-items: stretch !important;
    gap: clamp(22px, 3.4vw, 54px) !important;
}

.xerf-showcase-visual {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.xerf-view-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.xerf-view-tab {
    border: 1px solid rgba(62, 83, 75, .16);
    border-radius: 18px;
    background: rgba(255, 255, 255, .58);
    padding: 13px 15px;
    display: flex;
    align-items: center;
    gap: 12px;
    text-align: left;
    cursor: pointer;
    color: #222;
    transition: .25s ease;
}

.xerf-view-tab:hover {
    transform: translateY(-2px);
    border-color: rgba(77, 105, 95, .34);
}

.xerf-view-tab.active {
    background: #526d63;
    color: #fff;
    border-color: #526d63;
    box-shadow: 0 12px 28px rgba(49, 70, 62, .18);
}

.xerf-tab-number {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    background: rgba(82, 109, 99, .10);
}

.xerf-view-tab.active .xerf-tab-number {
    background: rgba(255, 255, 255, .18);
}

.xerf-view-tab strong {
    display: block;
    font-size: 14px;
    line-height: 1.15;
}

.xerf-view-tab small {
    display: block;
    margin-top: 4px;
    font-size: 11px;
    opacity: .68;
    font-weight: 600;
}

.xerf-view-panel {
    display: none;
}

.xerf-view-panel.active {
    display: block;
}

.xerf-result-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin: 2px 2px 10px;
}

.xerf-result-kicker {
    display: block;
    color: #5d756c;
    text-transform: uppercase;
    letter-spacing: .16em;
    font-size: 10px;
    font-weight: 800;
    margin-bottom: 4px;
}

.xerf-result-header h4 {
    margin: 0;
    font-size: clamp(21px, 2.1vw, 30px);
    line-height: 1;
}

.xerf-result-count,
.xerf-result-badge {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    color: #516a61;
    background: #eef1ee;
    border-radius: 999px;
    padding: 8px 12px;
}

.xerf-full-slider {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    background: #171717;
    border: 10px solid #262626;
    box-shadow: 0 16px 35px rgba(26, 30, 27, .16);
}

.xerf-full-track {
    position: relative;
    aspect-ratio: 4/3;
}

.xerf-result-slide {
    position: absolute;
    inset: 0;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .35s ease;
}

.xerf-result-slide.active {
    opacity: 1;
    visibility: visible;
}

.xerf-result-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.xerf-slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .55);
    background: rgba(28, 34, 31, .72);
    color: #fff;
    display: grid;
    place-items: center;
    cursor: pointer;
    font-size: 18px;
    backdrop-filter: blur(8px);
    z-index: 3;
}

.xerf-prev {
    left: 14px
}

.xerf-next {
    right: 14px
}

.xerf-slider-arrow:hover {
    background: #526d63;
}

.xerf-full-dots {
    display: flex;
    justify-content: center;
    gap: 7px;
    margin: 13px 0 8px;
}

.xerf-full-dots button {
    width: 7px;
    height: 7px;
    border: 0;
    border-radius: 999px;
    padding: 0;
    background: rgba(82, 109, 99, .25);
    cursor: pointer;
    transition: .2s;
}

.xerf-full-dots button.active {
    width: 26px;
    background: #526d63;
}

.xerf-eyes-result {
    margin: 0;
    border-radius: 24px;
    overflow: hidden;
    border: 10px solid #262626;
    background: #171717;
    box-shadow: 0 16px 35px rgba(26, 30, 27, .16);
}

.xerf-eyes-result img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
}

.xerf-result-guide {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 10px;
    padding: 0 4px;
    font-size: 11px;
    font-weight: 800;
    color: #4e655d;
}

.xerf-result-guide span {
    display: flex;
    align-items: center;
    gap: 6px;
}

.xerf-result-guide i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #526d63;
}

.xerf-result-guide span:nth-child(2) i {
    background: #c6a36b;
}

.xerf-result-guide small {
    margin-left: auto;
    font-size: 10px;
    font-weight: 600;
    color: rgba(34, 34, 34, .58);
}

.xerf-dynamic-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.xerf-main-intro {
    margin-bottom: 18px !important;
}

.xerf-copy-panel {
    display: none;
}

.xerf-copy-panel.active {
    display: block;
}

.xerf-copy-label {
    display: inline-flex;
    padding: 7px 10px;
    border-radius: 999px;
    background: #eef1ee;
    color: #526d63;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.xerf-copy-panel h4 {
    font-size: clamp(23px, 2.5vw, 36px);
    line-height: 1.04;
    margin: 0 0 12px;
}

.xerf-copy-panel>p {
    margin: 0 0 18px;
    color: rgba(34, 34, 34, .66);
}

.xerf-info-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    margin-bottom: 18px;
}

.xerf-info-grid div {
    border-top: 1px solid rgba(48, 65, 59, .14);
    padding: 10px 0;
    display: grid;
    grid-template-columns: 112px 1fr;
    gap: 12px;
}

.xerf-info-grid small {
    text-transform: uppercase;
    letter-spacing: .1em;
    font-size: 9px;
    font-weight: 800;
    color: #64786f;
}

.xerf-info-grid strong {
    font-size: 12px;
    line-height: 1.35;
}

@media(max-width:900px) {
    .xerf-showcase {
        grid-template-columns: 1fr !important;
    }

    .xerf-full-track {
        aspect-ratio: 4/3;
    }
}

@media(max-width:620px) {
    .xerf-view-tabs {
        grid-template-columns: 1fr;
    }

    .xerf-full-slider,
    .xerf-eyes-result {
        border-width: 7px;
        border-radius: 19px;
    }

    .xerf-slider-arrow {
        width: 38px;
        height: 38px;
    }

    .xerf-result-guide small {
        width: 100%;
        margin-left: 0;
    }
}



/* Final fix: Other Services = exactly 3 cards in one row */
#normal-services .normal-services-marquee {
    overflow: visible !important;
    width: 100% !important;
    mask: none !important;
    -webkit-mask: none !important;
}

#normal-services .normal-services-marquee::before,
#normal-services .normal-services-marquee::after {
    display: none !important;
    content: none !important;
}

#normal-services .normal-services-track {
    width: 100% !important;
    max-width: none !important;
    display: block !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
}

#normal-services .normal-slider-group {
    width: 100% !important;
    max-width: none !important;
    flex-basis: auto !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
    padding: 0 !important;
    margin: 0 !important;
}

#normal-services .normal-slider-group.is-clone {
    display: none !important;
}

#normal-services .normal-slider-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 430px !important;
    padding: 32px !important;
    border-radius: 28px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

#normal-services .normal-slider-card h3 {
    font-size: clamp(28px, 2.4vw, 40px) !important;
    line-height: 1.02 !important;
    overflow-wrap: anywhere !important;
}

#normal-services .normal-slider-card p {
    font-size: 15px !important;
    line-height: 1.55 !important;
}

@media(max-width:980px) {
    #normal-services .normal-slider-group {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media(max-width:640px) {
    #normal-services .normal-slider-group {
        grid-template-columns: 1fr !important;
    }

    #normal-services .normal-slider-card {
        min-height: auto !important;
    }
}



#contact-form .footer-treatment-options>label {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    min-height: 66px !important;
    padding-right: 100px !important;
    overflow: visible !important;
}

#contact-form .footer-treatment-options .service-sale-badge {
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 3 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 72px !important;
    height: 29px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ebc979, #c89a49) !important;
    color: #2a241b !important;
    border: 1px solid rgba(255, 255, 255, .32) !important;
    box-shadow: 0 5px 14px rgba(0, 0, 0, .22) !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .07em !important;
    white-space: nowrap !important;
    opacity: 1 !important;
    visibility: visible !important;
}

@media(max-width:560px) {
    #contact-form .footer-treatment-options>label {
        padding-right: 88px !important;
    }

    #contact-form .footer-treatment-options .service-sale-badge {
        right: 9px !important;
        min-width: 64px !important;
        height: 26px !important;
        font-size: 9px !important;
    }
}



/* Final override: keep the 30% labels visible on the right of every service row */
#contact-form .footer-treatment-options>label {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 32px minmax(0, 1fr) auto !important;
    align-items: center !important;
    column-gap: 12px !important;
    width: 100% !important;
    min-height: 66px !important;
    padding: 11px 14px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

#contact-form .footer-treatment-options>label>input[type="checkbox"] {
    grid-column: 1 !important;
}

#contact-form .footer-treatment-options>label>span:not(.service-sale-badge) {
    grid-column: 2 !important;
    min-width: 0 !important;
    white-space: normal !important;
}

#contact-form .footer-treatment-options>label>.service-sale-badge {
    grid-column: 3 !important;
    position: static !important;
    transform: none !important;
    margin-left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 72px !important;
    height: 29px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #edcc82, #c89a49) !important;
    color: #282117 !important;
    border: 1px solid rgba(255, 255, 255, .34) !important;
    box-shadow: 0 5px 14px rgba(0, 0, 0, .24) !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-style: normal !important;
    font-weight: 900 !important;
    letter-spacing: .07em !important;
    white-space: nowrap !important;
    opacity: 1 !important;
    visibility: visible !important;
    flex: 0 0 auto !important;
}

@media(max-width:480px) {
    #contact-form .footer-treatment-options>label {
        grid-template-columns: 30px minmax(0, 1fr) auto !important;
        column-gap: 9px !important;
        padding: 10px !important;
    }

    #contact-form .footer-treatment-options>label>.service-sale-badge {
        min-width: 60px !important;
        height: 25px !important;
        padding: 0 7px !important;
        font-size: 8px !important;
    }
}



.footer-treatment-options label,
.footer-treatment-options .service-item {
    position: relative !important;
}

.save30-badge {
    position: absolute !important;
    right: 12px !important;
    top: 12px !important;
    background: #d8b36a !important;
    color: #2b2418 !important;
    padding: 3px 8px !important;
    border-radius: 999px !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    z-index: 99 !important;
    display: inline-block !important;
}



.footer-treatment-options label,
.footer-service-item,
.service-option {
    position: relative !important;
}

.save30-badge {
    position: absolute !important;
    top: 10px !important;
    right: 12px !important;
    display: inline-block !important;
    background: #D8B36A !important;
    color: #2b2316 !important;
    padding: 3px 8px !important;
    border-radius: 999px !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    z-index: 999 !important;
}



/* Restore Select Services dropdown and show SAVE 30% inside every option */
.contact-final-card .treatment-choice-field {
    position: relative !important;
    z-index: 20 !important;
}

.contact-final-card .treatment-choice-field>label {
    display: block !important;
    margin-bottom: 9px !important;
}

.contact-final-card .footer-service-select-trigger {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 56px !important;
    padding: 0 16px !important;
    border-radius: 17px !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    background: rgba(255, 255, 255, .08) !important;
    color: #fff !important;
    cursor: pointer !important;
}

.contact-final-card .treatment-choice-field>.footer-treatment-options {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 8px) !important;
    display: none !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
    max-height: 350px !important;
    padding: 10px !important;
    overflow-y: auto !important;
    border-radius: 20px !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    background: rgba(29, 29, 27, .97) !important;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .34) !important;
    backdrop-filter: blur(18px) !important;
}

.contact-final-card .treatment-choice-field.is-open>.footer-treatment-options {
    display: grid !important;
}

.contact-final-card .footer-treatment-options>label {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) auto !important;
    align-items: center !important;
    column-gap: 10px !important;
    min-height: 66px !important;
    margin: 0 !important;
    padding: 10px 11px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
    background: rgba(255, 255, 255, .055) !important;
    color: #fff !important;
    cursor: pointer !important;
}

.contact-final-card .footer-treatment-options>label:hover {
    border-color: rgba(216, 179, 106, .48) !important;
    background: rgba(255, 255, 255, .09) !important;
}

.contact-final-card .footer-treatment-options input[type="checkbox"] {
    grid-column: 1 !important;
    width: 24px !important;
    height: 24px !important;
    margin: 0 !important;
}

.contact-final-card .footer-normal-option-copy {
    grid-column: 2 !important;
    min-width: 0 !important;
    display: grid !important;
    gap: 3px !important;
}

.contact-final-card .footer-normal-option-copy b {
    font-size: 12px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    color: #fff !important;
}

.contact-final-card .footer-normal-option-copy small {
    font-size: 9px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    font-style: italic !important;
    text-transform: uppercase !important;
    color: rgba(255, 255, 255, .58) !important;
}

.contact-final-card .save30-badge {
    grid-column: 3 !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 64px !important;
    height: 23px !important;
    padding: 0 7px !important;
    border-radius: 999px !important;
    background: #d8b36a !important;
    color: #2a2317 !important;
    border: 1px solid rgba(255, 255, 255, .28) !important;
    font-size: 8px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .06em !important;
    white-space: nowrap !important;
    text-transform: uppercase !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.contact-final-card .footer-treatment-options>label:has(input:checked) {
    border-color: #d8b36a !important;
    background: rgba(216, 179, 106, .16) !important;
}

@media(max-width:620px) {
    .contact-final-card .treatment-choice-field>.footer-treatment-options {
        grid-template-columns: 1fr !important;
    }
}



.contact-final-card .save30-badge {
    min-width: auto !important;
    width: auto !important;
    height: 18px !important;
    padding: 0 6px !important;
    font-size: 7px !important;
    border-radius: 999px !important;
    justify-self: end !important;
    align-self: start !important;
    margin-top: 2px !important;
    box-shadow: none !important;
    letter-spacing: .04em !important;
}

.contact-final-card .footer-treatment-options>label {
    align-items: start !important;
}

.contact-final-card .footer-normal-option-copy {
    padding-top: 2px !important;
}



.contact-final-card .footer-treatment-options>label {
    align-items: center !important;
}

.contact-final-card .footer-normal-option-copy {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding-top: 0 !important;
}

.contact-final-card .footer-normal-option-copy b {
    margin: 0 !important;
    line-height: 1 !important;
}

.contact-final-card .footer-normal-option-copy small {
    display: block !important;
    width: 100% !important;
    margin-top: 4px !important;
    flex-basis: 100% !important;
}

.contact-final-card .save30-badge {
    align-self: center !important;
    margin-top: 0 !important;
    transform: none !important;
}



.contact-final-card .footer-normal-option-copy {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    grid-template-areas:
        "title badge"
        "meta meta" !important;
    align-items: center !important;
    column-gap: 8px !important;
    row-gap: 4px !important;
}

.contact-final-card .footer-normal-option-copy b {
    grid-area: title !important;
    margin: 0 !important;
}

.contact-final-card .footer-normal-option-copy small {
    grid-area: meta !important;
    margin: 0 !important;
    width: auto !important;
}

.contact-final-card .save30-badge {
    grid-area: badge !important;
    justify-self: end !important;
    align-self: center !important;
    height: 16px !important;
    padding: 0 6px !important;
    font-size: 7px !important;
    line-height: 16px !important;
    margin: 0 !important;
}



/* Desktop remains unchanged. Everything below applies only to tablet/mobile. */
@media (max-width: 991px) {

    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden !important;
    }

    img,
    video,
    canvas,
    svg {
        max-width: 100% !important;
    }

    .container {
        width: min(100% - 32px, 1180px) !important;
    }

    .header {
        top: 10px !important;
        width: calc(100% - 20px) !important;
        padding: 8px 10px !important;
    }

    .header .nav {
        display: none !important;
    }

    .header .btn {
        padding: 10px 14px !important;
        font-size: 12px !important;
    }

    .brand {
        gap: 8px !important;
        font-size: 11px !important;
        letter-spacing: .10em !important;
    }

    .brand img {
        width: 36px !important;
        height: 36px !important;
    }

    section,
    .section {
        padding-top: 78px !important;
        padding-bottom: 78px !important;
    }

    h1,
    h2,
    h3 {
        overflow-wrap: anywhere;
    }

    .btn {
        min-height: 46px !important;
        padding: 12px 18px !important;
    }

    /* Hero / intro */
    .meet-hero-inner,
    .hero-grid,
    .hero-clean-inner,
    .hero-machines-inner {
        grid-template-columns: 1fr !important;
        width: min(100% - 28px, 900px) !important;
    }

    .meet-copy,
    .hero-clean-copy,
    .hero-machines-copy {
        text-align: center !important;
        margin-inline: auto !important;
    }

    .meet-actions,
    .hero-ctas {
        justify-content: center !important;
    }

    .meet-video-wrap,
    .hero-clean-visual,
    .hero-machines-stage {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    /* Save 30 / clinical gallery */
    .dk-clinical-head {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        align-items: start !important;
    }

    .dk-save30-head {
        max-width: 100% !important;
    }

    .dk-save30-title {
        justify-content: center !important;
    }

    .dk-save30-limit {
        justify-content: center !important;
        text-align: center !important;
    }

    .dk-clinical-layout {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .dk-clinical-visual {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        aspect-ratio: 16/10 !important;
    }

    .dk-clinical-info {
        width: 100% !important;
        height: auto !important;
    }

    .dk-service-switcher {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .dk-service-switcher button {
        min-width: 0 !important;
    }

    /* XERF */
    .xerf-showcase {
        grid-template-columns: 1fr !important;
    }

    .xerf-showcase-visual,
    .xerf-full-slider,
    .xerf-eyes-result {
        width: 100% !important;
        max-width: 100% !important;
    }

    .xerf-view-tabs {
        grid-template-columns: 1fr 1fr !important;
    }

    .xerf-result-guide {
        gap: 10px !important;
    }

    /* Core services */
    #treatments .service-primary,
    #treatments .service-primary-grid,
    #treatments .service-matrix {
        grid-template-columns: 1fr !important;
    }

    /* Other Services */
    #normal-services .normal-slider-group {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }

    #normal-services .normal-slider-card {
        min-height: auto !important;
        padding: 26px !important;
    }

    /* Contact / footer */
    .contact-final-grid,
    .contact-grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    .contact-final-card {
        width: 100% !important;
        min-width: 0 !important;
    }

    .contact-final-card .treatment-choice-field>.footer-treatment-options {
        grid-template-columns: 1fr !important;
        max-height: min(62vh, 420px) !important;
    }

    .footer {
        flex-direction: column !important;
        gap: 12px !important;
    }

    /* Popup */
    .promo {
        left: 12px !important;
        right: 12px !important;
        bottom: 12px !important;
        width: auto !important;
        max-width: none !important;
        border-radius: 22px !important;
        padding: 20px !important;
    }
}

@media (max-width: 640px) {

    .container {
        width: min(100% - 22px, 640px) !important;
    }

    section,
    .section {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }

    .header {
        border-radius: 20px !important;
    }

    .header .btn {
        padding: 9px 12px !important;
        font-size: 11px !important;
    }

    .meet-copy h1,
    .hero-clean h1,
    .hero-machines h1 {
        font-size: clamp(42px, 14vw, 64px) !important;
        line-height: .94 !important;
    }

    .meet-copy p,
    .hero-clean p,
    .hero-machines p {
        font-size: 14px !important;
        line-height: 1.58 !important;
    }

    .meet-actions,
    .hero-ctas {
        width: 100% !important;
        flex-direction: column !important;
    }

    .meet-actions .btn,
    .hero-ctas .btn {
        width: 100% !important;
        justify-content: center !important;
    }

    .dk-save30-countdown {
        width: 100% !important;
        justify-content: center !important;
    }

    .dk-save30-title {
        gap: 8px !important;
    }

    .dk-save30-title span,
    .dk-save30-title strong {
        font-size: clamp(54px, 18vw, 82px) !important;
    }

    .dk-save30-limit {
        white-space: normal !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 4px !important;
    }

    .dk-service-switcher {
        grid-template-columns: 1fr !important;
    }

    .dk-clinical-visual {
        aspect-ratio: 4/3 !important;
        border-radius: 22px !important;
    }

    .dk-clinical-arrow,
    .xerf-slider-arrow {
        width: 38px !important;
        height: 38px !important;
    }

    .dk-clinical-info,
    .dk-clinical-info-compact {
        padding: 22px !important;
        border-radius: 22px !important;
    }

    .xerf-view-tabs {
        grid-template-columns: 1fr !important;
    }

    .xerf-result-header {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    #normal-services .normal-slider-group {
        grid-template-columns: 1fr !important;
    }

    #normal-services .normal-slider-card {
        width: 100% !important;
        min-height: auto !important;
    }

    .contact-final-card {
        padding: 22px !important;
        border-radius: 24px !important;
    }

    .contact-final-card .footer-service-select-trigger {
        min-height: 52px !important;
    }

    .contact-final-card .footer-treatment-options>label {
        grid-template-columns: 26px minmax(0, 1fr) auto !important;
        padding: 10px !important;
    }

    .contact-final-card .save30-badge {
        min-width: auto !important;
        height: 18px !important;
        padding: 0 6px !important;
        font-size: 7px !important;
    }

    .float-cta {
        left: 10px !important;
        right: 10px !important;
        bottom: 10px !important;
        transform: none !important;
        width: auto !important;
    }

    .float-cta .btn {
        flex: 1 !important;
        justify-content: center !important;
    }
}

/* Prevent accidental desktop changes */
@media (min-width: 992px) {
    .desktop-only-preserve {
        display: initial;
    }
}



@media (max-width:991px) {
    .mobile-bottom-nav {
        position: fixed;
        left: 10px;
        right: 10px;
        bottom: 10px;
        z-index: 9999;
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 8px;
        padding: 8px;
        background: rgba(22, 22, 22, .94);
        backdrop-filter: blur(18px);
        border: 1px solid rgba(255, 255, 255, .08);
        border-radius: 20px;
        box-shadow: 0 12px 35px rgba(0, 0, 0, .28);
    }

    .mobile-bottom-nav a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        min-height: 54px;
        text-decoration: none;
        color: #fff;
        font-size: 10px;
        font-weight: 700;
        line-height: 1.1;
    }

    .mobile-bottom-nav a span {
        font-size: 18px;
    }

    body {
        padding-bottom: 95px !important;
    }
}

@media (min-width:992px) {
    .mobile-bottom-nav {
        display: none !important;
    }
}



@media (max-width:991px) {
    .mobile-bottom-nav {
        position: fixed !important;
        left: 50% !important;
        right: auto !important;
        bottom: 14px !important;
        transform: translateX(-50%) !important;
        z-index: 9999 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        width: min(calc(100% - 24px), 680px) !important;
        max-width: 680px !important;
        padding: 8px !important;
        border-radius: 999px !important;
        background: rgba(24, 24, 22, .95) !important;
        backdrop-filter: blur(20px) saturate(150%) !important;
        border: 1px solid rgba(255, 255, 255, .10) !important;
        box-shadow: 0 18px 46px rgba(0, 0, 0, .34) !important;
        overflow-x: auto !important;
        scrollbar-width: none !important;
    }

    .mobile-bottom-nav::-webkit-scrollbar {
        display: none !important;
    }

    .mobile-bottom-nav a {
        flex: 1 1 0 !important;
        min-width: 94px !important;
        height: 54px !important;
        padding: 0 12px !important;
        border-radius: 999px !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;
        color: #fff !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        letter-spacing: .01em !important;
        white-space: nowrap !important;
        text-align: center !important;
        transition: .22s ease !important;
    }

    .mobile-bottom-nav a span {
        font-size: 16px !important;
        line-height: 1 !important;
    }

    .mobile-bottom-nav a:hover,
    .mobile-bottom-nav a:focus-visible,
    .mobile-bottom-nav a.active {
        background: #5f776d !important;
        color: #fff !important;
        outline: none !important;
    }

    body {
        padding-bottom: 98px !important;
    }
}

@media (max-width:560px) {
    .mobile-bottom-nav {
        width: calc(100% - 16px) !important;
        bottom: 8px !important;
        justify-content: flex-start !important;
        padding: 7px !important;
    }

    .mobile-bottom-nav a {
        flex: 0 0 auto !important;
        min-width: 100px !important;
        height: 50px !important;
        font-size: 10px !important;
        padding: 0 11px !important;
    }
}

@media (min-width:992px) {
    .mobile-bottom-nav {
        display: none !important;
    }
}



@media (max-width:991px) {

    /* Hide the original top navigation/header on mobile */
    .header,
    header.header {
        display: none !important;
    }

    /* Glassmorphism bottom navigation */
    .mobile-bottom-nav {
        position: fixed !important;
        left: 50% !important;
        right: auto !important;
        bottom: 14px !important;
        transform: translateX(-50%) !important;
        z-index: 9999 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        width: min(calc(100% - 24px), 680px) !important;
        max-width: 680px !important;
        padding: 8px !important;
        border-radius: 999px !important;

        background:
            linear-gradient(135deg, rgba(255, 255, 255, .20), rgba(255, 255, 255, .08)) !important;
        border: 1px solid rgba(255, 255, 255, .34) !important;
        box-shadow:
            0 18px 46px rgba(23, 29, 26, .24),
            inset 0 1px 0 rgba(255, 255, 255, .34) !important;

        backdrop-filter: blur(22px) saturate(160%) !important;
        -webkit-backdrop-filter: blur(22px) saturate(160%) !important;

        overflow-x: auto !important;
        scrollbar-width: none !important;
    }

    .mobile-bottom-nav::-webkit-scrollbar {
        display: none !important;
    }

    .mobile-bottom-nav a {
        flex: 1 1 0 !important;
        min-width: 94px !important;
        height: 54px !important;
        padding: 0 12px !important;
        border-radius: 999px !important;

        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;

        color: rgba(31, 27, 22, .80) !important;
        background: transparent !important;

        font-size: 11px !important;
        font-weight: 800 !important;
        letter-spacing: .01em !important;
        white-space: nowrap !important;
        text-align: center !important;
        transition: .22s ease !important;
    }

    .mobile-bottom-nav a span {
        font-size: 16px !important;
        line-height: 1 !important;
    }

    .mobile-bottom-nav a:hover,
    .mobile-bottom-nav a:focus-visible,
    .mobile-bottom-nav a.active {
        background: rgba(82, 104, 95, .84) !important;
        color: #fff !important;
        box-shadow:
            0 8px 20px rgba(82, 104, 95, .20),
            inset 0 1px 0 rgba(255, 255, 255, .18) !important;
        outline: none !important;
    }

    body {
        padding-bottom: 98px !important;
    }
}

@media (max-width:560px) {
    .mobile-bottom-nav {
        width: calc(100% - 16px) !important;
        bottom: 8px !important;
        justify-content: flex-start !important;
        padding: 7px !important;
    }

    .mobile-bottom-nav a {
        flex: 0 0 auto !important;
        min-width: 100px !important;
        height: 50px !important;
        font-size: 10px !important;
        padding: 0 11px !important;
    }
}

@media (min-width:992px) {
    .mobile-bottom-nav {
        display: none !important;
    }
}



@media (max-width:991px) {
    .mobile-bottom-nav {
        background: rgba(255, 248, 240, .82) !important;
        border: 1px solid rgba(255, 255, 255, .58) !important;
        backdrop-filter: blur(24px) saturate(180%) !important;
        -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
        box-shadow:
            0 18px 46px rgba(23, 29, 26, .22),
            inset 0 1px 0 rgba(255, 255, 255, .55) !important;
    }

    .mobile-bottom-nav a {
        color: #1f1f1f !important;
        font-weight: 800 !important;
        opacity: 1 !important;
        text-shadow: none !important;
    }

    .mobile-bottom-nav a span {
        color: #556b61 !important;
        opacity: 1 !important;
    }

    .mobile-bottom-nav a:hover,
    .mobile-bottom-nav a:focus-visible,
    .mobile-bottom-nav a.active {
        background: #5f776d !important;
        color: #fff !important;
    }

    .mobile-bottom-nav a:hover span,
    .mobile-bottom-nav a:focus-visible span,
    .mobile-bottom-nav a.active span {
        color: #fff !important;
    }
}



@media (max-width:991px) {
    .mobile-bottom-nav {
        position: fixed !important;
        left: 50% !important;
        right: auto !important;
        bottom: 12px !important;
        transform: translateX(-50%) !important;
        z-index: 9999 !important;

        width: min(calc(100% - 20px), 760px) !important;
        max-width: 760px !important;
        min-height: 58px !important;
        padding: 6px 8px !important;

        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 10px !important;

        border-radius: 999px !important;
        background: rgba(250, 247, 241, .92) !important;
        border: 1px solid rgba(68, 82, 76, .14) !important;
        box-shadow:
            0 14px 34px rgba(25, 33, 29, .18),
            inset 0 1px 0 rgba(255, 255, 255, .72) !important;
        backdrop-filter: blur(18px) saturate(145%) !important;
        -webkit-backdrop-filter: blur(18px) saturate(145%) !important;
        overflow: hidden !important;
    }

    .mobile-bottom-nav a {
        text-decoration: none !important;
        color: #56544f !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    .mobile-menu-logo {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        min-width: 54px !important;
        height: 46px !important;
        padding: 0 4px !important;
        border-radius: 14px !important;
        flex: 0 0 auto !important;
    }

    .mobile-menu-logo-badge {
        width: 24px !important;
        height: 24px !important;
        display: grid !important;
        place-items: center !important;
        border-radius: 50% !important;
        border: 1px solid rgba(82, 104, 95, .28) !important;
        color: #5b7168 !important;
        background: rgba(255, 255, 255, .66) !important;
        font-family: Georgia, serif !important;
        font-size: 8px !important;
        line-height: 1 !important;
    }

    .mobile-menu-logo-text {
        color: #514f4a !important;
        font-family: Georgia, serif !important;
        font-size: 7px !important;
        line-height: 1 !important;
        letter-spacing: .16em !important;
        white-space: nowrap !important;
    }

    .mobile-menu-links {
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: clamp(8px, 2.3vw, 20px) !important;
        overflow-x: auto !important;
        scrollbar-width: none !important;
        padding: 0 4px !important;
    }

    .mobile-menu-links::-webkit-scrollbar {
        display: none !important;
    }

    .mobile-menu-links a {
        flex: 0 0 auto !important;
        min-width: auto !important;
        height: auto !important;
        padding: 7px 0 !important;
        border-radius: 0 !important;
        font-size: clamp(9px, 2.35vw, 12px) !important;
        font-weight: 500 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        transition: color .2s ease !important;
    }

    .mobile-menu-links a:hover,
    .mobile-menu-links a:focus-visible,
    .mobile-menu-links a.active {
        color: #4e675e !important;
        background: transparent !important;
        outline: none !important;
    }

    .mobile-menu-book {
        min-width: 88px !important;
        height: 46px !important;
        padding: 0 16px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 999px !important;
        background: #536c62 !important;
        color: #fff !important;
        font-size: 12px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        box-shadow: 0 8px 18px rgba(63, 86, 76, .18) !important;
    }

    .mobile-menu-book:hover,
    .mobile-menu-book:focus-visible {
        background: #465f55 !important;
        color: #fff !important;
        outline: none !important;
    }

    body {
        padding-bottom: 88px !important;
    }
}

@media (max-width:680px) {
    .mobile-bottom-nav {
        width: calc(100% - 12px) !important;
        bottom: 6px !important;
        grid-template-columns: 50px minmax(0, 1fr) 76px !important;
        gap: 6px !important;
        min-height: 54px !important;
        padding: 5px 6px !important;
    }

    .mobile-menu-logo {
        min-width: 46px !important;
        height: 42px !important;
    }

    .mobile-menu-logo-badge {
        width: 22px !important;
        height: 22px !important;
        font-size: 7px !important;
    }

    .mobile-menu-logo-text {
        font-size: 6px !important;
    }

    .mobile-menu-links {
        justify-content: flex-start !important;
        gap: 14px !important;
        padding: 0 2px !important;
    }

    .mobile-menu-links a {
        font-size: 10px !important;
    }

    .mobile-menu-book {
        min-width: 76px !important;
        height: 42px !important;
        padding: 0 10px !important;
        font-size: 10px !important;
    }
}

@media (min-width:992px) {
    .mobile-bottom-nav {
        display: none !important;
    }
}



@media (max-width:991px) {
    .mobile-bottom-nav {
        grid-template-columns: 1fr auto !important;
        padding: 6px 8px !important;
    }

    .mobile-menu-links {
        justify-content: space-evenly !important;
        gap: 0 !important;
        overflow: visible !important;
        display: grid !important;
        grid-template-columns: repeat(5, 1fr) !important;
    }

    .mobile-menu-links a {
        min-width: 0 !important;
        padding: 6px 4px !important;
        font-size: 10px !important;
        text-align: center !important;
        white-space: normal !important;
        line-height: 1.15 !important;
    }

    .mobile-menu-book {
        margin-left: 8px !important;
        min-width: 78px !important;
        font-size: 11px !important;
    }
}

@media (max-width:680px) {
    .mobile-bottom-nav {
        grid-template-columns: 1fr 72px !important;
    }

    .mobile-menu-links a {
        font-size: 9px !important;
    }

    .mobile-menu-book {
        min-width: 72px !important;
        padding: 0 8px !important;
        font-size: 10px !important;
    }
}



@media (max-width:991px) {
    .mobile-menu-links {
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 10px !important;
    }

    .mobile-menu-links a {
        font-size: 10px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        padding: 6px 2px !important;
    }

    .mobile-menu-book {
        min-width: 70px !important;
        height: 40px !important;
        font-size: 10px !important;
        padding: 0 10px !important;
    }
}



@media (max-width:991px) {
    .mobile-bottom-nav {
        grid-template-columns: 1fr auto !important;
        align-items: center !important;
    }

    .mobile-menu-links {
        grid-template-columns: repeat(4, 1fr) !important;
        padding-right: 6px !important;
    }

    .mobile-menu-book {
        margin-left: 4px !important;
        margin-right: 0 !important;
        justify-self: end !important;
        align-self: center !important;
        min-width: 82px !important;
        height: 38px !important;
        padding: 0 14px !important;
        background: #5f776d !important;
        color: #fff !important;
        border-radius: 999px !important;
        font-weight: 700 !important;
        box-shadow: none !important;
    }
}



/* Center popup treatment chips on desktop + mobile */
.promo-service-chip,
.popup-service-chip,
.popup-treatment-chip,
.promo-chip,
.treatment-chip,
.service-chip {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1 !important;
    min-height: 38px !important;
    padding: 0 16px !important;
    white-space: nowrap !important;
    font-weight: 600 !important;
}

.promo-service-chip *,
.popup-service-chip *,
.popup-treatment-chip *,
.promo-chip *,
.treatment-chip *,
.service-chip * {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}

@media (max-width:991px) {

    .promo-service-chip,
    .popup-service-chip,
    .popup-treatment-chip,
    .promo-chip,
    .treatment-chip,
    .service-chip {
        min-height: 34px !important;
        padding: 0 12px !important;
        font-size: 11px !important;
    }
}



/* Exact popup chips: center text vertically and horizontally on desktop + mobile */
.promo .promo-mini-services,
.promo .promo-v2-services {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
}

.promo .promo-mini-services>span,
.promo .promo-v2-services>span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;

    min-height: 32px !important;
    height: 32px !important;
    padding: 0 14px !important;
    margin: 0 !important;

    line-height: 1 !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

@media (max-width:620px) {

    .promo .promo-mini-services>span,
    .promo .promo-v2-services>span {
        min-height: 28px !important;
        height: 28px !important;
        padding: 0 11px !important;
        font-size: 10px !important;
    }
}



@media (max-width:991px) {

    .promo .offer-expiry,
    .promo .offer-countdown,
    .promo .promo-countdown,
    .promo .countdown-wrap {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: nowrap !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .promo .offer-expiry>*,
    .promo .offer-countdown>*,
    .promo .promo-countdown>*,
    .promo .countdown-wrap>* {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    .promo .countdown-label,
    .promo .offer-label {
        font-size: 10px !important;
        letter-spacing: .14em !important;
        white-space: nowrap !important;
    }

    .promo .countdown-time,
    .promo .offer-time {
        height: 38px !important;
        min-width: 96px !important;
        padding: 0 14px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 18px !important;
        line-height: 1 !important;
        border-radius: 999px !important;
    }
}



@media (max-width:991px) {

    /* Force icon + label + timer onto one row */
    .promo .offer-expiry,
    .promo .offer-countdown,
    .promo .promo-countdown,
    .promo .countdown-wrap {
        display: grid !important;
        grid-template-columns: 28px 1fr auto !important;
        align-items: center !important;
        gap: 8px !important;
        white-space: nowrap !important;
    }

    .promo .offer-expiry>*,
    .promo .offer-countdown>*,
    .promo .promo-countdown>*,
    .promo .countdown-wrap>* {
        margin: 0 !important;
    }

    .promo .countdown-icon,
    .promo .offer-icon {
        width: 28px !important;
        height: 28px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .promo .countdown-label,
    .promo .offer-label {
        font-size: 9px !important;
        letter-spacing: .12em !important;
        white-space: nowrap !important;
        overflow: visible !important;
    }

    .promo .countdown-time,
    .promo .offer-time {
        height: 34px !important;
        min-width: 82px !important;
        padding: 0 10px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 16px !important;
        line-height: 1 !important;
    }
}



@media (max-width:620px) {
    .promo.promo-unified.promo-clean-v2 .promo-inner {
        position: relative !important;
    }

    .promo.promo-unified.promo-clean-v2 .close {
        position: absolute !important;
        top: 12px !important;
        right: 12px !important;
        z-index: 20 !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown {
        display: grid !important;
        grid-template-columns: 28px minmax(0, 1fr) auto !important;
        align-items: center !important;
        column-gap: 8px !important;
        width: calc(100% - 42px) !important;
        margin: 0 42px 14px 0 !important;
        padding: 0 !important;
        flex-wrap: nowrap !important;
        justify-content: stretch !important;
        text-align: left !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown:before {
        grid-column: 1 !important;
        width: 28px !important;
        height: 28px !important;
        margin: 0 !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown .promo-countdown-label {
        grid-column: 2 !important;
        min-width: 0 !important;
        margin: 0 !important;
        white-space: nowrap !important;
        font-size: 8px !important;
        line-height: 1 !important;
        letter-spacing: .10em !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown strong {
        grid-column: 3 !important;
        min-width: 72px !important;
        height: 30px !important;
        padding: 0 9px !important;
        margin: 0 !important;
        font-size: 17px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }
}



@media (max-width:620px) {
    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown {
        width: calc(100% - 64px) !important;
        margin: 0 64px 14px 0 !important;
        padding-right: 8px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown strong {
        margin-right: 10px !important;
        justify-self: start !important;
    }

    .promo.promo-unified.promo-clean-v2 .close {
        right: 10px !important;
    }
}



.dk-clinical-service-section {
    padding: 102px 0 108px !important
}

.dk-clinical-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 36px;
    align-items: end;
    margin-bottom: 30px
}

.dk-clinical-title h2 {
    font-size: clamp(52px, 6.2vw, 96px);
    line-height: .9;
    letter-spacing: -.052em;
    font-weight: 500;
    margin: 10px 0 0
}

.dk-clinical-offer {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 14px 18px;
    border-radius: 26px;
    background: rgba(255, 253, 248, .66);
    border: 1px solid rgba(31, 27, 22, .08);
    box-shadow: 0 18px 54px rgba(31, 27, 22, .07);
    backdrop-filter: blur(18px)
}

.dk-clinical-discount {
    display: flex;
    align-items: baseline;
    gap: 6px;
    padding-right: 18px;
    border-right: 1px solid rgba(31, 27, 22, .10)
}

.dk-clinical-discount strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 58px;
    line-height: .8;
    color: var(--deep);
    letter-spacing: -.05em
}

.dk-clinical-discount span {
    font-size: 11px;
    letter-spacing: .16em;
    font-weight: 800;
    color: var(--deep)
}

.dk-clinical-countdown {
    display: grid;
    gap: 4px;
    min-width: 116px
}

.dk-clinical-countdown small {
    font-size: 9px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--stone);
    font-weight: 800
}

.dk-clinical-countdown strong {
    font-size: 24px;
    letter-spacing: .05em;
    color: var(--ink)
}

.dk-service-switcher {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin: 0 0 24px
}

.dk-service-switcher button {
    position: relative;
    text-align: left;
    min-height: 94px;
    padding: 16px 17px;
    border-radius: 22px;
    border: 1px solid rgba(31, 27, 22, .08);
    background: rgba(255, 253, 248, .58);
    color: var(--ink);
    cursor: pointer;
    transition: .28s ease;
    overflow: hidden
}

.dk-service-switcher button:before {
    content: "";
    position: absolute;
    inset: auto -20% -70% 45%;
    height: 150%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(107, 130, 120, .16), transparent 67%);
    opacity: 0;
    transition: .28s ease
}

.dk-service-switcher button:hover,
.dk-service-switcher button.active {
    transform: translateY(-3px);
    background: var(--deep);
    border-color: var(--deep);
    color: #fff;
    box-shadow: 0 16px 44px rgba(82, 104, 95, .18)
}

.dk-service-switcher button:hover:before,
.dk-service-switcher button.active:before {
    opacity: 1
}

.dk-service-switcher span,
.dk-service-switcher strong,
.dk-service-switcher small {
    position: relative;
    display: block
}

.dk-service-switcher span {
    font-size: 10px;
    letter-spacing: .14em;
    opacity: .55;
    margin-bottom: 8px
}

.dk-service-switcher strong {
    font-size: 17px;
    margin-bottom: 4px
}

.dk-service-switcher small {
    font-size: 11px;
    opacity: .66
}

.dk-clinical-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.42fr) minmax(320px, .58fr);
    gap: 30px;
    align-items: stretch
}

.dk-clinical-visual {
    position: relative;
    aspect-ratio: 16/9;
    min-height: 0;
    border-radius: 34px;
    overflow: hidden;
    background: #262626;
    border: 1px solid rgba(31, 27, 22, .08);
    box-shadow: 0 30px 92px rgba(31, 27, 22, .12)
}

.dk-service-panel {
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease;
    background: #262626
}

.dk-service-panel.active {
    opacity: 1;
    pointer-events: auto
}

.dk-service-case-slide {
    position: absolute;
    inset: 0;
    margin: 0;
    display: grid;
    place-items: center;
    opacity: 0;
    transform: translateX(16px);
    transition: opacity .36s ease, transform .36s ease;
    pointer-events: none
}

.dk-service-case-slide.active {
    opacity: 1;
    transform: none;
    pointer-events: auto
}

.dk-service-case-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #262626
}

.dk-service-placeholder {
    display: grid;
    place-items: center;
    text-align: center;
    background: linear-gradient(135deg, #24312d, #171b19)
}

.dk-service-placeholder>div {
    max-width: 430px;
    padding: 34px;
    color: #fff
}

.dk-service-placeholder span {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 72px;
    color: rgba(255, 255, 255, .18);
    line-height: 1
}

.dk-service-placeholder strong {
    display: block;
    font-size: 28px;
    margin: 8px 0 10px
}

.dk-service-placeholder p {
    margin: 0;
    color: rgba(255, 255, 255, .58)
}

.dk-clinical-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 7;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .38);
    background: rgba(20, 20, 20, .58);
    backdrop-filter: blur(12px);
    color: #fff;
    font-size: 22px;
    cursor: pointer;
    transition: .25s ease
}

.dk-clinical-arrow:hover {
    background: #fff;
    color: #111;
    transform: translateY(-50%) scale(1.05)
}

.dk-clinical-arrow.prev {
    left: 16px
}

.dk-clinical-arrow.next {
    right: 16px
}

.dk-clinical-info {
    position: relative;
    border-radius: 34px;
    background: rgba(255, 253, 248, .68);
    backdrop-filter: blur(22px) saturate(150%);
    border: 1px solid rgba(31, 27, 22, .07);
    box-shadow: 0 28px 86px rgba(31, 27, 22, .075);
    padding: 30px;
    display: flex;
    flex-direction: column;
    overflow: hidden
}

.dk-clinical-info:before {
    content: "";
    position: absolute;
    right: -25%;
    top: -12%;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(107, 130, 120, .16), transparent 70%);
    pointer-events: none
}

.dk-clinical-pill {
    position: relative;
    display: inline-flex;
    align-self: flex-start;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(107, 130, 120, .10);
    color: var(--deep);
    font-size: 10px;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-weight: 800
}

.dk-clinical-info h3 {
    position: relative;
    font-size: clamp(38px, 4vw, 60px);
    line-height: .94;
    letter-spacing: -.045em;
    margin: 23px 0 16px;
    font-weight: 500
}

.dk-clinical-info>p {
    position: relative;
    margin: 0;
    color: rgba(31, 27, 22, .62);
    font-size: 15px;
    line-height: 1.66
}

.dk-clinical-data {
    position: relative;
    display: grid;
    gap: 0;
    margin: 24px 0 20px;
    border-top: 1px solid rgba(31, 27, 22, .09)
}

.dk-clinical-data div {
    padding: 13px 0;
    border-bottom: 1px solid rgba(31, 27, 22, .09)
}

.dk-clinical-data small {
    display: block;
    color: var(--stone);
    font-size: 9px;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-weight: 800;
    margin-bottom: 4px
}

.dk-clinical-data strong {
    font-size: 15px
}

.dk-clinical-note {
    position: relative;
    padding: 15px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .48);
    border: 1px solid rgba(31, 27, 22, .07);
    margin-bottom: 20px
}

.dk-clinical-note strong {
    display: block;
    margin-bottom: 5px
}

.dk-clinical-note span {
    display: block;
    color: rgba(31, 27, 22, .56);
    font-size: 12px;
    line-height: 1.5
}

.dk-clinical-cta {
    position: relative;
    width: 100%;
    justify-content: center;
    margin-top: auto
}

.dk-clinical-service-section .dk-journey-disclaimer {
    text-align: center;
    margin: 16px auto 0;
    max-width: 880px
}

@media(max-width:980px) {
    .dk-clinical-head {
        grid-template-columns: 1fr;
        align-items: start
    }

    .dk-clinical-offer {
        justify-self: start
    }

    .dk-service-switcher {
        grid-template-columns: repeat(2, 1fr)
    }

    .dk-clinical-layout {
        grid-template-columns: 1fr
    }

    .dk-clinical-visual {
        aspect-ratio: 16/10
    }

    .dk-clinical-info {
        min-height: auto
    }
}

@media(max-width:560px) {
    .dk-clinical-service-section {
        padding: 76px 0 84px !important
    }

    .dk-clinical-title h2 {
        font-size: 44px
    }

    .dk-clinical-offer {
        width: 100%;
        justify-content: center
    }

    .dk-clinical-discount strong {
        font-size: 48px
    }

    .dk-service-switcher {
        grid-template-columns: 1fr 1fr;
        gap: 8px
    }

    .dk-service-switcher button {
        min-height: 86px;
        padding: 14px
    }

    .dk-clinical-visual {
        aspect-ratio: 4/3;
        border-radius: 26px
    }

    .dk-clinical-info {
        padding: 23px;
        border-radius: 26px
    }

    .dk-clinical-arrow {
        width: 40px;
        height: 40px
    }

    .dk-clinical-arrow.prev {
        left: 8px
    }

    .dk-clinical-arrow.next {
        right: 8px
    }
}



.normal-services-slider-section {
    position: relative;
    overflow: hidden;
    padding: 104px 0 112px;
    background:
        radial-gradient(circle at 86% 12%, rgba(93, 117, 105, .12), transparent 28%),
        linear-gradient(180deg, #fbf8f1 0%, #f3eee5 100%);
}

.normal-services-slider-inner {
    position: relative;
    z-index: 1;
}

.normal-services-slider-head {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
    gap: 64px;
    align-items: end;
    margin-bottom: 42px;
}

.normal-services-slider-head .eyebrow {
    margin-bottom: 16px;
    color: #607669;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .28em;
    text-transform: uppercase;
}

.normal-services-slider-head h2 {
    margin: 0;
    max-width: 760px;
    color: #211f1b;
    font-size: clamp(52px, 6vw, 92px);
    font-weight: 500;
    line-height: .9;
    letter-spacing: -.065em;
}

.normal-services-slider-head p {
    margin: 0 0 6px;
    max-width: 520px;
    color: rgba(33, 31, 27, .62);
    font-size: 17px;
    line-height: 1.7;
}

.normal-services-marquee {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 8px 0 18px;
}

.normal-services-marquee:before,
.normal-services-marquee:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 54px;
    z-index: 4;
    pointer-events: none;
}

.normal-services-marquee:before {
    left: 0;
    background: linear-gradient(90deg, #f5f0e7, transparent);
}

.normal-services-marquee:after {
    right: 0;
    background: linear-gradient(270deg, #f5f0e7, transparent);
}

.normal-services-track {
    display: flex;
    width: 200%;
    animation: normalServicesScroll 34s linear infinite;
    will-change: transform;
}

.normal-services-marquee:hover .normal-services-track {
    animation-play-state: paused;
}

.normal-slider-group {
    flex: 0 0 50%;
    width: 50%;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
    padding-right: 16px;
}

.normal-slider-card {
    min-width: 0;
    min-height: 430px;
    display: flex;
    flex-direction: column;
    padding: 24px 22px;
    border: 1px solid rgba(91, 83, 70, .11);
    border-radius: 28px;
    background: rgba(255, 255, 255, .62);
    box-shadow: 0 22px 62px rgba(47, 40, 31, .07);
    backdrop-filter: blur(12px);
    transition: transform .3s ease, box-shadow .3s ease, background .3s ease;
}

.normal-slider-card:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 30px 78px rgba(47, 40, 31, .12);
}

.normal-slider-index {
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .22em;
    color: #607669;
    margin-bottom: 34px;
}

.normal-slider-card-body {
    flex: 1;
}

.normal-slider-kicker {
    display: block;
    margin-bottom: 14px;
    color: #607669;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.normal-slider-card h3 {
    margin: 0 0 16px;
    color: #211f1b;
    font-size: clamp(25px, 2vw, 36px);
    font-weight: 500;
    line-height: .98;
    letter-spacing: -.045em;
}

.normal-slider-card p {
    margin: 0;
    color: rgba(33, 31, 27, .58);
    font-size: 14px;
    line-height: 1.62;
}

.normal-slider-meta {
    display: grid;
    gap: 8px;
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid rgba(31, 27, 22, .09);
}

.normal-slider-meta span {
    color: #52685f;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .05em;
}

@keyframes normalServicesScroll {
    from {
        transform: translateX(0)
    }

    to {
        transform: translateX(-50%)
    }
}

@media(prefers-reduced-motion:reduce) {
    .normal-services-track {
        animation: none !important;
    }
}

@media(max-width:1100px) {
    .normal-services-slider-head {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .normal-services-track {
        width: 333.333%;
        animation-duration: 31s;
    }

    .normal-slider-group {
        flex-basis: 50%;
        width: 50%;
        grid-template-columns: repeat(5, minmax(250px, 1fr));
    }

    .normal-services-marquee {
        overflow-x: auto;
    }
}

@media(max-width:700px) {
    .normal-services-slider-section {
        padding: 74px 0 82px;
    }

    .normal-services-slider-head {
        margin-bottom: 28px;
    }

    .normal-services-slider-head h2 {
        font-size: 46px;
    }

    .normal-services-track {
        width: max-content;
        animation: none;
        gap: 14px;
    }

    .normal-slider-group {
        width: auto;
        flex-basis: auto;
        display: flex;
        gap: 14px;
        padding-right: 0;
    }

    .normal-slider-group.is-clone {
        display: none;
    }

    .normal-slider-card {
        flex: 0 0 78vw;
        min-height: 390px;
    }

    .normal-services-marquee:before,
    .normal-services-marquee:after {
        display: none;
    }
}



/* Floating patient feedback chat widget */
.dk-feedback-widget {
    position: fixed;
    left: 24px;
    bottom: 24px;
    z-index: 90;
    font-family: var(--dk-body-font, 'Inter', Arial, sans-serif);
}

.dk-feedback-button {
    width: 64px;
    height: 64px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .58);
    background: linear-gradient(145deg, rgba(255, 255, 255, .72), rgba(255, 250, 245, .38));
    color: #52685f;
    box-shadow: 0 22px 64px rgba(31, 27, 22, .14), inset 0 1px 0 rgba(255, 255, 255, .9);
    backdrop-filter: blur(22px) saturate(160%);
    -webkit-backdrop-filter: blur(22px) saturate(160%);
    display: grid;
    place-items: center;
    cursor: pointer;
    position: relative;
    transition: transform .35s ease, box-shadow .35s ease, background .35s ease;
    animation: dkFeedbackFloat 4.8s ease-in-out infinite, dkFeedbackHop 5s ease-in-out infinite;
}

.dk-feedback-button svg {
    width: 29px;
    height: 29px;
    display: block;
    stroke: currentColor;
    stroke-width: 1.8;
    fill: none;
}

.dk-feedback-button:hover {
    transform: translateY(-4px) scale(1.07);
    background: linear-gradient(145deg, rgba(255, 255, 255, .88), rgba(255, 250, 245, .54));
    box-shadow: 0 28px 80px rgba(31, 27, 22, .2), 0 0 0 7px rgba(82, 104, 95, .07), inset 0 1px 0 rgba(255, 255, 255, 1);
}

.dk-feedback-button:after {
    content: "";
    position: absolute;
    right: 10px;
    top: 11px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #6b8278;
    box-shadow: 0 0 0 5px rgba(107, 130, 120, .15);
}

.dk-feedback-bubble {
    position: absolute;
    left: 78px;
    bottom: 8px;
    width: min(300px, calc(100vw - 120px));
    padding: 14px 16px;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, .56);
    background: linear-gradient(145deg, rgba(255, 255, 255, .74), rgba(255, 250, 245, .46));
    box-shadow: 0 24px 70px rgba(31, 27, 22, .16), inset 0 1px 0 rgba(255, 255, 255, .85);
    backdrop-filter: blur(22px) saturate(170%);
    -webkit-backdrop-filter: blur(22px) saturate(170%);
    color: #1f1b16;
    opacity: 0;
    transform: translateY(10px) scale(.96);
    pointer-events: none;
    transition: opacity .45s ease, transform .45s ease;
}

.dk-feedback-bubble.show {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.dk-feedback-stars {
    font-size: 12px;
    letter-spacing: .04em;
    color: #b89454;
    margin-bottom: 4px;
}

.dk-feedback-name {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #52685f;
    margin-bottom: 4px;
}

.dk-feedback-text {
    font-size: 13px;
    line-height: 1.45;
    color: rgba(31, 27, 22, .72);
}

.dk-feedback-panel {
    position: absolute;
    left: 0;
    bottom: 82px;
    width: min(360px, calc(100vw - 48px));
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, .5);
    background: linear-gradient(160deg, rgba(255, 255, 255, .8), rgba(255, 250, 245, .56) 58%, rgba(217, 221, 212, .36));
    box-shadow: 0 32px 100px rgba(31, 27, 22, .2), inset 0 1px 0 rgba(255, 255, 255, .9);
    backdrop-filter: blur(28px) saturate(180%);
    -webkit-backdrop-filter: blur(28px) saturate(180%);
    overflow: hidden;
    opacity: 0;
    transform: translateY(18px) scale(.96);
    pointer-events: none;
    transition: opacity .36s ease, transform .36s ease;
}

.dk-feedback-widget.open .dk-feedback-panel {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

.dk-feedback-panel-head {
    padding: 20px 20px 16px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    border-bottom: 1px solid rgba(31, 27, 22, .08);
}

.dk-feedback-panel-head span {
    display: block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #52685f;
    margin-bottom: 5px;
}

.dk-feedback-panel-head h3 {
    margin: 0;
    font-size: 23px;
    line-height: 1.05;
    color: #1f1b16;
}

.dk-feedback-close {
    border: 0;
    background: rgba(255, 255, 255, .54);
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    cursor: pointer;
    color: #1f1b16;
    transition: .25s ease;
}

.dk-feedback-close:hover {
    transform: scale(1.08);
    background: #fff;
}

.dk-feedback-list {
    padding: 14px;
    display: grid;
    gap: 10px;
    max-height: 380px;
    overflow: auto;
}

.dk-feedback-item {
    padding: 14px;
    border-radius: 20px;
    background: rgba(255, 255, 255, .44);
    border: 1px solid rgba(255, 255, 255, .46);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .64);
    opacity: 0;
    transform: translateY(10px);
}

.dk-feedback-widget.open .dk-feedback-item {
    animation: dkFeedbackItemIn .5s ease forwards;
}

.dk-feedback-widget.open .dk-feedback-item:nth-child(1) {
    animation-delay: .05s;
}

.dk-feedback-widget.open .dk-feedback-item:nth-child(2) {
    animation-delay: .14s;
}

.dk-feedback-widget.open .dk-feedback-item:nth-child(3) {
    animation-delay: .23s;
}

.dk-feedback-widget.open .dk-feedback-item:nth-child(4) {
    animation-delay: .32s;
}

.dk-feedback-widget.open .dk-feedback-item:nth-child(5) {
    animation-delay: .41s;
}

.dk-feedback-item-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 7px;
}

.dk-feedback-item strong {
    font-size: 13px;
    color: #1f1b16;
}

.dk-feedback-item p {
    margin: 0;
    font-size: 13px;
    line-height: 1.48;
    color: rgba(31, 27, 22, .72);
}

@keyframes dkFeedbackFloat {

    0%,
    100% {
        translate: 0 0;
    }

    50% {
        translate: 0 -4px;
    }
}

@keyframes dkFeedbackHop {

    0%,
    76%,
    100% {
        transform: translateY(0) scale(1);
    }

    80% {
        transform: translateY(-9px) scale(1.04);
    }

    84% {
        transform: translateY(0) scale(.99);
    }

    88% {
        transform: translateY(-5px) scale(1.025);
    }

    92% {
        transform: translateY(0) scale(1);
    }
}

@keyframes dkFeedbackItemIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media(max-width:620px) {
    .dk-feedback-widget {
        left: 16px;
        bottom: 16px;
    }

    .dk-feedback-button {
        width: 58px;
        height: 58px;
    }

    .dk-feedback-bubble {
        left: 0;
        bottom: 72px;
        width: min(300px, calc(100vw - 32px));
    }

    .dk-feedback-panel {
        bottom: 74px;
        width: calc(100vw - 32px);
    }
}

@media(prefers-reduced-motion:reduce) {
    .dk-feedback-button {
        animation: none;
    }

    .dk-feedback-widget.open .dk-feedback-item {
        animation: none;
        opacity: 1;
        transform: none;
    }
}

/* V42 premium offer highlight: make launch promotion the hero of final CTA */
.contact.contact-final-cta {
    background:
        radial-gradient(circle at 18% 20%, rgba(107, 130, 120, .34), transparent 31%),
        radial-gradient(circle at 58% 46%, rgba(214, 184, 122, .12), transparent 32%),
        radial-gradient(circle at 88% 72%, rgba(255, 255, 255, .08), transparent 34%),
        linear-gradient(135deg, #171411 0%, #221e18 50%, #11100e 100%) !important;
}

.offer-focus-copy {
    align-items: flex-start !important;
    text-align: left !important;
}

.offer-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    padding: 9px 16px;
    border-radius: 999px;
    border: 1px solid rgba(214, 184, 122, .34);
    background: rgba(214, 184, 122, .08);
    color: #dcc18a;
    text-transform: uppercase;
    letter-spacing: .22em;
    font-size: 12px;
    font-weight: 800;
}

.offer-badge:before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #dcc18a;
    box-shadow: 0 0 18px rgba(214, 184, 122, .82);
}

.contact-final-copy .offer-title {
    font-family: Inter, Arial, sans-serif !important;
    font-size: clamp(56px, 7.5vw, 128px) !important;
    line-height: .82 !important;
    letter-spacing: -.07em !important;
    margin: 0 !important;
    max-width: 860px !important;
    color: #fff !important;
}

.offer-title span {
    position: relative;
    display: inline-block !important;
    color: transparent !important;
    background: linear-gradient(120deg, #fff9e8 0%, #d8b16a 45%, #fff3c9 68%, #b99250 100%);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 18px 70px rgba(216, 177, 106, .16);
    overflow: hidden;
    isolation: isolate;
}

.offer-title span:after {
    content: "";
    position: absolute;
    top: -26%;
    left: -52%;
    width: 80px;
    height: 152%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .95), rgba(255, 229, 165, .8), transparent);
    transform: skewX(-18deg);
    filter: blur(2px);
    mix-blend-mode: screen;
    animation: offerPercentSweep 4.6s ease-in-out infinite;
}

@keyframes offerPercentSweep {

    0%,
    58% {
        transform: translateX(0) skewX(-18deg);
        opacity: 0
    }

    66% {
        opacity: .98
    }

    88% {
        transform: translateX(760%) skewX(-18deg);
        opacity: .75
    }

    100% {
        transform: translateX(820%) skewX(-18deg);
        opacity: 0
    }
}

.offer-subtitle {
    max-width: 640px !important;
    margin: 24px 0 0 !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 18px !important;
    line-height: 1.72 !important;
}

.offer-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 30px 0 0;
}

.offer-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(14px);
    color: rgba(255, 255, 255, .86);
    font-weight: 700;
    animation: offerPillRise .78s cubic-bezier(.2, .8, .2, 1) both;
}

.offer-pills span:nth-child(2) {
    animation-delay: .14s
}

.offer-pills span:nth-child(3) {
    animation-delay: .28s
}

@keyframes offerPillRise {
    from {
        opacity: 0;
        transform: translateY(14px) scale(.97)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.offer-highlight-grid {
    display: grid;
    grid-template-columns: 1fr 1.16fr 1fr;
    gap: 1px;
    width: min(100%, 760px);
    margin: 40px 0 0;
    border-radius: 34px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(22px) saturate(140%);
    box-shadow: 0 28px 90px rgba(0, 0, 0, .22);
}

.offer-highlight-card {
    position: relative;
    padding: 28px 26px;
    background: rgba(255, 255, 255, .04);
    min-height: 150px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.offer-highlight-card small {
    color: rgba(255, 255, 255, .54);
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 800;
}

.offer-highlight-card strong {
    display: block;
    margin: 8px 0 4px;
    font-size: clamp(40px, 4vw, 64px);
    line-height: .9;
    font-weight: 900;
    color: #fff;
    letter-spacing: -.04em;
}

.offer-highlight-card span {
    font-size: 12px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .62);
    font-weight: 800;
}

.offer-highlight-card.percent {
    background: linear-gradient(160deg, rgba(216, 177, 106, .22), rgba(107, 130, 120, .1));
}

.offer-highlight-card.percent strong {
    color: transparent;
    background: linear-gradient(120deg, #fff9e8, #d8b16a 55%, #fff2c2);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 0 42px rgba(216, 177, 106, .14);
}

.offer-highlight-card.limited strong {
    animation: offerSpotPulse 5.6s ease-in-out infinite;
}

@keyframes offerSpotPulse {

    0%,
    78%,
    100% {
        transform: scale(1)
    }

    84% {
        transform: scale(1.08)
    }

    90% {
        transform: scale(.98)
    }
}

.offer-main-cta {
    margin-top: 34px !important;
    padding: 20px 30px !important;
    font-size: 20px !important;
    background: linear-gradient(135deg, #fffdf8, #e7d6aa) !important;
    color: #1f1b16 !important;
    border-color: rgba(255, 255, 255, .5) !important;
    box-shadow: 0 28px 88px rgba(216, 177, 106, .22) !important;
}

.offer-main-cta em {
    background: rgba(31, 27, 22, .12) !important;
    color: #1f1b16 !important;
}

.offer-note {
    margin: 15px 0 0 !important;
    color: rgba(255, 255, 255, .52) !important;
    font-size: 13px !important;
    letter-spacing: .03em;
}

.contact-final-card:before {
    background: #d8b16a !important;
    color: #1f1b16 !important;
    content: "30% OFF" !important;
}

@media(max-width:980px) {
    .offer-focus-copy {
        align-items: center !important;
        text-align: center !important
    }

    .offer-subtitle {
        margin-left: auto !important;
        margin-right: auto !important
    }

    .offer-pills {
        justify-content: center
    }

    .offer-highlight-grid {
        margin-left: auto;
        margin-right: auto
    }

    .offer-main-cta {
        margin-left: auto !important;
        margin-right: auto !important
    }
}

@media(max-width:620px) {
    .contact-final-copy .offer-title {
        font-size: 52px !important
    }

    .offer-highlight-grid {
        grid-template-columns: 1fr;
        border-radius: 24px
    }

    .offer-highlight-card {
        min-height: auto;
        padding: 22px
    }

    .offer-main-cta {
        width: 100%;
        justify-content: center
    }

    .offer-pills span {
        width: 100%;
        justify-content: center
    }
}

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

    .offer-title span:after,
    .offer-pills span,
    .offer-highlight-card.limited strong {
        animation: none !important
    }
}




/* Hide the previous chat-icon widget; keep a softer social-proof toast instead */
.dk-feedback-widget {
    display: none !important;
}

.dk-feedback-toast {
    position: fixed;
    left: 24px;
    bottom: 24px;
    width: min(330px, calc(100vw - 48px));
    z-index: 76;
    padding: 15px 16px 15px 17px;
    border-radius: 22px;
    background: rgba(255, 253, 248, .76);
    border: 1px solid rgba(255, 255, 255, .62);
    box-shadow: 0 20px 60px rgba(31, 27, 22, .12), inset 0 1px 0 rgba(255, 255, 255, .74);
    backdrop-filter: blur(22px) saturate(170%);
    -webkit-backdrop-filter: blur(22px) saturate(170%);
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 12px;
    align-items: center;
    pointer-events: none;
    transform: translateY(18px);
    opacity: 0;
    animation: dkToastEnter .7s cubic-bezier(.2, .8, .2, 1) .55s forwards;
}

.dk-feedback-toast:before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    background: linear-gradient(120deg, rgba(255, 255, 255, .52), transparent 34%, rgba(107, 130, 120, .06));
}

.dk-feedback-avatar {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(145deg, rgba(82, 104, 95, .16), rgba(255, 255, 255, .58));
    color: #52685f;
    font-size: 18px;
    font-weight: 800;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), 0 10px 28px rgba(31, 27, 22, .08);
    position: relative;
    z-index: 1;
}

.dk-feedback-toast-body {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.dk-feedback-toast-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 3px;
}

.dk-feedback-toast-name {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #52685f;
    white-space: nowrap;
}

.dk-feedback-toast-stars {
    font-size: 11px;
    letter-spacing: .02em;
    color: #b89454;
    white-space: nowrap;
}

.dk-feedback-toast-text {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
    color: rgba(31, 27, 22, .72);
}

.dk-feedback-toast.swap {
    animation: dkToastSwap .62s cubic-bezier(.2, .8, .2, 1) forwards;
}

@keyframes dkToastEnter {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes dkToastSwap {
    0% {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }

    45% {
        opacity: 0;
        transform: translateY(-18px);
        filter: blur(2px);
    }

    46% {
        opacity: 0;
        transform: translateY(20px);
        filter: blur(2px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}

.dk-contact-stack {
    position: fixed;
    right: 22px;
    bottom: 168px;
    z-index: 78;
    display: grid;
    gap: 12px;
}

.dk-contact-icon {
    width: 54px;
    height: 54px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    color: #52685f;
    background: rgba(255, 253, 248, .78);
    border: 1px solid rgba(255, 255, 255, .64);
    box-shadow: 0 18px 50px rgba(31, 27, 22, .12), inset 0 1px 0 rgba(255, 255, 255, .72);
    backdrop-filter: blur(18px) saturate(160%);
    -webkit-backdrop-filter: blur(18px) saturate(160%);
    text-decoration: none;
    transition: transform .28s ease, box-shadow .28s ease, background .28s ease, color .28s ease;
    animation: dkContactFloat 5.8s ease-in-out infinite;
    position: relative;
}

.dk-contact-icon:nth-child(2) {
    animation-delay: .7s;
}

.dk-contact-icon:nth-child(3) {
    animation-delay: 1.4s;
}

.dk-contact-icon svg {
    width: 23px;
    height: 23px;
    stroke: currentColor;
    stroke-width: 1.85;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.dk-contact-icon:hover {
    transform: translateY(-3px) scale(1.08);
    color: #fff;
    background: #52685f;
    box-shadow: 0 22px 58px rgba(82, 104, 95, .24), inset 0 1px 0 rgba(255, 255, 255, .22);
}

.dk-contact-icon:after {
    content: attr(aria-label);
    position: absolute;
    right: 64px;
    top: 50%;
    transform: translateY(-50%) translateX(6px);
    opacity: 0;
    pointer-events: none;
    white-space: nowrap;
    padding: 8px 11px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    color: #1f1b16;
    background: rgba(255, 253, 248, .88);
    border: 1px solid rgba(255, 255, 255, .6);
    box-shadow: 0 10px 30px rgba(31, 27, 22, .1);
    transition: .25s ease;
}

.dk-contact-icon:hover:after {
    opacity: 1;
    transform: translateY(-50%) translateX(0);
}

@keyframes dkContactFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-7px);
    }
}

@media(max-width:720px) {
    .dk-feedback-toast {
        left: 14px;
        bottom: 14px;
        width: min(300px, calc(100vw - 28px));
        grid-template-columns: 38px 1fr;
        padding: 13px;
    }

    .dk-feedback-avatar {
        width: 38px;
        height: 38px;
        font-size: 16px;
    }

    .dk-feedback-toast-text {
        font-size: 12px;
    }

    .dk-contact-stack {
        right: 14px;
        bottom: 132px;
        gap: 9px;
    }

    .dk-contact-icon {
        width: 48px;
        height: 48px;
    }

    .dk-contact-icon:after {
        display: none;
    }
}

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

    .dk-feedback-toast,
    .dk-feedback-toast.swap,
    .dk-contact-icon {
        animation: none !important;
        opacity: 1;
        transform: none;
    }
}

/* V42 premium offer highlight: make launch promotion the hero of final CTA */
.contact.contact-final-cta {
    background:
        radial-gradient(circle at 18% 20%, rgba(107, 130, 120, .34), transparent 31%),
        radial-gradient(circle at 58% 46%, rgba(214, 184, 122, .12), transparent 32%),
        radial-gradient(circle at 88% 72%, rgba(255, 255, 255, .08), transparent 34%),
        linear-gradient(135deg, #171411 0%, #221e18 50%, #11100e 100%) !important;
}

.offer-focus-copy {
    align-items: flex-start !important;
    text-align: left !important;
}

.offer-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    padding: 9px 16px;
    border-radius: 999px;
    border: 1px solid rgba(214, 184, 122, .34);
    background: rgba(214, 184, 122, .08);
    color: #dcc18a;
    text-transform: uppercase;
    letter-spacing: .22em;
    font-size: 12px;
    font-weight: 800;
}

.offer-badge:before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #dcc18a;
    box-shadow: 0 0 18px rgba(214, 184, 122, .82);
}

.contact-final-copy .offer-title {
    font-family: Inter, Arial, sans-serif !important;
    font-size: clamp(56px, 7.5vw, 128px) !important;
    line-height: .82 !important;
    letter-spacing: -.07em !important;
    margin: 0 !important;
    max-width: 860px !important;
    color: #fff !important;
}

.offer-title span {
    position: relative;
    display: inline-block !important;
    color: transparent !important;
    background: linear-gradient(120deg, #fff9e8 0%, #d8b16a 45%, #fff3c9 68%, #b99250 100%);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 18px 70px rgba(216, 177, 106, .16);
    overflow: hidden;
    isolation: isolate;
}

.offer-title span:after {
    content: "";
    position: absolute;
    top: -26%;
    left: -52%;
    width: 80px;
    height: 152%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .95), rgba(255, 229, 165, .8), transparent);
    transform: skewX(-18deg);
    filter: blur(2px);
    mix-blend-mode: screen;
    animation: offerPercentSweep 4.6s ease-in-out infinite;
}

@keyframes offerPercentSweep {

    0%,
    58% {
        transform: translateX(0) skewX(-18deg);
        opacity: 0
    }

    66% {
        opacity: .98
    }

    88% {
        transform: translateX(760%) skewX(-18deg);
        opacity: .75
    }

    100% {
        transform: translateX(820%) skewX(-18deg);
        opacity: 0
    }
}

.offer-subtitle {
    max-width: 640px !important;
    margin: 24px 0 0 !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 18px !important;
    line-height: 1.72 !important;
}

.offer-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 30px 0 0;
}

.offer-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(14px);
    color: rgba(255, 255, 255, .86);
    font-weight: 700;
    animation: offerPillRise .78s cubic-bezier(.2, .8, .2, 1) both;
}

.offer-pills span:nth-child(2) {
    animation-delay: .14s
}

.offer-pills span:nth-child(3) {
    animation-delay: .28s
}

@keyframes offerPillRise {
    from {
        opacity: 0;
        transform: translateY(14px) scale(.97)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.offer-highlight-grid {
    display: grid;
    grid-template-columns: 1fr 1.16fr 1fr;
    gap: 1px;
    width: min(100%, 760px);
    margin: 40px 0 0;
    border-radius: 34px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(22px) saturate(140%);
    box-shadow: 0 28px 90px rgba(0, 0, 0, .22);
}

.offer-highlight-card {
    position: relative;
    padding: 28px 26px;
    background: rgba(255, 255, 255, .04);
    min-height: 150px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.offer-highlight-card small {
    color: rgba(255, 255, 255, .54);
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 800;
}

.offer-highlight-card strong {
    display: block;
    margin: 8px 0 4px;
    font-size: clamp(40px, 4vw, 64px);
    line-height: .9;
    font-weight: 900;
    color: #fff;
    letter-spacing: -.04em;
}

.offer-highlight-card span {
    font-size: 12px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .62);
    font-weight: 800;
}

.offer-highlight-card.percent {
    background: linear-gradient(160deg, rgba(216, 177, 106, .22), rgba(107, 130, 120, .1));
}

.offer-highlight-card.percent strong {
    color: transparent;
    background: linear-gradient(120deg, #fff9e8, #d8b16a 55%, #fff2c2);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 0 42px rgba(216, 177, 106, .14);
}

.offer-highlight-card.limited strong {
    animation: offerSpotPulse 5.6s ease-in-out infinite;
}

@keyframes offerSpotPulse {

    0%,
    78%,
    100% {
        transform: scale(1)
    }

    84% {
        transform: scale(1.08)
    }

    90% {
        transform: scale(.98)
    }
}

.offer-main-cta {
    margin-top: 34px !important;
    padding: 20px 30px !important;
    font-size: 20px !important;
    background: linear-gradient(135deg, #fffdf8, #e7d6aa) !important;
    color: #1f1b16 !important;
    border-color: rgba(255, 255, 255, .5) !important;
    box-shadow: 0 28px 88px rgba(216, 177, 106, .22) !important;
}

.offer-main-cta em {
    background: rgba(31, 27, 22, .12) !important;
    color: #1f1b16 !important;
}

.offer-note {
    margin: 15px 0 0 !important;
    color: rgba(255, 255, 255, .52) !important;
    font-size: 13px !important;
    letter-spacing: .03em;
}

.contact-final-card:before {
    background: #d8b16a !important;
    color: #1f1b16 !important;
    content: "30% OFF" !important;
}

@media(max-width:980px) {
    .offer-focus-copy {
        align-items: center !important;
        text-align: center !important
    }

    .offer-subtitle {
        margin-left: auto !important;
        margin-right: auto !important
    }

    .offer-pills {
        justify-content: center
    }

    .offer-highlight-grid {
        margin-left: auto;
        margin-right: auto
    }

    .offer-main-cta {
        margin-left: auto !important;
        margin-right: auto !important
    }
}

@media(max-width:620px) {
    .contact-final-copy .offer-title {
        font-size: 52px !important
    }

    .offer-highlight-grid {
        grid-template-columns: 1fr;
        border-radius: 24px
    }

    .offer-highlight-card {
        min-height: auto;
        padding: 22px
    }

    .offer-main-cta {
        width: 100%;
        justify-content: center
    }

    .offer-pills span {
        width: 100%;
        justify-content: center
    }
}

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

    .offer-title span:after,
    .offer-pills span,
    .offer-highlight-card.limited strong {
        animation: none !important
    }
}




/* 1) Remove the large zoom preview from supporting slide cards */
.supporting-focus-preview {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.supporting-marquee.is-focus .supporting-track {
    animation-play-state: paused !important;
}

.supporting-slide.is-hover-source {
    opacity: 1 !important;
    transform: none !important;
}

.supporting-slide:hover {
    transform: none !important;
    box-shadow: none !important;
}

.supporting-slide:hover .supporting-slide-visual img {
    transform: none !important;
}

.supporting-slide {
    cursor: pointer;
}

/* 2) Make the main service CTA clearly clickable */
.service-primary .service-price-line .btn {
    cursor: pointer;
}

.service-primary .service-price-line .btn:after {
    content: "\2192";
    margin-left: 9px;
    transition: transform .28s cubic-bezier(.22, 1, .36, 1);
}

.service-primary .service-price-line .btn:hover:after {
    transform: translateX(4px);
}

/* 3) Replace single feedback toast with a soft stacked feedback stream */
.dk-feedback-toast {
    display: none !important;
}

.dk-feedback-stack {
    position: fixed;
    left: 24px;
    bottom: 24px;
    width: min(360px, calc(100vw - 48px));
    z-index: 77;
    display: flex;
    flex-direction: column;
    gap: 10px;
    pointer-events: none;
}

.dk-feedback-stack-item {
    position: relative;
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 11px;
    align-items: center;
    padding: 13px 14px;
    border-radius: 20px;
    background: rgba(255, 253, 248, .72);
    border: 1px solid rgba(255, 255, 255, .62);
    box-shadow: 0 18px 54px rgba(31, 27, 22, .12), inset 0 1px 0 rgba(255, 255, 255, .74);
    backdrop-filter: blur(22px) saturate(170%);
    -webkit-backdrop-filter: blur(22px) saturate(170%);
    overflow: hidden;
    transform: translateY(18px);
    opacity: 0;
    animation: dkFeedbackStackIn .72s cubic-bezier(.2, .8, .2, 1) forwards;
    transition: transform .55s cubic-bezier(.22, 1, .36, 1), opacity .45s ease, filter .45s ease;
}

.dk-feedback-stack-item:before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(120deg, rgba(255, 255, 255, .48), transparent 36%, rgba(107, 130, 120, .06));
}

.dk-feedback-stack-item.is-leaving {
    opacity: 0;
    transform: translateY(-18px) scale(.985);
    filter: blur(2px);
}

.dk-feedback-stack-avatar {
    position: relative;
    z-index: 1;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(145deg, rgba(82, 104, 95, .16), rgba(255, 255, 255, .58));
    color: #52685f;
    font-size: 15px;
    font-weight: 900;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .82), 0 10px 26px rgba(31, 27, 22, .08);
}

.dk-feedback-stack-body {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.dk-feedback-stack-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 3px;
}

.dk-feedback-stack-name {
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #52685f;
    white-space: nowrap;
}

.dk-feedback-stack-stars {
    font-size: 10px;
    letter-spacing: .02em;
    color: #b89454;
    white-space: nowrap;
}

.dk-feedback-stack-text {
    margin: 0;
    font-size: 12.5px;
    line-height: 1.42;
    color: rgba(31, 27, 22, .72);
}

.dk-feedback-stack-item:nth-child(1) {
    opacity: .72;
    transform: scale(.96);
}

.dk-feedback-stack-item:nth-child(2) {
    opacity: .88;
    transform: scale(.98);
}

.dk-feedback-stack-item:nth-child(3) {
    opacity: 1;
    transform: scale(1);
}

@keyframes dkFeedbackStackIn {
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media(max-width:720px) {
    .dk-feedback-stack {
        left: 14px;
        bottom: 14px;
        width: min(310px, calc(100vw - 28px));
        gap: 8px;
    }

    .dk-feedback-stack-item {
        grid-template-columns: 34px 1fr;
        padding: 11px 12px;
        border-radius: 18px;
    }

    .dk-feedback-stack-avatar {
        width: 34px;
        height: 34px;
        font-size: 14px;
    }

    .dk-feedback-stack-text {
        font-size: 11.5px;
    }
}

@media(prefers-reduced-motion:reduce) {
    .dk-feedback-stack-item {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}



.service-primary,
.main-service-focus-preview .service-primary {
    cursor: pointer !important;
    transition: transform .42s cubic-bezier(.22, 1, .36, 1), box-shadow .42s cubic-bezier(.22, 1, .36, 1), filter .42s ease !important;
}

.service-primary:hover,
.main-service-focus-preview .service-primary:hover {
    transform: translateY(-6px) !important;
    filter: saturate(1.03) !important;
}

.service-primary .service-primary-visual img,
.main-service-focus-preview .service-primary .service-primary-visual img {
    transition: transform .42s cubic-bezier(.22, 1, .36, 1), filter .42s ease !important;
}

.service-primary:hover .service-primary-visual img,
.main-service-focus-preview .service-primary:hover .service-primary-visual img {
    transform: scale(1.025) !important;
    filter: drop-shadow(0 42px 56px rgba(31, 27, 22, .22)) !important;
}

.service-primary:focus-visible,
.main-service-focus-preview .service-primary:focus-visible {
    outline: 2px solid rgba(82, 104, 95, .65) !important;
    outline-offset: 8px !important;
    border-radius: 28px !important;
}

#contact-form.dk-form-highlight,
.contact.dk-form-highlight,
.form.dk-form-highlight {
    animation: dkMainCardFormGlow 1.6s ease both !important;
}

@keyframes dkMainCardFormGlow {
    0% {
        box-shadow: 0 0 0 rgba(201, 164, 92, 0)
    }

    42% {
        box-shadow: 0 0 0 2px rgba(201, 164, 92, .36), 0 0 54px rgba(201, 164, 92, .34)
    }

    100% {
        box-shadow: 0 0 0 rgba(201, 164, 92, 0)
    }
}



/* Client clarity pass: XERF is not discounted; 30% only applies to selected machines. */
.xerf-exclusion-note {
    margin: 0;
    color: rgba(82, 104, 95, .82);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.service-primary .service-price-line {
    margin-top: 6px !important;
}

.service-primary .service-price-line strong {
    display: none !important;
}

.supporting-slide-price.original-only {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 3px !important;
}

.supporting-slide-price.original-only span {
    font-size: 10px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: rgba(31, 27, 22, .48) !important;
    font-weight: 900 !important;
}

.supporting-slide-price.original-only strong {
    font-size: 30px !important;
}

.offer-treatment-grid .offer-highlight-card strong {
    font-size: clamp(42px, 4.8vw, 74px) !important;
}

.offer-treatment-grid .offer-highlight-card span {
    font-size: 12px !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}

.promo-exclusion-note {
    margin: 12px 0 0 !important;
    text-align: center !important;
    font-size: 11px !important;
    color: rgba(31, 27, 22, .58) !important;
    font-weight: 800 !important;
    letter-spacing: .04em !important;
}

.promo.promo-unified.corner .promo-exclusion-note {
    display: none !important;
}



/* Real demo before/after image patch */
.dk-case-visual .dk-compare-panel:before {
    background-size: cover !important;
    background-position: center !important;
    filter: none !important;
    transform: scale(1.015);
}

.dk-case-visual .dk-compare-before:after,
.dk-case-visual .dk-compare-after:after {
    display: none !important;
}

.dk-case-visual .dk-compare-panel:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(31, 27, 22, .04), rgba(31, 27, 22, .10));
    pointer-events: none;
}

.dk-case-visual.case-1 .dk-compare-before:before {
    background-image: url('assets/css_081_8a36a5c9f044.jpg') !important;
}

.dk-case-visual.case-1 .dk-compare-after:before {
    background-image: url('assets/css_082_d6d6688ae053.jpg') !important;
}

.dk-case-visual.case-2 .dk-compare-before:before {
    background-image: url('assets/css_083_151a99331b85.jpg') !important;
}

.dk-case-visual.case-2 .dk-compare-after:before {
    background-image: url('assets/css_084_2a539f1df23c.jpg') !important;
}

.dk-case-visual.case-3 .dk-compare-before:before {
    background-image: url('assets/css_085_0bb5c72bc748.jpg') !important;
}

.dk-case-visual.case-3 .dk-compare-after:before {
    background-image: url('assets/css_086_c38cae57e4f2.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-before:before {
    background-image: url('assets/css_087_fee3ed34630a.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-after:before {
    background-image: url('assets/css_088_1255ea035f7d.jpg') !important;
}

.dk-case-floating-meta {
    background: rgba(255, 253, 248, .82) !important;
}



/* User uploaded before/after images override */
.dk-case-visual .dk-compare-panel:before {
    background-size: cover !important;
    background-repeat: no-repeat !important;
    filter: none !important;
}

.dk-case-visual.case-1 .dk-compare-before:before {
    background-image: url('assets/css_089_4a478c0759d7.jpg') !important;
    background-position: center top !important;
}

.dk-case-visual.case-1 .dk-compare-after:before {
    background-image: url('assets/css_090_27e9c0ec1269.jpg') !important;
    background-position: center top !important;
}

.dk-case-visual.case-2 .dk-compare-before:before {
    background-image: url('assets/css_091_7f5c2c02da16.jpg') !important;
    background-position: center center !important;
}

.dk-case-visual.case-2 .dk-compare-after:before {
    background-image: url('assets/css_092_10dd329ea151.jpg') !important;
    background-position: center center !important;
}



.dk-case-visual .dk-compare-panel:before {
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-color: #fffaf3 !important;
    filter: none !important;
    transform: none !important;
}

.dk-case-visual .dk-compare-before:after,
.dk-case-visual .dk-compare-after:after {
    display: none !important;
}

.dk-case-visual .dk-compare-panel:after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(31, 27, 22, .02), rgba(31, 27, 22, .07)) !important;
    pointer-events: none !important;
}

.dk-case-visual.case-1 .dk-compare-before:before {
    background-image: url('assets/css_089_4a478c0759d7.jpg') !important;
}

.dk-case-visual.case-1 .dk-compare-after:before {
    background-image: url('assets/css_090_27e9c0ec1269.jpg') !important;
}

.dk-case-visual.case-2 .dk-compare-before:before {
    background-image: url('assets/css_091_7f5c2c02da16.jpg') !important;
}

.dk-case-visual.case-2 .dk-compare-after:before {
    background-image: url('assets/css_092_10dd329ea151.jpg') !important;
}

.dk-case-visual.case-3 .dk-compare-before:before {
    background-image: url('assets/css_089_4a478c0759d7.jpg') !important;
}

.dk-case-visual.case-3 .dk-compare-after:before {
    background-image: url('assets/css_090_27e9c0ec1269.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-before:before {
    background-image: url('assets/css_091_7f5c2c02da16.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-after:before {
    background-image: url('assets/css_092_10dd329ea151.jpg') !important;
}



.dk-case-visual .dk-compare-panel {
    position: absolute !important;
    overflow: hidden !important;
    background: transparent !important;
}

.dk-case-visual .dk-compare-panel::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    filter: none !important;
    opacity: 1 !important;
    z-index: 0 !important;
}

.dk-case-visual .dk-compare-panel::after {
    display: none !important;
}

.dk-case-visual.case-1 .dk-compare-before::before {
    background-image: url('assets/css_089_4a478c0759d7.jpg') !important;
}

.dk-case-visual.case-1 .dk-compare-after::before {
    background-image: url('assets/css_090_27e9c0ec1269.jpg') !important;
}

.dk-case-visual.case-2 .dk-compare-before::before {
    background-image: url('assets/css_091_7f5c2c02da16.jpg') !important;
}

.dk-case-visual.case-2 .dk-compare-after::before {
    background-image: url('assets/css_092_10dd329ea151.jpg') !important;
}

.dk-case-visual.case-3 .dk-compare-before::before {
    background-image: url('assets/css_089_4a478c0759d7.jpg') !important;
}

.dk-case-visual.case-3 .dk-compare-after::before {
    background-image: url('assets/css_090_27e9c0ec1269.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-before::before {
    background-image: url('assets/css_091_7f5c2c02da16.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-after::before {
    background-image: url('assets/css_092_10dd329ea151.jpg') !important;
}



/* Inline before/after images from user uploads - no external asset path required */
.dk-case-visual {
    background: #f6eee4 !important;
}

.dk-case-visual .dk-compare-panel {
    background: transparent !important;
}

.dk-case-visual .dk-compare-panel:before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    opacity: 1 !important;
    filter: none !important;
}

.dk-case-visual.case-1 .dk-compare-before:before {
    background-image: url('assets/css_093_474c505c443b.jpg');
    background-position: left center !important;
}

.dk-case-visual.case-1 .dk-compare-after:before {
    background-image: url('assets/css_094_5f2a76726856.jpg');
    background-position: right center !important;
}

.dk-case-visual.case-2 .dk-compare-before:before {
    background-image: url('assets/css_095_7fa2f7951f20.jpg');
    background-position: left center !important;
}

.dk-case-visual.case-2 .dk-compare-after:before {
    background-image: url('assets/css_096_bec257dbe989.jpg');
    background-position: right center !important;
}

.dk-case-visual.case-3 .dk-compare-before:before {
    background-image: var(--case1-before-img) !important;
}

.dk-case-visual.case-3 .dk-compare-before:before {
    background-image: url('assets/css_093_474c505c443b.jpg') !important;
}

.dk-case-visual.case-3 .dk-compare-after:before {
    background-image: url('assets/css_094_5f2a76726856.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-before:before {
    background-image: url('assets/css_095_7fa2f7951f20.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-after:before {
    background-image: url('assets/css_096_bec257dbe989.jpg') !important;
}

.dk-case-visual .dk-compare-before {
    clip-path: inset(0 50% 0 0);
}

.dk-case-visual .dk-compare-after {
    clip-path: inset(0 0 0 50%);
}

.dk-case-visual img {
    display: none !important;
}



.dk-compare-shell {
    position: relative !important;
    overflow: hidden !important;
    background: #e8ded1 !important;
}

.dk-compare-panel {
    position: absolute !important;
    inset: 0 !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    transition: opacity .45s ease, clip-path .18s ease !important;
}

.dk-compare-before {
    z-index: 1 !important;
    opacity: 1 !important;
}

.dk-compare-after {
    z-index: 2 !important;
    opacity: 1 !important;
    clip-path: inset(0 0 0 50%) !important;
}

.dk-compare-shell .dk-compare-label,
.dk-compare-shell .dk-compare-handle,
.dk-compare-shell .dk-compare-range,
.dk-case-floating-meta {
    z-index: 5 !important;
}

.dk-compare-shell.has-real-images:before {
    content: none !important;
}

.dk-compare-shell.has-real-images .dk-compare-panel:before,
.dk-compare-shell.has-real-images .dk-compare-panel:after {
    content: none !important;
}



.dk-case-visual {
    background: transparent !important;
}

.dk-case-visual .dk-compare-panel {
    position: absolute !important;
    inset: 0 !important;
    overflow: hidden !important;
    background: transparent !important;
}

.dk-case-visual .dk-compare-before {
    z-index: 1 !important;
}

.dk-case-visual .dk-compare-after {
    z-index: 2 !important;
    clip-path: inset(0 0 0 50%) !important;
}

.dk-case-visual .dk-compare-panel::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
}

.dk-case-visual .dk-compare-panel::after {
    display: none !important;
}

.dk-case-visual.case-1 .dk-compare-before::before {
    background-image: url('assets/css_097_f2be34a6a684.jpg') !important;
}

.dk-case-visual.case-1 .dk-compare-after::before {
    background-image: url('assets/css_098_bb8f41ad1a0e.jpg') !important;
}

.dk-case-visual.case-2 .dk-compare-before::before {
    background-image: url('assets/css_099_363d35924d14.jpg') !important;
}

.dk-case-visual.case-2 .dk-compare-after::before {
    background-image: url('assets/css_100_2263ace3f6f8.jpg') !important;
}

.dk-case-visual.case-3 .dk-compare-before::before {
    background-image: url('assets/css_097_f2be34a6a684.jpg') !important;
}

.dk-case-visual.case-3 .dk-compare-after::before {
    background-image: url('assets/css_098_bb8f41ad1a0e.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-before::before {
    background-image: url('assets/css_099_363d35924d14.jpg') !important;
}

.dk-case-visual.case-4 .dk-compare-after::before {
    background-image: url('assets/css_100_2263ace3f6f8.jpg') !important;
}



/* Compact Normal Service booking layout with month picker */
.normal-service-section {
    padding: 82px 0 92px !important;
    background: linear-gradient(180deg, #fbf8f1 0%, #f5efe5 100%) !important;
}

.normal-service-section .container {
    max-width: 1320px !important;
}

.normal-service-head {
    grid-template-columns: minmax(0, .9fr) minmax(320px, .75fr) !important;
    gap: 42px !important;
    align-items: end !important;
    margin-bottom: 30px !important;
}

.normal-service-head h2 {
    font-size: clamp(42px, 4.8vw, 72px) !important;
    line-height: .95 !important;
}

.normal-service-head p {
    font-size: 16px !important;
    line-height: 1.55 !important;
    max-width: 480px !important;
}

.normal-booking-layout {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 420px) !important;
    gap: 18px !important;
    align-items: start !important;
}

.normal-service-list {
    border-radius: 28px !important;
    padding: 10px !important;
    display: grid !important;
    gap: 8px !important;
}

.normal-service-row {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    padding: 15px 16px !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, .38) !important;
    border: 1px solid rgba(91, 83, 70, .08) !important;
}

.normal-service-row+.normal-service-row {
    border-top: 0 !important;
}

.normal-check {
    width: 26px !important;
    height: 26px !important;
    border-radius: 8px !important;
}

.normal-service-title strong {
    font-size: 17px !important;
    letter-spacing: -.02em !important;
}

.normal-service-title span {
    font-size: 13px !important;
    margin-top: 4px !important;
}

.normal-price {
    gap: 8px !important;
}

.normal-price del {
    font-size: 13px !important;
}

.normal-price b {
    font-size: 20px !important;
}

.normal-side {
    gap: 12px !important;
}

.normal-calendar-card,
.normal-summary-card {
    border-radius: 28px !important;
    padding: 18px !important;
}

.normal-calendar-top {
    display: grid !important;
    grid-template-columns: 1fr auto auto !important;
    gap: 10px !important;
    align-items: center !important;
    margin-bottom: 14px !important;
}

.normal-calendar-title {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.normal-calendar-title strong {
    font-size: 16px !important;
    color: #24221e;
}

.normal-calendar-title small {
    font-size: 11px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: #6a7d70;
    font-weight: 800;
}

.normal-month-select {
    height: 42px;
    border: 1px solid rgba(91, 83, 70, .18);
    background: rgba(255, 255, 255, .66);
    border-radius: 999px;
    padding: 0 34px 0 14px;
    color: #24221e;
    font-weight: 800;
    outline: none;
    cursor: pointer;
    appearance: auto;
}

.normal-month-nav {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(91, 83, 70, .16);
    border-radius: 50%;
    background: rgba(255, 255, 255, .62);
    color: #5d7569;
    font-size: 18px;
    font-weight: 900;
    cursor: pointer;
    transition: .25s ease;
}

.normal-month-nav:hover {
    background: #5d7569;
    color: #fff;
    transform: translateY(-1px);
}

.normal-calendar-grid {
    gap: 6px !important;
}

.normal-calendar-grid em {
    font-size: 10px !important;
    padding-bottom: 2px !important;
}

.normal-day {
    height: 36px !important;
    border-radius: 12px !important;
    font-size: 13px !important;
}

.normal-day.is-muted {
    opacity: .28;
    pointer-events: none;
}

.normal-selected-date {
    margin: 12px 0 0;
    padding: 10px 12px;
    border-radius: 16px;
    background: rgba(93, 117, 105, .09);
    color: #4f665b;
    font-size: 13px;
    font-weight: 800;
}

.normal-summary-card h3 {
    font-size: 22px !important;
    margin-bottom: 4px !important;
}

.normal-summary-card p {
    font-size: 13px !important;
    margin-bottom: 14px !important;
}

.normal-summary-list {
    min-height: 0 !important;
    gap: 7px !important;
    margin-bottom: 14px !important;
}

.normal-summary-list span {
    font-size: 12px !important;
    padding: 7px 10px !important;
}

.normal-total {
    padding-top: 14px !important;
}

.normal-total strong {
    font-size: 28px !important;
}

.normal-cta {
    height: 52px !important;
    margin-top: 16px !important;
}

.normal-note {
    font-size: 11px !important;
    margin-top: 10px !important;
}

@media(max-width:1024px) {

    .normal-service-head,
    .normal-booking-layout {
        grid-template-columns: 1fr !important;
    }

    .normal-service-row {
        grid-template-columns: auto 1fr auto !important;
    }

    .normal-price {
        grid-column: auto !important;
        margin-top: 0 !important;
    }
}

@media(max-width:640px) {
    .normal-service-head {
        gap: 16px !important;
    }

    .normal-service-row {
        grid-template-columns: auto 1fr !important;
    }

    .normal-price {
        grid-column: 2 !important;
        margin-top: 2px !important;
    }

    .normal-calendar-top {
        grid-template-columns: 1fr auto !important;
    }

    .normal-month-select {
        grid-column: 1 / -1;
        width: 100%;
    }
}



.normal-service-section {
    padding: 82px 0 92px !important;
    background: linear-gradient(180deg, #fbf8f1 0%, #f5efe5 100%) !important;
}

.normal-service-section .container {
    max-width: 1320px !important;
}

.normal-service-head {
    display: grid !important;
    grid-template-columns: minmax(0, .9fr) minmax(320px, .75fr) !important;
    gap: 42px !important;
    align-items: end !important;
    margin-bottom: 30px !important;
}

.normal-service-head h2 {
    font-size: clamp(42px, 4.8vw, 72px) !important;
    line-height: .95 !important;
}

.normal-service-head p {
    font-size: 16px !important;
    line-height: 1.55 !important;
    max-width: 480px !important;
}

.normal-booking-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 430px) !important;
    gap: 22px !important;
    align-items: start !important;
}

.normal-service-list {
    border-radius: 28px !important;
    padding: 10px !important;
    display: grid !important;
    gap: 8px !important;
    background: rgba(255, 255, 255, .48) !important;
    border: 1px solid rgba(91, 83, 70, .10) !important;
    box-shadow: 0 30px 80px rgba(47, 40, 31, .07) !important;
}

.normal-service-row {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    padding: 15px 16px !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, .38) !important;
    border: 1px solid rgba(91, 83, 70, .08) !important;
    display: grid !important;
    gap: 14px !important;
    align-items: center !important;
    cursor: pointer !important;
}

.normal-service-row+.normal-service-row {
    border-top: 0 !important;
}

.normal-service-row:hover {
    transform: translateY(-2px) !important;
    background: rgba(255, 255, 255, .72) !important;
    box-shadow: 0 18px 50px rgba(47, 40, 31, .08) !important;
}

.normal-check {
    width: 26px !important;
    height: 26px !important;
    border-radius: 8px !important;
}

.normal-service-title strong {
    font-size: 17px !important;
    letter-spacing: -.02em !important;
}

.normal-service-title span {
    font-size: 13px !important;
    margin-top: 4px !important;
}

.normal-price {
    display: flex !important;
    align-items: baseline !important;
    gap: 8px !important;
    white-space: nowrap !important;
}

.normal-price del {
    font-size: 13px !important;
    color: rgba(33, 31, 27, .38) !important;
}

.normal-price b {
    font-size: 20px !important;
    color: #211f1b !important;
}

.normal-booking-panel {
    position: sticky;
    top: 98px;
    border-radius: 30px;
    padding: 22px;
    background: rgba(255, 255, 255, .58);
    border: 1px solid rgba(91, 83, 70, .12);
    box-shadow: 0 35px 90px rgba(47, 40, 31, .10);
    backdrop-filter: blur(18px);
}

.booking-kicker {
    display: inline-block;
    color: #607669;
    letter-spacing: .22em;
    text-transform: uppercase;
    font-weight: 900;
    font-size: 11px;
    margin-bottom: 10px;
}

.booking-panel-head h3 {
    font-size: 28px;
    line-height: 1;
    margin: 0 0 10px;
    color: #211f1b;
}

.booking-panel-head p {
    font-size: 13px;
    line-height: 1.55;
    color: rgba(33, 31, 27, .58);
    margin: 0 0 18px;
}

.booking-fields {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 14px;
}

.booking-fields label span {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .18em;
    font-weight: 900;
    color: #607669;
    margin: 0 0 7px;
}

.normal-field {
    width: 100%;
    height: 48px;
    border-radius: 999px;
    border: 1px solid rgba(91, 83, 70, .18);
    background: rgba(255, 255, 255, .78);
    padding: 0 16px;
    font-weight: 800;
    color: #24221e;
    outline: none;
}

.normal-summary-list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin: 10px 0 16px !important;
    min-height: 34px !important;
}

.normal-summary-list span {
    font-size: 12px !important;
    padding: 8px 11px !important;
    border-radius: 999px !important;
    background: rgba(93, 117, 105, .10) !important;
    color: #4f665b !important;
    font-weight: 800 !important;
}

.booking-totals {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    border-top: 1px solid rgba(91, 83, 70, .12);
    padding-top: 14px;
}

.booking-totals>div {
    border-radius: 18px;
    background: rgba(255, 255, 255, .58);
    padding: 12px;
}

.booking-totals small {
    display: block;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .16em;
    color: rgba(33, 31, 27, .45);
    font-weight: 900;
    margin-bottom: 5px;
}

.booking-totals strong {
    font-size: 22px;
    color: #211f1b;
}

.booking-total-price {
    grid-column: 1 / -1;
    background: #5d7569 !important;
    color: white !important;
    display: flex;
    align-items: end;
    justify-content: space-between;
}

.booking-total-price small,
.booking-total-price strong {
    color: white !important;
}

.booking-total-price strong {
    font-size: 34px;
}

.normal-cta {
    height: 54px !important;
    margin-top: 16px !important;
    width: 100%;
    border: 0;
    border-radius: 999px;
    background: #5d7569;
    color: white;
    font-weight: 900;
    font-size: 15px;
    cursor: pointer;
    box-shadow: 0 18px 42px rgba(93, 117, 105, .24);
}

.normal-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 24px 55px rgba(93, 117, 105, .32);
}

.normal-note {
    font-size: 11px !important;
    margin-top: 11px !important;
    color: rgba(33, 31, 27, .48) !important;
    line-height: 1.45 !important;
}

@media(max-width:1024px) {

    .normal-service-head,
    .normal-booking-layout {
        grid-template-columns: 1fr !important
    }

    .normal-booking-panel {
        position: relative;
        top: auto
    }

    .normal-service-head {
        gap: 18px !important
    }
}

@media(max-width:640px) {
    .normal-service-section {
        padding: 64px 0 72px !important
    }

    .normal-service-row {
        grid-template-columns: auto 1fr !important
    }

    .normal-price {
        grid-column: 2;
        justify-content: flex-start
    }

    .booking-totals {
        grid-template-columns: 1fr
    }

    .booking-total-price {
        display: block
    }

    .normal-service-head h2 {
        font-size: 42px !important
    }
}



.normal-deal-section {
    padding: 94px 0;
    background: linear-gradient(180deg, #fbf8f1 0%, #f4eee4 100%);
    position: relative;
    overflow: hidden;
}

.normal-deal-section:before {
    content: "";
    position: absolute;
    inset: auto -10% -35% 45%;
    height: 460px;
    background: radial-gradient(circle, rgba(93, 117, 105, .16), transparent 68%);
    filter: blur(20px);
    pointer-events: none;
}

.normal-deal-wrap {
    position: relative;
    z-index: 1;
}

.normal-deal-top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 470px);
    gap: 44px;
    align-items: end;
    margin-bottom: 34px;
}

.normal-deal-top h2 {
    font-size: clamp(44px, 5.2vw, 78px);
    line-height: .94;
    margin: 0;
    color: #211f1b;
    letter-spacing: -.055em;
}

.normal-deal-top p {
    font-size: 17px;
    line-height: 1.6;
    color: rgba(33, 31, 27, .58);
    margin: 0 0 8px;
}

.normal-deal-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 390px);
    gap: 24px;
    align-items: stretch;
}

.normal-deal-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.deal-service {
    position: relative;
    min-height: 142px;
    border-radius: 30px;
    border: 1px solid rgba(91, 83, 70, .12);
    background: rgba(255, 255, 255, .54);
    box-shadow: 0 24px 70px rgba(47, 40, 31, .07);
    padding: 22px;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    gap: 16px 16px;
    cursor: pointer;
    transition: transform .28s ease, box-shadow .28s ease, background .28s ease, border-color .28s ease;
    overflow: hidden;
}

.deal-service:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(93, 117, 105, .12), transparent 48%, rgba(204, 170, 99, .13));
    opacity: 0;
    transition: .28s ease;
}

.deal-service:hover {
    transform: translateY(-5px);
    box-shadow: 0 34px 95px rgba(47, 40, 31, .12);
    background: rgba(255, 255, 255, .78);
}

.deal-service.active {
    border-color: rgba(93, 117, 105, .42);
    background: rgba(255, 255, 255, .74);
}

.deal-service.active:before {
    opacity: 1;
}

.deal-service input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.deal-check {
    position: relative;
    z-index: 1;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    border: 2px solid rgba(93, 117, 105, .28);
    display: grid;
    place-items: center;
    color: transparent;
    font-weight: 900;
    font-size: 22px;
    background: rgba(255, 255, 255, .56);
    transition: .25s ease;
}

.deal-service.active .deal-check {
    background: #5d7569;
    color: #fff;
    border-color: #5d7569;
    box-shadow: 0 14px 32px rgba(93, 117, 105, .24);
}

.deal-copy {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.deal-name {
    display: block;
    font-weight: 900;
    color: #211f1b;
    font-size: 22px;
    line-height: 1.1;
    letter-spacing: -.04em;
}

.deal-meta {
    display: block;
    margin-top: 7px;
    font-size: 14px;
    font-style: italic;
    color: rgba(33, 31, 27, .52);
    line-height: 1.3;
}

.deal-price {
    position: relative;
    z-index: 1;
    grid-column: 1 / -1;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    border-top: 1px solid rgba(91, 83, 70, .10);
    padding-top: 18px;
}

.deal-price small {
    text-transform: uppercase;
    letter-spacing: .18em;
    color: #5d7569;
    font-size: 11px;
    font-weight: 900;
}

.deal-price span {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.deal-price del {
    font-size: 16px;
    color: rgba(33, 31, 27, .36);
    font-weight: 700;
}

.deal-price b {
    font-size: 36px;
    letter-spacing: -.05em;
    color: #211f1b;
    line-height: 1;
}

.deal-summary {
    border-radius: 34px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .72), rgba(255, 255, 255, .43));
    border: 1px solid rgba(91, 83, 70, .13);
    box-shadow: 0 34px 100px rgba(47, 40, 31, .12);
    padding: 26px;
    display: flex;
    flex-direction: column;
    backdrop-filter: blur(20px);
    position: sticky;
    top: 96px;
    min-height: 100%;
}

.deal-badge {
    align-self: flex-start;
    border-radius: 999px;
    padding: 10px 14px;
    background: rgba(93, 117, 105, .12);
    color: #4f665b;
    text-transform: uppercase;
    letter-spacing: .14em;
    font-size: 10px;
    font-weight: 900;
    margin-bottom: 20px;
}

.deal-total-block {
    border-radius: 28px;
    background: #5d7569;
    color: #fff;
    padding: 24px;
    margin-bottom: 18px;
    box-shadow: 0 20px 54px rgba(93, 117, 105, .22);
}

.deal-total-block span {
    display: block;
    text-transform: uppercase;
    letter-spacing: .16em;
    font-size: 11px;
    font-weight: 900;
    opacity: .78;
    margin-bottom: 8px;
}

.deal-total-block strong {
    display: block;
    font-size: 58px;
    line-height: .9;
    letter-spacing: -.07em;
}

.deal-total-block small {
    display: block;
    margin-top: 10px;
    font-weight: 800;
    opacity: .86;
}

.deal-selected {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px;
    min-height: 38px;
}

.deal-selected span {
    padding: 9px 12px;
    border-radius: 999px;
    background: rgba(33, 31, 27, .06);
    color: rgba(33, 31, 27, .7);
    font-weight: 850;
    font-size: 12px;
}

.deal-date-label {
    display: block;
    margin-top: auto;
}

.deal-date-label span {
    display: block;
    text-transform: uppercase;
    letter-spacing: .18em;
    color: #5d7569;
    font-size: 11px;
    font-weight: 900;
    margin-bottom: 8px;
}

.deal-date-label input {
    width: 100%;
    height: 54px;
    border-radius: 999px;
    border: 1px solid rgba(91, 83, 70, .18);
    background: rgba(255, 255, 255, .74);
    padding: 0 18px;
    font-weight: 900;
    color: #211f1b;
    outline: none;
}

.deal-cta {
    margin-top: 14px;
    width: 100%;
    height: 58px;
    border: 0;
    border-radius: 999px;
    background: #211f1b;
    color: #fff;
    font-weight: 950;
    font-size: 15px;
    cursor: pointer;
    transition: .25s ease;
    box-shadow: 0 18px 46px rgba(33, 31, 27, .16);
}

.deal-cta:hover {
    transform: translateY(-2px);
    background: #5d7569;
    box-shadow: 0 22px 56px rgba(93, 117, 105, .25);
}

.deal-note {
    margin: 14px 0 0;
    color: rgba(33, 31, 27, .48);
    font-size: 12px;
    line-height: 1.5;
}

@media(max-width:1080px) {

    .normal-deal-top,
    .normal-deal-grid {
        grid-template-columns: 1fr
    }

    .deal-summary {
        position: relative;
        top: auto
    }

    .normal-deal-list {
        grid-template-columns: 1fr 1fr
    }
}

@media(max-width:720px) {
    .normal-deal-section {
        padding: 70px 0
    }

    .normal-deal-top {
        gap: 18px;
        margin-bottom: 24px
    }

    .normal-deal-list {
        grid-template-columns: 1fr
    }

    .deal-service {
        min-height: auto
    }

    .deal-price b {
        font-size: 30px
    }

    .deal-total-block strong {
        font-size: 46px
    }

    .normal-deal-top h2 {
        font-size: 42px
    }
}



/* Final update: move Normal Service prices to the right side */
.normal-service-row {
    grid-template-columns: auto minmax(0, 1fr) minmax(118px, auto) !important;
    column-gap: 18px !important;
}

.normal-price {
    justify-self: end !important;
    margin-left: auto !important;
    min-width: 118px !important;
    display: grid !important;
    grid-template-columns: auto auto !important;
    align-items: baseline !important;
    justify-content: end !important;
    text-align: right !important;
    gap: 8px !important;
    white-space: nowrap !important;
}

.normal-price del {
    font-size: 13px !important;
    color: rgba(33, 31, 27, .36) !important;
    text-decoration-thickness: 1px !important;
}

.normal-price b {
    font-size: 22px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #52685f !important;
    letter-spacing: -.02em !important;
}

.normal-service-row:hover .normal-price b,
.normal-service-row.is-selected .normal-price b {
    color: #1f1b16 !important;
}

@media(max-width:640px) {
    .normal-service-row {
        grid-template-columns: auto 1fr !important;
        row-gap: 8px !important;
    }

    .normal-price {
        grid-column: 2 !important;
        justify-self: start !important;
        margin-left: 0 !important;
        min-width: 0 !important;
        text-align: left !important;
        justify-content: start !important;
    }
}



/* Update: remove discount badges and place prices inline with service name */
.normal-service-refined .normal-discount-badge,
.normal-discount-badge {
    display: none !important;
}

.normal-service-refined .normal-service-row,
.normal-service-row {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) auto !important;
    gap: 18px !important;
    align-items: start !important;
    min-height: auto !important;
    padding: 20px 22px !important;
    padding-right: 22px !important;
    padding-bottom: 20px !important;
}

.normal-service-refined .normal-service-title,
.normal-service-title {
    min-width: 0 !important;
    padding-right: 10px !important;
}

.normal-service-refined .normal-service-title strong,
.normal-service-title strong {
    display: block !important;
    font-size: 22px !important;
    line-height: 1.15 !important;
    letter-spacing: -.035em !important;
    color: #211f1b !important;
}

.normal-service-refined .normal-service-title em,
.normal-service-title em,
.normal-service-title span {
    display: block !important;
    margin-top: 8px !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-style: italic !important;
    color: rgba(33, 31, 27, .54) !important;
}

.normal-service-refined .normal-service-row .normal-price,
.normal-service-row .normal-price {
    position: static !important;
    grid-column: auto !important;
    grid-row: auto !important;
    justify-self: end !important;
    align-self: start !important;
    min-width: 116px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: baseline !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    margin: 0 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

.normal-service-refined .normal-service-row .normal-price del,
.normal-service-row .normal-price del {
    font-size: 14px !important;
    line-height: 1 !important;
    color: rgba(33, 31, 27, .36) !important;
    font-weight: 700 !important;
    text-decoration-thickness: 1px !important;
}

.normal-service-refined .normal-service-row .normal-price b,
.normal-service-row .normal-price b {
    display: inline-block !important;
    font-size: 25px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: -.04em !important;
    color: #52685f !important;
}

.normal-service-refined .normal-service-row:hover .normal-price b,
.normal-service-refined .normal-service-row.is-selected .normal-price b,
.normal-service-row:hover .normal-price b,
.normal-service-row.is-selected .normal-price b {
    color: #211f1b !important;
}

@media(max-width:900px) {

    .normal-service-refined .normal-service-row,
    .normal-service-row {
        grid-template-columns: 44px minmax(0, 1fr) auto !important;
        gap: 14px !important;
        padding: 18px 16px !important;
    }

    .normal-service-refined .normal-service-row .normal-price,
    .normal-service-row .normal-price {
        min-width: 98px !important;
        gap: 8px !important;
    }

    .normal-service-refined .normal-service-row .normal-price b,
    .normal-service-row .normal-price b {
        font-size: 22px !important;
    }
}

@media(max-width:640px) {

    .normal-service-refined .normal-service-row,
    .normal-service-row {
        grid-template-columns: 42px minmax(0, 1fr) !important;
        padding: 18px 14px !important;
        min-height: auto !important;
    }

    .normal-service-refined .normal-service-row .normal-price,
    .normal-service-row .normal-price {
        grid-column: 2 !important;
        justify-self: start !important;
        margin-top: 10px !important;
    }
}



/* Refined supporting-service slider cards: compact device frame + inline discount pricing */
.supporting-slide {
    width: min(330px, 82vw) !important;
    min-height: 430px !important;
    padding: 18px !important;
    display: grid !important;
    grid-template-rows: 160px 1fr !important;
    gap: 16px !important;
    border-radius: 30px !important;
    background: rgba(255, 253, 248, .88) !important;
    border: 1px solid rgba(31, 27, 22, .08) !important;
    box-shadow: 0 22px 58px rgba(31, 27, 22, .075) !important;
    overflow: hidden !important;
}

.supporting-slide-visual {
    height: 160px !important;
    min-height: 160px !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(244, 238, 229, .58)) !important;
    border: 1px solid rgba(31, 27, 22, .065) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 18px !important;
    overflow: hidden !important;
}

.supporting-slide-visual:before {
    width: 68% !important;
    height: 62% !important;
    opacity: .55 !important;
    filter: blur(16px) !important;
}

.supporting-slide-visual img {
    width: 100% !important;
    height: 100% !important;
    max-width: 210px !important;
    max-height: 132px !important;
    object-fit: contain !important;
    object-position: center !important;
    transform: none !important;
    animation: none !important;
    filter: drop-shadow(0 18px 24px rgba(31, 27, 22, .12)) !important;
}

.supporting-slide-visual.combo-machines {
    gap: 4px !important;
    padding: 18px 14px !important;
}

.supporting-slide-visual.combo-machines img {
    max-width: 46% !important;
    max-height: 128px !important;
    margin: 0 !important;
}

.supporting-slide-copy {
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.supporting-slide-copy .service-category {
    font-size: 10px !important;
    letter-spacing: .16em !important;
    color: rgba(82, 104, 95, .78) !important;
}

.supporting-slide-copy h4 {
    font-size: 28px !important;
    line-height: .98 !important;
    margin: 0 !important;
    min-height: 56px !important;
}

.supporting-slide-copy p {
    font-size: 13px !important;
    line-height: 1.55 !important;
    color: rgba(31, 27, 22, .62) !important;
    min-height: 42px !important;
    margin: 0 !important;
}

.supporting-slide-footer {
    margin-top: auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.supporting-slide-price.discount-pair {
    display: flex !important;
    align-items: baseline !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    min-height: 34px !important;
}

.supporting-slide-price.discount-pair s {
    font-size: 14px !important;
    color: rgba(31, 27, 22, .42) !important;
    text-decoration-thickness: 1px !important;
}

.supporting-slide-price.discount-pair strong {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 30px !important;
    line-height: 1 !important;
    color: var(--ink) !important;
    font-weight: 700 !important;
}

.supporting-slide-actions {
    margin-top: 0 !important;
}

.supporting-slide-cta {
    min-height: 46px !important;
    width: 100% !important;
    justify-content: center !important;
    border-radius: 999px !important;
}

.supporting-slide:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 28px 72px rgba(31, 27, 22, .11) !important;
}

.supporting-slide:hover .supporting-slide-visual img {
    transform: scale(1.03) !important;
    transition: transform .45s cubic-bezier(.22, 1, .36, 1) !important;
}

@media(max-width:560px) {
    .supporting-slide {
        width: 78vw !important;
        min-height: 410px !important;
        grid-template-rows: 150px 1fr !important;
    }

    .supporting-slide-visual {
        height: 150px !important;
        min-height: 150px !important;
    }

    .supporting-slide-copy h4 {
        font-size: 25px !important;
        min-height: auto !important;
    }

    .supporting-slide-price.discount-pair strong {
        font-size: 28px !important;
    }
}



/* Hard fix: supporting treatment cards use one clean vertical layout.
   Prevent previous horizontal/focus-preview styles from causing text overlap. */
.supporting-focus-preview {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.supporting-marquee.is-focus .supporting-track {
    animation-play-state: paused !important;
}

.supporting-slide.is-hover-source {
    opacity: 1 !important;
    transform: none !important;
}

.supporting-marquee {
    overflow: hidden !important;
    padding: 12px 0 22px !important;
}

.supporting-track {
    align-items: stretch !important;
}

.supporting-slide {
    width: min(336px, 82vw) !important;
    min-width: min(336px, 82vw) !important;
    max-width: min(336px, 82vw) !important;
    min-height: 455px !important;
    height: 455px !important;
    padding: 18px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    border-radius: 30px !important;
    background: rgba(255, 253, 248, .94) !important;
    border: 1px solid rgba(31, 27, 22, .09) !important;
    box-shadow: 0 22px 58px rgba(31, 27, 22, .075) !important;
    overflow: hidden !important;
    position: relative !important;
    isolation: isolate !important;
}

.supporting-slide-visual {
    flex: 0 0 160px !important;
    width: 100% !important;
    height: 160px !important;
    min-height: 160px !important;
    max-height: 160px !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .95), rgba(244, 238, 229, .62)) !important;
    border: 1px solid rgba(31, 27, 22, .07) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 18px !important;
    overflow: hidden !important;
    position: relative !important;
}

.supporting-slide-visual:before {
    content: "" !important;
    position: absolute !important;
    inset: auto !important;
    width: 72% !important;
    height: 68% !important;
    border-radius: 999px !important;
    background: radial-gradient(circle, rgba(255, 255, 255, .92), rgba(217, 221, 212, .28) 58%, transparent 76%) !important;
    filter: blur(14px) !important;
    opacity: .65 !important;
}

.supporting-slide-visual img {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 128px !important;
    object-fit: contain !important;
    object-position: center !important;
    margin: 0 auto !important;
    transform: none !important;
    animation: none !important;
    filter: drop-shadow(0 18px 24px rgba(31, 27, 22, .13)) !important;
}

.supporting-slide-visual.combo-machines {
    gap: 6px !important;
    padding: 18px 14px !important;
}

.supporting-slide-visual.combo-machines img {
    max-width: 46% !important;
    max-height: 126px !important;
    margin: 0 !important;
}

.supporting-slide-copy {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
    position: relative !important;
    overflow: visible !important;
}

.supporting-slide-copy .service-category {
    display: block !important;
    font-size: 10px !important;
    line-height: 1.35 !important;
    letter-spacing: .16em !important;
    color: rgba(82, 104, 95, .82) !important;
    white-space: normal !important;
}

.supporting-slide-copy h4 {
    display: block !important;
    font-size: 29px !important;
    line-height: 1.02 !important;
    margin: 0 !important;
    min-height: 58px !important;
    max-height: 68px !important;
    overflow: hidden !important;
    letter-spacing: -.02em !important;
}

.supporting-slide-copy p {
    display: block !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: rgba(31, 27, 22, .64) !important;
    min-height: 58px !important;
    max-height: 62px !important;
    overflow: hidden !important;
    margin: 0 !important;
}

.supporting-slide-footer {
    margin-top: auto !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.supporting-slide-price.discount-pair {
    display: flex !important;
    align-items: baseline !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    min-height: 34px !important;
}

.supporting-slide-price.discount-pair s {
    font-size: 14px !important;
    color: rgba(31, 27, 22, .42) !important;
    text-decoration-thickness: 1px !important;
}

.supporting-slide-price.discount-pair strong {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 30px !important;
    line-height: 1 !important;
    color: var(--ink) !important;
    font-weight: 700 !important;
}

.supporting-slide-actions {
    margin: 0 !important;
    width: 100% !important;
}

.supporting-slide-cta {
    width: 100% !important;
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
}

.supporting-slide:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 28px 72px rgba(31, 27, 22, .11) !important;
}

.supporting-slide:hover .supporting-slide-visual img {
    transform: scale(1.025) !important;
    transition: transform .45s cubic-bezier(.22, 1, .36, 1) !important;
}

@media(max-width:560px) {
    .supporting-slide {
        width: 78vw !important;
        min-width: 78vw !important;
        max-width: 78vw !important;
        height: 430px !important;
        min-height: 430px !important;
    }

    .supporting-slide-visual {
        flex-basis: 148px !important;
        height: 148px !important;
        min-height: 148px !important;
        max-height: 148px !important;
    }

    .supporting-slide-copy h4 {
        font-size: 25px !important;
        min-height: 52px !important;
    }

    .supporting-slide-price.discount-pair strong {
        font-size: 28px !important;
    }
}



/* FINAL: compact supporting service cards, larger price, visible CTA */
.supporting-marquee {
    padding: 12px 0 30px !important;
    overflow: hidden !important;
}

.supporting-track {
    align-items: stretch !important;
    gap: 22px !important;
}

.supporting-slide {
    width: min(318px, 78vw) !important;
    min-width: min(318px, 78vw) !important;
    max-width: min(318px, 78vw) !important;
    height: 402px !important;
    min-height: 402px !important;
    padding: 16px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 13px !important;
    border-radius: 28px !important;
    background: rgba(255, 253, 248, .96) !important;
    border: 1px solid rgba(31, 27, 22, .09) !important;
    box-shadow: 0 20px 52px rgba(31, 27, 22, .075) !important;
    overflow: hidden !important;
}

.supporting-slide-visual {
    flex: 0 0 130px !important;
    height: 130px !important;
    min-height: 130px !important;
    max-height: 130px !important;
    width: 100% !important;
    border-radius: 22px !important;
    padding: 16px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(244, 238, 229, .62)) !important;
    border: 1px solid rgba(31, 27, 22, .065) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

.supporting-slide-visual:before {
    width: 68% !important;
    height: 64% !important;
    opacity: .55 !important;
    filter: blur(14px) !important;
}

.supporting-slide-visual img {
    max-width: 100% !important;
    max-height: 102px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center !important;
    margin: 0 auto !important;
    animation: none !important;
    transform: none !important;
    filter: drop-shadow(0 15px 22px rgba(31, 27, 22, .13)) !important;
}

.supporting-slide-visual.combo-machines {
    gap: 6px !important;
    padding: 14px 12px !important;
}

.supporting-slide-visual.combo-machines img {
    max-width: 46% !important;
    max-height: 102px !important;
    margin: 0 !important;
}

.supporting-slide-copy {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
    overflow: visible !important;
}

.supporting-slide-copy .service-category {
    display: block !important;
    font-size: 9.5px !important;
    line-height: 1.25 !important;
    letter-spacing: .16em !important;
    color: rgba(82, 104, 95, .78) !important;
    white-space: normal !important;
}

.supporting-slide-copy h4 {
    display: block !important;
    min-height: 46px !important;
    max-height: 54px !important;
    overflow: hidden !important;
    margin: 0 !important;
    font-size: 27px !important;
    line-height: 1 !important;
    letter-spacing: -.025em !important;
}

.supporting-slide-copy p {
    display: block !important;
    min-height: 42px !important;
    max-height: 46px !important;
    overflow: hidden !important;
    margin: 0 !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    color: rgba(31, 27, 22, .62) !important;
}

.supporting-slide-footer {
    margin-top: auto !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.supporting-slide-price.discount-pair,
.supporting-slide-price {
    display: flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 9px !important;
    min-height: 38px !important;
    margin: 0 !important;
}

.supporting-slide-price.discount-pair s,
.supporting-slide-price s {
    font-size: 14px !important;
    line-height: 1 !important;
    color: rgba(31, 27, 22, .42) !important;
    text-decoration-thickness: 1px !important;
}

.supporting-slide-price.discount-pair strong,
.supporting-slide-price strong {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 38px !important;
    line-height: .9 !important;
    color: var(--ink) !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
}

.supporting-slide-actions {
    margin: 0 !important;
    width: 100% !important;
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
}

.supporting-slide-cta {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 100% !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 18px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: rgba(82, 104, 95, .94) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    box-shadow: 0 14px 34px rgba(82, 104, 95, .18) !important;
}

.supporting-slide:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 26px 64px rgba(31, 27, 22, .11) !important;
}

.supporting-slide:hover .supporting-slide-visual img {
    transform: scale(1.022) !important;
    transition: transform .45s cubic-bezier(.22, 1, .36, 1) !important;
}

@media(max-width:560px) {
    .supporting-slide {
        width: 78vw !important;
        min-width: 78vw !important;
        max-width: 78vw !important;
        height: 390px !important;
        min-height: 390px !important;
    }

    .supporting-slide-visual {
        flex-basis: 122px !important;
        height: 122px !important;
        min-height: 122px !important;
        max-height: 122px !important;
    }

    .supporting-slide-copy h4 {
        font-size: 24px !important;
        min-height: 44px !important;
    }

    .supporting-slide-price.discount-pair strong,
    .supporting-slide-price strong {
        font-size: 34px !important;
    }
}



/* Normal service: keep original list style, ensure multi-select cards work cleanly */
#normal-services .normal-service-row {
    user-select: none;
    cursor: pointer;
}

#normal-services .normal-service-row input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

#normal-services .normal-service-row.is-selected {
    background: linear-gradient(135deg, rgba(255, 255, 255, .86), rgba(93, 117, 105, .10)) !important;
    border-color: rgba(93, 117, 105, .35) !important;
}

#normal-services .normal-price {
    justify-self: end !important;
    text-align: right !important;
    align-items: baseline !important;
}

#normal-services .normal-price del,
#normal-services .normal-price s {
    font-size: 14px !important;
    color: rgba(33, 31, 27, .38) !important;
}

#normal-services .normal-price b,
#normal-services .normal-price strong {
    font-size: 24px !important;
    color: #211f1b !important;
    letter-spacing: -.04em !important;
}

/* Footer form: text-box dropdown with arrow, unlimited checkbox selection */
.treatment-choice-field {
    position: relative !important;
    z-index: 7 !important;
}

.footer-service-select-trigger {
    width: 100%;
    min-height: 58px;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .08);
    color: #fff;
    padding: 0 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    cursor: pointer;
    transition: background .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.footer-service-select-trigger:hover,
.treatment-choice-field.is-open .footer-service-select-trigger {
    background: rgba(255, 255, 255, .13);
    border-color: rgba(255, 255, 255, .32);
    box-shadow: 0 14px 36px rgba(0, 0, 0, .12);
}

.footer-service-select-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 800;
    color: rgba(255, 255, 255, .92);
    font-size: 15px;
}

.footer-service-select-arrow {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #fff;
    background: rgba(255, 255, 255, .10);
    flex: 0 0 auto;
    transition: transform .25s ease, background .25s ease;
}

.treatment-choice-field.is-open .footer-service-select-arrow {
    transform: rotate(180deg);
    background: rgba(111, 133, 120, .35);
}

.footer-treatment-options {
    display: none !important;
    position: absolute !important;
    left: 0;
    right: 0;
    top: calc(100% + 10px);
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 10px !important;
    border-radius: 20px !important;
    background: rgba(28, 26, 23, .96) !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .36) !important;
    backdrop-filter: blur(20px) !important;
    max-height: 285px;
    overflow: auto;
}

.treatment-choice-field.is-open .footer-treatment-options {
    display: grid !important;
}

.footer-treatment-options label {
    min-height: 48px !important;
    padding: 11px 12px !important;
    border-radius: 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    background: rgba(255, 255, 255, .06) !important;
    border: 1px solid rgba(255, 255, 255, .11) !important;
    color: rgba(255, 255, 255, .82) !important;
}

.footer-treatment-options label:hover {
    background: rgba(255, 255, 255, .12) !important;
    color: #fff !important;
}

.footer-treatment-options input[type="checkbox"] {
    appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 6px !important;
    border: 1.5px solid rgba(255, 255, 255, .42) !important;
    background: rgba(255, 255, 255, .06) !important;
    display: grid !important;
    place-items: center !important;
    flex: 0 0 auto !important;
}

.footer-treatment-options input[type="checkbox"]:checked {
    background: #6f8578 !important;
    border-color: #6f8578 !important;
}

.footer-treatment-options input[type="checkbox"]:checked:after {
    content: "\2713";
    font-size: 12px;
    line-height: 1;
    color: #fff;
    font-weight: 900;
}

.footer-treatment-options label:has(input:checked) {
    background: rgba(111, 133, 120, .25) !important;
    border-color: rgba(132, 160, 145, .55) !important;
    color: #fff !important;
}

.footer-treatment-options span {
    font-size: 14px !important;
    font-weight: 850 !important;
}

@media(max-width:680px) {
    .footer-treatment-options {
        position: relative !important;
        top: auto !important;
        margin-top: 10px !important;
        max-height: none;
    }
}



/* FINAL FIX: keep supporting card price directly above Book button without overlap */
.supporting-marquee {
    padding: 18px 0 120px !important;
    overflow: visible !important;
}

.supporting-track {
    align-items: stretch !important;
}

.supporting-slide {
    height: 640px !important;
    min-height: 640px !important;
    padding: 18px 22px 28px !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.supporting-slide-visual {
    flex: 0 0 136px !important;
    height: 136px !important;
    min-height: 136px !important;
    max-height: 136px !important;
    margin-bottom: 16px !important;
}

.supporting-slide-visual img {
    max-height: 104px !important;
    max-width: 76% !important;
}

.supporting-slide-visual.combo-machines img {
    max-height: 104px !important;
    max-width: 38% !important;
}

.supporting-slide-copy {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    padding: 0 2px !important;
}

.supporting-slide-copy .service-category {
    margin-bottom: 8px !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
}

.supporting-slide-copy h4 {
    min-height: 42px !important;
    max-height: 62px !important;
    margin: 0 0 14px !important;
    font-size: 28px !important;
    line-height: 1.02 !important;
    overflow: hidden !important;
}

.supporting-slide-copy h5,
.supporting-slide-copy .supporting-slide-subtitle,
.supporting-slide-copy .supporting-slide-tagline {
    margin: 0 0 10px !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
}

.supporting-slide-copy p {
    max-height: 48px !important;
    margin: 0 0 10px !important;
    font-size: 13.5px !important;
    line-height: 1.35 !important;
    overflow: hidden !important;
}

.supporting-slide-copy ul,
.supporting-slide-details,
.supporting-slide-benefits {
    margin: 0 0 18px !important;
    padding-left: 0 !important;
    list-style: none !important;
    display: grid !important;
    gap: 5px !important;
}

.supporting-slide-copy li,
.supporting-slide-details li,
.supporting-slide-benefits li {
    font-size: 12.5px !important;
    line-height: 1.28 !important;
    margin: 0 !important;
}

.supporting-slide-footer {
    position: static !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin-top: auto !important;
    padding-top: 12px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    align-items: stretch !important;
    width: 100% !important;
}

.supporting-slide-price {
    position: static !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: baseline !important;
    gap: 12px !important;
    white-space: nowrap !important;
}

.supporting-slide-price s {
    font-size: 15px !important;
    line-height: 1 !important;
}

.supporting-slide-price strong {
    font-size: 36px !important;
    line-height: 1 !important;
}

.supporting-slide-actions {
    position: static !important;
    min-height: 52px !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
}

.supporting-slide-cta {
    display: inline-flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 86% !important;
    height: 50px !important;
    min-height: 50px !important;
    margin: 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    transform: none !important;
}

@media(max-width:980px) {
    .supporting-slide {
        height: 620px !important;
        min-height: 620px !important;
    }
}

@media(max-width:560px) {
    .supporting-marquee {
        padding-bottom: 90px !important;
    }

    .supporting-slide {
        height: 600px !important;
        min-height: 600px !important;
        padding: 16px 18px 26px !important;
    }

    .supporting-slide-visual {
        flex-basis: 124px !important;
        height: 124px !important;
        min-height: 124px !important;
        max-height: 124px !important;
    }

    .supporting-slide-copy h4 {
        font-size: 24px !important;
        min-height: auto !important;
    }

    .supporting-slide-price strong {
        font-size: 32px !important;
    }

    .supporting-slide-cta {
        height: 48px !important;
        min-height: 48px !important;
        width: 88% !important;
    }
}



.dk-clinical-service-section .container {
    width: min(100% - 40px, 1440px) !important;
    max-width: 1440px !important;
}

.dk-clinical-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(290px, 360px) !important;
    gap: 24px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
}

.dk-clinical-visual {
    position: relative !important;
    justify-self: center !important;
    width: min(100%, 700px) !important;
    max-width: 700px !important;
    aspect-ratio: 1/1 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
    border-radius: 26px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.dk-service-panel,
.dk-service-case-slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

.dk-service-case-slide {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.dk-service-case-slide img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
    transform: none !important;
    background: transparent !important;
}

.dk-clinical-info {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    z-index: 1 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.dk-clinical-head,
.dk-service-switcher,
.dk-clinical-layout {
    max-width: 100% !important;
    overflow: visible !important;
}

@media(max-width:1200px) {
    .dk-clinical-service-section .container {
        width: min(100% - 32px, 1180px) !important;
    }

    .dk-clinical-layout {
        grid-template-columns: minmax(0, 1fr) minmax(270px, 320px) !important;
        gap: 20px !important;
    }

    .dk-clinical-info {
        padding: 24px !important;
    }

    .dk-clinical-info h3 {
        font-size: clamp(34px, 3.8vw, 52px) !important;
    }
}

@media(max-width:980px) {
    .dk-clinical-layout {
        grid-template-columns: 1fr !important;
    }

    .dk-clinical-visual {
        width: min(100%, 640px) !important;
        max-width: 640px !important;
        aspect-ratio: 1/1 !important;
    }

    .dk-clinical-info {
        height: auto !important;
    }
}

@media(max-width:560px) {
    .dk-clinical-service-section .container {
        width: min(100% - 20px, 560px) !important;
    }

    .dk-clinical-visual {
        width: 100% !important;
        max-width: 100% !important;
        aspect-ratio: 1/1 !important;
        border-radius: 20px !important;
    }

    .dk-clinical-info {
        padding: 21px !important;
        border-radius: 24px !important;
    }
}



/* Restore and lock the approved title + 30% offer + countdown header */
.dk-clinical-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 36px !important;
    align-items: end !important;
    margin: 0 0 30px !important;
    width: 100% !important;
    max-width: 100% !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
}

.dk-clinical-title {
    min-width: 0 !important;
}

.dk-clinical-title .eyebrow {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.dk-clinical-title h2 {
    display: block !important;
    margin: 10px 0 0 !important;
    font-size: clamp(52px, 6.2vw, 96px) !important;
    line-height: .9 !important;
    letter-spacing: -.052em !important;
    font-weight: 500 !important;
    color: var(--ink) !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.dk-clinical-offer {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 20px !important;
    min-width: 300px !important;
    padding: 16px 20px !important;
    border-radius: 28px !important;
    background: rgba(255, 253, 248, .78) !important;
    border: 1px solid rgba(31, 27, 22, .09) !important;
    box-shadow: 0 18px 54px rgba(31, 27, 22, .08) !important;
    backdrop-filter: blur(18px) !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
}

.dk-clinical-discount {
    display: flex !important;
    align-items: baseline !important;
    gap: 7px !important;
    padding-right: 20px !important;
    border-right: 1px solid rgba(31, 27, 22, .12) !important;
    white-space: nowrap !important;
}

.dk-clinical-discount strong {
    display: block !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 64px !important;
    line-height: .8 !important;
    color: var(--deep) !important;
    letter-spacing: -.05em !important;
    opacity: 1 !important;
}

.dk-clinical-discount span {
    display: block !important;
    font-size: 11px !important;
    letter-spacing: .16em !important;
    font-weight: 800 !important;
    color: var(--deep) !important;
    opacity: 1 !important;
}

.dk-clinical-countdown {
    display: grid !important;
    gap: 4px !important;
    min-width: 122px !important;
}

.dk-clinical-countdown small {
    display: block !important;
    font-size: 9px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: var(--stone) !important;
    font-weight: 800 !important;
    opacity: 1 !important;
}

#dkClinicalCountdown {
    display: block !important;
    font-size: 26px !important;
    line-height: 1 !important;
    letter-spacing: .05em !important;
    color: var(--ink) !important;
    opacity: 1 !important;
    visibility: visible !important;
}

@media(max-width:980px) {
    .dk-clinical-head {
        grid-template-columns: 1fr !important;
        align-items: start !important;
        gap: 22px !important;
    }

    .dk-clinical-offer {
        justify-self: start !important;
    }
}

@media(max-width:560px) {
    .dk-clinical-head {
        gap: 18px !important;
    }

    .dk-clinical-title h2 {
        font-size: 44px !important;
    }

    .dk-clinical-offer {
        width: 100% !important;
        min-width: 0 !important;
        justify-content: center !important;
        gap: 15px !important;
        padding: 14px 16px !important;
    }

    .dk-clinical-discount strong {
        font-size: 50px !important;
    }

    #dkClinicalCountdown {
        font-size: 23px !important;
    }
}



.dk-save30-head {
    display: block !important;
    margin: 0 0 32px !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 760px !important;
    text-align: left !important;
}

.dk-save30-countdown {
    display: inline-flex !important;
    align-items: center !important;
    gap: 13px !important;
    padding: 12px 18px !important;
    margin: 0 0 19px !important;
    border-radius: 999px !important;
    background: #5f776d !important;
    color: #fff !important;
    box-shadow: 0 10px 30px rgba(82, 104, 95, .16) !important;
    animation: dkGentlePulse 2.2s ease-in-out infinite !important;
    transform-origin: center center !important;
}

.dk-save30-countdown span {
    display: block !important;
    font-size: 11px !important;
    line-height: 1 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
    font-weight: 800 !important;
    color: rgba(255, 255, 255, .78) !important;
    white-space: nowrap !important;
}

#dkClinicalCountdown {
    display: block !important;
    font-size: 23px !important;
    line-height: 1 !important;
    letter-spacing: .02em !important;
    font-weight: 800 !important;
    color: #fff !important;
    font-variant-numeric: tabular-nums !important;
    min-width: 62px !important;
}

.dk-save30-title {
    display: flex !important;
    align-items: baseline !important;
    gap: 18px !important;
    margin: 0 !important;
    line-height: .78 !important;
    letter-spacing: -.065em !important;
}

.dk-save30-title span {
    display: block !important;
    font-family: Inter, Arial, sans-serif !important;
    font-size: clamp(68px, 8.2vw, 126px) !important;
    font-weight: 500 !important;
    color: var(--ink) !important;
}

.dk-save30-title strong {
    display: block !important;
    font-family: Inter, Arial, sans-serif !important;
    font-size: clamp(68px, 8.2vw, 126px) !important;
    font-weight: 500 !important;
    color: #5f776d !important;
}

.dk-save30-limit {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    margin-top: 19px !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.dk-save30-limit strong {
    display: block !important;
    font-size: 14px !important;
    letter-spacing: .02em !important;
    color: #5f776d !important;
    font-weight: 800 !important;
}

.dk-save30-limit span {
    display: block !important;
    font-size: 12px !important;
    letter-spacing: .17em !important;
    color: rgba(31, 27, 22, .50) !important;
}

@keyframes dkGentlePulse {

    0%,
    100% {
        transform: scale(1);
        box-shadow: 0 10px 30px rgba(82, 104, 95, .16);
    }

    50% {
        transform: scale(1.035);
        box-shadow: 0 14px 38px rgba(82, 104, 95, .25);
    }
}

@media (prefers-reduced-motion:reduce) {
    .dk-save30-countdown {
        animation: none !important
    }
}

@media(max-width:700px) {
    .dk-save30-head {
        max-width: 100% !important
    }

    .dk-save30-countdown {
        padding: 11px 16px !important;
        margin-bottom: 17px !important;
    }

    .dk-save30-title {
        gap: 11px !important;
    }

    .dk-save30-title span,
    .dk-save30-title strong {
        font-size: clamp(54px, 18vw, 88px) !important;
    }

    .dk-save30-limit {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 4px !important;
        white-space: normal !important;
    }
}



#treatments {
    scroll-margin-top: 110px;
}



/* FINAL FIX: keep four glass service cards visible around the hero products, above the next section */
.hero.hero-clean {
    overflow: visible !important;
    z-index: 20 !important;
    position: relative !important;
    isolation: isolate !important;
    padding-bottom: 120px !important;
}

.hero-clean-inner {
    overflow: visible !important;
    z-index: 25 !important;
    position: relative !important;
}

.hero-clean-visual {
    overflow: visible !important;
    z-index: 30 !important;
    position: relative !important;
}

.clean-hero-img {
    z-index: 31 !important;
}

.hero-clean-strip {
    z-index: 45 !important;
    overflow: visible !important;
    pointer-events: none !important;
    width: min(920px, 82vw) !important;
    height: min(480px, 44vw) !important;
    min-height: 400px !important;
    top: 55% !important;
}

.hero-clean-strip a {
    z-index: 46 !important;
    pointer-events: auto !important;
    width: clamp(175px, 15.5vw, 225px) !important;
    min-height: 94px !important;
    padding: 16px 18px !important;
    border-radius: 24px !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, .38), rgba(255, 250, 245, .24) 56%, rgba(217, 221, 212, .20)) !important;
    border: 1px solid rgba(255, 255, 255, .62) !important;
    box-shadow: 0 22px 64px rgba(31, 27, 22, .10), inset 0 1px 0 rgba(255, 255, 255, .78) !important;
    backdrop-filter: blur(28px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(28px) saturate(180%) !important;
}

.hero-clean-strip a strong {
    font-size: clamp(20px, 1.72vw, 28px) !important;
}

.hero-clean-strip a span {
    font-size: 10px !important;
    letter-spacing: .13em !important;
}

/* place 2 cards to the left and 2 cards to the right of the three-device visual */
.hero-clean-strip a:nth-child(1) {
    left: 6% !important;
    top: 26% !important;
    right: auto !important;
    bottom: auto !important;
}

/* XERF */
.hero-clean-strip a:nth-child(4) {
    left: 8% !important;
    top: 64% !important;
    right: auto !important;
    bottom: auto !important;
}

/* Lavieen */
.hero-clean-strip a:nth-child(2) {
    right: 6% !important;
    top: 24% !important;
    left: auto !important;
    bottom: auto !important;
}

/* Oligio X */
.hero-clean-strip a:nth-child(3) {
    right: 8% !important;
    top: 62% !important;
    left: auto !important;
    bottom: auto !important;
}

/* Tightan PRO */
.hero-clean-inner:hover .hero-clean-strip a:nth-child(1) {
    transform: translateX(10px) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(4) {
    transform: translateX(12px) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(2) {
    transform: translateX(-10px) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(3) {
    transform: translateX(-12px) !important;
}

.hero-clean-inner .hero-clean-strip a:hover {
    transform: translate3d(0, -10px, 0) scale(1.08) !important;
    z-index: 80 !important;
}

.about.section,
.treatments.section,
.service-matrix-section,
.why.section,
.contact.section {
    position: relative !important;
    z-index: 1 !important;
}

@media(max-width:1100px) {
    .hero.hero-clean {
        padding-bottom: 90px !important;
    }

    .hero-clean-strip {
        width: min(840px, 92vw) !important;
        height: 430px !important;
        top: 56% !important;
    }

    .hero-clean-strip a {
        width: 190px !important;
        min-height: 86px !important;
        padding: 14px 16px !important;
    }

    .hero-clean-strip a:nth-child(1) {
        left: 0 !important;
        top: 28% !important;
    }

    .hero-clean-strip a:nth-child(4) {
        left: 2% !important;
        top: 65% !important;
    }

    .hero-clean-strip a:nth-child(2) {
        right: 0 !important;
        top: 26% !important;
    }

    .hero-clean-strip a:nth-child(3) {
        right: 2% !important;
        top: 63% !important;
    }
}

@media(max-width:900px) {
    .hero.hero-clean {
        overflow: hidden !important;
        padding-bottom: 52px !important;
    }

    .hero-clean-strip {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        transform: none !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
        margin: 20px auto 0 !important;
    }

    .hero-clean-strip a,
    .hero-clean-strip a:nth-child(n) {
        position: relative !important;
        inset: auto !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        width: auto !important;
        min-height: 88px !important;
        transform: none !important;
    }
}

@media(max-width:560px) {
    .hero-clean-strip {
        grid-template-columns: 1fr !important;
    }
}

/* V42 premium offer highlight: make launch promotion the hero of final CTA */
.contact.contact-final-cta {
    background:
        radial-gradient(circle at 18% 20%, rgba(107, 130, 120, .34), transparent 31%),
        radial-gradient(circle at 58% 46%, rgba(214, 184, 122, .12), transparent 32%),
        radial-gradient(circle at 88% 72%, rgba(255, 255, 255, .08), transparent 34%),
        linear-gradient(135deg, #171411 0%, #221e18 50%, #11100e 100%) !important;
}

.offer-focus-copy {
    align-items: flex-start !important;
    text-align: left !important;
}

.offer-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    padding: 9px 16px;
    border-radius: 999px;
    border: 1px solid rgba(214, 184, 122, .34);
    background: rgba(214, 184, 122, .08);
    color: #dcc18a;
    text-transform: uppercase;
    letter-spacing: .22em;
    font-size: 12px;
    font-weight: 800;
}

.offer-badge:before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #dcc18a;
    box-shadow: 0 0 18px rgba(214, 184, 122, .82);
}

.contact-final-copy .offer-title {
    font-family: Inter, Arial, sans-serif !important;
    font-size: clamp(56px, 7.5vw, 128px) !important;
    line-height: .82 !important;
    letter-spacing: -.07em !important;
    margin: 0 !important;
    max-width: 860px !important;
    color: #fff !important;
}

.offer-title span {
    position: relative;
    display: inline-block !important;
    color: transparent !important;
    background: linear-gradient(120deg, #fff9e8 0%, #d8b16a 45%, #fff3c9 68%, #b99250 100%);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 18px 70px rgba(216, 177, 106, .16);
    overflow: hidden;
    isolation: isolate;
}

.offer-title span:after {
    content: "";
    position: absolute;
    top: -26%;
    left: -52%;
    width: 80px;
    height: 152%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .95), rgba(255, 229, 165, .8), transparent);
    transform: skewX(-18deg);
    filter: blur(2px);
    mix-blend-mode: screen;
    animation: offerPercentSweep 4.6s ease-in-out infinite;
}

@keyframes offerPercentSweep {

    0%,
    58% {
        transform: translateX(0) skewX(-18deg);
        opacity: 0
    }

    66% {
        opacity: .98
    }

    88% {
        transform: translateX(760%) skewX(-18deg);
        opacity: .75
    }

    100% {
        transform: translateX(820%) skewX(-18deg);
        opacity: 0
    }
}

.offer-subtitle {
    max-width: 640px !important;
    margin: 24px 0 0 !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 18px !important;
    line-height: 1.72 !important;
}

.offer-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 30px 0 0;
}

.offer-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(14px);
    color: rgba(255, 255, 255, .86);
    font-weight: 700;
    animation: offerPillRise .78s cubic-bezier(.2, .8, .2, 1) both;
}

.offer-pills span:nth-child(2) {
    animation-delay: .14s
}

.offer-pills span:nth-child(3) {
    animation-delay: .28s
}

@keyframes offerPillRise {
    from {
        opacity: 0;
        transform: translateY(14px) scale(.97)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.offer-highlight-grid {
    display: grid;
    grid-template-columns: 1fr 1.16fr 1fr;
    gap: 1px;
    width: min(100%, 760px);
    margin: 40px 0 0;
    border-radius: 34px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(22px) saturate(140%);
    box-shadow: 0 28px 90px rgba(0, 0, 0, .22);
}

.offer-highlight-card {
    position: relative;
    padding: 28px 26px;
    background: rgba(255, 255, 255, .04);
    min-height: 150px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.offer-highlight-card small {
    color: rgba(255, 255, 255, .54);
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 800;
}

.offer-highlight-card strong {
    display: block;
    margin: 8px 0 4px;
    font-size: clamp(40px, 4vw, 64px);
    line-height: .9;
    font-weight: 900;
    color: #fff;
    letter-spacing: -.04em;
}

.offer-highlight-card span {
    font-size: 12px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .62);
    font-weight: 800;
}

.offer-highlight-card.percent {
    background: linear-gradient(160deg, rgba(216, 177, 106, .22), rgba(107, 130, 120, .1));
}

.offer-highlight-card.percent strong {
    color: transparent;
    background: linear-gradient(120deg, #fff9e8, #d8b16a 55%, #fff2c2);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 0 42px rgba(216, 177, 106, .14);
}

.offer-highlight-card.limited strong {
    animation: offerSpotPulse 5.6s ease-in-out infinite;
}

@keyframes offerSpotPulse {

    0%,
    78%,
    100% {
        transform: scale(1)
    }

    84% {
        transform: scale(1.08)
    }

    90% {
        transform: scale(.98)
    }
}

.offer-main-cta {
    margin-top: 34px !important;
    padding: 20px 30px !important;
    font-size: 20px !important;
    background: linear-gradient(135deg, #fffdf8, #e7d6aa) !important;
    color: #1f1b16 !important;
    border-color: rgba(255, 255, 255, .5) !important;
    box-shadow: 0 28px 88px rgba(216, 177, 106, .22) !important;
}

.offer-main-cta em {
    background: rgba(31, 27, 22, .12) !important;
    color: #1f1b16 !important;
}

.offer-note {
    margin: 15px 0 0 !important;
    color: rgba(255, 255, 255, .52) !important;
    font-size: 13px !important;
    letter-spacing: .03em;
}

.contact-final-card:before {
    background: #d8b16a !important;
    color: #1f1b16 !important;
    content: "30% OFF" !important;
}

@media(max-width:980px) {
    .offer-focus-copy {
        align-items: center !important;
        text-align: center !important
    }

    .offer-subtitle {
        margin-left: auto !important;
        margin-right: auto !important
    }

    .offer-pills {
        justify-content: center
    }

    .offer-highlight-grid {
        margin-left: auto;
        margin-right: auto
    }

    .offer-main-cta {
        margin-left: auto !important;
        margin-right: auto !important
    }
}

@media(max-width:620px) {
    .contact-final-copy .offer-title {
        font-size: 52px !important
    }

    .offer-highlight-grid {
        grid-template-columns: 1fr;
        border-radius: 24px
    }

    .offer-highlight-card {
        min-height: auto;
        padding: 22px
    }

    .offer-main-cta {
        width: 100%;
        justify-content: center
    }

    .offer-pills span {
        width: 100%;
        justify-content: center
    }
}

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

    .offer-title span:after,
    .offer-pills span,
    .offer-highlight-card.limited strong {
        animation: none !important
    }
}




/* FINAL: keep four glass cards inside the first hero section, not overlapping the next section */
.hero.hero-clean {
    position: relative !important;
    min-height: clamp(980px, 112vh, 1180px) !important;
    padding-top: 112px !important;
    padding-bottom: 130px !important;
    overflow: hidden !important;
    z-index: 2 !important;
    isolation: isolate !important;
}

.hero-clean-inner {
    position: relative !important;
    min-height: clamp(820px, 88vh, 960px) !important;
    overflow: visible !important;
    z-index: 3 !important;
}

.hero-clean-visual {
    position: relative !important;
    z-index: 4 !important;
    overflow: visible !important;
    margin-top: 10px !important;
    min-height: min(54vh, 560px) !important;
}

.clean-hero-img {
    position: relative !important;
    z-index: 6 !important;
    width: min(930px, 72vw) !important;
    max-height: min(56vh, 600px) !important;
}

.hero-clean-strip {
    position: absolute !important;
    left: 50% !important;
    top: 54% !important;
    transform: translate(-50%, -50%) !important;
    width: min(1080px, 88vw) !important;
    height: min(560px, 52vw) !important;
    min-height: 500px !important;
    display: block !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    pointer-events: none !important;
    z-index: 9 !important;
}

.hero-clean-strip a {
    position: absolute !important;
    display: block !important;
    pointer-events: auto !important;
    width: clamp(178px, 15vw, 230px) !important;
    min-height: 92px !important;
    padding: 16px 18px !important;
    border-radius: 24px !important;
    text-align: left !important;
    color: var(--ink) !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, .38), rgba(255, 250, 245, .22) 58%, rgba(217, 221, 212, .22)) !important;
    border: 1px solid rgba(255, 255, 255, .64) !important;
    box-shadow: 0 22px 64px rgba(31, 27, 22, .11), inset 0 1px 0 rgba(255, 255, 255, .78) !important;
    backdrop-filter: blur(26px) saturate(170%) !important;
    -webkit-backdrop-filter: blur(26px) saturate(170%) !important;
    opacity: .94 !important;
    will-change: transform !important;
    animation: dkHeroGlassFloat 6.4s ease-in-out infinite !important;
}

.hero-clean-strip a strong {
    display: block !important;
    font-family: Manrope, Inter, Arial, sans-serif !important;
    font-size: clamp(20px, 1.5vw, 27px) !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: -.045em !important;
    color: var(--ink) !important;
}

.hero-clean-strip a span {
    display: block !important;
    margin-top: 9px !important;
    font-size: 10px !important;
    line-height: 1.35 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
    color: rgba(31, 27, 22, .58) !important;
}

/* 2 cards left + 2 cards right, staggered around the three products */
.hero-clean-strip a:nth-child(1) {
    left: 5% !important;
    top: 24% !important;
    right: auto !important;
    bottom: auto !important;
    animation-delay: 0s !important;
}

/* XERF */
.hero-clean-strip a:nth-child(4) {
    left: 8% !important;
    top: 57% !important;
    right: auto !important;
    bottom: auto !important;
    animation-delay: 1.65s !important;
}

/* Lavieen */
.hero-clean-strip a:nth-child(2) {
    right: 6% !important;
    top: 21% !important;
    left: auto !important;
    bottom: auto !important;
    animation-delay: .8s !important;
}

/* Oligio X */
.hero-clean-strip a:nth-child(3) {
    right: 8% !important;
    top: 55% !important;
    left: auto !important;
    bottom: auto !important;
    animation-delay: 2.35s !important;
}

/* Tightan PRO */
.hero-clean-inner:hover .clean-hero-img {
    transform: scale(1.018) !important;
    filter: drop-shadow(0 42px 68px rgba(31, 27, 22, .20)) drop-shadow(0 0 24px rgba(255, 255, 255, .62)) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(1) {
    transform: translateX(10px) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(4) {
    transform: translateX(12px) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(2) {
    transform: translateX(-10px) !important;
}

.hero-clean-inner:hover .hero-clean-strip a:nth-child(3) {
    transform: translateX(-12px) !important;
}

.hero-clean-inner .hero-clean-strip a:hover {
    transform: translate3d(0, -10px, 0) scale(1.075) !important;
    opacity: 1 !important;
    z-index: 20 !important;
    border-color: rgba(255, 255, 255, .9) !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, .66), rgba(255, 250, 245, .38) 58%, rgba(217, 221, 212, .28)) !important;
    box-shadow: 0 34px 90px rgba(31, 27, 22, .17), inset 0 1px 0 rgba(255, 255, 255, 1) !important;
}

@keyframes dkHeroGlassFloat {

    0%,
    100% {
        translate: 0 0;
    }

    50% {
        translate: 0 -9px;
    }
}

/* next sections stay in the normal document flow */
.about.section,
.treatments.section,
.service-matrix-section,
.why.section,
.contact.section {
    position: relative !important;
    z-index: 1 !important;
}

@media(max-width:1180px) {
    .hero.hero-clean {
        min-height: 1040px !important;
        padding-bottom: 110px !important;
    }

    .hero-clean-strip {
        width: min(940px, 94vw) !important;
        height: 520px !important;
        top: 55% !important;
    }

    .hero-clean-strip a {
        width: 195px !important;
        min-height: 86px !important;
        padding: 14px 16px !important;
    }

    .hero-clean-strip a:nth-child(1) {
        left: 0 !important;
        top: 25% !important;
    }

    .hero-clean-strip a:nth-child(4) {
        left: 2% !important;
        top: 59% !important;
    }

    .hero-clean-strip a:nth-child(2) {
        right: 0 !important;
        top: 23% !important;
    }

    .hero-clean-strip a:nth-child(3) {
        right: 2% !important;
        top: 57% !important;
    }
}

@media(max-width:900px) {
    .hero.hero-clean {
        min-height: auto !important;
        padding-bottom: 56px !important;
        overflow: hidden !important;
    }

    .hero-clean-inner {
        min-height: auto !important;
    }

    .hero-clean-strip {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        transform: none !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
        margin: 20px auto 0 !important;
    }

    .hero-clean-strip a,
    .hero-clean-strip a:nth-child(n) {
        position: relative !important;
        inset: auto !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        width: auto !important;
        min-height: 88px !important;
        transform: none !important;
    }

    .hero-clean-inner:hover .hero-clean-strip a:nth-child(n) {
        transform: none !important;
    }
}

@media(max-width:560px) {
    .hero-clean-strip {
        grid-template-columns: 1fr !important;
    }
}


/* V-final popup close fix: corner close stays above the green offer panel and can fully dismiss */
.promo.promo-unified.promo-clean-v2.corner {
    overflow: visible !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-inner {
    overflow: visible !important;
}

.promo.promo-unified.promo-clean-v2.corner .close {
    top: -18px !important;
    right: -12px !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 999px !important;
    display: grid !important;
    place-items: center !important;
    background: rgba(255, 255, 255, .96) !important;
    color: var(--dk-ink) !important;
    border: 1px solid rgba(31, 27, 22, .12) !important;
    box-shadow: 0 14px 34px rgba(31, 27, 22, .18), inset 0 1px rgba(255, 255, 255, .85) !important;
    backdrop-filter: blur(14px) !important;
    z-index: 80 !important;
}

.promo.promo-unified.promo-clean-v2.corner .close:hover {
    transform: scale(1.08) !important;
    background: #fff !important;
    box-shadow: 0 18px 42px rgba(31, 27, 22, .24), inset 0 1px rgba(255, 255, 255, .9) !important;
}

@media(max-width:620px) {
    .promo.promo-unified.promo-clean-v2.corner .close {
        top: -14px !important;
        right: -6px !important;
        width: 40px !important;
        height: 40px !important;
    }
}

/* V42 premium offer highlight: make launch promotion the hero of final CTA */
.contact.contact-final-cta {
    background:
        radial-gradient(circle at 18% 20%, rgba(107, 130, 120, .34), transparent 31%),
        radial-gradient(circle at 58% 46%, rgba(214, 184, 122, .12), transparent 32%),
        radial-gradient(circle at 88% 72%, rgba(255, 255, 255, .08), transparent 34%),
        linear-gradient(135deg, #171411 0%, #221e18 50%, #11100e 100%) !important;
}

.offer-focus-copy {
    align-items: flex-start !important;
    text-align: left !important;
}

.offer-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    padding: 9px 16px;
    border-radius: 999px;
    border: 1px solid rgba(214, 184, 122, .34);
    background: rgba(214, 184, 122, .08);
    color: #dcc18a;
    text-transform: uppercase;
    letter-spacing: .22em;
    font-size: 12px;
    font-weight: 800;
}

.offer-badge:before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #dcc18a;
    box-shadow: 0 0 18px rgba(214, 184, 122, .82);
}

.contact-final-copy .offer-title {
    font-family: Inter, Arial, sans-serif !important;
    font-size: clamp(56px, 7.5vw, 128px) !important;
    line-height: .82 !important;
    letter-spacing: -.07em !important;
    margin: 0 !important;
    max-width: 860px !important;
    color: #fff !important;
}

.offer-title span {
    position: relative;
    display: inline-block !important;
    color: transparent !important;
    background: linear-gradient(120deg, #fff9e8 0%, #d8b16a 45%, #fff3c9 68%, #b99250 100%);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 18px 70px rgba(216, 177, 106, .16);
    overflow: hidden;
    isolation: isolate;
}

.offer-title span:after {
    content: "";
    position: absolute;
    top: -26%;
    left: -52%;
    width: 80px;
    height: 152%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .95), rgba(255, 229, 165, .8), transparent);
    transform: skewX(-18deg);
    filter: blur(2px);
    mix-blend-mode: screen;
    animation: offerPercentSweep 4.6s ease-in-out infinite;
}

@keyframes offerPercentSweep {

    0%,
    58% {
        transform: translateX(0) skewX(-18deg);
        opacity: 0
    }

    66% {
        opacity: .98
    }

    88% {
        transform: translateX(760%) skewX(-18deg);
        opacity: .75
    }

    100% {
        transform: translateX(820%) skewX(-18deg);
        opacity: 0
    }
}

.offer-subtitle {
    max-width: 640px !important;
    margin: 24px 0 0 !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 18px !important;
    line-height: 1.72 !important;
}

.offer-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 30px 0 0;
}

.offer-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(14px);
    color: rgba(255, 255, 255, .86);
    font-weight: 700;
    animation: offerPillRise .78s cubic-bezier(.2, .8, .2, 1) both;
}

.offer-pills span:nth-child(2) {
    animation-delay: .14s
}

.offer-pills span:nth-child(3) {
    animation-delay: .28s
}

@keyframes offerPillRise {
    from {
        opacity: 0;
        transform: translateY(14px) scale(.97)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.offer-highlight-grid {
    display: grid;
    grid-template-columns: 1fr 1.16fr 1fr;
    gap: 1px;
    width: min(100%, 760px);
    margin: 40px 0 0;
    border-radius: 34px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(22px) saturate(140%);
    box-shadow: 0 28px 90px rgba(0, 0, 0, .22);
}

.offer-highlight-card {
    position: relative;
    padding: 28px 26px;
    background: rgba(255, 255, 255, .04);
    min-height: 150px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.offer-highlight-card small {
    color: rgba(255, 255, 255, .54);
    font-size: 12px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 800;
}

.offer-highlight-card strong {
    display: block;
    margin: 8px 0 4px;
    font-size: clamp(40px, 4vw, 64px);
    line-height: .9;
    font-weight: 900;
    color: #fff;
    letter-spacing: -.04em;
}

.offer-highlight-card span {
    font-size: 12px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .62);
    font-weight: 800;
}

.offer-highlight-card.percent {
    background: linear-gradient(160deg, rgba(216, 177, 106, .22), rgba(107, 130, 120, .1));
}

.offer-highlight-card.percent strong {
    color: transparent;
    background: linear-gradient(120deg, #fff9e8, #d8b16a 55%, #fff2c2);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 0 42px rgba(216, 177, 106, .14);
}

.offer-highlight-card.limited strong {
    animation: offerSpotPulse 5.6s ease-in-out infinite;
}

@keyframes offerSpotPulse {

    0%,
    78%,
    100% {
        transform: scale(1)
    }

    84% {
        transform: scale(1.08)
    }

    90% {
        transform: scale(.98)
    }
}

.offer-main-cta {
    margin-top: 34px !important;
    padding: 20px 30px !important;
    font-size: 20px !important;
    background: linear-gradient(135deg, #fffdf8, #e7d6aa) !important;
    color: #1f1b16 !important;
    border-color: rgba(255, 255, 255, .5) !important;
    box-shadow: 0 28px 88px rgba(216, 177, 106, .22) !important;
}

.offer-main-cta em {
    background: rgba(31, 27, 22, .12) !important;
    color: #1f1b16 !important;
}

.offer-note {
    margin: 15px 0 0 !important;
    color: rgba(255, 255, 255, .52) !important;
    font-size: 13px !important;
    letter-spacing: .03em;
}

.contact-final-card:before {
    background: #d8b16a !important;
    color: #1f1b16 !important;
    content: "30% OFF" !important;
}

@media(max-width:980px) {
    .offer-focus-copy {
        align-items: center !important;
        text-align: center !important
    }

    .offer-subtitle {
        margin-left: auto !important;
        margin-right: auto !important
    }

    .offer-pills {
        justify-content: center
    }

    .offer-highlight-grid {
        margin-left: auto;
        margin-right: auto
    }

    .offer-main-cta {
        margin-left: auto !important;
        margin-right: auto !important
    }
}

@media(max-width:620px) {
    .contact-final-copy .offer-title {
        font-size: 52px !important
    }

    .offer-highlight-grid {
        grid-template-columns: 1fr;
        border-radius: 24px
    }

    .offer-highlight-card {
        min-height: auto;
        padding: 22px
    }

    .offer-main-cta {
        width: 100%;
        justify-content: center
    }

    .offer-pills span {
        width: 100%;
        justify-content: center
    }
}

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

    .offer-title span:after,
    .offer-pills span,
    .offer-highlight-card.limited strong {
        animation: none !important
    }
}



/* V56: Transformation Journey section after About Dr. Kwon */
.dk-transform-journey {
    position: relative;
    overflow: hidden;
    padding: 105px 0 112px !important;
    background:
        radial-gradient(circle at 18% 18%, rgba(107, 130, 120, .12), transparent 30%),
        radial-gradient(circle at 86% 58%, rgba(216, 177, 106, .10), transparent 34%),
        linear-gradient(180deg, #fbf6ee 0%, #fffaf3 56%, #f1e8dc 100%);
    isolation: isolate;
}

.dk-transform-journey:before {
    content: "\2713";
    position: absolute;
    left: -2vw;
    bottom: -4vw;
    font-family: 'Cormorant Garamond', serif;
    font-size: min(22vw, 330px);
    line-height: .8;
    color: rgba(31, 27, 22, .035);
    pointer-events: none;
    z-index: -1;
}

.dk-transform-head {
    display: grid;
    grid-template-columns: minmax(300px, .92fr) minmax(320px, .68fr);
    gap: 42px;
    align-items: end;
    margin-bottom: 46px;
}

.dk-transform-head h2 {
    font-size: clamp(52px, 6.2vw, 96px);
    line-height: .9;
    letter-spacing: -.052em;
    font-weight: 500;
    margin: 10px 0 0;
}

.dk-transform-head p {
    margin: 0;
    color: rgba(31, 27, 22, .62);
    font-size: 18px;
    line-height: 1.72;
    max-width: 520px;
}

.dk-transform-grid {
    display: grid;
    grid-template-columns: minmax(430px, 1.12fr) minmax(320px, .88fr);
    gap: 34px;
    align-items: stretch;
}

.dk-compare-shell {
    position: relative;
    border-radius: 38px;
    overflow: hidden;
    min-height: 560px;
    background: #fffdf8;
    border: 1px solid rgba(31, 27, 22, .08);
    box-shadow: 0 32px 100px rgba(31, 27, 22, .10);
}

.dk-compare-panel {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.dk-compare-panel:before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 50% 28%, rgba(255, 255, 255, .44), transparent 18%),
        radial-gradient(circle at 44% 54%, rgba(235, 192, 165, .42), transparent 23%),
        radial-gradient(circle at 59% 56%, rgba(226, 170, 145, .28), transparent 24%),
        linear-gradient(135deg, #e9d1bd 0%, #caa58b 50%, #b58970 100%);
    filter: saturate(.86);
}

.dk-compare-before:after,
.dk-compare-after:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 330px;
    height: 430px;
    transform: translate(-50%, -50%);
    border-radius: 48% 52% 44% 56%/42% 45% 55% 58%;
    background:
        radial-gradient(circle at 50% 32%, rgba(255, 255, 255, .55), transparent 16%),
        radial-gradient(circle at 40% 49%, rgba(85, 56, 45, .18), transparent 3%),
        radial-gradient(circle at 60% 49%, rgba(85, 56, 45, .18), transparent 3%),
        radial-gradient(ellipse at 50% 65%, rgba(123, 70, 61, .18), transparent 6%),
        linear-gradient(180deg, rgba(246, 214, 194, .92), rgba(218, 165, 139, .92));
    box-shadow: inset 0 0 70px rgba(255, 255, 255, .20), 0 38px 90px rgba(31, 27, 22, .14);
}

.dk-compare-before:before {
    filter: saturate(.72) contrast(.94) blur(.2px);
}

.dk-compare-before:after {
    filter: saturate(.78) contrast(.96);
    opacity: .86;
}

.dk-compare-after {
    clip-path: inset(0 0 0 var(--split, 50%));
}

.dk-compare-after:before {
    background:
        radial-gradient(circle at 50% 28%, rgba(255, 255, 255, .58), transparent 18%),
        radial-gradient(circle at 44% 54%, rgba(250, 220, 198, .44), transparent 23%),
        radial-gradient(circle at 59% 56%, rgba(240, 196, 170, .32), transparent 24%),
        linear-gradient(135deg, #f2d9c7 0%, #dbb194 50%, #c5967a 100%);
    filter: saturate(1.02) contrast(1.03);
}

.dk-compare-after:after {
    filter: saturate(1.04) contrast(1.02) brightness(1.05);
    opacity: 1;
}

.dk-compare-label {
    position: absolute;
    top: 24px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(255, 253, 248, .72);
    backdrop-filter: blur(18px);
    color: rgba(31, 27, 22, .70);
    border: 1px solid rgba(255, 255, 255, .55);
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 800;
    z-index: 5;
}

.dk-compare-label.before {
    left: 24px;
}

.dk-compare-label.after {
    right: 24px;
    color: var(--deep);
}

.dk-compare-handle {
    position: absolute;
    top: 0;
    bottom: 0;
    left: var(--handle, 50%);
    z-index: 7;
    transform: translateX(-50%);
    width: 2px;
    background: rgba(255, 253, 248, .90);
    box-shadow: 0 0 24px rgba(255, 255, 255, .78);
    pointer-events: none;
}

.dk-compare-handle:before {
    content: "\2713";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--ink);
    background: rgba(255, 253, 248, .86);
    border: 1px solid rgba(31, 27, 22, .10);
    box-shadow: 0 14px 40px rgba(31, 27, 22, .18);
    font-weight: 800;
}

.dk-compare-range {
    position: absolute;
    inset: 0;
    z-index: 9;
    opacity: 0;
    cursor: ew-resize;
    width: 100%;
    height: 100%;
}

.dk-journey-card {
    position: relative;
    border-radius: 38px;
    background: rgba(255, 253, 248, .62);
    backdrop-filter: blur(22px) saturate(150%);
    border: 1px solid rgba(31, 27, 22, .07);
    box-shadow: 0 28px 86px rgba(31, 27, 22, .075);
    padding: 34px;
    overflow: hidden;
}

.dk-journey-card:before {
    content: "";
    position: absolute;
    right: -22%;
    top: -18%;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(107, 130, 120, .14), transparent 70%);
    filter: blur(6px);
}

.dk-journey-card h3 {
    position: relative;
    font-size: clamp(38px, 4vw, 58px);
    line-height: .94;
    letter-spacing: -.045em;
    font-weight: 500;
    margin: 0 0 24px;
}

.dk-journey-steps {
    position: relative;
    display: grid;
    gap: 0;
    margin: 0 0 30px;
}

.dk-journey-step {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 18px;
    padding: 18px 0;
    border-top: 1px solid rgba(31, 27, 22, .09);
}

.dk-journey-step:last-child {
    border-bottom: 1px solid rgba(31, 27, 22, .09);
}

.dk-journey-step b {
    font-family: 'Cormorant Garamond', serif;
    color: rgba(31, 27, 22, .34);
    font-size: 30px;
    line-height: 1;
}

.dk-journey-step strong {
    display: block;
    font-size: 18px;
    margin: 0 0 5px;
}

.dk-journey-step span {
    display: block;
    color: rgba(31, 27, 22, .58);
    font-size: 14px;
    line-height: 1.55;
}

.dk-journey-mini {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 20px 0 28px;
}

.dk-journey-mini span {
    display: grid;
    place-items: center;
    min-height: 62px;
    padding: 10px;
    border-radius: 18px;
    border: 1px solid rgba(31, 27, 22, .08);
    background: rgba(255, 255, 255, .40);
    color: rgba(31, 27, 22, .68);
    text-align: center;
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 800;
}

.dk-journey-cta {
    width: 100%;
    justify-content: center;
}

.dk-journey-disclaimer {
    margin: 14px 0 0;
    color: rgba(31, 27, 22, .48);
    font-size: 12px;
    line-height: 1.55;
}

.dk-transform-journey .reveal.show .dk-journey-step {
    animation: dkJourneyStep .72s cubic-bezier(.22, 1, .36, 1) both;
}

.dk-transform-journey .reveal.show .dk-journey-step:nth-child(2) {
    animation-delay: .08s;
}

.dk-transform-journey .reveal.show .dk-journey-step:nth-child(3) {
    animation-delay: .16s;
}

.dk-transform-journey .reveal.show .dk-journey-step:nth-child(4) {
    animation-delay: .24s;
}

@keyframes dkJourneyStep {
    from {
        opacity: 0;
        transform: translateY(14px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@media(max-width:980px) {

    .dk-transform-head,
    .dk-transform-grid {
        grid-template-columns: 1fr;
    }

    .dk-transform-head {
        gap: 18px;
        margin-bottom: 30px;
    }

    .dk-compare-shell {
        min-height: 500px;
    }
}

@media(max-width:560px) {
    .dk-transform-journey {
        padding: 78px 0 !important;
    }

    .dk-transform-head h2 {
        font-size: 44px;
    }

    .dk-transform-head p {
        font-size: 15px;
    }

    .dk-compare-shell {
        min-height: 430px;
        border-radius: 28px;
    }

    .dk-compare-before:after,
    .dk-compare-after:after {
        width: 250px;
        height: 340px;
    }

    .dk-journey-card {
        padding: 24px;
        border-radius: 28px;
    }

    .dk-journey-mini {
        grid-template-columns: 1fr;
    }
}

@media(prefers-reduced-motion:reduce) {
    .dk-transform-journey .reveal.show .dk-journey-step {
        animation: none !important;
    }
}




.dk-feedback-stack {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.dk-feedback-toast {
    display: grid !important;
    left: 24px !important;
    bottom: 24px !important;
    width: min(330px, calc(100vw - 48px)) !important;
    z-index: 92 !important;
}

.dk-feedback-widget {
    display: none !important;
}

@media(max-width:720px) {
    .dk-feedback-toast {
        left: 14px !important;
        bottom: 14px !important;
        width: min(300px, calc(100vw - 28px)) !important;
    }
}


/* V57: Premium multi-case Transformation Journey gallery */
.dk-case-gallery {
    padding: 96px 0 104px !important;
}

.dk-case-head {
    align-items: center !important;
    margin-bottom: 34px !important;
}

.dk-case-head h2 {
    max-width: 760px !important;
}

.dk-case-intro {
    display: grid;
    gap: 18px;
    justify-items: start;
}

.dk-case-intro p {
    max-width: 470px !important;
}

.dk-case-counter {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(31, 27, 22, .10);
    background: rgba(255, 253, 248, .58);
    backdrop-filter: blur(18px);
    border-radius: 999px;
    padding: 12px 18px;
    font-weight: 900;
    letter-spacing: .14em;
    color: var(--deep);
}

.dk-case-counter em {
    font-style: normal;
    color: rgba(31, 27, 22, .28)
}

.dk-case-layout {
    display: grid;
    grid-template-columns: minmax(470px, 1.18fr) minmax(320px, .82fr);
    gap: 30px;
    align-items: stretch;
}

.dk-case-visual {
    min-height: 560px !important;
    transition: opacity .38s ease, transform .38s ease, box-shadow .38s ease;
}

.dk-case-visual.is-changing {
    opacity: .34;
    transform: scale(.985);
}

.dk-case-info {
    border-radius: 38px;
    background: rgba(255, 253, 248, .68);
    border: 1px solid rgba(31, 27, 22, .08);
    backdrop-filter: blur(24px) saturate(145%);
    box-shadow: 0 28px 86px rgba(31, 27, 22, .075);
    padding: 34px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    position: relative;
    transition: opacity .38s ease, transform .38s ease;
}

.dk-case-info:before {
    content: "";
    position: absolute;
    right: -18%;
    top: -18%;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(107, 130, 120, .14), transparent 70%);
    filter: blur(8px);
    pointer-events: none;
}

.dk-case-info.is-changing {
    opacity: .35;
    transform: translateY(10px);
}

.dk-case-pill {
    position: relative;
    width: max-content;
    max-width: 100%;
    border-radius: 999px;
    background: rgba(107, 130, 120, .12);
    color: var(--deep);
    padding: 9px 14px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.dk-case-info h3 {
    position: relative;
    font-size: clamp(38px, 4.4vw, 64px);
    line-height: .92;
    font-weight: 500;
    letter-spacing: -.05em;
    margin: 0 0 18px;
}

.dk-case-info p {
    position: relative;
    color: rgba(31, 27, 22, .62);
    font-size: 16px;
    line-height: 1.75;
    margin: 0 0 28px;
}

.dk-case-data {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    margin: 0 0 26px;
    border-top: 1px solid rgba(31, 27, 22, .09);
}

.dk-case-data div {
    padding: 17px 0;
    border-bottom: 1px solid rgba(31, 27, 22, .09);
}

.dk-case-data small {
    display: block;
    color: rgba(31, 27, 22, .44);
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 900;
    margin-bottom: 6px;
}

.dk-case-data strong {
    display: block;
    font-size: 18px;
    color: var(--ink);
}

.dk-case-cta {
    position: relative;
    width: 100%;
    justify-content: center;
}

.dk-case-tabs {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 18px 2px 4px;
    margin-top: 26px;
    scrollbar-width: none;
}

.dk-case-tabs::-webkit-scrollbar {
    display: none;
}

.dk-case-tabs button {
    border: 1px solid rgba(31, 27, 22, .10);
    background: rgba(255, 253, 248, .58);
    backdrop-filter: blur(18px);
    color: rgba(31, 27, 22, .62);
    border-radius: 999px;
    padding: 13px 18px;
    font-weight: 900;
    letter-spacing: .10em;
    text-transform: uppercase;
    font-size: 12px;
    cursor: pointer;
    transition: .32s ease;
    white-space: nowrap;
}

.dk-case-tabs button:hover {
    transform: translateY(-2px);
    border-color: rgba(107, 130, 120, .26);
    color: var(--ink);
}

.dk-case-tabs button.active {
    background: var(--deep);
    border-color: var(--deep);
    color: #fff;
    box-shadow: 0 18px 40px rgba(82, 104, 95, .22);
}

.dk-case-floating-meta {
    position: absolute;
    left: 24px;
    bottom: 24px;
    z-index: 8;
    border: 1px solid rgba(255, 255, 255, .52);
    background: rgba(255, 253, 248, .70);
    backdrop-filter: blur(20px);
    border-radius: 24px;
    padding: 16px 18px;
    box-shadow: 0 18px 42px rgba(31, 27, 22, .12);
}

.dk-case-floating-meta span {
    display: block;
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--deep);
    font-weight: 900;
    margin-bottom: 5px;
}

.dk-case-floating-meta strong {
    display: block;
    font-size: 22px;
    color: var(--ink);
}

.dk-case-disclaimer {
    max-width: 720px;
    margin: 18px auto 0 !important;
    text-align: center;
}

.dk-case-visual.case-1 .dk-compare-panel:before {
    background: radial-gradient(circle at 50% 28%, rgba(255, 255, 255, .44), transparent 18%), radial-gradient(circle at 44% 54%, rgba(235, 192, 165, .42), transparent 23%), linear-gradient(135deg, #e9d1bd 0%, #caa58b 50%, #b58970 100%) !important;
}

.dk-case-visual.case-1 .dk-compare-after:before {
    background: radial-gradient(circle at 50% 28%, rgba(255, 255, 255, .58), transparent 18%), radial-gradient(circle at 44% 54%, rgba(250, 220, 198, .44), transparent 23%), linear-gradient(135deg, #f2d9c7 0%, #dbb194 50%, #c5967a 100%) !important;
}

.dk-case-visual.case-2 .dk-compare-panel:before {
    background: radial-gradient(circle at 52% 30%, rgba(255, 255, 255, .38), transparent 18%), radial-gradient(circle at 48% 55%, rgba(218, 184, 161, .42), transparent 23%), linear-gradient(135deg, #d9c0aa 0%, #b99682 52%, #9d7868 100%) !important;
}

.dk-case-visual.case-2 .dk-compare-after:before {
    background: radial-gradient(circle at 52% 30%, rgba(255, 255, 255, .60), transparent 18%), radial-gradient(circle at 48% 55%, rgba(245, 214, 193, .48), transparent 23%), linear-gradient(135deg, #efd7c4 0%, #d8ae94 52%, #bd9077 100%) !important;
}

.dk-case-visual.case-3 .dk-compare-panel:before {
    background: radial-gradient(circle at 47% 28%, rgba(255, 255, 255, .34), transparent 18%), radial-gradient(circle at 50% 54%, rgba(198, 168, 154, .42), transparent 25%), linear-gradient(135deg, #c9b5a4 0%, #a98976 52%, #876958 100%) !important;
}

.dk-case-visual.case-3 .dk-compare-after:before {
    background: radial-gradient(circle at 47% 28%, rgba(255, 255, 255, .58), transparent 18%), radial-gradient(circle at 50% 54%, rgba(238, 207, 190, .46), transparent 25%), linear-gradient(135deg, #ecd4c1 0%, #d1a98f 52%, #b1846d 100%) !important;
}

.dk-case-visual.case-4 .dk-compare-panel:before {
    background: radial-gradient(circle at 52% 28%, rgba(255, 255, 255, .40), transparent 18%), radial-gradient(circle at 52% 55%, rgba(225, 186, 160, .40), transparent 23%), linear-gradient(135deg, #dfc2aa 0%, #bf957c 52%, #956d5d 100%) !important;
}

.dk-case-visual.case-4 .dk-compare-after:before {
    background: radial-gradient(circle at 52% 28%, rgba(255, 255, 255, .62), transparent 18%), radial-gradient(circle at 52% 55%, rgba(250, 219, 195, .48), transparent 23%), linear-gradient(135deg, #f3d9c4 0%, #d9ad91 52%, #bc8e74 100%) !important;
}

.dk-case-visual.case-2 .dk-compare-before:after,
.dk-case-visual.case-2 .dk-compare-after:after {
    border-radius: 50% 50% 44% 56%/44% 44% 58% 56%;
}

.dk-case-visual.case-3 .dk-compare-before:after,
.dk-case-visual.case-3 .dk-compare-after:after {
    width: 350px;
    height: 420px;
    border-radius: 46% 54% 48% 52%/40% 43% 57% 60%;
}

.dk-case-visual.case-4 .dk-compare-before:after,
.dk-case-visual.case-4 .dk-compare-after:after {
    width: 320px;
    height: 440px;
    border-radius: 52% 48% 45% 55%/43% 43% 57% 57%;
}

@media(max-width:980px) {
    .dk-case-layout {
        grid-template-columns: 1fr
    }

    .dk-case-intro {
        justify-items: start
    }

    .dk-case-info {
        padding: 28px
    }

    .dk-case-visual {
        min-height: 500px !important
    }
}

@media(max-width:620px) {
    .dk-case-head {
        gap: 18px !important
    }

    .dk-case-intro {
        justify-items: start
    }

    .dk-case-visual {
        min-height: 420px !important;
        border-radius: 28px !important
    }

    .dk-case-floating-meta {
        left: 16px;
        bottom: 16px;
        border-radius: 20px;
        padding: 13px 15px
    }

    .dk-case-floating-meta strong {
        font-size: 18px
    }

    .dk-case-info {
        border-radius: 28px;
        padding: 24px
    }

    .dk-case-info h3 {
        font-size: 40px
    }

    .dk-case-tabs button {
        padding: 11px 14px;
        font-size: 11px
    }
}



.dk-case-visual .dk-compare-panel:before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    filter: none !important;
    opacity: 1 !important;
}

.dk-case-visual .dk-compare-panel:after {
    display: none !important;
}

.dk-case-visual.case-1 .dk-compare-before:before {
    background: url('assets/css_097_f2be34a6a684.jpg') center/cover no-repeat !important;
}

.dk-case-visual.case-1 .dk-compare-after:before {
    background: url('assets/css_098_bb8f41ad1a0e.jpg') center/cover no-repeat !important;
}

.dk-case-visual.case-2 .dk-compare-before:before {
    background: url('assets/css_099_363d35924d14.jpg') center/cover no-repeat !important;
}

.dk-case-visual.case-2 .dk-compare-after:before {
    background: url('assets/css_100_2263ace3f6f8.jpg') center/cover no-repeat !important;
}

.dk-case-visual.case-3 .dk-compare-before:before {
    background: url('assets/css_097_f2be34a6a684.jpg') center/cover no-repeat !important;
}

.dk-case-visual.case-3 .dk-compare-after:before {
    background: url('assets/css_098_bb8f41ad1a0e.jpg') center/cover no-repeat !important;
}

.dk-case-visual.case-4 .dk-compare-before:before {
    background: url('assets/css_099_363d35924d14.jpg') center/cover no-repeat !important;
}

.dk-case-visual.case-4 .dk-compare-after:before {
    background: url('assets/css_100_2263ace3f6f8.jpg') center/cover no-repeat !important;
}



/* Final update: place Normal Service prices at the bottom-right corner of each service card */
.normal-service-row {
    position: relative !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: start !important;
    min-height: 126px !important;
    padding-right: 150px !important;
    padding-bottom: 28px !important;
}

.normal-service-row .normal-price {
    position: absolute !important;
    right: 22px !important;
    bottom: 20px !important;
    min-width: 112px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    gap: 2px !important;
    margin: 0 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

.normal-service-row .normal-price del {
    font-size: 13px !important;
    line-height: 1.1 !important;
    color: rgba(33, 31, 27, .34) !important;
    text-decoration-thickness: 1px !important;
}

.normal-service-row .normal-price b {
    display: block !important;
    font-size: 25px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: -.035em !important;
    color: #52685f !important;
}

.normal-service-row:hover .normal-price b,
.normal-service-row.is-selected .normal-price b {
    color: #1f1b16 !important;
}

@media(max-width:640px) {
    .normal-service-row {
        grid-template-columns: 42px minmax(0, 1fr) !important;
        padding-right: 18px !important;
        padding-bottom: 76px !important;
        min-height: 152px !important;
    }

    .normal-service-row .normal-price {
        right: 18px !important;
        bottom: 18px !important;
    }
}



/* Final popup update: countdown replaces the grand opening headline. */
.promo.promo-unified.promo-clean-v2 {
    left: 50% !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) scale(.96) !important;
}

.promo.promo-unified.promo-clean-v2.active:not(.corner) {
    transform: translate(-50%, -50%) scale(1) !important;
}

.promo-v2-countdown {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    margin: 2px 48px 18px !important;
    text-align: center !important;
    color: #52685f !important;
    text-transform: uppercase !important;
    letter-spacing: .18em !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

.promo-v2-countdown:before {
    content: "\2713";
    display: inline-grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: rgba(82, 104, 95, .10);
    border: 1px solid rgba(82, 104, 95, .18);
    color: #52685f;
    font-size: 16px;
    letter-spacing: 0;
}

.promo-v2-countdown strong {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 86px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    background: rgba(214, 184, 122, .18) !important;
    border: 1px solid rgba(185, 150, 89, .26) !important;
    color: #1f1b16 !important;
    font-size: 22px !important;
    line-height: 1 !important;
    letter-spacing: .03em !important;
    font-weight: 950 !important;
    font-variant-numeric: tabular-nums !important;
    box-shadow: inset 0 1px rgba(255, 255, 255, .72), 0 8px 22px rgba(31, 27, 22, .055) !important;
}

.promo-v2-countdown .promo-countdown-label {
    color: #52685f !important;
    white-space: nowrap !important;
}

.promo.promo-unified.promo-clean-v2 .promo-v2-bottom {
    justify-content: center !important;
    padding-top: 4px !important;
}

.promo.promo-unified.promo-clean-v2 .promo-v2-bottom .promo-limit {
    display: none !important;
}

.promo.promo-unified.promo-clean-v2 .promo-v2-bottom .btn {
    margin-inline: auto !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-countdown {
    margin: 0 44px 12px 0 !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    font-size: 9px !important;
    letter-spacing: .11em !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-countdown:before {
    width: 22px !important;
    height: 22px !important;
    font-size: 13px !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-v2-countdown strong {
    min-width: 62px !important;
    padding: 6px 9px !important;
    font-size: 15px !important;
}

@media(max-width:620px) {
    .promo-v2-countdown {
        flex-wrap: wrap !important;
        margin: 0 42px 14px 0 !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        letter-spacing: .12em !important;
    }

    .promo-v2-countdown strong {
        font-size: 18px !important;
        min-width: 74px !important;
    }
}

@media(max-width:430px) {
    .promo-v2-countdown .promo-countdown-label {
        width: 100% !important;
    }
}



/* Popup readability + close animation back to right corner */
.promo.promo-unified.promo-clean-v2 {
    transition:
        top .72s cubic-bezier(.22, 1, .36, 1),
        left .72s cubic-bezier(.22, 1, .36, 1),
        right .72s cubic-bezier(.22, 1, .36, 1),
        bottom .72s cubic-bezier(.22, 1, .36, 1),
        width .72s cubic-bezier(.22, 1, .36, 1),
        transform .72s cubic-bezier(.22, 1, .36, 1),
        opacity .32s ease !important;
}

.promo.promo-unified.promo-clean-v2.active:not(.corner) {
    left: 50% !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) scale(1) !important;
}

.promo.promo-unified.promo-clean-v2.corner {
    left: auto !important;
    top: auto !important;
    right: 24px !important;
    bottom: 24px !important;
    width: min(380px, calc(100% - 48px)) !important;
    transform: translate(0, 0) scale(1) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    animation: cornerPulse 3.2s ease-in-out infinite !important;
    box-shadow: 0 24px 70px rgba(31, 27, 22, .22) !important;
}

.promo.promo-unified.promo-clean-v2.corner .promo-inner {
    padding: 22px !important;
}

.promo.promo-unified.promo-clean-v2 .promo-exclusion-note,
.promo.promo-unified.promo-clean-v2 .promo-note,
.promo.promo-unified.promo-clean-v2 .promo-disclaimer {
    color: #1f1b16 !important;
    opacity: .88 !important;
    text-shadow: none !important;
}

.promo.promo-unified.promo-clean-v2 .promo-exclusion-note {
    font-weight: 800 !important;
    letter-spacing: .01em !important;
}

.promo.promo-unified.promo-clean-v2 .promo-v2-included b,
.promo.promo-unified.promo-clean-v2 .promo-v2-included small,
.promo.promo-unified.promo-clean-v2 .promo-v2-limit span,
.promo.promo-unified.promo-clean-v2 .promo-v2-services span {
    color: #1f1b16 !important;
    text-shadow: none !important;
}

.promo.promo-unified.promo-clean-v2 .promo-v2-included small,
.promo.promo-unified.promo-clean-v2 .promo-v2-limit span {
    opacity: .66 !important;
}

.promo.promo-unified.promo-clean-v2.corner .close {
    top: -18px !important;
    right: -12px !important;
    background: rgba(255, 255, 255, .98) !important;
    color: #1f1b16 !important;
    border: 1px solid rgba(31, 27, 22, .12) !important;
    box-shadow: 0 14px 34px rgba(31, 27, 22, .18), inset 0 1px rgba(255, 255, 255, .85) !important;
}

.promo.promo-unified.promo-clean-v2.promo-dismissed {
    opacity: 0 !important;
    transform: translateY(18px) scale(.96) !important;
    pointer-events: none !important;
}

@media(max-width:620px) {
    .promo.promo-unified.promo-clean-v2.corner {
        right: 14px !important;
        bottom: 14px !important;
        width: calc(100% - 28px) !important;
    }
}



/* Final refinement: keep supporting-card CTA inset from the card edge */
.supporting-marquee {
    padding-bottom: 42px !important;
}

.supporting-slide {
    min-height: 500px !important;
    grid-template-rows: 190px 1fr !important;
    padding: 22px 24px 30px !important;
    border-radius: 30px !important;
    border: 1px solid rgba(31, 27, 22, .08) !important;
    overflow: hidden !important;
}

.supporting-slide-visual {
    min-height: 180px !important;
    border-radius: 24px !important;
    background: rgba(255, 255, 255, .38) !important;
    border: 1px solid rgba(31, 27, 22, .06) !important;
    margin-bottom: 18px !important;
}

.supporting-slide-visual:before {
    width: 150px !important;
    height: 150px !important;
}

.supporting-slide-visual img {
    max-height: 150px !important;
    max-width: 72% !important;
}

.supporting-slide-visual.combo-machines img {
    max-width: 38% !important;
}

.supporting-slide-copy {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    gap: 10px !important;
}

.supporting-slide-copy h4 {
    font-size: 32px !important;
    line-height: .98 !important;
}

.supporting-slide-copy p {
    font-size: 15px !important;
    line-height: 1.45 !important;
    min-height: 44px !important;
}

.supporting-slide-price {
    margin-top: auto !important;
    display: flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 12px !important;
    padding-top: 12px !important;
}

.supporting-slide-price s {
    font-size: 14px !important;
    color: rgba(31, 27, 22, .42) !important;
}

.supporting-slide-price strong {
    font-size: 38px !important;
    font-weight: 600 !important;
}

.supporting-slide-actions {
    width: 100% !important;
    margin: 18px auto 0 !important;
    display: flex !important;
    justify-content: center !important;
}

.supporting-slide-cta {
    width: 86% !important;
    min-height: 54px !important;
    border-radius: 22px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    font-size: 15px !important;
}

@media(max-width:560px) {
    .supporting-slide {
        min-height: 480px !important;
        padding: 20px 18px 28px !important;
    }

    .supporting-slide-cta {
        width: 88% !important;
    }
}



/* Fix: keep service slider CTA fully inside card with clear bottom spacing */
.supporting-marquee {
    padding: 18px 0 78px !important;
    overflow: hidden !important;
}

.supporting-track {
    align-items: stretch !important;
    gap: 22px !important;
}

.supporting-slide {
    width: min(326px, 78vw) !important;
    min-width: min(326px, 78vw) !important;
    max-width: min(326px, 78vw) !important;
    height: 456px !important;
    min-height: 456px !important;
    padding: 18px 18px 26px !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    border-radius: 30px !important;
    background: rgba(255, 253, 248, .96) !important;
    border: 1px solid rgba(31, 27, 22, .09) !important;
    box-shadow: 0 22px 58px rgba(31, 27, 22, .075) !important;
    overflow: hidden !important;
}

.supporting-slide-visual {
    flex: 0 0 136px !important;
    height: 136px !important;
    min-height: 136px !important;
    max-height: 136px !important;
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 16px !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(244, 238, 229, .62)) !important;
    border: 1px solid rgba(31, 27, 22, .065) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

.supporting-slide-visual:before {
    width: 138px !important;
    height: 138px !important;
    opacity: .72 !important;
}

.supporting-slide-visual img {
    max-height: 106px !important;
    max-width: 74% !important;
    object-fit: contain !important;
    margin: 0 !important;
}

.supporting-slide-visual.combo-machines img {
    max-width: 38% !important;
    max-height: 106px !important;
    margin: 0 -8px !important;
}

.supporting-slide-copy {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 0 2px !important;
}

.supporting-slide-copy .service-category {
    margin: 0 0 4px !important;
    font-size: 10px !important;
    line-height: 1.18 !important;
    letter-spacing: .18em !important;
}

.supporting-slide-copy h4 {
    min-height: 58px !important;
    margin: 0 !important;
    font-size: 29px !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    display: block !important;
}

.supporting-slide-copy p {
    min-height: 48px !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
    color: rgba(31, 27, 22, .62) !important;
}

.supporting-slide-footer {
    margin-top: auto !important;
    padding-top: 8px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 14px !important;
}

.supporting-slide-price {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 34px !important;
    display: flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 11px !important;
    white-space: nowrap !important;
}

.supporting-slide-price s {
    font-size: 14px !important;
    color: rgba(31, 27, 22, .42) !important;
}

.supporting-slide-price strong {
    font-family: Manrope, Inter, Arial, sans-serif !important;
    font-size: 35px !important;
    font-weight: 900 !important;
    letter-spacing: -.055em !important;
    line-height: 1 !important;
}

.supporting-slide-actions {
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.supporting-slide-cta {
    width: 86% !important;
    min-width: 0 !important;
    min-height: 54px !important;
    height: 54px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    border-radius: 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    font-size: 15px !important;
    line-height: 1 !important;
}

@media(max-width:560px) {
    .supporting-marquee {
        padding-bottom: 68px !important;
    }

    .supporting-slide {
        width: 80vw !important;
        min-width: 80vw !important;
        max-width: 80vw !important;
        height: 438px !important;
        min-height: 438px !important;
        padding: 16px 16px 24px !important;
    }

    .supporting-slide-copy h4 {
        font-size: 27px !important;
        min-height: 52px !important;
    }

    .supporting-slide-price strong {
        font-size: 32px !important;
    }

    .supporting-slide-cta {
        width: 88% !important;
        height: 52px !important;
        min-height: 52px !important;
    }
}



/* Hide the heavy price strip in the offer/footer area for a cleaner flow */
.offer-highlight-grid.offer-treatment-grid {
    display: none !important;
}

.offer-focus-copy {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 18px !important;
}

.offer-main-cta {
    margin-top: 8px !important;
}

.offer-note {
    max-width: 680px !important;
}

/* Footer form: replace single dropdown with multi service selection */
.treatment-choice-field {
    margin-top: 2px !important;
}

.footer-treatment-options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 8px;
}

.footer-treatment-options label {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 10px 12px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .07);
    color: rgba(255, 255, 255, .76);
    cursor: pointer;
    transition: background .22s ease, border-color .22s ease, transform .22s ease, color .22s ease;
}

.footer-treatment-options label:hover {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, .12);
    border-color: rgba(255, 255, 255, .28);
    color: #fff;
}

.footer-treatment-options input {
    appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 6px;
    border: 1.5px solid rgba(255, 255, 255, .38);
    background: rgba(255, 255, 255, .05);
    display: grid;
    place-items: center;
    flex: 0 0 auto;
}

.footer-treatment-options input:checked {
    background: #6f8578;
    border-color: #6f8578;
}

.footer-treatment-options input:checked:after {
    content: "\2713";
    font-size: 12px;
    line-height: 1;
    color: #fff;
    font-weight: 900;
}

.footer-treatment-options label:has(input:checked) {
    background: rgba(111, 133, 120, .22);
    border-color: rgba(132, 160, 145, .54);
    color: #fff;
}

.footer-treatment-options span {
    font-size: 13px;
    font-weight: 800;
    letter-spacing: -.01em;
}

@media(max-width:520px) {
    .footer-treatment-options {
        grid-template-columns: 1fr
    }

    .footer-treatment-options label {
        min-height: 42px
    }
}

/* Popup: keep old 30% design, but scale it down for laptop screens and keep corner minimize behavior */
.promo.promo-unified.promo-clean-v2:not(.corner) {
    width: min(600px, calc(100vw - 42px)) !important;
    max-height: calc(100vh - 36px) !important;
    left: 50% !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 34px !important;
    overflow: auto !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-inner {
    padding: 26px 28px 30px !important;
    gap: 14px !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .close {
    width: 50px !important;
    height: 50px !important;
    right: 18px !important;
    top: 18px !important;
    font-size: 34px !important;
    color: #211f1b !important;
    background: rgba(255, 255, 255, .82) !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-countdown {
    margin: 0 56px 14px !important;
    gap: 8px !important;
    color: #211f1b !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-countdown-label {
    font-size: 10px !important;
    letter-spacing: .16em !important;
    color: #536c61 !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) #promoCountdown {
    font-size: 22px !important;
    color: #211f1b !important;
    padding: 6px 14px !important;
    border-radius: 999px !important;
    background: rgba(111, 133, 120, .11) !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-hero {
    min-height: 230px !important;
    border-radius: 30px !important;
    margin-bottom: 14px !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-percent {
    font-size: clamp(112px, 15vw, 168px) !important;
    line-height: .9 !important;
    color: #fff !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-save {
    top: 24px !important;
    left: 28px !important;
    color: #fff !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-off {
    right: 28px !important;
    bottom: 24px !important;
    color: #fff !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-limit {
    margin: 10px 0 14px !important;
    padding: 14px 18px !important;
    border-radius: 24px !important;
    color: #211f1b !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-limit strong {
    font-size: 44px !important;
    color: #c49c4d !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-included {
    gap: 12px !important;
    margin-bottom: 12px !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-included>div {
    min-height: 84px !important;
    border-radius: 22px !important;
    padding: 16px 18px !important;
    color: #211f1b !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-included small {
    color: #536c61 !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-included b {
    font-size: 19px !important;
    color: #211f1b !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-services {
    gap: 10px !important;
    margin: 10px 0 12px !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-services span {
    height: 40px !important;
    padding: 0 18px !important;
    color: #536c61 !important;
    background: rgba(255, 255, 255, .82) !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-exclusion-note {
    font-size: 14px !important;
    color: #211f1b !important;
    margin: 8px 0 14px !important;
    text-align: center !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-bottom {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

.promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-bottom .btn {
    height: 58px !important;
    min-width: 300px !important;
    border-radius: 999px !important;
}

.promo.promo-unified.promo-clean-v2.corner {
    width: min(340px, calc(100vw - 32px)) !important;
}

@media(max-height:760px) {
    .promo.promo-unified.promo-clean-v2:not(.corner) {
        width: min(540px, calc(100vw - 36px)) !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-inner {
        padding: 20px 24px 24px !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-hero {
        min-height: 190px !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-percent {
        font-size: clamp(96px, 13vw, 140px) !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-included>div {
        min-height: 74px !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-bottom .btn {
        height: 54px !important;
    }
}



/* Footer service select: keep text-box dropdown, replace content via JS, improve readability */
.treatment-choice-field .footer-service-select-trigger {
    min-height: 56px !important;
    border-radius: 18px !important;
}

.treatment-choice-field .footer-treatment-options {
    max-height: 340px !important;
    overflow: auto !important;
}

.treatment-choice-field .footer-treatment-options label {
    align-items: flex-start !important;
    min-height: 58px !important;
    padding: 12px 14px !important;
}

.footer-normal-option-copy {
    display: grid !important;
    gap: 3px !important;
    line-height: 1.25 !important;
}

.footer-normal-option-copy b {
    font-size: 14px !important;
    font-weight: 850 !important;
    color: inherit !important;
}

.footer-normal-option-copy small {
    font-size: 12px !important;
    font-style: italic !important;
    color: rgba(255, 255, 255, .56) !important;
}

.footer-treatment-options label:has(input:checked) .footer-normal-option-copy small {
    color: rgba(255, 255, 255, .76) !important;
}

/* Better responsive rules for laptop and smaller screens */
@media (max-width: 1440px) {
    .container {
        width: min(1180px, 92vw) !important;
    }

    section {
        padding-top: 80px !important;
        padding-bottom: 80px !important;
    }

    .hero {
        min-height: auto !important;
        padding-top: 110px !important;
        padding-bottom: 70px !important;
    }

    .hero-grid {
        gap: 42px !important;
    }

    h1,
    .hero h1 {
        font-size: clamp(64px, 7.2vw, 110px) !important;
        line-height: .92 !important;
    }

    .hero-copy h2,
    .section-title,
    .treatments h2,
    .normal-service-section h2 {
        font-size: clamp(48px, 5.4vw, 86px) !important;
        line-height: .96 !important;
    }

    .about-video,
    .hero-video,
    .drkwon-video,
    .meet-video,
    video {
        max-height: 620px;
    }

    .cert-card,
    .certificate-card {
        transform: scale(.94);
    }

    .supporting-slide {
        height: auto !important;
        min-height: 520px !important;
    }

    .supporting-slide-copy h4 {
        font-size: clamp(30px, 3vw, 44px) !important;
    }

    .supporting-slide-price strong {
        font-size: clamp(30px, 3vw, 42px) !important;
    }

    .normal-service-section {
        padding-top: 78px !important;
        padding-bottom: 86px !important;
    }

    .normal-service-layout,
    .normal-refined-grid {
        gap: 22px !important;
    }

    .normal-card,
    .normal-service-row {
        min-height: 86px !important;
    }

    .normal-service-summary {
        padding: 24px !important;
    }
}

@media (max-width: 1200px) {
    .container {
        width: min(1040px, 92vw) !important;
    }

    .nav a {
        font-size: 12px !important;
    }

    .hero-grid,
    .about-grid,
    .contact-grid,
    .normal-refined-grid,
    .normal-service-layout {
        grid-template-columns: 1fr !important;
    }

    .hero-copy,
    .hero-media,
    .about-copy,
    .about-media {
        max-width: none !important;
    }

    .hero .video-wrap,
    .about-video-wrap,
    .meet-video-wrap {
        max-width: 560px !important;
        margin-inline: auto !important;
    }

    .normal-service-summary {
        position: relative !important;
        top: auto !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) {
        width: min(520px, calc(100vw - 36px)) !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-hero {
        min-height: 180px !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-percent {
        font-size: clamp(86px, 15vw, 130px) !important;
    }
}

@media (max-width: 900px) {
    .container {
        width: min(720px, 92vw) !important;
    }

    section {
        padding-top: 62px !important;
        padding-bottom: 62px !important;
    }

    .hero {
        padding-top: 94px !important;
    }

    h1,
    .hero h1 {
        font-size: clamp(48px, 14vw, 74px) !important;
    }

    .hero-copy h2,
    .section-title,
    .treatments h2,
    .normal-service-section h2 {
        font-size: clamp(40px, 11vw, 58px) !important;
    }

    .footer-treatment-options {
        position: relative !important;
        top: auto !important;
        margin-top: 10px !important;
        max-height: none !important;
    }

    .field input,
    .field select,
    .footer-service-select-trigger {
        min-height: 52px !important;
    }

    .normal-service-row {
        grid-template-columns: auto 1fr !important;
        gap: 12px !important;
        align-items: flex-start !important;
    }

    .normal-price {
        grid-column: 2 !important;
        justify-self: start !important;
        text-align: left !important;
        margin-top: 6px !important;
    }
}

@media (max-width: 560px) {
    body {
        font-size: 15px !important;
    }

    .container {
        width: 92vw !important;
    }

    .normal-service-row {
        padding: 16px !important;
        border-radius: 20px !important;
    }

    .footer-treatment-options label {
        min-height: 54px !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) {
        width: calc(100vw - 24px) !important;
        border-radius: 26px !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-inner {
        padding: 18px !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-included {
        grid-template-columns: 1fr !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) .promo-v2-bottom .btn {
        min-width: 0 !important;
        width: 100% !important;
    }
}


/* Landing page narrow mode + preserve video sharpness */
body.dr-kwon-landing-page {
    font-size: 15px !important;
    zoom: .62;
}

body.dr-kwon-landing-page .container {
    width: min(1210px, calc(100% - 12px)) !important;
}

body.dr-kwon-landing-page section {
    padding-top: 68px !important;
    padding-bottom: 68px !important;
}

body.dr-kwon-landing-page .header {
    width: min(1250px, calc(100% - 10px)) !important;
}

body.dr-kwon-landing-page .hero-clean,
body.dr-kwon-landing-page .meet-hero,
body.dr-kwon-landing-page .dk-about-profile,
body.dr-kwon-landing-page .dk-about-orbit {
    min-height: auto !important;
}

body.dr-kwon-landing-page .hero-clean {
    padding: 92px 0 40px !important;
}

body.dr-kwon-landing-page .meet-hero {
    padding: 82px 0 32px !important;
}

body.dr-kwon-landing-page .hero-clean-inner {
    width: min(100% - 10px, 1230px) !important;
}

body.dr-kwon-landing-page .meet-hero-inner {
    width: min(1230px, calc(100% - 10px)) !important;
    grid-template-columns: minmax(0, .92fr) minmax(250px, 340px) !important;
    gap: 22px !important;
}

body.dr-kwon-landing-page .hero-clean h1 {
    font-size: clamp(40px, 4.2vw, 66px) !important;
}

body.dr-kwon-landing-page .hero-clean p {
    max-width: 480px !important;
    font-size: 14px !important;
}

body.dr-kwon-landing-page .meet-copy h1 {
    font-size: clamp(36px, 4.5vw, 64px) !important;
    margin-bottom: 12px !important;
}

body.dr-kwon-landing-page .meet-copy p {
    font-size: 14px !important;
    line-height: 1.52 !important;
    max-width: 410px !important;
}

body.dr-kwon-landing-page .meet-badges {
    margin-bottom: 18px !important;
}

body.dr-kwon-landing-page .meet-video-wrap {
    width: min(235px, 20vw) !important;
    padding: 5px !important;
    border-radius: 24px !important;
    box-shadow: 0 20px 42px rgba(31, 27, 22, .1) !important;
    transform: none !important;
    animation: none !important;
}

body.dr-kwon-landing-page .meet-video-wrap:hover {
    transform: none !important;
}

body.dr-kwon-landing-page .meet-video-wrap video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 19px !important;
    filter: none !important;
    image-rendering: auto !important;
    transform: none !important;
    backface-visibility: hidden !important;
    -webkit-transform: translateZ(0) !important;
    will-change: auto !important;
}

body.dr-kwon-landing-page .meet-video-caption {
    background: rgba(255, 253, 248, .82) !important;
}

body.dr-kwon-landing-page .hero-clean-visual,
body.dr-kwon-landing-page .clean-hero-img {
    transform: none !important;
}

@media (max-width: 980px) {
    body.dr-kwon-landing-page .container {
        width: min(930px, calc(100% - 10px)) !important;
    }

    body.dr-kwon-landing-page .header {
        width: min(960px, calc(100% - 10px)) !important;
    }

    body.dr-kwon-landing-page .meet-hero {
        padding: 82px 0 34px !important;
    }

    body.dr-kwon-landing-page .meet-hero-inner {
        width: min(100% - 10px, 930px) !important;
        grid-template-columns: 1fr !important;
    }

    body.dr-kwon-landing-page .meet-video-wrap {
        width: min(280px, 64vw) !important;
    }
}

@media (max-width: 560px) {
    body.dr-kwon-landing-page {
        font-size: 14px !important;
        zoom: 1;
    }

    body.dr-kwon-landing-page .container {
        width: calc(100vw - 20px) !important;
    }

    body.dr-kwon-landing-page section {
        padding-top: 56px !important;
        padding-bottom: 56px !important;
    }

    body.dr-kwon-landing-page .meet-copy h1 {
        font-size: 36px !important;
    }

    body.dr-kwon-landing-page .meet-video-wrap {
        width: min(240px, 74vw) !important;
        border-radius: 24px !important;
    }

    body.dr-kwon-landing-page .meet-video-wrap video {
        border-radius: 18px !important;
    }
}



/* Force the footer field to behave like a real dropdown, even if earlier patches set display:grid */
.contact-final-card .treatment-choice-field {
    position: relative !important;
    z-index: 60 !important;
}

.contact-final-card .treatment-choice-field .footer-service-select-trigger {
    width: 100% !important;
    min-height: 56px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(255, 255, 255, .20) !important;
    background: rgba(255, 255, 255, .08) !important;
    color: #fff !important;
    padding: 0 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    cursor: pointer !important;
}

.contact-final-card .treatment-choice-field .footer-service-select-text {
    max-width: calc(100% - 44px) !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    color: rgba(255, 255, 255, .94) !important;
    font-weight: 850 !important;
}

.contact-final-card .treatment-choice-field .footer-service-select-arrow {
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    background: rgba(255, 255, 255, .12) !important;
    transition: transform .25s ease, background .25s ease !important;
}

.contact-final-card .treatment-choice-field.is-open .footer-service-select-arrow {
    transform: rotate(180deg) !important;
    background: rgba(111, 133, 120, .35) !important;
}

.contact-final-card .treatment-choice-field:not(.is-open)>.footer-treatment-options {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(-6px) !important;
}

.contact-final-card .treatment-choice-field.is-open>.footer-treatment-options {
    display: grid !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
}

.contact-final-card .treatment-choice-field>.footer-treatment-options {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 10px) !important;
    z-index: 999 !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 10px !important;
    border-radius: 20px !important;
    background: rgba(28, 26, 23, .97) !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .36) !important;
    backdrop-filter: blur(20px) saturate(150%) !important;
    max-height: 320px !important;
    overflow: auto !important;
    transition: opacity .22s ease, transform .22s ease !important;
}

.contact-final-card .footer-treatment-options label {
    min-height: 58px !important;
    padding: 12px 14px !important;
    border-radius: 16px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
}

.contact-final-card .footer-treatment-options input[type="checkbox"] {
    flex: 0 0 auto !important;
    margin-top: 3px !important;
}

.footer-normal-option-copy {
    display: grid !important;
    gap: 3px !important;
    line-height: 1.25 !important;
}

.footer-normal-option-copy b {
    font-size: 14px !important;
    font-weight: 850 !important;
    color: inherit !important;
}

.footer-normal-option-copy small {
    font-size: 12px !important;
    font-style: italic !important;
    color: rgba(255, 255, 255, .58) !important;
}

.footer-treatment-options label:has(input:checked) .footer-normal-option-copy small {
    color: rgba(255, 255, 255, .78) !important;
}

/* 14-inch laptop comfort: reduce oversized spacing while keeping premium layout */
@media (max-width:1440px),
(max-height:820px) {
    html {
        scroll-padding-top: 78px !important;
    }

    .container {
        width: min(1120px, 92vw) !important;
    }

    section {
        padding-top: 68px !important;
        padding-bottom: 68px !important;
    }

    .hero,
    .meet-drkwon-hero,
    .hero-section {
        padding-top: 96px !important;
        padding-bottom: 58px !important;
        min-height: auto !important;
    }

    h1,
    .hero h1 {
        font-size: clamp(52px, 6.2vw, 92px) !important;
        line-height: .92 !important;
    }

    h2,
    .section-title,
    .normal-service-head h2,
    .offer-title {
        font-size: clamp(42px, 4.8vw, 76px) !important;
        line-height: .96 !important;
    }

    .normal-service-section {
        padding-top: 64px !important;
        padding-bottom: 70px !important;
    }

    .normal-service-head {
        margin-bottom: 26px !important;
        gap: 30px !important;
    }

    .normal-service-row {
        min-height: 78px !important;
        padding: 16px 18px !important;
    }

    .normal-service-title strong {
        font-size: 20px !important;
    }

    .normal-service-title em,
    .normal-service-title span {
        font-size: 13px !important;
    }

    .normal-price b {
        font-size: 26px !important;
    }

    .normal-price del {
        font-size: 14px !important;
    }

    .contact-final-card {
        padding: 26px !important;
    }

    .promo.promo-unified.promo-clean-v2:not(.corner) {
        transform: translate(-50%, -50%) scale(.88) !important;
        transform-origin: center center !important;
        max-height: calc(100vh - 24px) !important;
    }
}

@media (max-width:1100px) {

    .contact-final-grid,
    .normal-booking-layout,
    .normal-booking-layout.refined-list {
        grid-template-columns: 1fr !important;
    }

    .normal-summary-card {
        position: relative !important;
        top: auto !important;
    }
}

@media (max-width:760px) {
    .contact-final-card .treatment-choice-field>.footer-treatment-options {
        position: relative !important;
        top: auto !important;
        margin-top: 10px !important;
        max-height: none !important;
    }

    .contact-final-card .treatment-choice-field:not(.is-open)>.footer-treatment-options {
        display: none !important;
    }

    .contact-final-card .treatment-choice-field.is-open>.footer-treatment-options {
        display: grid !important;
    }
}

@media (max-width:560px) {
    .contact-final-card {
        padding: 22px 18px !important;
        border-radius: 28px !important;
    }

    .contact-final-card .form {
        padding: 0 !important;
    }

    .contact-final-card .field {
        margin-bottom: 12px !important;
    }

    .contact-final-card .field label {
        margin-bottom: 6px !important;
        font-size: 11px !important;
        letter-spacing: .18em !important;
    }

    .contact-final-card .field input,
    .contact-final-card .field select {
        min-height: 54px !important;
        padding: 14px 16px !important;
        border-radius: 18px !important;
        font-size: 15px !important;
    }

    .contact-final-card .treatment-choice-field {
        margin-top: 4px !important;
    }

    .contact-final-card .treatment-choice-field .footer-service-select-trigger {
        min-height: 54px !important;
        padding: 0 16px !important;
        border-radius: 18px !important;
        background: rgba(255, 255, 255, .07) !important;
    }

    .contact-final-card .treatment-choice-field .footer-service-select-text {
        font-size: 15px !important;
        font-weight: 800 !important;
    }

    .contact-final-card .treatment-choice-field .footer-service-select-arrow {
        width: 36px !important;
        height: 36px !important;
        font-size: 15px !important;
    }

    .contact-final-card .treatment-choice-field>.footer-treatment-options {
        gap: 10px !important;
        margin-top: 12px !important;
        padding: 12px !important;
        border-radius: 22px !important;
        background: rgba(24, 22, 19, .92) !important;
        box-shadow: 0 18px 42px rgba(0, 0, 0, .24) !important;
    }

    .contact-final-card .footer-treatment-options label {
        min-height: auto !important;
        padding: 14px 14px 13px !important;
        border-radius: 18px !important;
        display: grid !important;
        grid-template-columns: 22px minmax(0, 1fr) auto !important;
        align-items: start !important;
        column-gap: 12px !important;
        row-gap: 6px !important;
        background: rgba(255, 255, 255, .035) !important;
        border: 1px solid rgba(255, 255, 255, .10) !important;
    }

    .contact-final-card .footer-treatment-options input[type="checkbox"] {
        width: 20px !important;
        height: 20px !important;
        margin: 0 !important;
        align-self: center !important;
        justify-self: center !important;
    }

    .contact-final-card .footer-normal-option-copy {
        min-width: 0 !important;
        gap: 4px !important;
    }

    .contact-final-card .footer-treatment-options label > span:not(.service-sale-badge):not(.footer-normal-option-copy) {
        display: block !important;
        grid-column: 2 !important;
        align-self: center !important;
        min-width: 0 !important;
        font-size: 13px !important;
        line-height: 1.2 !important;
        font-weight: 800 !important;
        letter-spacing: -.01em !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }

    .contact-final-card .footer-normal-option-copy b {
        font-size: 13px !important;
        line-height: 1.1 !important;
        letter-spacing: -.01em !important;
    }

    .contact-final-card .footer-normal-option-copy small {
        font-size: 10px !important;
        line-height: 1.35 !important;
        font-style: normal !important;
        color: rgba(255, 255, 255, .62) !important;
    }

    .contact-final-card .footer-treatment-options .service-sale-badge {
        grid-column: 3 !important;
        align-self: center !important;
        justify-self: end !important;
        min-height: 30px !important;
        padding: 7px 10px !important;
        border-radius: 999px !important;
        font-size: 10px !important;
        letter-spacing: .08em !important;
        white-space: nowrap !important;
    }

    .contact-final-card .footer-treatment-options label:has(.service-sale-badge) .footer-normal-option-copy {
        padding-right: 2px !important;
    }

    .contact-final-card .btn[type="submit"] {
        min-height: 56px !important;
        margin-top: 8px !important;
        border-radius: 999px !important;
        font-size: 16px !important;
        font-weight: 800 !important;
        justify-content: center !important;
    }
}



/* Keep everything else unchanged. Only make the promotion popup and the centered
   main-service focus preview fit smaller laptop screens such as 14 inch displays. */

/* POPUP: keep the same design, but constrain height/width and tighten spacing. */
.promo.promo-unified.promo-clean-v2.active:not(.corner),
.promo.promo-unified.promo-clean-v2:not(.corner) {
    width: min(720px, calc(100vw - 64px)) !important;
    max-height: calc(100vh - 56px) !important;
    overflow: auto !important;
    overscroll-behavior: contain !important;
    scrollbar-width: thin !important;
}

.promo.promo-unified.promo-clean-v2 .promo-inner {
    padding: clamp(22px, 2.2vw, 34px) !important;
}

.promo.promo-unified.promo-clean-v2 .promo-v2-card,
.promo.promo-unified.promo-clean-v2 .promo-v2-discount,
.promo.promo-unified.promo-clean-v2 .promo-30-panel {
    transform-origin: center top !important;
}

.promo.promo-unified.promo-clean-v2 .promo-v2-countdown {
    margin-bottom: 10px !important;
}

.promo.promo-unified.promo-clean-v2 .promo-v2-limit,
.promo.promo-unified.promo-clean-v2 .promo-v2-patient,
.promo.promo-unified.promo-clean-v2 .promo-v2-included,
.promo.promo-unified.promo-clean-v2 .promo-v2-services,
.promo.promo-unified.promo-clean-v2 .promo-exclusion-note {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

/* MAIN SERVICE CENTER PREVIEW: reduce the enlarged preview so it never crops on 14 inch. */
.main-service-focus-preview {
    padding: clamp(16px, 2.5vw, 30px) !important;
    align-items: center !important;
}

.main-service-focus-preview .service-primary {
    width: min(980px, calc(100vw - 56px)) !important;
    max-height: calc(100vh - 72px) !important;
    grid-template-columns: .9fr 1.1fr !important;
    gap: clamp(22px, 3vw, 38px) !important;
    padding: clamp(22px, 3vw, 34px) !important;
    border-radius: 34px !important;
    overflow: auto !important;
}

.main-service-focus-preview .service-primary-visual {
    min-height: clamp(280px, 46vh, 430px) !important;
}

.main-service-focus-preview .service-primary-visual img {
    max-height: clamp(300px, 55vh, 480px) !important;
    max-width: 92% !important;
}

.main-service-focus-preview .service-primary-copy {
    gap: clamp(10px, 1.4vw, 16px) !important;
}

.main-service-focus-preview .service-primary-copy h3 {
    font-size: clamp(46px, 5.8vw, 82px) !important;
    line-height: .9 !important;
}

.main-service-focus-preview .service-primary-copy p {
    font-size: clamp(15px, 1.5vw, 18px) !important;
    line-height: 1.55 !important;
    max-width: 520px !important;
}

.main-service-focus-preview .service-price-line strong {
    font-size: clamp(34px, 4vw, 52px) !important;
}

/* 14 inch and shorter laptop screens */
@media (max-width:1500px),
(max-height:850px) {

    .promo.promo-unified.promo-clean-v2.active:not(.corner),
    .promo.promo-unified.promo-clean-v2:not(.corner) {
        width: min(620px, calc(100vw - 52px)) !important;
        max-height: calc(100vh - 42px) !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-inner {
        padding: 22px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown {
        margin: 0 42px 8px 0 !important;
        transform: scale(.92) !important;
        transform-origin: left center !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-card,
    .promo.promo-unified.promo-clean-v2 .promo-v2-discount,
    .promo.promo-unified.promo-clean-v2 .promo-30-panel {
        transform: scale(.88) !important;
        transform-origin: center top !important;
        margin-top: -4px !important;
        margin-bottom: -10px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-limit,
    .promo.promo-unified.promo-clean-v2 .promo-v2-patient {
        transform: scale(.92) !important;
        transform-origin: center !important;
        margin-block: 4px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-included {
        gap: 10px !important;
        margin-block: 8px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-included>*,
    .promo.promo-unified.promo-clean-v2 .promo-v2-services span {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-exclusion-note,
    .promo.promo-unified.promo-clean-v2 .promo-note,
    .promo.promo-unified.promo-clean-v2 .promo-disclaimer {
        font-size: 13px !important;
        margin-block: 8px !important;
    }

    .promo.promo-unified.promo-clean-v2 .btn {
        min-height: 48px !important;
        padding: 13px 24px !important;
    }

    .main-service-focus-preview .service-primary {
        width: min(900px, calc(100vw - 48px)) !important;
        max-height: calc(100vh - 54px) !important;
        padding: 24px 28px !important;
        gap: 24px !important;
        border-radius: 30px !important;
    }

    .main-service-focus-preview .service-primary-visual {
        min-height: 330px !important;
    }

    .main-service-focus-preview .service-primary-visual img {
        max-height: 410px !important;
    }

    .main-service-focus-preview .service-primary-copy h3 {
        font-size: clamp(44px, 5.2vw, 72px) !important;
    }

    .main-service-focus-preview .service-primary-copy p {
        font-size: 16px !important;
        line-height: 1.5 !important;
    }
}

/* Tablet/mobile: make the centered main service preview single-column and scrollable. */
@media (max-width:900px) {
    .main-service-focus-preview .service-primary {
        grid-template-columns: 1fr !important;
        width: calc(100vw - 30px) !important;
        max-height: calc(100vh - 34px) !important;
        padding: 20px !important;
        gap: 18px !important;
    }

    .main-service-focus-preview .service-primary-visual {
        min-height: 240px !important;
    }

    .main-service-focus-preview .service-primary-visual img {
        max-height: 300px !important;
    }

    .main-service-focus-preview .service-primary-copy h3 {
        font-size: 42px !important;
    }
}


/* Product supporting cards: concise brochure highlights */
.supporting-slide {
    min-height: 560px !important;
    grid-template-rows: 230px 1fr !important;
}

.supporting-slide-copy {
    gap: 8px !important;
}

.supporting-slide-tagline {
    margin: -2px 0 0 !important;
    color: var(--deep) !important;
    font-size: 12px !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
}

.supporting-slide-details {
    list-style: none;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    display: grid !important;
    gap: 6px !important;
}

.supporting-slide-details li {
    position: relative;
    padding-left: 18px;
    font-size: 13px;
    line-height: 1.38;
    color: rgba(31, 27, 22, .68);
}

.supporting-slide-details li:before {
    content: "\2713";
    position: absolute;
    left: 0;
    top: 0;
    color: var(--deep);
    font-weight: 900;
}

@media(max-width:560px) {
    .supporting-slide {
        min-height: 530px !important;
        grid-template-rows: 190px 1fr !important
    }

    .supporting-slide-details li {
        font-size: 12.5px;
        line-height: 1.34
    }

    .supporting-slide-tagline {
        font-size: 11px !important
    }
}


/* FINAL V2: taller supporting product cards so price + Book button are always visible */
.supporting-marquee {
    padding-top: 22px !important;
    padding-bottom: 110px !important;
    overflow: hidden !important;
}

.supporting-track {
    align-items: stretch !important;
}

.supporting-slide {
    height: 760px !important;
    min-height: 760px !important;
    max-height: none !important;
    width: min(360px, 82vw) !important;
    min-width: min(360px, 82vw) !important;
    max-width: min(360px, 82vw) !important;
    padding: 24px 26px 34px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.supporting-slide-visual {
    flex: 0 0 178px !important;
    height: 178px !important;
    min-height: 178px !important;
    max-height: 178px !important;
    margin: 0 0 12px !important;
}

.supporting-slide-visual img {
    max-height: 140px !important;
    max-width: 78% !important;
    object-fit: contain !important;
}

.supporting-slide-visual.combo-machines img {
    max-height: 136px !important;
    max-width: 40% !important;
}

.supporting-slide-copy {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    gap: 12px !important;
    padding: 0 !important;
}

.supporting-slide-copy .service-category {
    min-height: 16px !important;
    margin: 0 !important;
}

.supporting-slide-copy h4 {
    min-height: auto !important;
    margin: 0 !important;
    line-height: 1.04 !important;
}

.supporting-slide-tagline {
    margin: 4px 0 0 !important;
    min-height: auto !important;
}

.supporting-slide-copy p {
    min-height: auto !important;
    margin: 0 !important;
}

.supporting-slide-details {
    margin: 2px 0 0 !important;
    gap: 8px !important;
}

.supporting-slide-details li {
    font-size: 14px !important;
    line-height: 1.42 !important;
}

.supporting-slide-footer {
    margin-top: auto !important;
    padding-top: 22px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 18px !important;
    flex: 0 0 auto !important;
}

.supporting-slide-price,
.supporting-slide-price.discount-pair {
    position: static !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 12px !important;
    white-space: nowrap !important;
}

.supporting-slide-price s,
.supporting-slide-price.discount-pair s {
    font-size: 17px !important;
}

.supporting-slide-price strong,
.supporting-slide-price.discount-pair strong {
    font-size: 42px !important;
    line-height: 1 !important;
}

.supporting-slide-actions {
    width: 100% !important;
    margin: 0 !important;
    min-height: 60px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
}

.supporting-slide-cta {
    width: 88% !important;
    height: 60px !important;
    min-height: 60px !important;
    margin: 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 24px !important;
    box-sizing: border-box !important;
}

@media(max-width:980px) {
    .supporting-slide {
        height: 720px !important;
        min-height: 720px !important;
        width: 78vw !important;
        min-width: 78vw !important;
        max-width: 78vw !important;
    }
}

@media(max-width:560px) {
    .supporting-marquee {
        padding-bottom: 88px !important;
    }

    .supporting-slide {
        height: 690px !important;
        min-height: 690px !important;
        width: 84vw !important;
        min-width: 84vw !important;
        max-width: 84vw !important;
        padding: 20px 20px 30px !important;
        gap: 14px !important;
    }

    .supporting-slide-visual {
        flex-basis: 154px !important;
        height: 154px !important;
        min-height: 154px !important;
        max-height: 154px !important;
    }

    .supporting-slide-visual img {
        max-height: 120px !important;
    }

    .supporting-slide-copy h4 {
        font-size: 28px !important;
    }

    .supporting-slide-details li {
        font-size: 13px !important;
        line-height: 1.36 !important;
    }

    .supporting-slide-footer {
        padding-top: 16px !important;
        gap: 14px !important;
    }

    .supporting-slide-price strong,
    .supporting-slide-price.discount-pair strong {
        font-size: 34px !important;
    }

    .supporting-slide-cta {
        height: 56px !important;
        min-height: 56px !important;
        width: 90% !important;
    }
}

/* Theme-local layout overrides: edit here for global landing spacing. */
body.dr-kwon-landing-page .container {
    width: min(1140px, calc(100% - 72px)) !important;
}

body.dr-kwon-landing-page .header {
    width: min(1180px, calc(100% - 56px)) !important;
}

body.dr-kwon-landing-page .hero-clean-inner {
    width: min(100% - 72px, 1160px) !important;
}

body.dr-kwon-landing-page .meet-hero-inner {
    width: min(1120px, calc(100% - 88px)) !important;
}

@media (max-width: 980px) {
    body.dr-kwon-landing-page .container {
        width: min(100% - 36px, 920px) !important;
    }

    body.dr-kwon-landing-page .header {
        width: min(100% - 28px, 940px) !important;
    }

    body.dr-kwon-landing-page .hero-clean-inner,
    body.dr-kwon-landing-page .meet-hero-inner {
        width: min(100% - 40px, 900px) !important;
    }
}

@media (max-width: 560px) {

    body.dr-kwon-landing-page .container,
    body.dr-kwon-landing-page .hero-clean-inner,
    body.dr-kwon-landing-page .meet-hero-inner {
        width: min(100% - 24px, 100%) !important;
    }

    body.dr-kwon-landing-page .header {
        width: min(100% - 20px, 100%) !important;
    }
}

/* Desktop enlargement pass: the landing page was globally reduced to 62%. */
@media (min-width: 981px) {
    body.dr-kwon-landing-page {
        font-size: 16px !important;
        zoom: .84 !important;
    }

    body.dr-kwon-landing-page .container {
        width: min(1320px, calc(100% - 72px)) !important;
    }

    body.dr-kwon-landing-page .header {
        width: min(1320px, calc(100% - 72px)) !important;
    }

    body.dr-kwon-landing-page section {
        padding-top: 92px !important;
        padding-bottom: 92px !important;
    }

    body.dr-kwon-landing-page .meet-hero {
        padding: 106px 0 62px !important;
    }

    body.dr-kwon-landing-page .meet-hero-inner {
        width: min(1280px, calc(100% - 96px)) !important;
        grid-template-columns: minmax(0, 1fr) minmax(310px, 390px) !important;
        gap: 64px !important;
        align-items: center !important;
    }

    body.dr-kwon-landing-page .meet-copy h1 {
        font-size: clamp(58px, 5.2vw, 94px) !important;
        line-height: .88 !important;
        margin-bottom: 18px !important;
    }

    body.dr-kwon-landing-page .meet-copy p {
        max-width: 540px !important;
        font-size: 17px !important;
        line-height: 1.62 !important;
    }

    body.dr-kwon-landing-page .meet-quote {
        font-size: 18px !important;
    }

    body.dr-kwon-landing-page .meet-badges span {
        padding: 12px 18px !important;
        font-size: 13px !important;
    }

    body.dr-kwon-landing-page .meet-actions .btn,
    body.dr-kwon-landing-page .header .btn {
        min-height: 54px !important;
        padding: 16px 24px !important;
        font-size: 15px !important;
    }

    body.dr-kwon-landing-page .meet-video-wrap {
        width: min(340px, 24vw) !important;
    }

    body.dr-kwon-landing-page .service-matrix-head {
        grid-template-columns: minmax(420px, .95fr) minmax(420px, .75fr) !important;
        gap: 80px !important;
        align-items: end !important;
    }

    body.dr-kwon-landing-page .service-matrix-head h2 {
        font-size: clamp(68px, 6vw, 108px) !important;
        line-height: .9 !important;
    }

    body.dr-kwon-landing-page .service-matrix-head p {
        max-width: 560px !important;
        font-size: 19px !important;
        line-height: 1.72 !important;
    }

    body.dr-kwon-landing-page .xerf-showcase {
        grid-template-columns: minmax(480px, .95fr) minmax(440px, 1fr) !important;
        gap: 72px !important;
    }

    body.dr-kwon-landing-page .service-primary-copy h3 {
        font-size: clamp(76px, 6.8vw, 124px) !important;
    }

    body.dr-kwon-landing-page .service-primary-copy p {
        font-size: 18px !important;
        line-height: 1.72 !important;
    }
}

/* Consultation form offer heading */
.contact-final-card .consultation-offer-title {
    position: relative !important;
    margin-bottom: 28px !important;
    padding: 0 72px 24px 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .14) !important;
}

.contact-final-card .consultation-offer-title:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 128px;
    height: 1px;
    background: linear-gradient(90deg, #d8b16a, rgba(216, 177, 106, 0));
    box-shadow: 0 0 22px rgba(216, 177, 106, .42);
}

.contact-final-card .consultation-kicker {
    display: inline-flex !important;
    width: max-content;
    margin: 0 0 12px !important;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(216, 177, 106, .32);
    background: rgba(216, 177, 106, .10);
    color: #e8d09a !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.contact-final-card .consultation-offer-title h3 {
    display: grid;
    gap: 4px;
    margin: 0 !important;
    color: #fff !important;
}

.contact-final-card .consultation-offer-title .was-price {
    display: inline-block !important;
    width: max-content;
    max-width: 100%;
    margin: 0 !important;
    color: rgba(255, 255, 255, .62) !important;
    font-size: clamp(21px, 2vw, 30px) !important;
    font-weight: 800;
    letter-spacing: -.03em;
    text-decoration: line-through;
    text-decoration-thickness: 2px;
    text-decoration-color: rgba(216, 177, 106, .82);
}

.contact-final-card .consultation-offer-title strong {
    display: inline-block;
    width: max-content;
    max-width: 100%;
    color: transparent;
    background: linear-gradient(120deg, #fffdf8 0%, #f1d99d 45%, #d8b16a 68%, #fff3c9 100%);
    -webkit-background-clip: text;
    background-clip: text;
    font-size: clamp(40px, 4.4vw, 66px);
    line-height: .88;
    font-weight: 950;
    letter-spacing: -.065em;
    text-shadow: 0 18px 64px rgba(216, 177, 106, .16);
}

.contact-final-card .consultation-offer-title p {
    max-width: 390px;
    margin: 12px 0 0 !important;
    color: rgba(255, 255, 255, .66) !important;
    font-size: 14px !important;
    line-height: 1.56;
}

@media(max-width:560px) {
    .contact-final-card .consultation-offer-title {
        padding-right: 0 !important;
    }

    .contact-final-card .consultation-offer-title strong {
        font-size: 42px;
    }
}

/* Stronger final override: consultation heading should read like the main offer */
body .contact-final-card .form-title.consultation-offer-title {
    position: relative !important;
    margin: 0 0 26px !important;
    padding: 18px 22px 20px !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    border-radius: 26px !important;
    background:
        radial-gradient(circle at 14% 12%, rgba(216, 177, 106, .18), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .03)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 18px 54px rgba(0, 0, 0, .10) !important;
    overflow: hidden !important;
}

body .contact-final-card .form-title.consultation-offer-title:before {
    content: "" !important;
    position: absolute !important;
    inset: auto -10% -46% auto !important;
    width: 180px !important;
    height: 180px !important;
    border-radius: 50% !important;
    background: radial-gradient(circle, rgba(216, 177, 106, .16), transparent 68%) !important;
    pointer-events: none !important;
}

body .contact-final-card .form-title.consultation-offer-title:after {
    content: "" !important;
    position: absolute !important;
    left: 22px !important;
    bottom: 0 !important;
    width: 144px !important;
    height: 2px !important;
    background: linear-gradient(90deg, #f2d28d 0%, rgba(242, 210, 141, 0) 100%) !important;
    box-shadow: 0 0 24px rgba(242, 210, 141, .38) !important;
}

body .contact-final-card .form-title.consultation-offer-title .consultation-kicker {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 14px !important;
    padding: 9px 14px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(216, 177, 106, .34) !important;
    background: rgba(216, 177, 106, .12) !important;
    color: #f0d69a !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
}

body .contact-final-card .form-title.consultation-offer-title h3 {
    display: grid !important;
    gap: 6px !important;
    margin: 0 !important;
    line-height: 1 !important;
}

body .contact-final-card .form-title.consultation-offer-title .was-price {
    display: inline-block !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 !important;
    color: rgba(255, 255, 255, .58) !important;
    font-size: clamp(22px, 2vw, 30px) !important;
    font-weight: 800 !important;
    letter-spacing: -.035em !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 2px !important;
    text-decoration-color: rgba(242, 210, 141, .82) !important;
}

body .contact-final-card .form-title.consultation-offer-title strong {
    display: block !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: clamp(52px, 5.2vw, 78px) !important;
    line-height: .82 !important;
    letter-spacing: -.075em !important;
    font-weight: 1000 !important;
    color: transparent !important;
    background: linear-gradient(120deg, #fffdf8 0%, #fff3cf 24%, #f2d28d 58%, #fff7df 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    text-shadow: 0 20px 72px rgba(216, 177, 106, .18) !important;
}

body .contact-final-card .form-title.consultation-offer-title p {
    max-width: 420px !important;
    margin: 14px 0 0 !important;
    color: rgba(255, 255, 255, .70) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

body .contact-final-card .form-title.consultation-offer-title .consultation-kicker {
    margin: 0 0 12px !important;
}

body .contact-final-card .form-title.consultation-offer-title .consultation-value-label {
    display: block !important;
    margin: 0 0 8px !important;
    color: rgba(255, 255, 255, .54) !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    line-height: 1.2 !important;
}

body .contact-final-card .form-title.consultation-offer-title .consultation-offer-lines {
    display: grid !important;
    gap: 10px !important;
    align-items: start !important;
}

body .contact-final-card .form-title.consultation-offer-title .was-price {
    display: inline-block !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 !important;
    color: rgba(255, 255, 255, .58) !important;
    font-size: clamp(22px, 2vw, 31px) !important;
    font-weight: 800 !important;
    letter-spacing: -.035em !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 2px !important;
    text-decoration-color: rgba(242, 210, 141, .82) !important;
}

body .contact-final-card .form-title.consultation-offer-title .free-price {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 12px 18px 13px !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #fffdf8 0%, #f2d28d 100%) !important;
    color: #1f1b16 !important;
    font-size: clamp(46px, 4.9vw, 68px) !important;
    font-weight: 1000 !important;
    letter-spacing: -.08em !important;
    line-height: .84 !important;
    box-shadow: 0 18px 50px rgba(216, 177, 106, .22) !important;
    text-shadow: none !important;
}

@media(max-width:560px) {
    body .contact-final-card .form-title.consultation-offer-title {
        padding: 16px 16px 18px !important;
        border-radius: 22px !important;
    }

    body .contact-final-card .form-title.consultation-offer-title:after {
        left: 16px !important;
        width: 120px !important;
    }

    body .contact-final-card .form-title.consultation-offer-title strong {
        font-size: 48px !important;
    }

    body .contact-final-card .form-title.consultation-offer-title .consultation-value-label {
        font-size: 10px !important;
    }

    body .contact-final-card .form-title.consultation-offer-title .consultation-offer-lines {
        gap: 8px !important;
    }

    body .contact-final-card .form-title.consultation-offer-title .free-price {
        font-size: 48px !important;
        padding: 11px 16px 12px !important;
    }
}

/* About hero video sound control */
.meet-video-sound-toggle {
    position: absolute;
    right: 18px;
    top: 22px;
    z-index: 4;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    background: rgba(31, 27, 22, .58);
    color: #fff;
    padding: 10px 14px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    cursor: pointer;
    box-shadow: 0 14px 34px rgba(0, 0, 0, .18);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    transition: transform .25s ease, background .25s ease, border-color .25s ease, color .25s ease;
}

.meet-video-sound-toggle:hover {
    transform: translateY(-2px);
    background: rgba(82, 104, 95, .92);
    border-color: rgba(255, 255, 255, .4);
}

.meet-video-sound-toggle.is-on {
    background: rgba(242, 210, 141, .95);
    border-color: rgba(255, 255, 255, .46);
    color: #1f1b16;
}

.meet-video-sound-toggle.is-disabled {
    background: rgba(31, 27, 22, .72);
    border-color: rgba(255, 255, 255, .16);
    color: rgba(255, 255, 255, .88);
    cursor: default;
}

.meet-video-sound-toggle.is-disabled:hover {
    transform: none;
    background: rgba(31, 27, 22, .72);
    border-color: rgba(255, 255, 255, .16);
}

@media(max-width:560px) {
    .meet-video-sound-toggle {
        right: 14px;
        top: 14px;
        padding: 9px 12px;
        font-size: 10px;
    }
}

/* Final mobile rescue: keep promo and bottom nav inside the viewport cleanly */
@media (max-width:680px) {
    body {
        padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)) !important;
    }

    .promo.promo-unified.promo-clean-v2.active:not(.corner),
    .promo.promo-unified.promo-clean-v2:not(.corner) {
        left: 50% !important;
        top: calc(env(safe-area-inset-top, 0px) + 8px) !important;
        right: auto !important;
        bottom: auto !important;
        transform: translateX(-50%) !important;
        width: calc(100vw - 16px) !important;
        max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 92px) !important;
        border-radius: 26px !important;
        overflow: hidden !important;
        animation: none !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-inner {
        max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 92px) !important;
        overflow-y: auto !important;
        overscroll-behavior: contain !important;
        padding: 14px 14px 18px !important;
        scrollbar-width: thin !important;
    }

    .promo.promo-unified.promo-clean-v2 .close {
        top: 10px !important;
        right: 10px !important;
        width: 38px !important;
        height: 38px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown {
        margin: 0 50px 10px 0 !important;
        min-height: 34px !important;
        padding: 8px 12px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown .promo-countdown-label {
        font-size: 9px !important;
        letter-spacing: .12em !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown strong,
    .promo.promo-unified.promo-clean-v2 #promoCountdown {
        font-size: 14px !important;
        line-height: 1 !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-hero {
        min-height: 132px !important;
        border-radius: 22px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-percent {
        font-size: 74px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-save,
    .promo.promo-unified.promo-clean-v2 .promo-v2-off {
        font-size: 8px !important;
        letter-spacing: .16em !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-limit {
        margin: 10px 0 !important;
        padding: 10px 12px !important;
        gap: 8px !important;
        font-size: 9px !important;
        letter-spacing: .1em !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-limit strong {
        font-size: 28px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-included {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        margin: 10px 0 !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-included > div {
        min-height: 68px !important;
        padding: 12px 14px !important;
        border-radius: 16px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-included small {
        margin-bottom: 6px !important;
        font-size: 8px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-included b {
        font-size: 12px !important;
        line-height: 1.25 !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-services {
        gap: 6px !important;
        flex-wrap: wrap !important;
        margin: 10px 0 12px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-services > span {
        min-height: 26px !important;
        height: 26px !important;
        padding: 0 10px !important;
        font-size: 10px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-exclusion-note,
    .promo.promo-unified.promo-clean-v2 .promo-note,
    .promo.promo-unified.promo-clean-v2 .promo-disclaimer {
        margin: 10px 0 0 !important;
        font-size: 11px !important;
        line-height: 1.45 !important;
        text-align: center !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-bottom {
        gap: 10px !important;
        padding-top: 12px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-bottom .btn {
        width: 100% !important;
        min-height: 46px !important;
        justify-content: center !important;
    }

    .promo.promo-unified.promo-clean-v2.corner {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    .promo.promo-unified.promo-clean-v2.corner .promo-inner {
        max-height: none !important;
        overflow: visible !important;
        padding: 12px 12px 10px !important;
        gap: 6px !important;
    }

    .promo.promo-unified.promo-clean-v2.corner .promo-v2-countdown {
        margin: 0 42px 4px 0 !important;
        min-height: auto !important;
        padding: 6px 10px !important;
    }

    .promo.promo-unified.promo-clean-v2.corner .promo-v2-hero {
        min-height: 96px !important;
        border-radius: 16px !important;
    }

    .promo.promo-unified.promo-clean-v2.corner .promo-v2-percent {
        font-size: 58px !important;
    }

    .promo.promo-unified.promo-clean-v2.corner .promo-v2-limit {
        margin: 4px 0 0 !important;
        padding: 8px 10px !important;
    }

    .promo.promo-unified.promo-clean-v2.corner .promo-v2-limit strong {
        font-size: 24px !important;
    }

    .promo.promo-unified.promo-clean-v2.corner .promo-exclusion-note,
    .promo.promo-unified.promo-clean-v2.corner .promo-note,
    .promo.promo-unified.promo-clean-v2.corner .promo-disclaimer {
        margin: 4px 0 0 !important;
        font-size: 10px !important;
        line-height: 1.3 !important;
    }

    .promo.promo-unified.promo-clean-v2.corner .promo-v2-bottom {
        gap: 0 !important;
        padding-top: 4px !important;
        margin-top: 0 !important;
    }

    .promo.promo-unified.promo-clean-v2.corner .promo-v2-bottom .btn {
        min-height: 42px !important;
        height: 42px !important;
    }

    .mobile-bottom-nav {
        left: 50% !important;
        right: auto !important;
        bottom: calc(env(safe-area-inset-bottom, 0px) + 8px) !important;
        transform: translateX(-50%) !important;
        width: calc(100vw - 12px) !important;
        min-height: 62px !important;
        padding: 7px 8px !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 8px !important;
        border-radius: 22px !important;
    }

    .mobile-menu-links {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 2px !important;
        align-items: stretch !important;
        justify-content: stretch !important;
        overflow: visible !important;
        padding: 0 !important;
    }

    .mobile-menu-links a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 0 !important;
        min-height: 40px !important;
        padding: 4px 3px !important;
        font-size: 10px !important;
        line-height: 1.15 !important;
        white-space: normal !important;
        word-break: keep-all !important;
        text-align: center !important;
    }

    .mobile-menu-book {
        min-width: 84px !important;
        height: 42px !important;
        padding: 0 12px !important;
        font-size: 11px !important;
        margin-left: 0 !important;
    }
}

@media (max-width:380px) {
    .mobile-menu-links a {
        font-size: 9px !important;
    }

    .mobile-menu-book {
        min-width: 78px !important;
        font-size: 10px !important;
        padding: 0 10px !important;
    }
}

@media (max-width:680px) {
    .promo.promo-unified.promo-clean-v2.active:not(.corner),
    .promo.promo-unified.promo-clean-v2:not(.corner) {
        width: calc(100vw - 20px) !important;
        border-radius: 30px !important;
        box-shadow: 0 26px 70px rgba(31, 27, 22, .18) !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-inner {
        padding: 16px 16px 18px !important;
    }

    .promo.promo-unified.promo-clean-v2 .close {
        top: 12px !important;
        right: 12px !important;
        width: 44px !important;
        height: 44px !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, .9) !important;
        border: 1px solid rgba(31, 27, 22, .08) !important;
        box-shadow: 0 10px 24px rgba(31, 27, 22, .08) !important;
        font-size: 20px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown {
        margin: 0 58px 12px 0 !important;
        min-height: 42px !important;
        padding: 8px 14px !important;
        border-radius: 999px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
        white-space: nowrap !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown .promo-countdown-label {
        flex: 0 1 auto !important;
        min-width: 0 !important;
        white-space: nowrap !important;
        line-height: 1 !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-countdown strong,
    .promo.promo-unified.promo-clean-v2 #promoCountdown {
        flex: 0 0 auto !important;
        min-width: 72px !important;
        text-align: center !important;
        border-radius: 999px !important;
        white-space: nowrap !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-hero {
        min-height: 148px !important;
        border-radius: 26px !important;
        margin-bottom: 12px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-percent {
        font-size: 88px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-limit {
        min-height: 52px !important;
        margin: 12px 0 !important;
        padding: 10px 14px !important;
        border-radius: 999px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-limit strong {
        font-size: 34px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-included {
        gap: 10px !important;
        margin: 12px 0 !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-included > div {
        min-height: 82px !important;
        border-radius: 20px !important;
        padding: 14px 16px !important;
        box-shadow: 0 10px 28px rgba(31, 27, 22, .05) !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-included b {
        font-size: 14px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-services {
        justify-content: center !important;
        margin: 8px 0 12px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-services > span {
        min-height: 30px !important;
        height: auto !important;
        padding: 6px 10px !important;
        border-radius: 999px !important;
        font-size: 9px !important;
        line-height: 1.2 !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-exclusion-note,
    .promo.promo-unified.promo-clean-v2 .promo-note,
    .promo.promo-unified.promo-clean-v2 .promo-disclaimer {
        margin-top: 6px !important;
        font-size: 11px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-bottom {
        padding-top: 10px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-bottom .btn {
        min-height: 50px !important;
        border-radius: 999px !important;
        font-size: 15px !important;
        font-weight: 800 !important;
    }

    .mobile-bottom-nav {
        width: calc(100vw - 18px) !important;
        min-height: 74px !important;
        padding: 8px !important;
        gap: 10px !important;
        border-radius: 28px !important;
        box-shadow: 0 16px 36px rgba(25, 33, 29, .16) !important;
    }

    .mobile-menu-links {
        gap: 6px !important;
    }

    .mobile-menu-links a {
        min-height: 56px !important;
        padding: 8px 6px !important;
        border-radius: 18px !important;
        background: rgba(255, 255, 255, .36) !important;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .4) !important;
        font-size: 10px !important;
        line-height: 1.18 !important;
        transition: background .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease !important;
    }

    .mobile-menu-links a:hover,
    .mobile-menu-links a:focus-visible,
    .mobile-menu-links a.active {
        border-radius: 18px !important;
        background: rgba(255, 255, 255, .88) !important;
        color: #51685e !important;
        box-shadow: 0 10px 22px rgba(31, 27, 22, .08), inset 0 1px 0 rgba(255, 255, 255, .72) !important;
        transform: translateY(-1px) !important;
    }

    .mobile-menu-links a:hover span,
    .mobile-menu-links a:focus-visible span,
    .mobile-menu-links a.active span {
        color: #51685e !important;
    }

    .mobile-menu-book {
        min-width: 120px !important;
        height: 58px !important;
        padding: 0 18px !important;
        border-radius: 22px !important;
        box-shadow: 0 12px 26px rgba(82, 104, 95, .18) !important;
        font-size: 12px !important;
        font-weight: 850 !important;
    }
}

@media (max-width:420px) {
    .promo.promo-unified.promo-clean-v2 .promo-v2-hero {
        min-height: 136px !important;
    }

    .promo.promo-unified.promo-clean-v2 .promo-v2-percent {
        font-size: 78px !important;
    }

    .mobile-bottom-nav {
        min-height: 70px !important;
        border-radius: 26px !important;
    }

    .mobile-menu-links a {
        min-height: 54px !important;
        border-radius: 16px !important;
        font-size: 9px !important;
    }

    .mobile-menu-book {
        min-width: 112px !important;
        height: 54px !important;
        border-radius: 20px !important;
    }
}

/* Fallback for the old cached contact heading markup still live on production */
body .contact-final-card .form > .form-title:not(.consultation-offer-title) {
    position: relative !important;
    display: grid !important;
    gap: 8px !important;
    margin: 0 0 26px !important;
    padding: 20px 22px 20px !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    border-radius: 26px !important;
    background:
        radial-gradient(circle at 14% 12%, rgba(216, 177, 106, .16), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .03)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 18px 54px rgba(0, 0, 0, .10) !important;
    overflow: hidden !important;
}

body .contact-final-card .form > .form-title:not(.consultation-offer-title)::before {
    content: "Limited launch offer" !important;
    display: inline-flex !important;
    width: max-content !important;
    margin: 0 0 4px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(216, 177, 106, .34) !important;
    background: rgba(216, 177, 106, .12) !important;
    color: #f0d69a !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
}

body .contact-final-card .form > .form-title:not(.consultation-offer-title) > h3:first-of-type {
    position: relative !important;
    display: inline-block !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-top: 18px !important;
    color: rgba(255, 255, 255, .60) !important;
    font-size: clamp(22px, 2vw, 31px) !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: -.035em !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 2px !important;
    text-decoration-color: rgba(242, 210, 141, .82) !important;
}

body .contact-final-card .form > .form-title:not(.consultation-offer-title) > h3:first-of-type::before {
    content: "Free skin assessment" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: rgba(255, 255, 255, .54) !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
}

body .contact-final-card .form > .form-title:not(.consultation-offer-title) > span {
    display: grid !important;
    gap: 10px !important;
    margin: 0 !important;
}

body .contact-final-card .form > .form-title:not(.consultation-offer-title) > span > h3 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 12px 18px 13px !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #fffdf8 0%, #f2d28d 100%) !important;
    color: #1f1b16 !important;
    font-size: clamp(46px, 4.9vw, 68px) !important;
    line-height: .84 !important;
    font-weight: 1000 !important;
    letter-spacing: -.08em !important;
    box-shadow: 0 18px 50px rgba(216, 177, 106, .22) !important;
    text-shadow: none !important;
}

body .contact-final-card .form > .form-title:not(.consultation-offer-title) > span > span {
    display: block !important;
    max-width: 420px !important;
    margin: 0 !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

@media (max-width:560px) {
    body .contact-final-card .form > .form-title:not(.consultation-offer-title) {
        padding: 16px 16px 18px !important;
        border-radius: 22px !important;
    }

    body .contact-final-card .form > .form-title:not(.consultation-offer-title) > h3:first-of-type {
        padding-top: 16px !important;
        font-size: 22px !important;
    }

    body .contact-final-card .form > .form-title:not(.consultation-offer-title) > h3:first-of-type::before {
        font-size: 10px !important;
    }

    body .contact-final-card .form > .form-title:not(.consultation-offer-title) > span {
        gap: 8px !important;
    }

body .contact-final-card .form > .form-title:not(.consultation-offer-title) > span > h3 {
        font-size: 48px !important;
        padding: 11px 16px 12px !important;
    }
}

@media (max-width:400px) {
    body .contact-final-card .form > .form-title:not(.consultation-offer-title) {
        gap: 10px !important;
        padding: 14px 14px 16px !important;
    }

    body .contact-final-card .form > .form-title:not(.consultation-offer-title)::before {
        margin-bottom: 2px !important;
        font-size: 9px !important;
        letter-spacing: .14em !important;
    }

    body .contact-final-card .form > .form-title:not(.consultation-offer-title) > h3:first-of-type {
        display: block !important;
        width: 100% !important;
        padding-top: 14px !important;
        font-size: 18px !important;
        line-height: 1.05 !important;
    }

    body .contact-final-card .form > .form-title:not(.consultation-offer-title) > h3:first-of-type::before {
        font-size: 9px !important;
        letter-spacing: .14em !important;
        line-height: 1.25 !important;
        max-width: 100% !important;
    }

    body .contact-final-card .form > .form-title:not(.consultation-offer-title) > span {
        gap: 10px !important;
        justify-items: stretch !important;
    }

    body .contact-final-card .form > .form-title:not(.consultation-offer-title) > span > h3 {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        max-width: none !important;
        min-height: 68px !important;
        padding: 12px 16px !important;
        font-size: clamp(30px, 9vw, 38px) !important;
        line-height: .88 !important;
        letter-spacing: -.07em !important;
        text-align: center !important;
        white-space: nowrap !important;
        overflow: hidden !important;
    }

    body .contact-final-card .form > .form-title:not(.consultation-offer-title) > span > span {
        max-width: none !important;
        font-size: 12px !important;
        line-height: 1.6 !important;
        color: rgba(255, 255, 255, .76) !important;
    }
}

/* Final mobile spacing pass for the consultation form */
@media (max-width: 560px) {
    body .contact-final-card {
        padding: 26px 18px 24px !important;
        border-radius: 30px !important;
    }

    body .contact-final-card .form {
        display: grid !important;
        gap: 14px !important;
        padding: 0 6px !important;
    }

    body .contact-final-card .consultation-form-message {
        margin: 0 0 4px !important;
        line-height: 1.45 !important;
    }

    body .contact-final-card .form-title.consultation-offer-title,
    body .contact-final-card .form > .form-title:not(.consultation-offer-title) {
        margin: 0 0 10px !important;
    }

    body .contact-final-card .field {
        display: grid !important;
        gap: 9px !important;
        margin: 0 !important;
    }

    body .contact-final-card .field + .field {
        margin-top: 2px !important;
    }

    body .contact-final-card .field label {
        margin: 0 !important;
        padding-left: 4px !important;
        font-size: 11px !important;
        line-height: 1.2 !important;
        letter-spacing: .2em !important;
    }

    body .contact-final-card .field input,
    body .contact-final-card .field select,
    body .contact-final-card .footer-service-select-trigger {
        min-height: 60px !important;
        padding: 0 18px !important;
        border-radius: 20px !important;
        font-size: 16px !important;
        line-height: 1.2 !important;
        width: 100% !important;
    }

    body .contact-final-card .treatment-choice-field {
        margin-top: 2px !important;
        gap: 10px !important;
    }

    body .contact-final-card .treatment-choice-field > label {
        margin-bottom: 0 !important;
    }

    body .contact-final-card .footer-service-select-trigger {
        align-items: center !important;
    }

    body .contact-final-card .footer-service-select-text {
        padding-right: 12px !important;
        line-height: 1.25 !important;
    }

    body .contact-final-card .footer-service-select-arrow {
        width: 38px !important;
        height: 38px !important;
        flex: 0 0 38px !important;
    }

    body .contact-final-card .treatment-choice-field > .footer-treatment-options {
        margin-top: 4px !important;
        margin-left: 2px !important;
        margin-right: 2px !important;
    }

    body .contact-final-card .btn[type="submit"] {
        min-height: 58px !important;
        margin-top: 4px !important;
        width: 100% !important;
    }

    .dk-contact-stack {
        right: 14px !important;
        left: auto !important;
        bottom: 108px !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 8px 10px !important;
        border-radius: 999px !important;
        background: rgba(255, 253, 248, .18) !important;
        backdrop-filter: blur(16px) saturate(135%) !important;
        -webkit-backdrop-filter: blur(16px) saturate(135%) !important;
        box-shadow: 0 16px 34px rgba(31, 27, 22, .12) !important;
    }

    .dk-contact-icon {
        width: 46px !important;
        height: 46px !important;
        flex: 0 0 46px !important;
        box-shadow: 0 10px 24px rgba(31, 27, 22, .10), inset 0 1px 0 rgba(255, 255, 255, .76) !important;
    }

    .dk-contact-icon svg {
        width: 21px !important;
        height: 21px !important;
    }

    .mobile-bottom-nav {
        width: calc(100vw - 20px) !important;
        min-height: 78px !important;
        padding: 10px !important;
        gap: 8px !important;
        border-radius: 32px !important;
    }

    .mobile-menu-links {
        gap: 8px !important;
    }

    .mobile-menu-links a {
        min-height: 58px !important;
        padding: 8px 8px !important;
        border-radius: 22px !important;
    }

    .mobile-menu-links a:hover,
    .mobile-menu-links a:focus-visible,
    .mobile-menu-links a.active {
        border-radius: 22px !important;
    }

    .mobile-menu-book {
        min-width: 126px !important;
        height: 58px !important;
        border-radius: 24px !important;
    }
}

@media (max-width: 420px) {
    .dk-contact-stack {
        right: 10px !important;
        bottom: 104px !important;
        gap: 8px !important;
        padding: 7px 8px !important;
    }

    .dk-contact-icon {
        width: 44px !important;
        height: 44px !important;
        flex-basis: 44px !important;
    }
}
