.elementor-45058 .elementor-element.elementor-element-2234800{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-45058 .elementor-element.elementor-element-13114e2{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}/* Start custom CSS for html, class: .elementor-element-13114e2 *//* =========================================================
   DERMATOLOGY CIRCLE
   ROSACEA / REDNESS
   PREMIUM LANDING V2
========================================================= */


/* =========================================================
   RESET + VARIABLES
========================================================= */

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

.rrx{
    --ivory:#fcfaf8;
    --white:#ffffff;

    --peach:#ffe8d8;
    --peach-soft:#fff4ed;

    --plum:#6b5b75;
    --deep:#6b3f6e;

    --terracotta:#e2a88a;
    --rose:#8b5e66;
    --lilac:#d3c0e3;
    --mist:#dfe1e7;

    --ink:#332d37;
    --body:#554f57;
    --muted:#797279;

    width:100% !important;
    max-width:none !important;

    min-width:0;

    margin:0 !important;

    overflow:hidden;

    font-family:
        Avenir,
        "Avenir Next",
        Arial,
        sans-serif;

    color:var(--body);
}

.rrx-shell{
    width:100%;
    max-width:1540px;

    min-width:0;

    margin:0 auto;
}

.rrx h1,
.rrx h2,
.rrx h3,
.rrx strong{
    font-family:
        Baskerville,
        "Baskerville Old Face",
        Georgia,
        serif;

    font-weight:400;
}

.rrx h1,
.rrx h2,
.rrx h3,
.rrx p,
.rrx figure{
    margin-top:0;
}

.rrx a,
.rrx a:link,
.rrx a:visited,
.rrx a:hover,
.rrx a:active,
.rrx a:focus,
.rrx a:focus-visible{
    text-decoration:none !important;
}

.rrx a:focus-visible,
.rrx summary:focus-visible{
    outline:
        2px solid
        var(--terracotta) !important;

    outline-offset:4px;
}


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

.rrx-eyebrow{
    display:flex;
    align-items:center;

    gap:11px;

    margin-bottom:17px;

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

    font-weight:600;

    letter-spacing:.075em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-eyebrow i{
    width:18px;
    height:18px;

    flex:0 0 18px;

    border:
        1.5px solid
        var(--terracotta);

    border-right-color:transparent;

    border-radius:50%;

    transform:rotate(-27deg);
}

.rrx h2{
    margin-bottom:20px;

    font-size:
        clamp(45px,4.45vw,64px);

    line-height:.97;

    letter-spacing:-.04em;

    color:var(--plum);
}

.rrx h2 em,
.rrx h3 em{
    display:block;

    margin-top:4px;

    font-family:inherit;

    font-style:italic;

    color:var(--deep);
}

.rrx-lead{
    font-size:17.5px;
    line-height:1.6;

    color:var(--ink) !important;
}

.rrx-header{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(360px,.60fr);

    gap:
        clamp(65px,8vw,130px);

    align-items:end;

    margin-bottom:
        clamp(38px,4vw,52px);

    min-width:0;
}

.rrx-header-copy{
    max-width:570px;
}

.rrx-header-copy p{
    margin-bottom:0;

    font-size:15.5px;
    line-height:1.66;
}

.rrx-micro-heading{
    display:block;

    margin-bottom:15px;

    font-size:9px;

    font-weight:600;

    letter-spacing:.075em;
    text-transform:uppercase;

    color:var(--rose);
}


/* =========================================================
   CLINICAL PRINCIPLE
========================================================= */

.rrx-principle{
    margin-top:22px;

    padding:
        15px
        0
        15px
        19px;

    border-left:
        1.5px solid
        var(--terracotta);
}

.rrx-principle > span{
    display:block;

    margin-bottom:4px;

    font-size:8.5px;

    font-weight:600;

    letter-spacing:.07em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-principle strong{
    display:block;

    max-width:560px;

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

    color:var(--plum);
}


/* =========================================================
   SHARED SVG BUTTON ICON
========================================================= */

.rrx-btn-icon,
.rrx-final-arrow{
    width:40px;
    height:40px;

    flex:0 0 40px;

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

    border:
        1px solid
        currentColor;

    border-radius:50%;

    opacity:.85;
}

.rrx-btn-icon svg,
.rrx-final-arrow svg{
    width:17px;
    height:17px;

    color:inherit !important;

    transition:
        transform .25s ease;
}

.rrx-btn-icon svg path,
.rrx-final-arrow svg path{
    stroke:
        currentColor !important;
}


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

.rrx-hero{
    position:relative;
    isolation:isolate;

    padding:
        20px
        clamp(24px,4.8vw,78px)
        clamp(55px,5vw,76px);

    background:
        linear-gradient(
            112deg,
            #fff 0%,
            #fff 49%,
            #fff8f3 76%,
            #f7eef6 100%
        ) !important;
}

.rrx-hero::before{
    content:"";

    position:absolute;

    z-index:-1;

    width:330px;
    height:330px;

    top:-266px;
    right:8%;

    border:
        1px solid
        rgba(226,168,138,.25);

    border-radius:50%;
}


/* BREADCRUMBS */

.rrx-breadcrumbs{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:7px;

    margin-bottom:
        clamp(38px,4vw,55px);

    padding-bottom:11px;

    border-bottom:
        1px solid
        rgba(107,91,117,.09);

    font-size:11.5px;
    line-height:1.4;

    color:var(--muted);
}

.rrx-breadcrumbs a,
.rrx-breadcrumbs a:link,
.rrx-breadcrumbs a:visited{
    color:
        var(--muted) !important;
}

.rrx-breadcrumbs a:hover{
    color:
        var(--deep) !important;
}


/* HERO GRID */

.rrx-hero-grid{
    display:grid;

    grid-template-columns:
        minmax(0,1.10fr)
        minmax(430px,.90fr);

    gap:
        clamp(70px,8vw,135px);

    align-items:center;

    min-width:0;
}

.rrx-hero-copy{
    max-width:820px;
}

.rrx-hero h1{
    max-width:820px;

    margin:
        0
        0
        26px;

    font-size:
        clamp(58px,5.75vw,82px);

    line-height:.92;

    letter-spacing:-.047em;

    color:var(--plum);
}

.rrx-hero h1 em{
    display:block;

    margin-top:8px;

    font-family:inherit;

    font-style:italic;

    color:var(--deep);
}

.rrx-hero-copy > p{
    max-width:700px;
}

.rrx-hero-copy .rrx-lead{
    margin-bottom:13px;
}

.rrx-hero-body{
    margin-bottom:0;

    font-size:15.5px;
    line-height:1.67;
}


/* HERO ACTIONS */

.rrx-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:
        16px
        23px;

    margin-top:28px;
}

.rrx-btn,
.rrx-btn:link,
.rrx-btn:visited{
    display:inline-flex;
    align-items:center;
    justify-content:space-between;

    gap:25px;

    min-height:64px;

    padding:
        11px
        11px
        11px
        20px;

    color:#fff !important;

    background:
        var(--deep) !important;

    border:
        1px solid
        var(--deep) !important;

    box-shadow:
        0 15px 38px
        rgba(71,43,74,.10);

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

.rrx-btn > span:first-child{
    max-width:330px;

    font-size:13px;
    line-height:1.4;

    font-weight:600;

    color:#fff !important;
}

.rrx-btn .rrx-btn-icon{
    color:#fff !important;

    border-color:
        rgba(255,255,255,.25);
}

.rrx-inline-link,
.rrx-inline-link:link,
.rrx-inline-link:visited{
    display:inline-flex;
    align-items:center;

    gap:8px;

    padding:
        8px
        0;

    border-bottom:
        1px solid
        rgba(107,63,110,.23);

    color:
        var(--deep) !important;
}

.rrx-inline-link span{
    font-size:12.5px;

    font-weight:600;

    color:
        var(--deep) !important;
}

.rrx-inline-link svg{
    width:15px;
    height:15px;

    color:
        var(--deep) !important;

    transition:
        transform .25s ease;
}

.rrx-inline-link svg path{
    stroke:
        currentColor !important;
}

.rrx-helper{
    margin:
        11px
        0
        0 !important;

    font-size:11px;

    color:var(--muted) !important;
}


/* HERO IMAGE */

.rrx-hero-media{
    width:100%;
    max-width:570px;

    margin:
        0
        0
        0
        auto;
}

.rrx-hero-image{
    position:relative;

    overflow:hidden;

    border-radius:
        2px
        2px
        76px
        2px;

    background:var(--peach-soft);

    box-shadow:
        0 30px 80px
        rgba(65,45,65,.07);
}

.rrx-hero-image::after{
    content:"";

    position:absolute;

    inset:0;

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

    border-radius:inherit;

    pointer-events:none;
}

.rrx-hero-image img{
    display:block;

    width:100% !important;
    height:auto !important;

    aspect-ratio:3 / 4;

    object-fit:cover !important;
    object-position:center 48% !important;

    transform:none !important;
}

.rrx-hero-media figcaption{
    display:flex;
    align-items:end;
    justify-content:space-between;

    gap:20px;

    padding-top:14px;
}

.rrx-hero-media figcaption span{
    font-size:8.5px;

    font-weight:600;

    letter-spacing:.07em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-hero-media figcaption strong{
    text-align:right;

    font-size:16px;

    color:var(--plum);
}


/* TRUST */

.rrx-hero-trust{
    display:grid;

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

    margin-top:
        clamp(42px,4vw,56px);

    padding:
        18px
        0;

    border-top:
        1px solid
        rgba(107,91,117,.10);

    border-bottom:
        1px solid
        rgba(107,91,117,.10);
}

.rrx-hero-trust > div{
    display:flex;
    align-items:center;

    gap:12px;

    padding:
        0
        31px;

    border-left:
        1px solid
        rgba(107,91,117,.09);
}

.rrx-hero-trust > div:first-child{
    padding-left:0;

    border-left:0;
}

.rrx-hero-trust span{
    font-size:8.5px;

    color:var(--terracotta);
}

.rrx-hero-trust strong{
    font-size:16px;

    color:var(--plum);
}


/* =========================================================
   BLOCK 2 — INTRO
========================================================= */

.rrx-intro{
    padding:
        clamp(68px,5.7vw,92px)
        clamp(24px,4.8vw,78px);

    background:
        var(--white) !important;
}

.rrx-intro-grid{
    display:grid;

    grid-template-columns:
        minmax(330px,.72fr)
        minmax(0,1.28fr);

    gap:
        clamp(75px,8vw,140px);
}

.rrx-intro-content{
    max-width:770px;
}

.rrx-intro-content > p{
    margin-bottom:13px;

    font-size:15.5px;
    line-height:1.67;
}

.rrx-editorial-note{
    margin-top:31px;

    padding:
        28px
        30px
        29px;

    border-left:
        1.5px solid
        var(--terracotta);

    background:
        linear-gradient(
            112deg,
            #fff6f0,
            #fcf8fb
        );
}

.rrx-editorial-note > span{
    display:block;

    margin-bottom:7px;

    font-size:8.5px;

    font-weight:600;

    letter-spacing:.07em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-editorial-note p{
    margin:0;

    font-family:
        Baskerville,
        "Baskerville Old Face",
        Georgia,
        serif;

    font-size:20px;
    line-height:1.46;

    color:var(--plum);
}


/* =========================================================
   BLOCK 3 — DIFFERENTIAL
========================================================= */

.rrx-diff{
    padding:
        clamp(68px,5.7vw,92px)
        clamp(24px,4.8vw,78px);

    background:
        linear-gradient(
            112deg,
            #f3f3f5 0%,
            #faf9fa 42%,
            #fff9f5 100%
        ) !important;
}

.rrx-diff-grid{
    display:grid;

    grid-template-columns:
        minmax(0,1.30fr)
        minmax(320px,.70fr);

    gap:
        clamp(58px,6.5vw,100px);

    align-items:start;
}

.rrx-index{
    border-top:
        1px solid
        rgba(107,91,117,.14);
}

.rrx-index article{
    display:grid;

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

    gap:16px;

    padding:
        17px
        0;

    border-bottom:
        1px solid
        rgba(107,91,117,.105);
}

.rrx-index-number{
    width:38px;
    height:38px;

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

    border:
        1px solid
        rgba(226,168,138,.62);

    border-radius:50%;

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

    font-size:8.5px;

    color:var(--rose);
}

.rrx-index small{
    display:block;

    margin-bottom:3px;

    font-size:8px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-index h3{
    margin:
        0
        0
        4px;

    font-size:
        clamp(22px,1.8vw,27px);

    line-height:1.13;

    color:var(--plum);
}

.rrx-index p{
    max-width:720px;

    margin:0;

    font-size:13.5px;
    line-height:1.58;

    color:var(--muted);
}

.rrx-index-featured{
    margin:
        0
        -13px;

    padding:
        18px
        13px !important;

    background:
        linear-gradient(
            90deg,
            rgba(255,232,216,.58),
            rgba(255,255,255,.20)
        );
}


/* MICRO */

.rrx-diff-side{
    min-width:0;
}

.rrx-micro{
    margin:0;

    overflow:hidden;

    border:
        1px solid
        rgba(107,91,117,.10);

    border-radius:
        2px
        2px
        44px
        2px;

    background:#fff;

    box-shadow:
        0 22px 55px
        rgba(65,45,65,.045);
}

.rrx-micro img{
    display:block;

    width:100% !important;
    height:auto !important;

    object-fit:contain !important;

    transform:none !important;
}

.rrx-micro figcaption{
    padding:
        20px
        22px
        24px;
}

.rrx-micro figcaption > span{
    display:block;

    font-size:8.5px;

    font-weight:600;

    letter-spacing:.07em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-micro figcaption strong{
    display:block;

    margin:
        3px
        0
        5px;

    font-size:25px;

    color:var(--plum);
}

.rrx-micro figcaption p{
    margin:0;

    font-size:13px;
    line-height:1.56;

    color:var(--muted);
}


/* DARK NOTE */

.rrx-dark-note{
    margin-top:22px;

    padding:
        28px
        27px
        30px;

    border-radius:
        2px
        2px
        40px
        2px;

    background:
        linear-gradient(
            135deg,
            #5e3862,
            #745078
        );

    box-shadow:
        0 18px 50px
        rgba(71,43,74,.10);
}

.rrx-dark-note > span{
    font-size:8.5px;

    font-weight:600;

    letter-spacing:.07em;
    text-transform:uppercase;

    color:var(--peach);
}

.rrx-dark-note h3{
    margin:
        8px
        0
        10px;

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

    color:#fff;
}

.rrx-dark-note h3 em{
    color:var(--peach);
}

.rrx-dark-note p{
    margin:0;

    font-size:13px;
    line-height:1.6;

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


/* =========================================================
   BLOCK 4
========================================================= */

.rrx-present{
    padding:
        clamp(68px,5.7vw,92px)
        clamp(24px,4.8vw,78px);

    background:#fff !important;
}

.rrx-present-layout{
    display:grid;

    grid-template-columns:
        minmax(390px,1.05fr)
        minmax(0,.95fr);

    gap:22px;
}

.rrx-present-lead{
    display:flex;
    flex-direction:column;
    justify-content:space-between;

    min-height:450px;

    padding:
        30px
        31px
        33px;

    border-radius:
        2px
        2px
        56px
        2px;

    background:
        linear-gradient(
            145deg,
            #fff0e7,
            #f7edf6
        );
}

.rrx-present-lead > span,
.rrx-present-secondary article > span{
    font-size:8.5px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-present-lead h3{
    margin:
        0
        0
        11px;

    font-size:
        clamp(38px,3.7vw,53px);

    line-height:.98;

    color:var(--plum);
}

.rrx-present-lead p{
    max-width:500px;

    margin:0;

    font-size:14.5px;
    line-height:1.6;

    color:var(--muted);
}

.rrx-present-secondary{
    border-top:
        1px solid
        rgba(107,91,117,.13);
}

.rrx-present-secondary article{
    padding:
        22px
        0;

    border-bottom:
        1px solid
        rgba(107,91,117,.11);
}

.rrx-present-secondary h3{
    margin:
        5px
        0
        6px;

    font-size:
        clamp(25px,2vw,31px);

    color:var(--plum);
}

.rrx-present-secondary p{
    max-width:650px;

    margin:0;

    font-size:13.5px;
    line-height:1.58;

    color:var(--muted);
}

.rrx-present-foot{
    display:grid;

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

    margin-top:30px;

    border-top:
        1px solid
        rgba(107,91,117,.11);

    border-bottom:
        1px solid
        rgba(107,91,117,.11);
}

.rrx-present-foot > div{
    padding:
        22px
        35px;

    border-left:
        1px solid
        rgba(107,91,117,.09);
}

.rrx-present-foot > div:first-child{
    padding-left:0;
    border-left:0;
}

.rrx-present-foot small{
    display:block;

    margin-bottom:4px;

    font-size:8.5px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-present-foot h3{
    margin:
        0
        0
        6px;

    font-size:24px;

    color:var(--plum);
}

.rrx-present-foot p{
    margin:0;

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

    color:var(--muted);
}


/* =========================================================
   BLOCK 5
========================================================= */

.rrx-lifestyle{
    padding:
        clamp(68px,5.7vw,92px)
        clamp(24px,4.8vw,78px);

    background:
        linear-gradient(
            112deg,
            #fff3eb,
            #fff 54%,
            #f6f0f6
        ) !important;
}

.rrx-lifestyle-grid{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(380px,.68fr);

    gap:
        clamp(75px,8vw,135px);
}

.rrx-trigger-list{
    display:grid;

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

    gap:8px;

    margin-top:26px;
}

.rrx-trigger-list span{
    padding:
        12px
        13px;

    border:
        1px solid
        rgba(107,91,117,.09);

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

    font-size:12px;

    color:var(--plum);
}

.rrx-small-note{
    margin:
        18px
        0
        0;

    font-size:11.5px;

    color:var(--muted);
}


/* MYTHS */

.rrx-myths{
    border-top:
        1px solid
        rgba(107,91,117,.14);
}

.rrx-myths > .rrx-micro-heading{
    margin-top:13px;
}

.rrx-myths article{
    padding:
        15px
        0;

    border-bottom:
        1px solid
        rgba(107,91,117,.105);
}

.rrx-myths small{
    display:block;

    margin-bottom:3px;

    font-size:8px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-myths h3{
    margin:
        0
        0
        4px;

    font-size:20px;
    line-height:1.2;

    color:var(--plum);
}

.rrx-myths p{
    margin:0;

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

    color:var(--muted);
}


/* =========================================================
   BLOCK 6
========================================================= */

.rrx-eval{
    padding:
        clamp(70px,6vw,96px)
        clamp(24px,4.8vw,78px);

    background:#fff !important;
}

.rrx-eval-grid{
    display:grid;

    grid-template-columns:
        minmax(430px,.92fr)
        minmax(0,1.08fr);

    gap:
        clamp(75px,8vw,140px);

    align-items:center;
}

.rrx-eval-photo{
    margin:0;
}

.rrx-eval-photo img{
    display:block;

    width:100% !important;
    height:auto !important;

    border-radius:
        2px
        2px
        70px
        2px;

    box-shadow:
        0 28px 70px
        rgba(65,45,65,.055);
}

.rrx-eval-photo figcaption{
    display:flex;
    align-items:end;
    justify-content:space-between;

    gap:18px;

    padding-top:13px;
}

.rrx-eval-photo figcaption span{
    font-size:8.5px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-eval-photo figcaption strong{
    font-size:16px;

    color:var(--plum);
}

.rrx-eval-content{
    max-width:700px;
}

.rrx-eval-list{
    margin-top:25px;

    border-top:
        1px solid
        rgba(107,91,117,.13);
}

.rrx-eval-list article{
    display:grid;

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

    gap:14px;

    padding:
        16px
        0;

    border-bottom:
        1px solid
        rgba(107,91,117,.105);
}

.rrx-eval-list article > span{
    width:35px;
    height:35px;

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

    border:
        1px solid
        rgba(226,168,138,.60);

    border-radius:50%;

    font-size:8.5px;

    color:var(--rose);
}

.rrx-eval-list h3{
    margin:
        0
        0
        4px;

    font-size:22px;

    color:var(--plum);
}

.rrx-eval-list p{
    max-width:580px;

    margin:0;

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

    color:var(--muted);
}


/* =========================================================
   BLOCK 7 — TREATMENT
========================================================= */

.rrx-treatment{
    padding:
        clamp(68px,5.7vw,92px)
        clamp(24px,4.8vw,78px);

    background:
        linear-gradient(
            112deg,
            #f3f3f5,
            #fff 49%,
            #fff5ef
        ) !important;
}

.rrx-treatment-grid{
    display:grid;

    grid-template-columns:
        minmax(0,1.20fr)
        minmax(340px,.80fr);

    gap:
        clamp(55px,6.5vw,100px);

    align-items:start;
}

.rrx-treatment-list{
    border-top:
        1px solid
        rgba(107,91,117,.14);
}

.rrx-treatment-list article{
    display:grid;

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

    gap:14px;

    padding:
        17px
        0;

    border-bottom:
        1px solid
        rgba(107,91,117,.105);
}

.rrx-treatment-list article > span{
    width:36px;
    height:36px;

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

    border:
        1px solid
        rgba(226,168,138,.62);

    border-radius:50%;

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

    font-size:8.5px;

    color:var(--rose);
}

.rrx-treatment-list small{
    display:block;

    margin-bottom:3px;

    font-size:8px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-treatment-list h3{
    margin:
        0
        0
        4px;

    font-size:23px;

    color:var(--plum);
}

.rrx-treatment-list p{
    max-width:730px;

    margin:0;

    font-size:13.5px;
    line-height:1.58;

    color:var(--muted);
}


/* SECOND PHOTO */

.rrx-treatment-side{
    overflow:hidden;

    border-radius:
        2px
        2px
        52px
        2px;

    background:var(--deep);

    box-shadow:
        0 25px 65px
        rgba(71,43,74,.10);
}

.rrx-treatment-side figure{
    margin:0;
}

.rrx-treatment-side figure img{
    display:block;

    width:100% !important;
    height:auto !important;

    aspect-ratio:4 / 4.7;

    object-fit:cover !important;
    object-position:center !important;

    transform:none !important;
}

.rrx-treatment-side figcaption{
    display:flex;
    align-items:end;
    justify-content:space-between;

    gap:15px;

    padding:
        14px
        23px
        0;
}

.rrx-treatment-side figcaption span{
    font-size:8px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--peach);
}

.rrx-treatment-side figcaption strong{
    text-align:right;

    font-size:15px;

    color:#fff;
}

.rrx-treatment-side-copy{
    padding:
        24px
        24px
        27px;
}

.rrx-treatment-side-copy > span{
    font-size:8px;

    font-weight:600;

    letter-spacing:.07em;
    text-transform:uppercase;

    color:var(--peach);
}

.rrx-treatment-side-copy h3{
    margin:
        7px
        0
        9px;

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

    color:#fff;
}

.rrx-treatment-side-copy h3 em{
    color:var(--peach);
}

.rrx-treatment-side-copy p{
    margin:
        0
        0
        23px;

    font-size:13px;
    line-height:1.6;

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

.rrx-side-link,
.rrx-side-link:link,
.rrx-side-link:visited{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:15px;

    padding-top:14px;

    border-top:
        1px solid
        rgba(255,255,255,.16);

    color:#fff !important;
}

.rrx-side-link > span:first-child{
    font-size:12px;
    font-weight:600;

    color:#fff !important;
}

.rrx-side-link .rrx-btn-icon{
    width:36px;
    height:36px;

    flex-basis:36px;

    color:#fff !important;

    border-color:
        rgba(255,255,255,.25);
}


/* =========================================================
   BLOCK 8 — DEVICES
========================================================= */

.rrx-devices{
    padding:
        clamp(68px,5.7vw,92px)
        clamp(24px,4.8vw,78px);

    background:#fff !important;
}

.rrx-device-grid{
    display:grid;

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

    gap:20px;
}

.rrx-device{
    padding:
        29px
        27px
        30px;

    border:
        1px solid
        rgba(107,91,117,.10);

    border-radius:
        2px
        2px
        42px
        2px;

    background:
        #fafafa;
}

.rrx-device-primary{
    border-color:
        rgba(226,168,138,.26);

    background:
        linear-gradient(
            145deg,
            #fff0e7,
            #fff
        );
}

.rrx-device-meta{
    display:flex;
    align-items:center;

    gap:11px;

    margin-bottom:25px;
}

.rrx-device-meta > span{
    width:38px;
    height:38px;

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

    border:
        1px solid
        rgba(226,168,138,.62);

    border-radius:50%;

    background:#fff;

    font-size:8.5px;

    color:var(--rose);
}

.rrx-device-meta small{
    font-size:8px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-device h3{
    margin:
        0
        0
        10px;

    font-size:
        clamp(33px,2.8vw,40px);

    color:var(--plum);
}

.rrx-device > p{
    min-height:88px;

    margin-bottom:20px;

    font-size:13.5px;
    line-height:1.58;

    color:var(--muted);
}

.rrx-device-foot{
    padding-top:14px;

    border-top:
        1px solid
        rgba(107,91,117,.10);
}

.rrx-device-foot small{
    display:block;

    margin-bottom:3px;

    font-size:8px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-device-foot strong{
    display:block;

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

    color:var(--plum);
}

.rrx-device-message{
    display:grid;

    grid-template-columns:
        .32fr
        .82fr
        .86fr;

    gap:32px;

    align-items:center;

    margin-top:34px;

    padding:
        21px
        0;

    border-top:
        1px solid
        rgba(107,91,117,.11);

    border-bottom:
        1px solid
        rgba(107,91,117,.11);
}

.rrx-device-message > span{
    font-size:8.5px;

    font-weight:600;

    letter-spacing:.07em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-device-message h3{
    margin:0;

    font-size:27px;
    line-height:1.08;

    color:var(--plum);
}

.rrx-device-message p{
    margin:0;

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

    color:var(--muted);
}


/* =========================================================
   BLOCK 9 — RESULTS
========================================================= */

.rrx-results{
    padding:
        clamp(68px,5.7vw,92px)
        clamp(24px,4.8vw,78px);

    background:
        linear-gradient(
            112deg,
            #f3f3f5,
            #fff 50%,
            #fff5ef
        ) !important;
}


/* THREE CASES */

.rrx-cases{
    display:grid;

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

    gap:
        clamp(20px,2vw,29px);
}

.rrx-case{
    min-width:0;
}

.rrx-case-image{
    display:block;

    overflow:hidden;

    background:#fff;

    border:
        1px solid
        rgba(107,91,117,.09);
}

.rrx-case-image img{
    display:block;

    width:100% !important;
    height:auto !important;

    object-fit:contain !important;
    object-position:center !important;

    transform:none !important;
}

.rrx-case-copy{
    padding-top:16px;
}

.rrx-case-copy > span{
    display:block;

    margin-bottom:4px;

    font-size:8.5px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-case-copy h3{
    margin:
        0
        0
        7px;

    font-size:
        clamp(23px,2vw,29px);

    line-height:1.08;

    color:var(--plum);
}

.rrx-case-copy p{
    min-height:65px;

    margin:
        0
        0
        8px;

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

    color:var(--muted);
}

.rrx-case-link,
.rrx-case-link:link,
.rrx-case-link:visited{
    display:inline-flex;
    align-items:center;

    gap:7px;

    color:
        var(--deep) !important;
}

.rrx-case-link span{
    font-size:12px;
    font-weight:600;

    color:
        var(--deep) !important;
}

.rrx-case-link svg{
    width:14px;
    height:14px;

    color:
        var(--deep) !important;

    transition:
        transform .25s ease;
}

.rrx-case-link svg path{
    stroke:
        currentColor !important;
}


/* RESULTS NOTE */

.rrx-results-note{
    display:grid;

    grid-template-columns:
        .76fr
        1fr
        1fr;

    gap:34px;

    margin-top:
        clamp(42px,4vw,55px);

    padding:
        24px
        0;

    border-top:
        1px solid
        rgba(107,91,117,.11);

    border-bottom:
        1px solid
        rgba(107,91,117,.11);
}

.rrx-results-note small{
    display:block;

    margin-bottom:5px;

    font-size:8px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose);
}

.rrx-results-note h3{
    margin:0;

    font-size:28px;
    line-height:1.07;

    color:var(--plum);
}

.rrx-results-note p{
    margin:0;

    font-size:13px;
    line-height:1.59;

    color:var(--muted);
}


/* WHY */

.rrx-why{
    margin-top:43px;
}

.rrx-why-grid{
    display:grid;

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

    border-top:
        1px solid
        rgba(107,91,117,.11);

    border-bottom:
        1px solid
        rgba(107,91,117,.11);
}

.rrx-why-grid article{
    padding:
        21px
        24px;

    border-left:
        1px solid
        rgba(107,91,117,.09);
}

.rrx-why-grid article:first-child{
    padding-left:0;

    border-left:0;
}

.rrx-why-grid article > span{
    display:block;

    margin-bottom:5px;

    font-size:8.5px;

    color:var(--terracotta);
}

.rrx-why-grid strong{
    display:block;

    margin-bottom:5px;

    font-size:18px;
    line-height:1.25;

    color:var(--plum);
}

.rrx-why-grid p{
    margin:0;

    font-size:12px;
    line-height:1.55;

    color:var(--muted);
}


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

.rrx-faq{
    background:#fff !important;
}

.rrx-faq-main{
    padding:
        clamp(68px,5.7vw,92px)
        clamp(24px,4.8vw,78px);
}

.rrx-faq-grid{
    display:grid;

    grid-template-columns:
        minmax(310px,.58fr)
        minmax(0,1.42fr);

    gap:
        clamp(75px,8vw,140px);

    align-items:start;
}

.rrx-faq-intro{
    position:sticky;

    top:30px;
}

.rrx-faq-list{
    border-top:
        1px solid
        rgba(107,91,117,.14);
}

.rrx-faq-list details{
    margin:0;

    border-bottom:
        1px solid
        rgba(107,91,117,.105);
}

.rrx-faq-list summary{
    display:grid;

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

    gap:13px;

    align-items:center;

    min-height:68px;

    padding:
        14px
        0;

    cursor:pointer;

    list-style:none;
}

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

.rrx-faq-list summary > span{
    font-size:8.5px;

    color:var(--terracotta);
}

.rrx-faq-list summary strong{
    font-size:
        clamp(18px,1.5vw,22px);

    line-height:1.25;

    color:var(--plum);
}

.rrx-faq-list summary i{
    position:relative;

    width:24px;
    height:24px;

    border:
        1px solid
        rgba(226,168,138,.56);

    border-radius:50%;
}

.rrx-faq-list summary i::before,
.rrx-faq-list summary i::after{
    content:"";

    position:absolute;

    top:50%;
    left:50%;

    width:8px;
    height:1px;

    background:var(--rose);

    transform:
        translate(-50%,-50%);
}

.rrx-faq-list summary i::after{
    transform:
        translate(-50%,-50%)
        rotate(90deg);

    transition:
        transform .2s ease;
}

.rrx-faq-list details[open]
summary i::after{
    transform:
        translate(-50%,-50%);
}

.rrx-faq-list details > div{
    padding:
        0
        40px
        18px
        44px;
}

.rrx-faq-list details > div p{
    max-width:780px;

    margin:0;

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

    color:var(--muted);
}


/* =========================================================
   FINAL
========================================================= */

.rrx-final{
    position:relative;
    isolation:isolate;

    padding:
        clamp(70px,6vw,96px)
        clamp(24px,4.8vw,78px);

    overflow:hidden;

    background:
        linear-gradient(
            118deg,
            #503054,
            #673b6b 50%,
            #78577c
        ) !important;
}

.rrx-final::before{
    content:"";

    position:absolute;

    z-index:-1;

    width:350px;
    height:350px;

    top:-268px;
    right:8%;

    border:
        1px solid
        rgba(226,168,138,.28);

    border-radius:50%;
}

.rrx-final-grid{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(390px,.55fr);

    gap:
        clamp(70px,8vw,135px);

    align-items:end;
}

.rrx-final-label{
    display:block;

    margin-bottom:14px;

    font-size:9px;

    font-weight:600;

    letter-spacing:.075em;
    text-transform:uppercase;

    color:var(--peach);
}

.rrx-final h2{
    max-width:850px;

    margin-bottom:20px;

    font-size:
        clamp(48px,5vw,69px);

    color:#fff;
}

.rrx-final h2 em{
    color:var(--peach);
}

.rrx-final p{
    max-width:700px;

    margin:0;

    font-size:15.5px;
    line-height:1.64;

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

.rrx-final-btn,
.rrx-final-btn:link,
.rrx-final-btn:visited{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:20px;

    padding:
        11px
        11px
        11px
        19px;

    background:#fff !important;

    border:
        1px solid #fff !important;

    color:
        var(--deep) !important;

    box-shadow:
        0 20px 50px
        rgba(27,11,30,.12);

    transition:
        background-color .25s ease,
        border-color .25s ease;
}

.rrx-final-btn small{
    display:block;

    margin-bottom:2px;

    font-size:8px;

    font-weight:600;

    letter-spacing:.065em;
    text-transform:uppercase;

    color:var(--rose) !important;
}

.rrx-final-btn strong{
    display:block;

    max-width:310px;

    font-family:
        Avenir,
        "Avenir Next",
        Arial,
        sans-serif;

    font-size:12.5px;
    line-height:1.4;

    font-weight:600;

    color:
        var(--deep) !important;
}

.rrx-final-arrow{
    color:
        var(--deep) !important;

    border-color:
        rgba(107,63,110,.21);
}


/* =========================================================
   PREMIUM HOVER
========================================================= */

@media (hover:hover) and (pointer:fine){

    .rrx-btn:hover{
        background:
            var(--rose) !important;

        border-color:
            var(--rose) !important;

        box-shadow:
            0 18px 45px
            rgba(71,43,74,.14);
    }

    .rrx-btn:hover
    .rrx-btn-icon svg{
        transform:
            translate(2px,-2px);
    }

    .rrx-inline-link:hover{
        color:
            var(--rose) !important;

        border-color:
            var(--terracotta) !important;
    }

    .rrx-inline-link:hover span,
    .rrx-inline-link:hover svg{
        color:
            var(--rose) !important;
    }

    .rrx-inline-link:hover svg{
        transform:
            translateY(3px);
    }

    .rrx-side-link:hover
    .rrx-btn-icon svg{
        transform:
            translate(2px,-2px);
    }

    .rrx-case-link:hover span,
    .rrx-case-link:hover svg{
        color:
            var(--rose) !important;
    }

    .rrx-case-link:hover svg{
        transform:
            translate(2px,-2px);
    }

    .rrx-final-btn:hover{
        background:
            var(--peach) !important;

        border-color:
            var(--terracotta) !important;
    }

    .rrx-final-btn:hover
    .rrx-final-arrow svg{
        transform:
            translate(2px,-2px);
    }
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width:1600px){

    .rrx-shell{
        max-width:1640px;
    }

}


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

@media (max-width:1100px){

    .rrx-hero-grid,
    .rrx-intro-grid,
    .rrx-diff-grid,
    .rrx-lifestyle-grid,
    .rrx-eval-grid,
    .rrx-treatment-grid,
    .rrx-faq-grid,
    .rrx-final-grid{
        grid-template-columns:1fr;
    }

    .rrx-header{
        grid-template-columns:1fr;

        gap:22px;
    }

    .rrx-hero-media{
        width:100%;
        max-width:650px;

        margin:0;
    }

    .rrx-diff-side{
        max-width:620px;
    }

    .rrx-eval-photo{
        max-width:720px;
    }

    .rrx-treatment-side{
        max-width:570px;
    }

    .rrx-faq-intro{
        position:static;
    }

    .rrx-final-btn{
        max-width:520px;
    }

}


/* =========================================================
   <= 900
========================================================= */

@media (max-width:900px){

    .rrx-hero-trust,
    .rrx-why-grid{
        grid-template-columns:1fr;
    }

    .rrx-hero-trust > div,
    .rrx-hero-trust > div:first-child{
        padding:
            11px
            0;

        border-left:0;

        border-top:
            1px solid
            rgba(107,91,117,.08);
    }

    .rrx-hero-trust > div:first-child{
        border-top:0;
    }

    .rrx-present-layout{
        grid-template-columns:1fr;
    }

    .rrx-present-lead{
        min-height:0;
    }

    .rrx-present-foot{
        grid-template-columns:1fr;
    }

    .rrx-present-foot > div,
    .rrx-present-foot > div:first-child{
        padding:
            18px
            0;

        border-left:0;

        border-top:
            1px solid
            rgba(107,91,117,.08);
    }

    .rrx-present-foot > div:first-child{
        border-top:0;
    }

    .rrx-device-grid,
    .rrx-cases{
        grid-template-columns:1fr;
    }

    .rrx-device > p,
    .rrx-case-copy p{
        min-height:0;
    }

    .rrx-device-message,
    .rrx-results-note{
        grid-template-columns:1fr;

        gap:11px;
    }

    .rrx-why-grid article,
    .rrx-why-grid article:first-child{
        padding:
            14px
            0;

        border-left:0;

        border-top:
            1px solid
            rgba(107,91,117,.08);
    }

    .rrx-why-grid article:first-child{
        border-top:0;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width:767px){

    .rrx-hero{
        padding:
            18px
            20px
            53px;
    }

    .rrx-intro,
    .rrx-diff,
    .rrx-present,
    .rrx-lifestyle,
    .rrx-eval,
    .rrx-treatment,
    .rrx-devices,
    .rrx-results,
    .rrx-faq-main{
        padding:
            53px
            20px
            55px;
    }

    .rrx-hero h1{
        font-size:
            clamp(43px,12vw,56px);
    }

    .rrx h2{
        font-size:
            clamp(39px,10.5vw,50px);
    }

    .rrx-hero-grid{
        gap:42px;
    }

    .rrx-hero-image{
        border-radius:
            2px
            2px
            46px
            2px;
    }

    .rrx-actions{
        align-items:stretch;

        flex-direction:column;
    }

    .rrx-btn{
        width:100%;
    }

    .rrx-trigger-list{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .rrx-faq-list summary{
        grid-template-columns:
            24px
            minmax(0,1fr)
            24px;

        gap:9px;
    }

    .rrx-faq-list details > div{
        padding:
            0
            28px
            17px
            33px;
    }

    .rrx-final{
        padding:
            55px
            20px;
    }

    .rrx-final h2{
        font-size:
            clamp(41px,11vw,53px);
    }

    .rrx-final-btn{
        width:100%;
        max-width:none;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width:480px){

    .rrx-hero{
        padding:
            16px
            16px
            49px;
    }

    .rrx-intro,
    .rrx-diff,
    .rrx-present,
    .rrx-lifestyle,
    .rrx-eval,
    .rrx-treatment,
    .rrx-devices,
    .rrx-results,
    .rrx-faq-main{
        padding:
            48px
            16px
            50px;
    }

    .rrx-trigger-list{
        grid-template-columns:1fr;
    }

    .rrx-editorial-note{
        padding:
            23px
            21px;
    }

    .rrx-present-lead{
        padding:
            25px
            22px;
    }

    .rrx-dark-note,
    .rrx-treatment-side-copy{
        padding:
            24px
            20px;
    }

    .rrx-device{
        padding:
            25px
            21px;
    }

    .rrx-final{
        padding:
            50px
            16px;
    }

}


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

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

    .rrx *,
    .rrx *::before,
    .rrx *::after{
        transition:none !important;
        scroll-behavior:auto !important;
    }

}/* End custom CSS */